44 SIZE_OF_MT_QUANTMETHOD
46 static const std::string names_of_quantmethod[SIZE_OF_MT_QUANTMETHOD];
63 MassTrace(
const std::vector<PeakType>& trace_peaks);
83 typedef std::vector<PeakType>::iterator
iterator;
90 return trace_peaks_.begin();
95 return trace_peaks_.end();
100 return trace_peaks_.begin();
105 return trace_peaks_.end();
110 return trace_peaks_.rbegin();
115 return trace_peaks_.rend();
120 return trace_peaks_.rbegin();
125 return trace_peaks_.rend();
137 return trace_peaks_.size();
171 centroid_sd_ = tmp_sd;
184 if (trace_peaks_.size() > 1)
186 length = std::fabs(trace_peaks_.rbegin()->getRT() - trace_peaks_.begin()->getRT());
194 return std::make_pair(fwhm_start_idx_, fwhm_end_idx_);
200 return smoothed_intensities_;
206 if (trace_peaks_.size() != db_vec.size())
209 "Number of smoothed intensities deviates from mass trace size! Aborting...",
String(db_vec.size()));
212 smoothed_intensities_ = db_vec;
218 if (trace_peaks_.size() <= 1)
return 0.0;
220 return (trace_peaks_.rbegin()->getRT() - trace_peaks_.begin()->getRT()) / (trace_peaks_.size() - 1);
293 double fwhm_mz_avg = 0;
309 double centroid_mz_ = 0.0;
312 double centroid_sd_ = 0.0;
315 double centroid_rt_ = 0.0;
Definition: ConvexHull2D.h:47
Invalid value exception.
Definition: Exception.h:305
A container type that gathers peaks similar in m/z and moving along retention time.
Definition: MassTrace.h:36
void setSmoothedIntensities(const std::vector< double > &db_vec)
Set smoothed intensities (smoothing is done externally, e.g. by LowessSmoothing).
Definition: MassTrace.h:204
double computePeakArea() const
Sum intensities of all peaks in the mass trace.
void updateMedianMZ()
Compute & update centroid m/z as median of m/z values.
String getLabel() const
Gets label of mass trace.
Definition: MassTrace.h:141
const_reverse_iterator rend() const
Definition: MassTrace.h:123
void updateMedianRT()
Compute & update centroid RT as median position of intensities.
double getCentroidMZ() const
Returns the centroid m/z.
Definition: MassTrace.h:153
void setLabel(const String &label)
Sets label of mass trace.
Definition: MassTrace.h:147
std::vector< PeakType >::const_reverse_iterator const_reverse_iterator
Definition: MassTrace.h:86
const_iterator begin() const
Definition: MassTrace.h:98
void setQuantMethod(MT_QUANTMETHOD method)
determine if area or median is used for quantification
MT_QUANTMETHOD getQuantMethod() const
check if area or median is used for quantification
std::pair< Size, Size > getFWHMborders() const
Definition: MassTrace.h:192
Size getSize() const
Returns the number of peaks contained in the mass trace.
Definition: MassTrace.h:135
Size findMaxByIntPeak(bool use_smoothed_ints=false) const
Return the index of the mass trace's highest peak within the MassTrace container (based either on raw...
double getTraceLength() const
Returns the length of the trace (as difference in RT)
Definition: MassTrace.h:180
double getFWHM() const
Definition: MassTrace.h:174
double estimateFWHM(bool use_smoothed_ints=false)
static MT_QUANTMETHOD getQuantMethod(const String &val)
converts a string to enum value; returns 'SIZE_OF_MT_QUANTMETHOD' upon error
double computeMedianIntensity_() const
median of trace intensities
MassTrace()=default
Default constructor.
PeakType & operator[](const Size &mt_idx)
Random access operator.
std::vector< PeakType >::const_iterator const_iterator
Definition: MassTrace.h:84
double getIntensity(bool smoothed) const
reverse_iterator rend()
Definition: MassTrace.h:113
MassTrace(const std::vector< PeakType > &trace_peaks)
Detailed constructor for vector.
double computeFwhmAreaSmooth() const
Compute chromatographic peak area within the FWHM range.
double linearInterpolationAtY_(double xA, double xB, double yA, double yB, double y_eval) const
std::vector< PeakType >::reverse_iterator reverse_iterator
Definition: MassTrace.h:85
MassTrace(const MassTrace &)=default
Copy constructor.
std::vector< double > smoothed_intensities_
Container for smoothed intensities. Smoothing must be done externally.
Definition: MassTrace.h:321
double computeSmoothedPeakArea() const
Sum all non-negative (smoothed!) intensities in the mass trace.
String label_
Trace label.
Definition: MassTrace.h:318
double getCentroidRT() const
Returns the centroid RT.
Definition: MassTrace.h:159
double getCentroidSD() const
Definition: MassTrace.h:164
const std::vector< double > & getSmoothedIntensities() const
Gets smoothed intensities (empty if no smoothing was explicitly done beforehand!).
Definition: MassTrace.h:198
void updateSmoothedWeightedMeanRT()
double computeFwhmArea() const
void updateMeanMZ()
Compute & update centroid m/z as mean of m/z values.
void updateSmoothedMaxRT()
std::vector< PeakType >::iterator iterator
Definition: MassTrace.h:83
~MassTrace()=default
Destructor.
double getAverageMS1CycleTime() const
Get average scan time of mass trace.
Definition: MassTrace.h:216
ConvexHull2D getConvexhull() const
Return the mass trace's convex hull.
void updateWeightedMeanRT()
Compute & update centroid RT as a intensity-weighted mean of RTs.
iterator end()
Definition: MassTrace.h:93
const_iterator end() const
Definition: MassTrace.h:103
reverse_iterator rbegin()
Definition: MassTrace.h:108
const PeakType & operator[](const Size &mt_idx) const
void updateWeightedMZsd()
Compute & update m/z standard deviation of mass trace as weighted mean of m/z values.
MassTrace(const std::list< PeakType > &trace_peaks)
void setCentroidSD(const double &tmp_sd)
Definition: MassTrace.h:169
iterator begin()
Definition: MassTrace.h:88
MT_QUANTMETHOD
Definition: MassTrace.h:40
@ MT_QUANT_MEDIAN
quantify by median of intensities
Definition: MassTrace.h:42
@ MT_QUANT_HEIGHT
quantify by peak height
Definition: MassTrace.h:43
std::vector< PeakType > trace_peaks_
Actual MassTrace container for doing centroid calculation, peak width estimation etc.
Definition: MassTrace.h:306
const_reverse_iterator rbegin() const
Definition: MassTrace.h:118
void updateWeightedMeanMZ()
Compute & update centroid m/z as weighted mean of m/z values.
double getMaxIntensity(bool smoothed) const
MassTrace & operator=(const MassTrace &)=default
Assignment operator.
A 2-dimensional raw data point or peak.
Definition: Peak2D.h:29
A more convenient string class.
Definition: String.h:34
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:97
Main OpenMS namespace.
Definition: openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
Peak2D PeakType
Definition: MassTrace.h:21