The Superhirn FeatureFinderAlgorithm. More...
#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/FeatureFinderAlgorithmSH.h>
Public Types | |
typedef Peak1D | PeakType |
typedef FeatureFinderAlgorithm::MapType | MapType |
typedef MapType::SpectrumType | SpectrumType |
Public Types inherited from FeatureFinderAlgorithm | |
typedef PeakMap | MapType |
Input map type. More... | |
typedef MapType::CoordinateType | CoordinateType |
Coordinate/Position type of peaks. More... | |
typedef MapType::IntensityType | IntensityType |
Intensity type of peaks. More... | |
Public Types inherited from FeatureFinderDefs | |
enum | Flag { UNUSED, USED } |
Flags that indicate if a peak is already used in a feature. More... | |
typedef IsotopeCluster::IndexPair | IndexPair |
Index to peak consisting of two UInts (scan index / peak index) More... | |
typedef IsotopeCluster::ChargedIndexSet | ChargedIndexSet |
Index to peak consisting of two UInts (scan index / peak index) with charge information. More... | |
typedef IsotopeCluster::IndexSet | IndexSet |
A set of peak indices. More... | |
Public Member Functions | |
FeatureFinderAlgorithmSH () | |
unsigned int | getNativeScanId (String native_id) |
virtual void | run () |
Main method that implements the actual algorithm. More... | |
Public Member Functions inherited from FeatureFinderAlgorithm | |
FeatureFinderAlgorithm () | |
default constructor More... | |
virtual | ~FeatureFinderAlgorithm () |
destructor More... | |
virtual Param | getDefaultParameters () const |
Returns the default parameters. Reimplement. More... | |
void | setData (const MapType &map, FeatureMap &features, FeatureFinder &ff) |
Sets a reference to the calling FeatureFinder. More... | |
virtual void | setSeeds (const FeatureMap &seeds) |
Sets a reference to the calling FeatureFinder. More... | |
Public Member Functions inherited from DefaultParamHandler | |
DefaultParamHandler (const String &name) | |
Constructor with name that is displayed in error messages. More... | |
DefaultParamHandler (const DefaultParamHandler &rhs) | |
Copy constructor. More... | |
virtual | ~DefaultParamHandler () |
Destructor. More... | |
virtual DefaultParamHandler & | operator= (const DefaultParamHandler &rhs) |
Assignment operator. More... | |
virtual bool | operator== (const DefaultParamHandler &rhs) const |
Equality operator. More... | |
void | setParameters (const Param ¶m) |
Sets the parameters. More... | |
const Param & | getParameters () const |
Non-mutable access to the parameters. More... | |
const Param & | getDefaults () const |
Non-mutable access to the default parameters. More... | |
const String & | getName () const |
Non-mutable access to the name. More... | |
void | setName (const String &name) |
Mutable access to the name. More... | |
const std::vector< String > & | getSubsections () const |
Non-mutable access to the registered subsections. More... | |
Static Public Member Functions | |
static FeatureFinderAlgorithm * | create () |
static const String | getProductName () |
Static Public Member Functions inherited from FeatureFinderAlgorithm | |
static void | registerChildren () |
register all derived classes here (see FeatureFinderAlgorithm_impl.h) More... | |
Protected Attributes | |
MapType | map_ |
Protected Attributes inherited from FeatureFinderAlgorithm | |
const MapType * | map_ |
Input data pointer. More... | |
FeatureMap * | features_ |
Output data pointer. More... | |
FeatureFinder * | ff_ |
Pointer to the calling FeatureFinder that is used to access the feature flags. More... | |
Protected Attributes inherited from DefaultParamHandler | |
Param | param_ |
Container for current parameters. More... | |
Param | defaults_ |
Container for default parameters. This member should be filled in the constructor of derived classes! More... | |
std::vector< String > | subsections_ |
Container for registered subsections. This member should be filled in the constructor of derived classes! More... | |
String | error_name_ |
Name that is displayed in error messages during the parameter checking. More... | |
bool | check_defaults_ |
If this member is set to false no checking if parameters in done;. More... | |
bool | warn_empty_defaults_ |
If this member is set to false no warning is emitted when defaults are empty;. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from DefaultParamHandler | |
virtual void | updateMembers_ () |
This method is used to update extra member variables at the end of the setParameters() method. More... | |
void | defaultsToParam_ () |
Updates the parameters after the defaults have been set in the constructor. More... | |
The Superhirn FeatureFinderAlgorithm.
The SuperHirn FeatureFinder algorithm is applied by calling "run" on this class, which in turn calls the FeatureFinderAlgorithmSHCtrl to execute the following algorithm:
START by feeding the datavector into startScanParsing (FTPeakDetectController.cpp) For each scan 1. Centroid it (new CentroidData instance), centroiding is done in CentroidData::calcCentroids 2. Call add_scan_raw_data of ProcessData -> this also does the de-isotoping / feature finding in ProcessData::add_scan_raw_data 3. Apply process_MS1_level_data_structure to the whole map 4. Apply feature merging (MS1FeatureMerger)**, optionally 5. Add to all LC MS/MS runs
Step 2 in ProcessData::add_scan_raw_data works on centroided peaks of a single spectrum 2.1 add to the background intensity controller BackgroundControl::addPeakMSScan which calculates intensity bins 2.2 call "go" on Deisotoper (on single spectrum level) to "de-isotope" spectra * 2.3 Converts them to objects of MSPeak type (single spectrum features)
Step 3 works on an instance of ProcessData (clustering de-isotoped peaks from single spectra over RT) and applies the following steps: 3.1 Extract elution peaks (call extract_elution_peaks of ProcessData) 3.2 For all features, it creates a SuperHirn Feature (SHFeature) 3.3 For all features, it computes the elution profile (FeatureLCProfile instance) and adds individual peaks to it
Step 3.1 calls processIntensityMaps from BackgroundController
Deisotoper (Step 2.2) The Deisotoper works on single "peak groups" which is a set of peaks that has a maximal spacing of 1 + exps Da. These peak groups are produced by the CentroidData object [CentroidData::getNextPeakGroup] which internally holds a pointer to the current peak. It basically starts with the first peaks and adds peaks until the next peak is further away than 1+eps The Deisotoper then goes through the peak list, for each charge checks which peaks matches the current charge using IsotopicDist::getMatchingPeaks, creates an instance of DeconvPeak using this mono isotopic charge and then subtracts the current monoisotopic peak from the set of peaks using IsotopicDist::subtractMatchingPeaks (probably to account for overlapping isotopic patterns). Feature Merging Step 4 in MS1FeatureMerger::startFeatureMerging() which calls createMZFeatureClusters(). This method tries to check whether a feature is inside another feature using MS1FeatureMerger::compareMZFeatureBeloning which checks whether the ppm tolerance is below a certain level, the charge state is equal and whether both features have elution profiles.
typedef MapType::SpectrumType SpectrumType |
|
static |
unsigned int getNativeScanId | ( | String | native_id | ) |
|
static |
|
virtual |
Main method that implements the actual algorithm.
Implements FeatureFinderAlgorithm.
|
protected |
OpenMS / TOPP release 2.3.0 | Documentation generated on Tue Jan 9 2018 18:22:08 using doxygen 1.8.13 |