ADMITSegmentFinder — Finds segments of emission within a spectrum.¶

This module defines the class for spectral line segment detection.

class admit.util.segmentfinder.ADMITSegmentFinder.ADMITSegmentFinder(**keyval)[source]

Define segments of ‘line’ emission where segments from data appear to be above a threshold. This routine comes out of ASTUTE, some parameters below are hardcoded.

Parameters: freq : float array Frequencies, GHz. spec : float array The y component of the spectrum (arbitrary units, could be linear, could be log). f : float Robustness parameter [1.5]. pmin : float Signal above cuttoff, rmean+pmin*rstd. minchan : int Minimum number of channels needed for a line. maxgap : int Allowed channels with signal below cutoff [0]. nomean : bool Remove the mean from any noise and cutoff calculations. This is useful if PVCorr based spectra are being processed to get a correct noise level. Default: False. 4-tuple channel_segments[], cutoff, noise, mean

Methods

 find() Method that does the segment finding line_segments(spec, cutoff) Method to find segments that where lines are located set_options(\*\*keyval) Set the options for the line finding algorithm.
find()[source]

Method that does the segment finding

Parameters: None Tuple containing a list of the segments, the cutoff used, the noise level, and a mean baseline.
line_segments(spec, cutoff)[source]

Method to find segments that where lines are located [ [start1,end1], [start2,end2], ....]

This function assumes you’ve subtracted a possible continuum (see the nomean parameter), and applied the absolute value, because this routine only segments above the cutoff.

Need some explanation on the use of abs here.

Parameters: spec : numpy array (with a mask) The spectrum to analyze cutoff : float The cutoff to use (line segments must be higher than this value) List of segment start and end channels, e.g. [[10,20],[30,40]]
set_options(**keyval)[source]

Set the options for the line finding algorithm.

Parameters: freq : float array Frequencies, GHz. spec : float array The y component of the spectrum (arbitrary units, could be linear, could be log) f : float Robustness parameter [1.5] pmin : float Signal above cuttoff, rmean+pmin*rstd minchan : int Minimum number of channels needed for a line maxgap : int Allowed channels with signal below cutoff [0]