Package adams.data.spectrumoutlier
Class Oscillation
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.data.outlier.AbstractOutlierDetector<Spectrum>
-
- adams.data.spectrumoutlier.Oscillation
-
- All Implemented Interfaces:
adams.core.CleanUpHandler,adams.core.Destroyable,adams.core.GlobalInfoSupporter,adams.core.logging.LoggingLevelHandler,adams.core.logging.LoggingSupporter,adams.core.option.OptionHandler,adams.core.QuickInfoSupporter,adams.core.ShallowCopySupporter<adams.data.outlier.OutlierDetector>,adams.core.SizeOfHandler,adams.data.outlier.OutlierDetector<Spectrum>,Serializable,Comparable
public class Oscillation extends adams.data.outlier.AbstractOutlierDetector<Spectrum>
Detects spectra that have an oscillating signal.
Computes the correlation coefficient between original spectrum and a LOWESS-smoothed one, using the defined wave number range.
If the correlation coefficient falls below the specified threshold, it is considered an outlier.
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-min-wave-number <double> (property: minWaveNumber) The smallest wave number to include in the detection; use -1 for unlimited. default: -1.0 minimum: -1.0
-max-wave-number <double> (property: maxWaveNumber) The largest wave number to include in the detection; use -1 for unlimited. default: -1.0 minimum: -1.0
-window-size <int> (property: windowSize) The window size to use. default: 100 minimum: 1
-threshold <double> (property: threshold) The threshold to use for the correlation coefficient. default: 0.9 minimum: 0.0 maximum: 1.0
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected doublem_MaxWaveNumberthe maximum wave number.protected doublem_MinWaveNumberthe minimum wave number.protected doublem_Thresholdthe threshold for the the correlation coefficient.protected intm_WindowSizethe LOWESS window size.
-
Constructor Summary
Constructors Constructor Description Oscillation()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddefineOptions()Adds options to the internal list of options.doublegetMaxWaveNumber()Returns the maximum wave number to include in the output.doublegetMinWaveNumber()Returns the minimum wave number to include in the detection.StringgetQuickInfo()Returns a quick info about the object, which can be displayed in the GUI.doublegetThreshold()Returns the threshold for the correlation coefficient.intgetWindowSize()Returns the polynominal order.StringglobalInfo()Returns a string describing the object.StringmaxWaveNumberTipText()Returns the tip text for this property.StringminWaveNumberTipText()Returns the tip text for this property.protected List<String>processData(Spectrum data)Performs the actual detection.voidsetMaxWaveNumber(double value)Sets the maximum wave number to include in the output.voidsetMinWaveNumber(double value)Sets the minimum wave number to include in the detection.voidsetThreshold(double value)Sets the threshold for the correlation coefficient.voidsetWindowSize(int value)Sets the polynomial order.StringthresholdTipText()Returns the tip text for this property.StringwindowSizeTipText()Returns the tip text for this property.-
Methods inherited from class adams.data.outlier.AbstractOutlierDetector
checkData, cleanUp, compareTo, destroy, detect, equals, forCommandLine, forName, getOutlierDetectors, reset, shallowCopy, shallowCopy
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Field Detail
-
m_MinWaveNumber
protected double m_MinWaveNumber
the minimum wave number.
-
m_MaxWaveNumber
protected double m_MaxWaveNumber
the maximum wave number.
-
m_WindowSize
protected int m_WindowSize
the LOWESS window size.
-
m_Threshold
protected double m_Threshold
the threshold for the the correlation coefficient.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfoin interfaceadams.core.GlobalInfoSupporter- Specified by:
globalInfoin classadams.core.option.AbstractOptionHandler- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptionsin interfaceadams.core.option.OptionHandler- Overrides:
defineOptionsin classadams.core.option.AbstractOptionHandler
-
setMinWaveNumber
public void setMinWaveNumber(double value)
Sets the minimum wave number to include in the detection.- Parameters:
value- the minimum
-
getMinWaveNumber
public double getMinWaveNumber()
Returns the minimum wave number to include in the detection.- Returns:
- the minimum
-
minWaveNumberTipText
public String minWaveNumberTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setMaxWaveNumber
public void setMaxWaveNumber(double value)
Sets the maximum wave number to include in the output.- Parameters:
value- the maximum
-
getMaxWaveNumber
public double getMaxWaveNumber()
Returns the maximum wave number to include in the output.- Returns:
- the maximum
-
maxWaveNumberTipText
public String maxWaveNumberTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setWindowSize
public void setWindowSize(int value)
Sets the polynomial order.- Parameters:
value- the order
-
getWindowSize
public int getWindowSize()
Returns the polynominal order.- Returns:
- the order
-
windowSizeTipText
public String windowSizeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setThreshold
public void setThreshold(double value)
Sets the threshold for the correlation coefficient.- Parameters:
value- the threshold
-
getThreshold
public double getThreshold()
Returns the threshold for the correlation coefficient.- Returns:
- the threshold
-
thresholdTipText
public String thresholdTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the object, which can be displayed in the GUI.- Specified by:
getQuickInfoin interfaceadams.core.QuickInfoSupporter- Overrides:
getQuickInfoin classadams.data.outlier.AbstractOutlierDetector<Spectrum>- Returns:
- null if no info available, otherwise short string
-
-