org.fhcrc.cpl.viewer.feature
Class FeatureStrategyUsingWindow
java.lang.Object
org.fhcrc.cpl.viewer.feature.FeatureExtractor
org.fhcrc.cpl.viewer.feature.FeatureStrategyUsingWindow
- Direct Known Subclasses:
- FeatureStrategyCentroided, FeatureStrategyCombined, FeatureStrategyGrossFeatures, FeatureStrategyPeakClustersOld, FeatureStrategyPeaks, FeatureStrategyUsingWindow2D, FeatureStrategyWavelet
public class FeatureStrategyUsingWindow
- extends FeatureExtractor
User: mbellew
Date: Sep 7, 2004
Time: 12:10:06 PM
|
Field Summary |
protected double |
_noise
|
| Fields inherited from class org.fhcrc.cpl.viewer.feature.FeatureExtractor |
_dumpWindowSize, _maxCharge, _mzRange, _run, _scanCount, _sn, _startScan, _status, DEFAULT_EXTRACTOR_PROPERTYNAME, TYPE_1D, TYPE_2D |
|
Method Summary |
Feature[] |
_analyze()
|
protected static void |
_logDebug(java.lang.String s)
|
protected Spectrum.Peak[] |
_pickPeaks(Scan scan)
|
protected float[] |
_smooth(float[] s)
|
protected java.util.Collection<Feature> |
analyze1D(Scan scan)
|
protected java.util.ArrayList<Feature> |
ExtractPeptideFeatures(MSRun run,
Spectrum.Peak[] peaksIN)
For each single-peak feature:
Consider all features in a small window around it
If multiple have the same m/z, take the one with the lower scan, discard the others
Toss out anything < 1/10 the intensity of the highest-intense peak
Consider all possible charge states:
For each peak, determine the mass distance from the highest-intense peak
If within tolerance, create a new multi-peak feature, make sure it contains
the highest-intensity peak, score it (a complicated process),
add it to a list of candidates
Pick the best charge state and create a feature |
void |
ScoreFeature(Feature f,
Spectrum.Peak[] peaks)
score a candidate feature f
Expecting charge=0 features and peaks
TODO: document this better |
| Methods inherited from class org.fhcrc.cpl.viewer.feature.FeatureExtractor |
analyze, analyze2D, analyzeScanAtATime, analyzeWindow, CombineScans, getAccurateMassAdjustmentScans, getDefault, getDefaultClass, getDumpWindowSize, getMzExtractionRange, getMzExtractionRange, getScans, getType, setAccurateMassAdjustmentScans, setDefault, setDumpWindowSize, setStatusListener |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_noise
protected double _noise
FeatureStrategyUsingWindow
public FeatureStrategyUsingWindow(MSRun run,
int scan,
int count,
int maxCharge,
FloatRange range,
double sn)
_analyze
public Feature[] _analyze()
throws java.lang.InterruptedException
- Specified by:
_analyze in class FeatureExtractor
- Throws:
java.lang.InterruptedException
_smooth
protected float[] _smooth(float[] s)
analyze1D
protected java.util.Collection<Feature> analyze1D(Scan scan)
- Overrides:
analyze1D in class FeatureExtractor
_pickPeaks
protected Spectrum.Peak[] _pickPeaks(Scan scan)
ExtractPeptideFeatures
protected java.util.ArrayList<Feature> ExtractPeptideFeatures(MSRun run,
Spectrum.Peak[] peaksIN)
- For each single-peak feature:
Consider all features in a small window around it
If multiple have the same m/z, take the one with the lower scan, discard the others
Toss out anything < 1/10 the intensity of the highest-intense peak
Consider all possible charge states:
For each peak, determine the mass distance from the highest-intense peak
If within tolerance, create a new multi-peak feature, make sure it contains
the highest-intensity peak, score it (a complicated process),
add it to a list of candidates
Pick the best charge state and create a feature
- Parameters:
run - peaksIN -
- Returns:
ScoreFeature
public void ScoreFeature(Feature f,
Spectrum.Peak[] peaks)
- score a candidate feature f
Expecting charge=0 features and peaks
TODO: document this better
- Parameters:
f - peaks -
_logDebug
protected static void _logDebug(java.lang.String s)
Fred Hutchinson Cancer Research Center