OpenMS  2.6.0
SuperHirnParameters.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // OpenMS -- Open-Source Mass Spectrometry
3 // --------------------------------------------------------------------------
4 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5 // ETH Zurich, and Freie Universitaet Berlin 2002-2020.
6 //
7 // This software is released under a three-clause BSD license:
8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 // * Neither the name of any author or any participating institution
14 // may be used to endorse or promote products derived from this software
15 // without specific prior written permission.
16 // For a full list of authors, refer to the file AUTHORS.
17 // --------------------------------------------------------------------------
18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //
30 // --------------------------------------------------------------------------
31 // $Maintainer: Peter Kunszt $
32 // $Authors: Peter Kunszt $
33 // --------------------------------------------------------------------------
34 //
35 
36 #pragma once
37 
38 #include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/SUPERHIRN/SuperHirnConfig.h>
39 
40 namespace OpenMS
41 {
42 
48  {
49 public:
50  static SuperHirnParameters * instance();
51 
53 
58 
59  double getMinTR();
60  double getMaxTR();
61  double getMinFeatureMZ();
62  double getMaxFeatureMZ();
63  int getMinFeatureChrg();
64  int getMaxFeatureChrg();
65 
66  float getIntensityThreshold();
67  double getToleranceMZ();
70  std::map<int, float> * getScanTRIndex();
71  // bool getMonoIsoDebugging();
72  // double getDebugMonoIsoMassMin();
73  // double getDebugMonoIsoMassMax();
74  // double getMS1IntensityApexPercentilCutoff();
75  double getMS1TRResolution();
76  bool centroidDataModus();
78 
80  /*
81  * @brief Maximal deviation between expected and measured isotopic intensities
82  */
83  double getIntensityCV();
84 
85  /*
86  * @brief Mass tolerance in ppm between isotopes
87  */
88  double getMassTolPpm();
89 
90  /*
91  * @brief Mass tolerance in Da between isotopes - total mass to = mass*fMassTolPpm/1000000 + fMassTolDa
92  */
93  double getMassTolDa();
94 
95  /*
96  * @brief Peak below this values are not considered as monoisotopic peaks
97  */
98  double getMinIntensity();
99 
100  /*
101  * @brief Intensities below this value are considered as 0
102  */
103  double getIntensityFloor();
104 
105  /*
106  * @brief M/Z tolerance in Parts per Million
107  */
108  double getMzTolPpm();
109 
110  /*
111  * @brief TR tolerance
112  */
113  double getTrTol();
114 
117 
119  bool ms1FeatureClustering();
120 
122  double getInitialTrTolerance();
126 
128 
129  bool isInitIsotopeDist();
130  void setInitIsotopeDist();
131 
133 
134 private:
135  /*
136  * @brief The constructors are private as only the class itself
137  * can construct an instance. Use the static instance() method to access the parameters.
138  */
142 
143  static SuperHirnParameters * instance_; // the singleton instance
144  static bool haveInstance_;
145 
150 
151  double minTR_;
152  double maxTR_;
157 
158  float intensityThreshold_; // minimal intensity level: NEVER USED
159  double toleranceMZ_; // m/z tolerance value: NEVER CONFIGURED
160  double maxInterScanRetentionTimeDistance_; // max_distance from next elution peak member in min.
161  int minNbClusterMembers_; // define minimal number of members in LC elution peaks cluster
162 
163  std::map<int, float> scanTRIndex_;
164 
165  // bool monoIsoDebugging_; // to track detected monoisotopic mass for debugging
166  // double debugMonoIsoMassMin_;
167  // double debugMonoIsoMassMax_;
168  // double ms1IntensityApexPercentilCutoff_;
170  bool centroidDataModus_; // if data are in centroid form or not
172 
173  // int reportMonoPeaks_; // 1 if info about monoisotopic peaks should be written to mono_peaks.txt
174  // std::string debugDirectory_; // Directory where peak detection debug files are written
175  // int reportScanNumber_; // if sfReportMonoPeaks is set to 1, details about this spectrum will be written to debug files
176 
177  // int ms1BaseInterScanDistance_;
178  // int ms2BaseInterScanDistance;
179  // bool ms2PeakProcessing_;
180 
181  // std::vector<double> peakExtractionScanLevels_;
182  // std::vector<double> fragmentMassScanLevels_;
183 
185  double intensityCV_;
186 
187  double massTolPpm_; // mass tolerance in ppm between isotopes
188  double massTolDa_; // mass tolerance in Da between isotopes - total mass to = mass*fMassTolPpm/1000000 + fMassTolDa
189  double minIntensity_; // peak below this values are not considered as monoisotopic peaks
190  double intensityFloor_; // intensities below this value are considered as 0
191 
192 
193  double mzTolPpm_; // tolerance in m/z and TR:
194  double trTol_;
197 
200 
206 
209 
210  };
211 
212 //------------------------- inline methods --------------------------
213 
215  {
216  }
217 
219  {
220  return *this;
221  }
222 
224  {
225  if (haveInstance_)
226  {
227  return instance_;
228  }
230  haveInstance_ = true;
231  return instance_;
232  }
233 
235  {
237  }
238 
240  {
242  }
243 
245  {
247  }
248 
250  {
252  }
253 
255  {
256  return minTR_;
257  }
258 
260  {
261  return maxTR_;
262  }
263 
265  {
266  return minFeatureMZ_;
267  }
268 
270  {
271  return maxFeatureMZ_;
272  }
273 
275  {
276  return minFeatureChrg_;
277  }
278 
280  {
281  return maxFeatureChrg_;
282  }
283 
285  {
286  return intensityThreshold_;
287  }
288 
290  {
291  return toleranceMZ_;
292  }
293 
295  {
297  }
298 
300  {
301  return minNbClusterMembers_;
302  }
303 
304  inline std::map<int, float> * SuperHirnParameters::getScanTRIndex()
305  {
306  return &scanTRIndex_;
307  }
308 
309  /*
310  inline bool SuperHirnParameters::getMonoIsoDebugging()
311  {
312  return monoIsoDebugging_;
313  }
314 
315  inline double SuperHirnParameters::getDebugMonoIsoMassMin()
316  {
317  return debugMonoIsoMassMin_;
318  }
319 
320  inline double SuperHirnParameters::getDebugMonoIsoMassMax()
321  {
322  return debugMonoIsoMassMax_;
323  }
324 
325  inline double SuperHirnParameters::getMS1IntensityApexPercentilCutoff()
326  {
327  return ms1IntensityApexPercentilCutoff_;
328  }
329  */
330 
332  {
333  return ms1TRResolution_;
334  }
335 
337  {
338  return centroidDataModus_;
339  }
340 
342  {
343  return centroidWindowWidth_;
344  }
345 
347  {
349  }
350 
352  {
353  return intensityCV_;
354  }
355 
357  {
358  return massTolPpm_;
359  }
360 
362  {
363  return massTolDa_;
364  }
365 
367  {
368  return minIntensity_;
369  }
370 
372  {
373  return intensityFloor_;
374  }
375 
377  {
378  return mzTolPpm_;
379  }
380 
382  {
383  return trTol_;
384  }
385 
387  {
389  }
390 
392  {
394  }
395 
397  {
399  }
400 
402  {
403  return ms1FeatureClustering_;
404  }
405 
407  {
408  return initIsotopeDist_;
409  }
410 
412  {
413  initIsotopeDist_ = true;
414  }
415 
417  {
419  }
420 
422  {
423  return initialTrTolerance_;
424  }
425 
427  {
429  }
430 
432  {
434  }
435 
437  {
439  }
440 
442  {
444  }
445 
446 }
447 
OpenMS::SuperHirnParameters::createFeatureElutionProfiles_
bool createFeatureElutionProfiles_
Definition: SuperHirnParameters.h:198
OpenMS::SuperHirnParameters::getMinIntensity
double getMinIntensity()
Definition: SuperHirnParameters.h:366
OpenMS::SuperHirnParameters::lowIntensityMSSignalThreshold_
double lowIntensityMSSignalThreshold_
Definition: SuperHirnParameters.h:207
OpenMS::SuperHirnParameters::instance
static SuperHirnParameters * instance()
Definition: SuperHirnParameters.h:223
OpenMS::SuperHirnParameters::getMinFeatureChrg
int getMinFeatureChrg()
Definition: SuperHirnParameters.h:274
OpenMS::SuperHirnParameters::getMaxFeatureMZ
double getMaxFeatureMZ()
Definition: SuperHirnParameters.h:269
OpenMS::SuperHirnParameters::maxFeatureChrg_
int maxFeatureChrg_
Definition: SuperHirnParameters.h:156
OpenMS::SuperHirnParameters
SuperHirn parameters singleton class containing all static configuration variables.
Definition: SuperHirnParameters.h:47
OpenMS::SuperHirnParameters::storeAllLowProbabilityMS2Scans
bool storeAllLowProbabilityMS2Scans()
Definition: SuperHirnParameters.h:391
OpenMS::SuperHirnParameters::getIntensityFloor
double getIntensityFloor()
Definition: SuperHirnParameters.h:371
OpenMS::SuperHirnParameters::minTR_
double minTR_
Definition: SuperHirnParameters.h:151
OpenMS::SuperHirnParameters::ppmToleranceForMZClustering_
double ppmToleranceForMZClustering_
Definition: SuperHirnParameters.h:205
OpenMS::SuperHirnParameters::operator=
SuperHirnParameters & operator=(const SuperHirnParameters &)
Definition: SuperHirnParameters.h:218
OpenMS::SuperHirnParameters::backgroundIntensityBinsMinBinCount_
int backgroundIntensityBinsMinBinCount_
Definition: SuperHirnParameters.h:149
OpenMS::SuperHirnParameters::minIntensity_
double minIntensity_
Definition: SuperHirnParameters.h:189
OpenMS::SuperHirnParameters::storeAllLowProbabilityMS2Scans_
bool storeAllLowProbabilityMS2Scans_
Definition: SuperHirnParameters.h:196
OpenMS::SuperHirnParameters::getMaxInterScanRetentionTimeDistance
double getMaxInterScanRetentionTimeDistance()
Definition: SuperHirnParameters.h:294
OpenMS::SuperHirnParameters::initialTrTolerance_
double initialTrTolerance_
Definition: SuperHirnParameters.h:202
OpenMS::SuperHirnParameters::maxTR_
double maxTR_
Definition: SuperHirnParameters.h:152
OpenMS::SuperHirnParameters::SuperHirnParameters
SuperHirnParameters()
OpenMS::SuperHirnParameters::toleranceMZ_
double toleranceMZ_
Definition: SuperHirnParameters.h:159
OpenMS::SuperHirnParameters::getLowIntensityMSSignalThreshold
double getLowIntensityMSSignalThreshold()
Definition: SuperHirnParameters.h:441
OpenMS::FeatureFinderAlgorithmSHCtrl
A facade for various Superhirn FeatureFinder classes. Use FeatureFinderAlgorithmSH instead.
Definition: FeatureFinderAlgorithmSHCtrl.h:55
OpenMS::SuperHirnParameters::minNbClusterMembers_
int minNbClusterMembers_
Definition: SuperHirnParameters.h:161
OpenMS::SuperHirnParameters::getBackgroundIntensityBinsIntens
double getBackgroundIntensityBinsIntens()
Definition: SuperHirnParameters.h:244
OpenMS::SuperHirnParameters::getMaxFeatureChrg
int getMaxFeatureChrg()
Definition: SuperHirnParameters.h:279
OpenMS::SuperHirnParameters::getBackgroundIntensityBinsMZ
double getBackgroundIntensityBinsMZ()
Definition: SuperHirnParameters.h:239
OpenMS::SuperHirnParameters::getBackgroundIntensityBinsTR
double getBackgroundIntensityBinsTR()
Definition: SuperHirnParameters.h:234
OpenMS::SuperHirnParameters::centroidDataModus_
bool centroidDataModus_
Definition: SuperHirnParameters.h:170
OpenMS::SuperHirnParameters::~SuperHirnParameters
~SuperHirnParameters()
OpenMS::SuperHirnParameters::trTol_
double trTol_
Definition: SuperHirnParameters.h:194
OpenMS::SuperHirnParameters::getPeptideProbabilityThreshold
double getPeptideProbabilityThreshold()
Definition: SuperHirnParameters.h:386
OpenMS
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
OpenMS::SuperHirnParameters::ms1FeatureClustering
bool ms1FeatureClustering()
Definition: SuperHirnParameters.h:401
OpenMS::SuperHirnParameters::getIntensityThreshold
float getIntensityThreshold()
Definition: SuperHirnParameters.h:284
OpenMS::SuperHirnParameters::minFeatureMZ_
double minFeatureMZ_
Definition: SuperHirnParameters.h:153
OpenMS::SuperHirnParameters::ms1FeatureClustering_
bool ms1FeatureClustering_
Definition: SuperHirnParameters.h:199
OpenMS::SuperHirnParameters::ms1FeatureMergingTrTolerance_
double ms1FeatureMergingTrTolerance_
Definition: SuperHirnParameters.h:203
OpenMS::SuperHirnParameters::scanTRIndex_
std::map< int, float > scanTRIndex_
Definition: SuperHirnParameters.h:163
OpenMS::SuperHirnParameters::massTolDa_
double massTolDa_
Definition: SuperHirnParameters.h:188
OpenMS::SuperHirnParameters::getBackgroundIntensityBinsMinBinCount
int getBackgroundIntensityBinsMinBinCount()
Definition: SuperHirnParameters.h:249
OpenMS::SuperHirnParameters::getScanTRIndex
std::map< int, float > * getScanTRIndex()
Definition: SuperHirnParameters.h:304
OpenMS::SuperHirnParameters::getPpmToleranceForMZClustering
double getPpmToleranceForMZClustering()
Definition: SuperHirnParameters.h:436
OpenMS::SuperHirnParameters::getCentroidWindowWidth
int getCentroidWindowWidth()
Definition: SuperHirnParameters.h:341
OpenMS::SuperHirnParameters::peptideProbabilityThreshold_
double peptideProbabilityThreshold_
Definition: SuperHirnParameters.h:195
OpenMS::SuperHirnParameters::centroidWindowWidth_
int centroidWindowWidth_
Definition: SuperHirnParameters.h:171
OpenMS::SuperHirnParameters::getMzTolPpm
double getMzTolPpm()
Definition: SuperHirnParameters.h:376
OpenMS::SuperHirnParameters::getMS1TRResolution
double getMS1TRResolution()
Definition: SuperHirnParameters.h:331
OpenMS::SuperHirnParameters::intensityCV_
double intensityCV_
Definition: SuperHirnParameters.h:185
OpenMS::SuperHirnParameters::getMs1FeatureMergingTrTolerance
double getMs1FeatureMergingTrTolerance()
Definition: SuperHirnParameters.h:426
OpenMS::SuperHirnParameters::backgroundIntensityBinsTR_
double backgroundIntensityBinsTR_
Definition: SuperHirnParameters.h:146
OpenMS::SuperHirnParameters::getMinNbClusterMembers
int getMinNbClusterMembers()
Definition: SuperHirnParameters.h:299
OpenMS::SuperHirnParameters::getInitialTrTolerance
double getInitialTrTolerance()
Definition: SuperHirnParameters.h:421
OpenMS::SuperHirnParameters::maxFeatureMZ_
double maxFeatureMZ_
Definition: SuperHirnParameters.h:154
OpenMS::SuperHirnParameters::centroidDataModus
bool centroidDataModus()
Definition: SuperHirnParameters.h:336
OpenMS::SuperHirnParameters::getMs1PeakAreaTrResolution
double getMs1PeakAreaTrResolution()
Definition: SuperHirnParameters.h:416
OpenMS::SuperHirnParameters::ms1PeakAreaTrResolution_
double ms1PeakAreaTrResolution_
Definition: SuperHirnParameters.h:201
OpenMS::SuperHirnParameters::detectableIsotopeFactor_
double detectableIsotopeFactor_
Definition: SuperHirnParameters.h:184
OpenMS::SuperHirnParameters::setInitIsotopeDist
void setInitIsotopeDist()
Definition: SuperHirnParameters.h:411
OpenMS::SuperHirnParameters::getMassTolPpm
double getMassTolPpm()
Definition: SuperHirnParameters.h:356
OpenMS::SuperHirnParameters::getPercentageIntensityElutionBorderVariation
double getPercentageIntensityElutionBorderVariation()
Definition: SuperHirnParameters.h:431
OpenMS::SuperHirnParameters::backgroundIntensityBinsIntens_
double backgroundIntensityBinsIntens_
Definition: SuperHirnParameters.h:148
OpenMS::SuperHirnParameters::getToleranceMZ
double getToleranceMZ()
Definition: SuperHirnParameters.h:289
OpenMS::SuperHirnParameters::createFeatureElutionProfiles
bool createFeatureElutionProfiles()
Definition: SuperHirnParameters.h:396
OpenMS::SuperHirnParameters::intensityThreshold_
float intensityThreshold_
Definition: SuperHirnParameters.h:158
OpenMS::SuperHirnParameters::isInitIsotopeDist
bool isInitIsotopeDist()
Definition: SuperHirnParameters.h:406
OpenMS::SuperHirnParameters::getIntensityCV
double getIntensityCV()
Definition: SuperHirnParameters.h:351
OpenMS::SuperHirnParameters::backgroundIntensityBinsMZ_
double backgroundIntensityBinsMZ_
Definition: SuperHirnParameters.h:147
OpenMS::SuperHirnParameters::getMassTolDa
double getMassTolDa()
Definition: SuperHirnParameters.h:361
OpenMS::SuperHirnParameters::intensityFloor_
double intensityFloor_
Definition: SuperHirnParameters.h:190
OpenMS::SuperHirnParameters::minFeatureChrg_
int minFeatureChrg_
Definition: SuperHirnParameters.h:155
OpenMS::SuperHirnParameters::haveInstance_
static bool haveInstance_
Definition: SuperHirnParameters.h:144
OpenMS::SuperHirnParameters::getMaxTR
double getMaxTR()
Definition: SuperHirnParameters.h:259
OpenMS::SuperHirnParameters::getDetectableIsotopeFactor
double getDetectableIsotopeFactor()
Definition: SuperHirnParameters.h:346
OpenMS::SuperHirnParameters::instance_
static SuperHirnParameters * instance_
Definition: SuperHirnParameters.h:143
OpenMS::SuperHirnParameters::ms1TRResolution_
double ms1TRResolution_
Definition: SuperHirnParameters.h:169
OpenMS::SuperHirnParameters::mzTolPpm_
double mzTolPpm_
Definition: SuperHirnParameters.h:193
OpenMS::SuperHirnParameters::massTolPpm_
double massTolPpm_
Definition: SuperHirnParameters.h:187
OpenMS::SuperHirnParameters::getMinTR
double getMinTR()
Definition: SuperHirnParameters.h:254
OpenMS::SuperHirnParameters::getMinFeatureMZ
double getMinFeatureMZ()
Definition: SuperHirnParameters.h:264
OpenMS::SuperHirnParameters::getTrTol
double getTrTol()
Definition: SuperHirnParameters.h:381
OpenMS::SuperHirnParameters::percentageIntensityElutionBorderVariation_
double percentageIntensityElutionBorderVariation_
Definition: SuperHirnParameters.h:204
OpenMS::SuperHirnParameters::initIsotopeDist_
bool initIsotopeDist_
Definition: SuperHirnParameters.h:208
OpenMS::SuperHirnParameters::maxInterScanRetentionTimeDistance_
double maxInterScanRetentionTimeDistance_
Definition: SuperHirnParameters.h:160