PeakFinder — Peak finding with derivatives.¶
This module defines a peak finding utility using the derivative of the spectral line profile.
-
class
admit.util.peakfinder.PeakFinder.
PeakFinder
(spec, x=None, **kwarg)[source]¶ PeakFinder searches for spectral peaks by taking the first derivative of the spectrum and looks for zero crossings. Noise spikes are eliminated by a noise cutoff, minimum separation of points, and minimum width of lines.
Parameters: spec : List or numpy array
The spectrum to be analyzed.
x : List or numpy array, optional
The x co-ordinates for the spectrum. Default: None.
kwarg : Dict
Any additional arguments, see the Attributes list for a complete listing.
Attributes
spec (numpy array) The spectrum to be analyzed. x (numpy array) The x co-ordinates of the spectrum. thresh (float, optional) The cutoff used to determine if a peak is above the noise. The absolute value of the spectrum is compared to this so that absorption lines are also detected. Default: 0.0. min_sep (int) The minimum separation between peaks in channels. Default: 5. min_width (int) The minimum width of a line to consider, in channels. Default: 5. Methods
find
()Method to locate peaks in an input spectrum wideenough
(pk[, mult])Method to determine whether a line is wide enough, based on the given parameters. -
find
()[source]¶ Method to locate peaks in an input spectrum
Parameters: None Returns: Numpy array containing the located peaks
-
min_sep
= 5¶
-
min_width
= 5¶
-
thresh
= 0.0¶
-
wideenough
(pk, mult=1)[source]¶ Method to determine whether a line is wide enough, based on the given parameters.
Parameters: pk : int
The peak to examine (in channel units)
mult : int
A mulitpiler to use for the noise level cutoff Default: 1
Returns: True of the line meets the minimum width criteria in self.min_width, False
otherwise
-