Click or drag to resize

PeakFinder Class

Peak finder based on the Python SciPy package.
Inheritance Hierarchy
SystemObject
  Altaxo.Science.Spectroscopy.PeakSearchingPeakFinder

Namespace: Altaxo.Science.Spectroscopy.PeakSearching
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public class PeakFinder

The PeakFinder type exposes the following members.

Constructors
 NameDescription
Public methodPeakFinderInitializes a new instance of the PeakFinder class
Top
Properties
 NameDescription
Public propertyLeftBases The position of the lowest valley point to the left of each peak. This array is only set if the parameter 'Prominence' was specified.
Public propertyLeftEdges Position of the first point to the left of each peak, whose value is different from the peak's value. This array is only set if the parameter 'PlateauSize' was specified.
Public propertyLeftIps The left intersection points of each peak. This array is only set if the parameter 'Width' was specified.
Public propertyLeftThresholds The left thresholds of each peak. This array is only set if the parameter 'Threshold' was specified.
Public propertyPeakHeights The peak height of each peak. This array is only set if the parameter Height was specified.
Public propertyPeakPositions The peak positions (indices of the y-array). This array is always set after a call to Execute.
Public propertyPlateauSizes The plateau sizes of each peak. This array is only set if the parameter PlateauSize was specified.
Public propertyProminences The prominence values of each peak. This array is only set if the parameter 'Prominence' was specified.
Public propertyRightBases The position of the lowest valley point to the right of each peak. This array is only set if the parameter 'Prominence' was specified.
Public propertyRightEdges Position of the first point to the right of each peak, whose value is different from the peak's value. This array is only set if the parameter 'PlateauSize' was specified.
Public propertyRightIps The right intersection points of each peak. This array is only set if the parameter 'Width' was specified.
Public propertyRightThresholds The right thresholds of each peak. This array is only set if the parameter 'Threshold' was specified.
Public propertyWarnings The warnings during the execution of the peak finder algorithm.
Public propertyWidthHeights The height at which the width of each peak was determined. This array is only set if the parameter 'Width' was specified.
Public propertyWidths The width of each peak. This array is only set if the parameter 'Width' was specified.
Top
Methods
 NameDescription
Protected method_arg_wlen_as_expected Ensure argument `wlen` is of type `np.intp` and larger than 1. Used in `peak_prominences` and `peak_widths`
Public method_local_maxima_1d Find local maxima in a 1D array. This function finds all local maxima in a 1D array and returns the indices for their edges and midpoints(rounded down for even plateau sizes).
Public method_peak_prominences Calculate the prominence of each peak in a signal.
Protected method_peak_widths Calculate the width of each each peak in a signal.
Protected method_select_by_peak_distance Evaluate which peaks fulfill the distance condition.
Protected method_select_by_peak_threshold 
Protected method_select_by_property(Double, IReadOnlyListDouble, IReadOnlyListDouble) 
Protected method_select_by_property(Int32, IReadOnlyListDouble, IReadOnlyListDouble) 
Protected method_unpack_condition_args 
Protected methodCombArray(Double, Boolean) 
Protected methodCombArray(Int32, Boolean) 
Protected methodCombArrays 
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodExecute(Double) Find peaks inside a signal based on peak properties. This function takes a 1-D array and finds all local maxima by simple comparison of neighboring values. Optionally, a subset of these peaks can be selected by specifying conditions for a peak's properties. For this call, the properties of this PeakFinder instance will be used (that were before set with the Set.. methods).
Public methodExecute(Double, NullableDouble, NullableDouble, NullableDouble, NullableDouble, NullableDouble, NullableInt32, Double, NullableDouble) Find peaks inside a signal based on peak properties. This function takes a 1-D array and finds all local maxima by simple comparison of neighboring values.Optionally, a subset of these peaks can be selected by specifying conditions for a peak's properties.
Public methodExecute(Double, Object, Object, NullableDouble, Object, Object, NullableInt32, Double, Object) Find peaks inside a signal based on peak properties. This function takes a 1-D array and finds all local maxima by simple comparison of neighboring values.Optionally, a subset of these peaks can be selected by specifying conditions for a peak's properties.
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Protected methodReset 
Public methodResetDistance Resets the distance parameter, so that there is no requirement to the distance of the peaks anymore.
Public methodResetHeight Resets the height parameter, so that there is no requirement to the height of the peaks anymore.
Public methodResetPlateauSize Resets the plateau size parameter, so that there is no requirement to the plateau size of the peaks anymore.
Public methodResetProminence Resets the prominence parameter, so that there is no requirement to the prominence values of the peaks anymore.
Public methodResetRelativeHeight Resets the relative height parameter to its default value of 0.5.
Public methodResetThreshold Resets the threshold parameter, so that there is no requirement to the threshold value of the peaks anymore.
Public methodResetWidth Resets the width parameter, so that there is no requirement to the width of the peaks anymore.
Public methodResetWLen Resets the width of the search window for the neighbouring values around a peak to the full spectral range.
Public methodSetDistance Sets the minimal horizontal distance (>= 1) between neighbouring peaks, required for all peaks. Smaller peaks are removed first until the condition is fulfilled for all remaining peaks.
Public methodSetHeight(Double) Sets the minimal height required for all peaks.
Public methodSetHeight(Double) Sets the minimal height required for each peak.
Public methodSetHeight(ValueTupleDouble, Double) Sets the minimal and maximal height required for all peaks.
Public methodSetHeight(ValueTupleDouble, Double) Sets the minimal and maximal height required for each peak.
Public methodSetPlateauSize(Double) Sets the minimal plateau size value required for all peaks.
Public methodSetPlateauSize(Double) Sets the minimal plateau size value required for each peak.
Public methodSetPlateauSize(ValueTupleDouble, Double) Sets the minimal and maximal plateau size value required for all peaks.
Public methodSetPlateauSize(ValueTupleDouble, Double) Sets the minimal and maximal plateau size value required for each peak.
Public methodSetProminence(Double) Sets the minimal prominence value required for all peaks. Prominence is defined as the smaller of the two difference values between the peak height and the height of the neighbouring valleys.
Public methodSetProminence(Double) Sets the minimum prominence values required for each peak. Prominence is defined as the smaller of the two difference values between the peak height and the height of the neighbouring valleys.
Public methodSetProminence(ValueTupleDouble, Double) Sets the minimal and maximal prominence values required for all peaks. Prominence is defined as the smaller of the two difference values between the peak height and the height of the neighbouring valleys.
Public methodSetProminence(ValueTupleDouble, Double) Sets the minimal and maximal prominence values required for each peak. Prominence is defined as the smaller of the two difference values between the peak height and the height of the neighbouring valleys.
Public methodSetRelativeHeight Sets the relative height value that is used to determine the width of the peaks. The width of a peak is determined at the y-value, which is (prominence x relative height) below the peak's y-value.
Public methodSetThreshold(Double) Sets the minimal threshold value required for all peaks. Threshold is defined as minimum difference value between the peak height and its immediate neightbouring points.
Public methodSetThreshold(Double) Sets the minimal threshold value required for each peak. Threshold is defined as minimum difference value between the peak height and its immediate neightbouring points.
Public methodSetThreshold(ValueTupleDouble, Double) Sets the minimal and maximal threshold value required for all peaks. Threshold is defined as minimum difference value between the peak height and its immediate neightbouring points.
Public methodSetThreshold(ValueTupleDouble, Double) Sets the minimal and maximal threshold value required for each peak. Threshold is defined as minimum difference value between the peak height and its immediate neightbouring points.
Public methodSetWidth(Double) Sets the minimal width value required for all peaks. The width of a peak is determined at the y-value, which is (prominence x relative height) less than the peak's y-value.
Public methodSetWidth(Double) Sets the minimal width value required for each peak. The width of a peak is determined at the y-value, which is (prominence x relative height) less than the peak's y-value.
Public methodSetWidth(ValueTupleDouble, Double) Sets the minimal and maximal width value required for all peaks. The width of a peak is determined at the y-value, which is (prominence x relative height) less than the peak's y-value.
Public methodSetWidth(ValueTupleDouble, Double) Sets the minimal and maximal width values required for each peak. The width of a peak is determined at the y-value, which is (prominence x relative height) less than the peak's y-value.
Public methodSetWLen Sets the width of the search window for the neighbouring values around a peak (in points). Used for calculation of the peaks prominences, thus it is only used if one of the parameters 'prominence' or 'width' is given.
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
See Also