| OpenMS 2.5.0

Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
FeatureFinderAlgorithmPicked Class Reference
Analysis » FeatureFinder

FeatureFinderAlgorithm for picked peaks. More...

`#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/FeatureFinderAlgorithmPicked.h>`

Inheritance diagram for FeatureFinderAlgorithmPicked:

## Public Types

Type definitions
typedef FeatureFinderAlgorithm::MapType | MapType
typedef MapType::SpectrumType | SpectrumType
typedef SpectrumType::FloatDataArrays | FloatDataArrays
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

| FeatureFinderAlgorithmPicked ()
| default constructor More...
void | setSeeds (const FeatureMap &seeds) override
| Sets a reference to the calling FeatureFinder. More...
void | run () override
| Main method for actual FeatureFinder. More...
Public Member Functions inherited from FeatureFinderAlgorithm
| FeatureFinderAlgorithm ()
| default constructor More...
| ~FeatureFinderAlgorithm () override
| 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...
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 &param)
| 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...

## Public Attributes

FeatureMap * | features_
| Output data pointer. More...
FeatureFinder * | ff_
| Pointer to the calling FeatureFinder that is used to access the feature flags. More...

## Protected Types

typedef Peak1D | PeakType
typedef FeatureFinderAlgorithmPickedHelperStructs::Seed | Seed
typedef FeatureFinderAlgorithmPickedHelperStructs::MassTrace | MassTrace
typedef FeatureFinderAlgorithmPickedHelperStructs::MassTraces | MassTraces
typedef FeatureFinderAlgorithmPickedHelperStructs::TheoreticalIsotopePattern | TheoreticalIsotopePattern
typedef FeatureFinderAlgorithmPickedHelperStructs::IsotopePattern | IsotopePattern

## Protected Member Functions

void | updateMembers_ () override
| This method is used to update extra member variables at the end of the setParameters() method. More...
void | abort_ (const Seed &seed, const String &reason)
| Writes the abort reason to the log file and counts occurrences for each reason. More...
double | intersection_ (const Feature &f1, const Feature &f2) const
const TheoreticalIsotopePattern & | getIsotopeDistribution_ (double mass) const
| Returns the isotope distribution for a certain mass window. More...
double | findBestIsotopeFit_ (const Seed &center, UInt charge, IsotopePattern &best_pattern) const
| Finds the best fitting position of the isotopic pattern estimate defined by `center`. More...
void | extendMassTraces_ (const IsotopePattern &pattern, MassTraces &traces, Size meta_index_overall) const
void | extendMassTrace_ (MassTrace &trace, SignedSize spectrum_index, double mz, bool increase_rt, Size meta_index_overall, double min_rt=0.0, double max_rt=0.0) const
| Extends a single mass trace in one RT direction. More...
Size | nearest_ (double pos, const MSSpectrum &spec, Size start) const
| Returns the index of the peak nearest to m/z `pos` in spectrum `spec` (linear search starting from index `start`) More...
void | findIsotope_ (double pos, Size spectrum_index, IsotopePattern &pattern, Size pattern_index, Size &peak_index) const
| Searches for an isotopic peak in the current spectrum and the adjacent spectra. More...
double | positionScore_ (double pos1, double pos2, double allowed_deviation) const
| Calculates a score between 0 and 1 for the m/z deviation of two peaks. More...
double | isotopeScore_ (const TheoreticalIsotopePattern &isotopes, IsotopePattern &pattern, bool consider_mz_distances) const
| Calculates a score between 0 and 1 for the correlation between theoretical and found isotope pattern. More...
double | intensityScore_ (Size spectrum, Size peak) const
| Compute the intensity score for the peak `peak` in spectrum `spectrum`. More...
TraceFitter * | chooseTraceFitter_ (double &tau)
| Choose a the best trace fitter for the current mass traces based on the user parameter (symmetric, asymmetric) or based on an inspection of the mass trace (auto) More...
double | intensityScore_ (Size rt_bin, Size mz_bin, double intensity) const
Handling of fitted mass traces
Methods to handle the results of the mass trace fitting process.
void | cropFeature_ (TraceFitter *fitter, const MassTraces &traces, MassTraces &new_traces)
| Creates new mass traces `new_traces` based on the fitting result and the original traces `traces`. More...
bool | checkFeatureQuality_ (TraceFitter *fitter, MassTraces &feature_traces, const double &seed_mz, const double &min_feature_score, String &error_msg, double &fit_score, double &correlation, double &final_score)
| Checks the feature based on different score thresholds and model constraints. More...
void | writeFeatureDebugInfo_ (TraceFitter *fitter, const MassTraces &traces, const MassTraces &new_traces, bool feature_ok, const String error_msg, const double final_score, const Int plot_nr, const PeakType &peak, const String path="debug/features/")
| Creates several files containing plots and viewable data of the fitted mass trace. More...
Protected Member Functions inherited from DefaultParamHandler
void | defaultsToParam_ ()
| Updates the parameters after the defaults have been set in the constructor. More...

## Protected Attributes

MapType | map_
| editable copy of the map More...
std::ofstream | log_
| Output stream for log/debug info. More...
bool | debug_
| debug flag More...
std::map< String, UInt > | aborts_
| Array of abort reasons. More...
std::map< Seed, String > | abort_reasons_
| Array of abort reasons. More...
FeatureMap | seeds_
| User-specified seed list. More...
std::vector< TheoreticalIsotopePattern > | isotope_distributions_
| Vector of precalculated isotope distributions for several mass windows. More...
Members for parameters often needed in methods
double | pattern_tolerance_
| Stores mass_trace:mz_tolerance. More...
double | trace_tolerance_
| Stores isotopic_pattern:mz_tolerance. More...
UInt | min_spectra_
| Number of spectra that have to show the same mass (for finding a mass trace) More...
UInt | max_missing_trace_peaks_
| Stores mass_trace:max_missing. More...
double | slope_bound_
| Max slope of mass trace intensities. More...
double | intensity_percentage_
| Isotope pattern intensity contribution of required peaks. More...
double | intensity_percentage_optional_
| Isotope pattern intensity contribution of optional peaks. More...
double | optional_fit_improvement_
| Minimal improvement for leaving out optional isotope. More...
double | mass_window_width_
| Width of the isotope pattern mass bins. More...
UInt | intensity_bins_
| Number of bins (in RT and MZ) for intensity significance estimation. More...
double | min_isotope_fit_
| Minimum isotope pattern fit for a feature. More...
double | min_trace_score_
| Minimum quality of a traces. More...
double | min_rt_span_
| Minimum RT range that has to be left after the fit. More...
double | max_rt_span_
| Maximum RT range the model is allowed to span. More...
double | max_feature_intersection_
| Maximum allowed feature intersection (if larger, that one of the feature is removed) More...
String | reported_mz_
| The mass type that is reported for features. 'maximum' returns the m/z value of the highest mass trace. 'average' returns the intensity-weighted average m/z value of all contained peaks. 'monoisotopic' returns the monoisotopic m/z value derived from the fitted isotope model. More...
Members for intensity significance estimation
double | intensity_rt_step_
| RT bin width. More...
double | intensity_mz_step_
| m/z bin width More...
std::vector< std::vector< std::vector< double > > > | intensity_thresholds_
| Precalculated intensity 20-quantiles (binned) More...
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...

## Private Member Functions

FeatureFinderAlgorithmPicked & | operator= (const FeatureFinderAlgorithmPicked &)
| Not implemented. More...
| FeatureFinderAlgorithmPicked (const FeatureFinderAlgorithmPicked &)
| Not implemented. More...

## Detailed Description

FeatureFinderAlgorithm for picked peaks.

Parameters of this class are:

Name | Type | Default | Restrictions | Description
--- | --- | --- | --- | ---
debug | string | false | true, false | When debug mode is activated, several files with intermediate results are written to the folder 'debug' (do not use in parallel mode).
intensity:bins | int | 10 | min: 1 | Number of bins per dimension (RT and m/z). The higher this value, the more local the intensity significance score is. This parameter should be decreased, if the algorithm is used on small regions of a map.
mass_trace:mz_tolerance | float | 0.03 | min: 0.0 | Tolerated m/z deviation of peaks belonging to the same mass trace. It should be larger than the m/z resolution of the instrument. This value must be smaller than that 1/charge_high!
mass_trace:min_spectra | int | 10 | min: 1 | Number of spectra that have to show a similar peak mass in a mass trace.
mass_trace:max_missing | int | 1 | min: 0 | Number of consecutive spectra where a high mass deviation or missing peak is acceptable. This parameter should be well below 'min_spectra'!
mass_trace:slope_bound | float | 0.1 | min: 0.0 | The maximum slope of mass trace intensities when extending from the highest peak. This parameter is important to seperate overlapping elution peaks. It should be increased if feature elution profiles fluctuate a lot.
isotopic_pattern:charge_low | int | 1 | min: 1 | Lowest charge to search for.
isotopic_pattern:charge_high | int | 4 | min: 1 | Highest charge to search for.
isotopic_pattern:mz_tolerance | float | 0.03 | min: 0.0 | Tolerated m/z deviation from the theoretical isotopic pattern. It should be larger than the m/z resolution of the instrument. This value must be smaller than that 1/charge_high!
isotopic_pattern:intensity_percentage | float | 10.0 | min: 0.0 max: 100.0 | Isotopic peaks that contribute more than this percentage to the overall isotope pattern intensity must be present.
isotopic_pattern:intensity_percentage_optional | float | 0.1 | min: 0.0 max: 100.0 | Isotopic peaks that contribute more than this percentage to the overall isotope pattern intensity can be missing.
isotopic_pattern:optional_fit_improvement | float | 2.0 | min: 0.0 max: 100.0 | Minimal percental improvement of isotope fit to allow leaving out an optional peak.
isotopic_pattern:mass_window_width | float | 25.0 | min: 1.0 max: 200.0 | Window width in Dalton for precalculation of estimated isotope distributions.
isotopic_pattern:abundance_12C | float | 98.930000000000007 | min: 0.0 max: 100.0 | Rel. abundance of the light carbon. Modify if labeled.
isotopic_pattern:abundance_14N | float | 99.632000000000005 | min: 0.0 max: 100.0 | Rel. abundance of the light nitrogen. Modify if labeled.
seed:min_score | float | 0.8 | min: 0.0 max: 1.0 | Minimum seed score a peak has to reach to be used as seed. The seed score is the geometric mean of intensity score, mass trace score and isotope pattern score. If your features show a large deviation from the averagene isotope distribution or from an gaussian elution profile, lower this score.
fit:max_iterations | int | 500 | min: 1 | Maximum number of iterations of the fit.
feature:min_score | float | 0.7 | min: 0.0 max: 1.0 | Feature score threshold for a feature to be reported. The feature score is the geometric mean of the average relative deviation and the correlation between the model and the observed peaks.
feature:min_isotope_fit | float | 0.8 | min: 0.0 max: 1.0 | Minimum isotope fit of the feature before model fitting.
feature:min_trace_score | float | 0.5 | min: 0.0 max: 1.0 | Trace score threshold. Traces below this threshold are removed after the model fitting. This parameter is important for features that overlap in m/z dimension.
feature:min_rt_span | float | 0.333 | min: 0.0 max: 1.0 | Minimum RT span in relation to extended area that has to remain after model fitting.
feature:max_rt_span | float | 2.5 | min: 0.5 | Maximum RT span in relation to extended area that the model is allowed to have.
feature:rt_shape | string | symmetric | symmetric, asymmetric | Choose model used for RT profile fitting. If set to symmetric a gauss shape is used, in case of asymmetric an EGH shape is used.
feature:max_intersection | float | 0.35 | min: 0.0 max: 1.0 | Maximum allowed intersection of features.
feature:reported_mz | string | monoisotopic | maximum, average, monoisotopic | The mass type that is reported for features. 'maximum' returns the m/z value of the highest mass trace. 'average' returns the intensity-weighted average m/z value of all contained peaks. 'monoisotopic' returns the monoisotopic m/z value derived from the fitted isotope model.
user-seed:rt_tolerance | float | 5.0 | min: 0.0 | Allowed RT deviation of seeds from the user-specified seed position.
user-seed:mz_tolerance | float | 1.1 | min: 0.0 | Allowed m/z deviation of seeds from the user-specified seed position.
user-seed:min_score | float | 0.5 | min: 0.0 max: 1.0 | Overwrites 'seed:min_score' for user-specified seeds. The cutoff is typically a bit lower in this case.
debug:pseudo_rt_shift | float | 500.0 | min: 1.0 | Pseudo RT shift used when .

Note:

- If a section name is documented, the documentation is displayed as tooltip.
- Advanced parameter names are italic.

Improvement:

  RT model with tailing/fronting (Marc)

  More general MZ model - e.g. based on co-elution or with sulfur-averagines (Marc)

Todo:

  Fix output in parallel mode, change assignment of charges to threads, add parallel TOPP test (Marc)

  Implement user-specified seed lists support (Marc)

## Member Typedef Documentation

## ◆ FloatDataArrays

typedef SpectrumType::FloatDataArrays FloatDataArrays

## ◆ IsotopePattern

typedef FeatureFinderAlgorithmPickedHelperStructs::IsotopePattern IsotopePattern

protected

## ◆ MapType

typedef FeatureFinderAlgorithm::MapType MapType

## ◆ MassTrace

typedef FeatureFinderAlgorithmPickedHelperStructs::MassTrace MassTrace

protected

## ◆ MassTraces

typedef FeatureFinderAlgorithmPickedHelperStructs::MassTraces MassTraces

protected

## ◆ PeakType

typedef Peak1D PeakType

protected

## ◆ Seed

typedef FeatureFinderAlgorithmPickedHelperStructs::Seed Seed

protected

## ◆ SpectrumType

typedef MapType::SpectrumType SpectrumType

## ◆ TheoreticalIsotopePattern

typedef FeatureFinderAlgorithmPickedHelperStructs::TheoreticalIsotopePattern TheoreticalIsotopePattern

protected

## Constructor & Destructor Documentation

## ◆ FeatureFinderAlgorithmPicked() [1/2]

FeatureFinderAlgorithmPicked | ( |  | ) |

default constructor

## ◆ FeatureFinderAlgorithmPicked() [2/2]

FeatureFinderAlgorithmPicked | ( | const FeatureFinderAlgorithmPicked & |  | ) |

private

Not implemented.

## Member Function Documentation

## ◆ abort_()

void abort_ | ( | const Seed & | seed,
|  | const String & | reason
| ) |  |

protected

Writes the abort reason to the log file and counts occurrences for each reason.

## ◆ checkFeatureQuality_()

bool checkFeatureQuality_ | ( | TraceFitter * | fitter,
|  | MassTraces & | feature_traces,
|  | const double & | seed_mz,
|  | const double & | min_feature_score,
|  | String & | error_msg,
|  | double & | fit_score,
|  | double & | correlation,
|  | double & | final_score
| ) |  |

protected

Checks the feature based on different score thresholds and model constraints.

Feature can get invalid for following reasons:

- Invalid fit: Fitted model is bigger than 'max_rt_span'
- Invalid feature after fit - too few traces or peaks left
- Invalid fit: Center outside of feature bounds
- Invalid fit: Less than 'min_rt_span' left after fit
- Feature quality too low after fit

Parameters

  fitter | The TraceFitter containing the results from the rt profile fitting step.
  feature_traces | Cropped feature mass traces.
  seed_mz | Mz of the seed
  min_feature_score | Minimal required feature score
  error_msg | Will be filled with the error message, if the feature is invalid
  fit_score | Will be filled with the fit score
  correlation | Will be filled with correlation between feature and model
  final_score | Will be filled with the final score

Returns
  true if the feature is valid

## ◆ chooseTraceFitter_()

TraceFitter* chooseTraceFitter_ | ( | double & | tau | ) |

protected

Choose a the best trace fitter for the current mass traces based on the user parameter (symmetric, asymmetric) or based on an inspection of the mass trace (auto)

Returns
  A pointer to the trace fitter that should be used.

## ◆ create()

static FeatureFinderAlgorithm* create | ( |  | ) |

static

## ◆ cropFeature_()

void cropFeature_ | ( | TraceFitter * | fitter,
|  | const MassTraces & | traces,
|  | MassTraces & | new_traces
| ) |  |

protected

Creates new mass traces `new_traces` based on the fitting result and the original traces `traces`.

Parameters

  fitter | The TraceFitter containing the results from the rt profile fitting step.
  traces | Original mass traces found in the experiment.
  new_traces | Mass traces created by cropping the original mass traces.

## ◆ extendMassTrace_()

void extendMassTrace_ | ( | MassTrace & | trace,
|  | SignedSize | spectrum_index,
|  | double | mz,
|  | bool | increase_rt,
|  | Size | meta_index_overall,
|  | double | min_rt = `0.0`,
|  | double | max_rt = `0.0`
| ) |  | const

protected

Extends a single mass trace in one RT direction.

How to use this method:

- Add the starting peak to the `trace`
- Indicate using `increase_rt` whether to extend in downstream or upstream direction

Parameters

  trace | The trace that should be extended
  spectrum_index | The index of the spectrum from which on the mass trace should be extended
  mz | The mz location (center) of the trace
  increase_rt | Indicator whether the extension is done in forward or backward direction (with respect to the current spectrum)
  meta_index_overall | The index of the overall score
  min_rt | The rt minimum up to which the trace will be extended.
  max_rt | The rt maximum up to which the trace will be extended.

Note
  This method assumes that it extends from a local maximum.
  If `min_rt` or `max_rt` are set to 0.0 no boundary is assumed in the respective direction.

## ◆ extendMassTraces_()

void extendMassTraces_ | ( | const IsotopePattern & | pattern,
|  | MassTraces & | traces,
|  | Size | meta_index_overall
| ) |  | const

protected

Extends all mass traces of an isotope pattern in one step

Parameters

  pattern | The IsotopePattern that should be extended.
  traces | The MassTraces datastructure where the extended mass traces will be stored in.
  meta_index_overall | The index of the data array where the quality scores for the given charge are stored.

## ◆ findBestIsotopeFit_()

double findBestIsotopeFit_ | ( | const Seed & | center,
|  | UInt | charge,
|  | IsotopePattern & | best_pattern
| ) |  | const

protected

Finds the best fitting position of the isotopic pattern estimate defined by `center`.

Parameters

  center | the maximum peak of the isotope distribution (contains charge as well)
  charge | The charge of the pattern
  best_pattern | Returns the indices of the isotopic peaks. If a isotopic peak is missing -1 is returned.

## ◆ findIsotope_()

void findIsotope_ | ( | double | pos,
|  | Size | spectrum_index,
|  | IsotopePattern & | pattern,
|  | Size | pattern_index,
|  | Size & | peak_index
| ) |  | const

protected

Searches for an isotopic peak in the current spectrum and the adjacent spectra.

Parameters

  pos | m/z position of the searched for peak
  spectrum_index | index of the central spectrum
  pattern | IsotopePattern to store found peaks
  pattern_index | index of the isotope in the pattern
  peak_index | starting index of the search (to avoid multiple binary searches)

## ◆ getIsotopeDistribution_()

const TheoreticalIsotopePattern& getIsotopeDistribution_ | ( | double | mass | ) | const

protected

Returns the isotope distribution for a certain mass window.

## ◆ getProductName()

static const String getProductName | ( |  | ) |

static

## ◆ intensityScore_() [1/2]

double intensityScore_ | ( | Size | spectrum,
|  | Size | peak
| ) |  | const

protected

Compute the intensity score for the peak `peak` in spectrum `spectrum`.

The intensity score is computed by interpolating the score between the 4 nearest intensity bins. The scores from the different bins are weighted by the distance of the bin center to the peak.

Parameters

  spectrum | Index of the spectrum we are currently looking at
  peak | Index of the peak that should be scored inside the spectrum `spectrum`

## ◆ intensityScore_() [2/2]

double intensityScore_ | ( | Size | rt_bin,
|  | Size | mz_bin,
|  | double | intensity
| ) |  | const

protected

## ◆ intersection_()

double intersection_ | ( | const Feature & | f1,
|  | const Feature & | f2
| ) |  | const

protected

Calculates the intersection between features. The value is normalized by the size of the smaller feature, so it ranges from 0 to 1.

## ◆ isotopeScore_()

double isotopeScore_ | ( | const TheoreticalIsotopePattern & | isotopes,
|  | IsotopePattern & | pattern,
|  | bool | consider_mz_distances
| ) |  | const

protected

Calculates a score between 0 and 1 for the correlation between theoretical and found isotope pattern.

## ◆ nearest_()

Size nearest_ | ( | double | pos,
|  | const MSSpectrum & | spec,
|  | Size | start
| ) |  | const

protected

Returns the index of the peak nearest to m/z `pos` in spectrum `spec` (linear search starting from index `start`)

## ◆ operator=()

FeatureFinderAlgorithmPicked& operator= | ( | const FeatureFinderAlgorithmPicked & |  | ) |

private

Not implemented.

## ◆ positionScore_()

double positionScore_ | ( | double | pos1,
|  | double | pos2,
|  | double | allowed_deviation
| ) |  | const

protected

Calculates a score between 0 and 1 for the m/z deviation of two peaks.

## ◆ run()

void run | ( |  | ) |

override virtual

Main method for actual FeatureFinder.

Implements FeatureFinderAlgorithm.

## ◆ setSeeds()

void setSeeds | ( | const FeatureMap & | seeds | ) |

override virtual

Sets a reference to the calling FeatureFinder.

Exceptions

  Exception::IllegalArgument | is thrown if the algorithm does not support user-specified seed lists

Reimplemented from FeatureFinderAlgorithm.

## ◆ updateMembers_()

void updateMembers_ | ( |  | ) |

override protected virtual

This method is used to update extra member variables at the end of the setParameters() method.

Also call it at the end of the derived classes' copy constructor and assignment operator.

The default implementation is empty.

Reimplemented from DefaultParamHandler.

## ◆ writeFeatureDebugInfo_()

void writeFeatureDebugInfo_ | ( | TraceFitter * | fitter,
|  | const MassTraces & | traces,
|  | const MassTraces & | new_traces,
|  | bool | feature_ok,
|  | const String | error_msg,
|  | const double | final_score,
|  | const Int | plot_nr,
|  | const PeakType & | peak,
|  | const String | path = `"debug/features/"`
| ) |  |

protected

Creates several files containing plots and viewable data of the fitted mass trace.

Parameters

  fitter | The TraceFitter containing the results from the rt profile fitting step.
  traces | Original mass traces found in the spectra
  new_traces | Cropped feature mass traces
  feature_ok | Status of the feature
  error_msg | If the feature is invalid, `error_msg` contains the reason
  final_score | Final score of the feature
  plot_nr | Index of the feature
  peak | The Seed Peak
  path | The path where to put the debug files (default is debug/features)

## Member Data Documentation

## ◆ abort_reasons_

std::map<Seed, String> abort_reasons_

protected

Array of abort reasons.

## ◆ aborts_

std::map<String, UInt> aborts_

protected

Array of abort reasons.

## ◆ debug_

bool debug_

protected

debug flag

## ◆ features_

FeatureMap* features_

Output data pointer.

## ◆ ff_

FeatureFinder* ff_

Pointer to the calling FeatureFinder that is used to access the feature flags.

## ◆ intensity_bins_

UInt intensity_bins_

protected

Number of bins (in RT and MZ) for intensity significance estimation.

## ◆ intensity_mz_step_

double intensity_mz_step_

protected

m/z bin width

## ◆ intensity_percentage_

double intensity_percentage_

protected

Isotope pattern intensity contribution of required peaks.

## ◆ intensity_percentage_optional_

double intensity_percentage_optional_

protected

Isotope pattern intensity contribution of optional peaks.

## ◆ intensity_rt_step_

double intensity_rt_step_

protected

RT bin width.

## ◆ intensity_thresholds_

std::vector<std::vector<std::vector<double> > > intensity_thresholds_

protected

Precalculated intensity 20-quantiles (binned)

## ◆ isotope_distributions_

std::vector<TheoreticalIsotopePattern> isotope_distributions_

protected

Vector of precalculated isotope distributions for several mass windows.

## ◆ log_

std::ofstream log_

mutable protected

Output stream for log/debug info.

## ◆ map_

MapType map_

protected

editable copy of the map

## ◆ mass_window_width_

double mass_window_width_

protected

Width of the isotope pattern mass bins.

## ◆ max_feature_intersection_

double max_feature_intersection_

protected

Maximum allowed feature intersection (if larger, that one of the feature is removed)

## ◆ max_missing_trace_peaks_

UInt max_missing_trace_peaks_

protected

Stores mass_trace:max_missing.

## ◆ max_rt_span_

double max_rt_span_

protected

Maximum RT range the model is allowed to span.

## ◆ min_isotope_fit_

double min_isotope_fit_

protected

Minimum isotope pattern fit for a feature.

## ◆ min_rt_span_

double min_rt_span_

protected

Minimum RT range that has to be left after the fit.

## ◆ min_spectra_

UInt min_spectra_

protected

Number of spectra that have to show the same mass (for finding a mass trace)

## ◆ min_trace_score_

double min_trace_score_

protected

Minimum quality of a traces.

## ◆ optional_fit_improvement_

double optional_fit_improvement_

protected

Minimal improvement for leaving out optional isotope.

## ◆ pattern_tolerance_

double pattern_tolerance_

protected

Stores mass_trace:mz_tolerance.

## ◆ reported_mz_

String reported_mz_

protected

The mass type that is reported for features. 'maximum' returns the m/z value of the highest mass trace. 'average' returns the intensity-weighted average m/z value of all contained peaks. 'monoisotopic' returns the monoisotopic m/z value derived from the fitted isotope model.

## ◆ seeds_

FeatureMap seeds_

protected

User-specified seed list.

## ◆ slope_bound_

double slope_bound_

protected

Max slope of mass trace intensities.

## ◆ trace_tolerance_

double trace_tolerance_

protected

Stores isotopic_pattern:mz_tolerance.