OpenMS
PeakGroup Class Reference

Class describing a deconvolved mass. A mass contains multiple (LogMz) peaks of different charges and isotope indices. PeakGroup is the set of such peaks representing a single monoisotopic mass. PeakGroup also contains features that define the quality of it. It is used for PeakGroupScoring calculation. DeconvolvedSpectrum consists of PeakGroups. More...

#include <OpenMS/ANALYSIS/TOPDOWN/PeakGroup.h>

Collaboration diagram for PeakGroup:
[legend]

Public Types

enum  TargetDecoyType { target = 0 , noise_decoy , signal_decoy }
 

Public Member Functions

 PeakGroup ()=default
 default constructor More...
 
 PeakGroup (int min_abs_charge, int max_abs_charge, bool is_positive)
 Constructor specifying charge range. More...
 
 ~PeakGroup ()=default
 default destructor More...
 
 PeakGroup (const PeakGroup &)=default
 copy constructor More...
 
 PeakGroup (PeakGroup &&other)=default
 move constructor More...
 
bool operator< (const PeakGroup &a) const
 comparison operators More...
 
bool operator> (const PeakGroup &a) const
 
bool operator== (const PeakGroup &a) const
 
PeakGroupoperator= (const PeakGroup &t)=default
 assignment operator More...
 
void updateMonoMassAndIsotopeIntensities (double tol)
 add monoisotopic indices of peaks by offset and discard negative isotope peaks. Total intensity is also updated More...
 
int updateQscore (const std::vector< LogMzPeak > &noisy_peaks, const FLASHHelperClasses::PrecalculatedAveragine &avg, double min_cos, double tol, bool is_low_charge, const std::vector< double > &excluded_masses, bool is_last=false)
 Update setQscore. Cosine and SNRs are also updated. More...
 
std::vector< LogMzPeakrecruitAllPeaksInSpectrum (const MSSpectrum &spec, double tol, const FLASHHelperClasses::PrecalculatedAveragine &avg, double mono_mass, bool renew_signal_peaks=true)
 given a monoisotopic mass, recruit raw peaks from the raw input spectrum and add to this peakGroup. This is a bit time-consuming and is done for only a small number of selected high-quality peakgroups. More...
 
std::vector< LogMzPeakgetNoisyPeaks (const MSSpectrum &spec, double tol, const FLASHHelperClasses::PrecalculatedAveragine &avg) const
 Get noisy peaks for this PeakGroup without modifying any state (const-safe). This is a const alternative to recruitAllPeaksInSpectrum(..., false) for use in output/write functions. More...
 
void setScanNumber (int scan_number)
 set scan number More...
 
void setChargeIsotopeCosine (int abs_charge, float cos)
 set per abs_charge isotope cosine More...
 
void setAbsChargeRange (int min_abs_charge, int max_abs_charge)
 set min_abs_charge and max_abs_charge charge range More...
 
void setIsotopeCosine (float cos)
 set isotope cosine score More...
 
void setRepAbsCharge (int max_snr_abs_charge)
 set representative max_snr_abs_charge More...
 
void setMonoisotopicMass (double mono_mass)
 set monoisotopic mass More...
 
void setQscore (double qscore)
 set Qscore - for FLASHIda log file parsing More...
 
void setChargeScore (float charge_score)
 set charge score - for FLASHIda log file parsing More...
 
void setAvgPPMError (float error)
 set average mass ppm error More...
 
void setSNR (float snr)
 set SNR manually - for FLASHIda log file parsing More...
 
void setChargeSNR (int abs_charge, float c_snr)
 set charge SNR manually - for FLASHIda log file parsing More...
 
void setTargeted ()
 set if it is targeted More...
 
int getScanNumber () const
 get scan number More...
 
double getMonoMass () const
 get monoisotopic mass More...
 
float getIntensity () const
 get intensity More...
 
float getChargeSNR (int abs_charge) const
 get per abs_charge SNR More...
 
float getChargeIsotopeCosine (int abs_charge) const
 get per abs_charge isotope cosine More...
 
float getChargeIntensity (int abs_charge) const
 get per abs_charge intenstiy More...
 
std::tuple< double, double > getRepMzRange () const
 get mz range that results in max setQscore More...
 
std::tuple< double, double > getMzRange (int abs_charge) const
 get mz range of the charge More...
 
std::tuple< int, int > getAbsChargeRange () const
 get charge range - the actual charge values More...
 
const std::vector< float > & getIsotopeIntensities () const
 get per isotope intensities More...
 
float getIsotopeCosine () const
 get isotopic cosine score More...
 
float getPeakOccupancy () const
 get the density of the peaks within charge and isotope range More...
 
int getRepAbsCharge () const
 get representative charge More...
 
double getQscore () const
 Get the one-dimensional quality score for this peak group. More...
 
double getQscore2D () const
 Get the two-dimensional quality score incorporating feature-level information. More...
 
float getSNR () const
 get total SNR More...
 
float getChargeScore () const
 get charge score More...
 
float getAvgPPMError () const
 get average mass ppm error; More...
 
float getAvgDaError () const
 get average mass ppm error; More...
 
bool isPositive () const
 get if it is positive mode More...
 
bool isTargeted () const
 get if it is targeted More...
 
PeakGroup::TargetDecoyType getTargetDecoyType () const
 get the target decoy type of this More...
 
void setTargetDecoyType (PeakGroup::TargetDecoyType index)
 for this PeakGroup, specify the target decoy type. More...
 
float getQvalue () const
 
void setQvalue (double q)
 
void setIsotopeDaDistance (double d)
 set distance between consecutive isotopes More...
 
double getIsotopeDaDistance () const
 get distance between consecutive isotopes More...
 
int getMinNegativeIsotopeIndex () const
 get minimum neagative isotope index More...
 
void setIndex (uint i)
 set index of this peak group More...
 
void setQscore2D (double fqscore)
 Set the two-dimensional quality score for this peak group. More...
 
void setFeatureIndex (uint findex)
 Set the feature index for this peak group. More...
 
uint getIndex () const
 get index of this peak group More...
 
uint getFeatureIndex () const
 Get the feature index associated with this peak group. More...
 
std::vector< FLASHHelperClasses::LogMzPeak >::const_iterator begin () const noexcept
 iterators for the signal LogMz peaks in this PeakGroup More...
 
std::vector< FLASHHelperClasses::LogMzPeak >::const_iterator end () const noexcept
 
std::vector< FLASHHelperClasses::LogMzPeak >::iterator begin () noexcept
 
std::vector< FLASHHelperClasses::LogMzPeak >::iterator end () noexcept
 
const FLASHHelperClasses::LogMzPeakoperator[] (Size i) const
 
std::vector< float > getMassErrors (bool ppm=true) const
 Get mass errors for each isotope index in this peak group. More...
 
void push_back (const FLASHHelperClasses::LogMzPeak &pg)
 vector operators for the LogMzPeaks in this PeakGroup More...
 
FLASHHelperClasses::LogMzPeakback ()
 
Size size () const noexcept
 
void reserve (Size n)
 
bool empty () const
 
void swap (std::vector< FLASHHelperClasses::LogMzPeak > &x)
 
void sort ()
 
std::tuple< std::vector< double >, std::vector< double > > getDLVector (const MSSpectrum &spec, const Size charge_count, const Size isotope_count, const FLASHHelperClasses::PrecalculatedAveragine &avg, double tol)
 Get deep learning feature vectors (signal and noise). More...
 

Private Types

typedef FLASHHelperClasses::LogMzPeak LogMzPeak
 
typedef FLASHHelperClasses::PrecalculatedAveragine PrecalculatedAveragine
 

Private Member Functions

void updateChargeFitScoreAndChargeIntensities_ (bool is_low_charge)
 update chargefit score and also update per charge intensities here. More...
 
void updateAvgMassError_ ()
 update avg ppm error More...
 
float getPPMError_ (const LogMzPeak &p) const
 update avg Da error More...
 
float getDaError_ (const LogMzPeak &p) const
 get Da error of a logMzPeak from the closest isotope More...
 
void updateSNR_ (float mul_factor)
 using signal and total (signal + noise) power, update SNR value More...
 
void clear_ ()
 clear peaks More...
 
void getPerIsotopeIntensities_ (std::vector< float > &intensities, int &min_isotope_index, int &max_isotope_index, int abs_charge, int min_negative_isotope_index, double tol)
 calculate per isotope intensities. When abs_charge == 0, all peaks are considered More...
 
void updatePerChargeInformation_ (const std::vector< LogMzPeak > &noisy_peaks, double tol, bool is_last)
 update per charge intensities, noise power, and squared intensities. used for SNR estimation More...
 
void updateChargeRange_ ()
 update the charge range using the calculated per charge information More...
 
void updatePerChargeCos_ (const FLASHHelperClasses::PrecalculatedAveragine &avg, double tol)
 update per charge cosine values More...
 
float getNoisePeakPower_ (const std::vector< LogMzPeak > &noisy_peaks, int z, double tol) const
 

Private Attributes

std::vector< FLASHHelperClasses::LogMzPeaklogMzpeaks_
 log Mz peaks More...
 
std::vector< FLASHHelperClasses::LogMzPeaknegative_iso_peaks_
 negative isotope index peaks More...
 
std::vector< float > per_charge_sum_signal_squared_
 per charge summed signal squared, noise pwr, SNR, isotope cosine, and intensity vectors More...
 
std::vector< float > per_charge_noise_pwr_
 
std::vector< float > per_charge_cos_
 
std::vector< float > per_charge_int_
 
std::vector< float > per_charge_snr_
 
std::vector< float > per_isotope_int_
 per isotope intensity. More...
 
int min_abs_charge_ = 0
 charge range More...
 
int max_abs_charge_ = -1
 
uint index_ = 0
 peak group index More...
 
uint findex_ = 0
 feature index in which this peak group is included. 0 if not included in any feature More...
 
int scan_number_ = 0
 scan number More...
 
bool is_positive_ = false
 is positive or not More...
 
bool is_targeted_ = false
 if this peak group has been targeted More...
 
double monoisotopic_mass_ = -1.0
 monoisotopic mass More...
 
float intensity_ = 0.f
 summed intensity More...
 
PeakGroup::TargetDecoyType target_decoy_type_ = target
 index to specify if this peak_group is a target, a noise, or a signal decoy. More...
 
int min_negative_isotope_index_ = -1
 
double iso_da_distance_ = Constants::ISOTOPE_MASSDIFF_55K_U
 distance between consecutive isotopes. Can be different for decoys More...
 
int max_snr_abs_charge_ = -1
 
float isotope_cosine_score_ = 0.f
 cosine score between averagine and the observed isotope pattern More...
 
float charge_score_ = 0.f
 charge fit score More...
 
double qscore_ = .0
 quality score More...
 
double qscore2D_ = -1.0f
 quality score when considering correlation between masses within the same feature. More...
 
float avg_ppm_error_ = 0.f
 
float avg_da_error_ = 0.f
 
float snr_ = 0.f
 total SNR More...
 
float qvalue_ = 1.f
 q value, only active when FDR report is activated. More...
 

Detailed Description

Class describing a deconvolved mass. A mass contains multiple (LogMz) peaks of different charges and isotope indices. PeakGroup is the set of such peaks representing a single monoisotopic mass. PeakGroup also contains features that define the quality of it. It is used for PeakGroupScoring calculation. DeconvolvedSpectrum consists of PeakGroups.

Member Typedef Documentation

◆ LogMzPeak

◆ PrecalculatedAveragine

Member Enumeration Documentation

◆ TargetDecoyType

target decoy type of PeakGroup. This specifies if a PeakGroup is a target (0), noise decoy (1),or signal decoy (2)

Enumerator
target 
noise_decoy 
signal_decoy 

Constructor & Destructor Documentation

◆ PeakGroup() [1/4]

PeakGroup ( )
default

default constructor

◆ PeakGroup() [2/4]

PeakGroup ( int  min_abs_charge,
int  max_abs_charge,
bool  is_positive 
)
explicit

Constructor specifying charge range.

Parameters
min_abs_chargemin Charge
max_abs_chargemax Charge
is_positivewhether MS is positive mode

◆ ~PeakGroup()

~PeakGroup ( )
default

default destructor

◆ PeakGroup() [3/4]

PeakGroup ( const PeakGroup )
default

copy constructor

◆ PeakGroup() [4/4]

PeakGroup ( PeakGroup &&  other)
default

move constructor

Member Function Documentation

◆ back()

◆ begin() [1/2]

std::vector<FLASHHelperClasses::LogMzPeak>::const_iterator begin ( ) const
noexcept

iterators for the signal LogMz peaks in this PeakGroup

◆ begin() [2/2]

std::vector<FLASHHelperClasses::LogMzPeak>::iterator begin ( )
noexcept

◆ clear_()

void clear_ ( )
private

clear peaks

◆ empty()

bool empty ( ) const

◆ end() [1/2]

std::vector<FLASHHelperClasses::LogMzPeak>::const_iterator end ( ) const
noexcept

◆ end() [2/2]

std::vector<FLASHHelperClasses::LogMzPeak>::iterator end ( )
noexcept

◆ getAbsChargeRange()

std::tuple<int, int> getAbsChargeRange ( ) const

get charge range - the actual charge values

◆ getAvgDaError()

float getAvgDaError ( ) const

get average mass ppm error;

◆ getAvgPPMError()

float getAvgPPMError ( ) const

get average mass ppm error;

◆ getChargeIntensity()

float getChargeIntensity ( int  abs_charge) const

get per abs_charge intenstiy

◆ getChargeIsotopeCosine()

float getChargeIsotopeCosine ( int  abs_charge) const

get per abs_charge isotope cosine

◆ getChargeScore()

float getChargeScore ( ) const

get charge score

◆ getChargeSNR()

float getChargeSNR ( int  abs_charge) const

get per abs_charge SNR

◆ getDaError_()

float getDaError_ ( const LogMzPeak p) const
private

get Da error of a logMzPeak from the closest isotope

◆ getDLVector()

std::tuple<std::vector<double>, std::vector<double> > getDLVector ( const MSSpectrum spec,
const Size  charge_count,
const Size  isotope_count,
const FLASHHelperClasses::PrecalculatedAveragine avg,
double  tol 
)

Get deep learning feature vectors (signal and noise).

Parameters
specRaw spectrum to extract features from.
charge_countNumber of charges to include in the feature vector.
isotope_countNumber of isotopes to include in the feature vector.
avgPrecalculated averagine model for theoretical isotope patterns.
tolTolerance in ppm for peak matching.
Returns
Tuple of (signal_vector, noise_vector) for ML model input.

◆ getFeatureIndex()

uint getFeatureIndex ( ) const

Get the feature index associated with this peak group.

The feature index identifies which traced feature (isotope pattern across multiple scans) this peak group belongs to.

Returns
The feature index. Returns 0 if no feature has been assigned (default initialization).

◆ getIndex()

uint getIndex ( ) const

get index of this peak group

◆ getIntensity()

float getIntensity ( ) const

get intensity

◆ getIsotopeCosine()

float getIsotopeCosine ( ) const

get isotopic cosine score

◆ getIsotopeDaDistance()

double getIsotopeDaDistance ( ) const

get distance between consecutive isotopes

◆ getIsotopeIntensities()

const std::vector<float>& getIsotopeIntensities ( ) const

get per isotope intensities

◆ getMassErrors()

std::vector<float> getMassErrors ( bool  ppm = true) const

Get mass errors for each isotope index in this peak group.

Calculates the average mass error for peaks at each isotope index, comparing observed masses to theoretical masses from the averagine model.

Parameters
ppmIf true (default), returns errors in parts-per-million (ppm). If false, returns errors in Daltons (Da).
Returns
Vector of average mass errors, one per unique isotope index present in the peak group. Returns an empty vector if no peaks are present.

◆ getMinNegativeIsotopeIndex()

int getMinNegativeIsotopeIndex ( ) const

get minimum neagative isotope index

◆ getMonoMass()

double getMonoMass ( ) const

get monoisotopic mass

◆ getMzRange()

std::tuple<double, double> getMzRange ( int  abs_charge) const

get mz range of the charge

◆ getNoisePeakPower_()

float getNoisePeakPower_ ( const std::vector< LogMzPeak > &  noisy_peaks,
int  z,
double  tol 
) const
private

calculate noisy peak power. The goal of this function is to group noisy peaks that are possibly from the same molecule and sum their intensities before calculate power

Parameters
noisy_peaksnoisy peaks to calculate power
zcharge
tolppm tolerance
Returns
calculated noise power

◆ getNoisyPeaks()

std::vector<LogMzPeak> getNoisyPeaks ( const MSSpectrum spec,
double  tol,
const FLASHHelperClasses::PrecalculatedAveragine avg 
) const

Get noisy peaks for this PeakGroup without modifying any state (const-safe). This is a const alternative to recruitAllPeaksInSpectrum(..., false) for use in output/write functions.

Parameters
specraw spectrum
tolppm tolerance
avgprecalculated averagine
Returns
returns the noisy peaks - raw peaks within range that don't match the isotope pattern

◆ getPeakOccupancy()

float getPeakOccupancy ( ) const

get the density of the peaks within charge and isotope range

Get the density of peaks within charge and isotope range.

Returns
Peak occupancy value (0-1) representing the fraction of expected peaks that are present

◆ getPerIsotopeIntensities_()

void getPerIsotopeIntensities_ ( std::vector< float > &  intensities,
int &  min_isotope_index,
int &  max_isotope_index,
int  abs_charge,
int  min_negative_isotope_index,
double  tol 
)
private

calculate per isotope intensities. When abs_charge == 0, all peaks are considered

◆ getPPMError_()

float getPPMError_ ( const LogMzPeak p) const
private

update avg Da error

◆ getQscore()

double getQscore ( ) const

Get the one-dimensional quality score for this peak group.

The Q-score represents the confidence/quality of the peak group based on isotope pattern matching, charge state consistency, and signal-to-noise ratio.

Returns
Quality score in range [0, 1], where higher values indicate better quality. Returns 0.0 if the score has not been calculated (default initialization).

◆ getQscore2D()

double getQscore2D ( ) const

Get the two-dimensional quality score incorporating feature-level information.

The 2D Q-score extends the 1D score by incorporating additional dimensions such as retention time consistency, ion mobility correlation, or MS1-MS2 relationship. This score is typically set after feature tracing/grouping across scans.

Returns
The maximum of the 1D Q-score and the 2D Q-score, in range [0, 1]. If the 2D score has not been set (initialized to -1.0), effectively returns the 1D Q-score.

◆ getQvalue()

float getQvalue ( ) const

Get q value

◆ getRepAbsCharge()

int getRepAbsCharge ( ) const

get representative charge

◆ getRepMzRange()

std::tuple<double, double> getRepMzRange ( ) const

get mz range that results in max setQscore

◆ getScanNumber()

int getScanNumber ( ) const

get scan number

◆ getSNR()

float getSNR ( ) const

get total SNR

◆ getTargetDecoyType()

PeakGroup::TargetDecoyType getTargetDecoyType ( ) const

get the target decoy type of this

◆ isPositive()

bool isPositive ( ) const

get if it is positive mode

◆ isTargeted()

bool isTargeted ( ) const

get if it is targeted

◆ operator<()

bool operator< ( const PeakGroup a) const

comparison operators

◆ operator=()

PeakGroup& operator= ( const PeakGroup t)
default

assignment operator

◆ operator==()

bool operator== ( const PeakGroup a) const

◆ operator>()

bool operator> ( const PeakGroup a) const

◆ operator[]()

const FLASHHelperClasses::LogMzPeak& operator[] ( Size  i) const

◆ push_back()

void push_back ( const FLASHHelperClasses::LogMzPeak pg)

vector operators for the LogMzPeaks in this PeakGroup

◆ recruitAllPeaksInSpectrum()

std::vector<LogMzPeak> recruitAllPeaksInSpectrum ( const MSSpectrum spec,
double  tol,
const FLASHHelperClasses::PrecalculatedAveragine avg,
double  mono_mass,
bool  renew_signal_peaks = true 
)

given a monoisotopic mass, recruit raw peaks from the raw input spectrum and add to this peakGroup. This is a bit time-consuming and is done for only a small number of selected high-quality peakgroups.

Parameters
specraw spectrum
tolppm tolerance
avgprecalculated averagine
mono_massmonoisotopic mass
renew_signal_peaksWhether or not the signal peaks should be renewed during recruitment
Returns
returns the noisy peaks for this peakgroup - i.e., the raw peaks within the range of this peakGroup that are not matched to any istope of this peakGroup mass.

◆ reserve()

void reserve ( Size  n)

◆ setAbsChargeRange()

void setAbsChargeRange ( int  min_abs_charge,
int  max_abs_charge 
)

set min_abs_charge and max_abs_charge charge range

◆ setAvgPPMError()

void setAvgPPMError ( float  error)

set average mass ppm error

◆ setChargeIsotopeCosine()

void setChargeIsotopeCosine ( int  abs_charge,
float  cos 
)

set per abs_charge isotope cosine

◆ setChargeScore()

void setChargeScore ( float  charge_score)

set charge score - for FLASHIda log file parsing

◆ setChargeSNR()

void setChargeSNR ( int  abs_charge,
float  c_snr 
)

set charge SNR manually - for FLASHIda log file parsing

◆ setFeatureIndex()

void setFeatureIndex ( uint  findex)

Set the feature index for this peak group.

Associates this peak group with a feature (traced isotope pattern across scans).

Parameters
findexThe feature index to assign to this peak group.

◆ setIndex()

void setIndex ( uint  i)

set index of this peak group

◆ setIsotopeCosine()

void setIsotopeCosine ( float  cos)

set isotope cosine score

◆ setIsotopeDaDistance()

void setIsotopeDaDistance ( double  d)

set distance between consecutive isotopes

◆ setMonoisotopicMass()

void setMonoisotopicMass ( double  mono_mass)

set monoisotopic mass

◆ setQscore()

void setQscore ( double  qscore)

set Qscore - for FLASHIda log file parsing

◆ setQscore2D()

void setQscore2D ( double  fqscore)

Set the two-dimensional quality score for this peak group.

The 2D Q-score incorporates feature-level information such as retention time consistency or ion mobility correlation across multiple scans.

Parameters
fqscoreThe 2D quality score to set, typically in range [0, 1].

◆ setQvalue()

void setQvalue ( double  q)

set peakGroup q value

◆ setRepAbsCharge()

void setRepAbsCharge ( int  max_snr_abs_charge)

set representative max_snr_abs_charge

◆ setScanNumber()

void setScanNumber ( int  scan_number)

set scan number

◆ setSNR()

void setSNR ( float  snr)

set SNR manually - for FLASHIda log file parsing

◆ setTargetDecoyType()

void setTargetDecoyType ( PeakGroup::TargetDecoyType  index)

for this PeakGroup, specify the target decoy type.

◆ setTargeted()

void setTargeted ( )

set if it is targeted

◆ size()

Size size ( ) const
noexcept

◆ sort()

void sort ( )

◆ swap()

void swap ( std::vector< FLASHHelperClasses::LogMzPeak > &  x)

◆ updateAvgMassError_()

void updateAvgMassError_ ( )
private

update avg ppm error

◆ updateChargeFitScoreAndChargeIntensities_()

void updateChargeFitScoreAndChargeIntensities_ ( bool  is_low_charge)
private

update chargefit score and also update per charge intensities here.

◆ updateChargeRange_()

void updateChargeRange_ ( )
private

update the charge range using the calculated per charge information

◆ updateMonoMassAndIsotopeIntensities()

void updateMonoMassAndIsotopeIntensities ( double  tol)

add monoisotopic indices of peaks by offset and discard negative isotope peaks. Total intensity is also updated

◆ updatePerChargeCos_()

void updatePerChargeCos_ ( const FLASHHelperClasses::PrecalculatedAveragine avg,
double  tol 
)
private

update per charge cosine values

◆ updatePerChargeInformation_()

void updatePerChargeInformation_ ( const std::vector< LogMzPeak > &  noisy_peaks,
double  tol,
bool  is_last 
)
private

update per charge intensities, noise power, and squared intensities. used for SNR estimation

◆ updateQscore()

int updateQscore ( const std::vector< LogMzPeak > &  noisy_peaks,
const FLASHHelperClasses::PrecalculatedAveragine avg,
double  min_cos,
double  tol,
bool  is_low_charge,
const std::vector< double > &  excluded_masses,
bool  is_last = false 
)

Update setQscore. Cosine and SNRs are also updated.

Parameters
noisy_peaksnoisy peaks to calculate setQscore
avgprecalculated averagine
min_costhe peak groups with cosine score less than this will have setQscore 0.
tolppm tolerance
is_low_chargeif set, charge fit score calculation becomes less stroct
excluded_massesmasses to exclude
is_lastif this is set, it means that PeakGroupScoring calculation is at its last iteration. More detailed noise power calculation is activated and mono mass is not recalibrated.
Returns
returns isotope offset after isotope cosine calculation

◆ updateSNR_()

void updateSNR_ ( float  mul_factor)
private

using signal and total (signal + noise) power, update SNR value

Member Data Documentation

◆ avg_da_error_

float avg_da_error_ = 0.f
private

◆ avg_ppm_error_

float avg_ppm_error_ = 0.f
private

◆ charge_score_

float charge_score_ = 0.f
private

charge fit score

◆ findex_

uint findex_ = 0
private

feature index in which this peak group is included. 0 if not included in any feature

◆ index_

uint index_ = 0
private

peak group index

◆ intensity_

float intensity_ = 0.f
private

summed intensity

◆ is_positive_

bool is_positive_ = false
private

is positive or not

◆ is_targeted_

bool is_targeted_ = false
private

if this peak group has been targeted

◆ iso_da_distance_

double iso_da_distance_ = Constants::ISOTOPE_MASSDIFF_55K_U
private

distance between consecutive isotopes. Can be different for decoys

◆ isotope_cosine_score_

float isotope_cosine_score_ = 0.f
private

cosine score between averagine and the observed isotope pattern

◆ logMzpeaks_

std::vector<FLASHHelperClasses::LogMzPeak> logMzpeaks_
private

log Mz peaks

◆ max_abs_charge_

int max_abs_charge_ = -1
private

◆ max_snr_abs_charge_

int max_snr_abs_charge_ = -1
private

scoring variables the charge for which the charge SNR is maximized

◆ min_abs_charge_

int min_abs_charge_ = 0
private

charge range

◆ min_negative_isotope_index_

int min_negative_isotope_index_ = -1
private

up to which negative isotope index should be considered for isotope pattern matching. By considering negative isotopes, one can reduce isotope index error.

◆ monoisotopic_mass_

double monoisotopic_mass_ = -1.0
private

monoisotopic mass

◆ negative_iso_peaks_

std::vector<FLASHHelperClasses::LogMzPeak> negative_iso_peaks_
private

negative isotope index peaks

◆ per_charge_cos_

std::vector<float> per_charge_cos_
private

◆ per_charge_int_

std::vector<float> per_charge_int_
private

◆ per_charge_noise_pwr_

std::vector<float> per_charge_noise_pwr_
private

◆ per_charge_snr_

std::vector<float> per_charge_snr_
private

◆ per_charge_sum_signal_squared_

std::vector<float> per_charge_sum_signal_squared_
private

per charge summed signal squared, noise pwr, SNR, isotope cosine, and intensity vectors

◆ per_isotope_int_

std::vector<float> per_isotope_int_
private

per isotope intensity.

◆ qscore2D_

double qscore2D_ = -1.0f
private

quality score when considering correlation between masses within the same feature.

◆ qscore_

double qscore_ = .0
private

quality score

◆ qvalue_

float qvalue_ = 1.f
private

q value, only active when FDR report is activated.

◆ scan_number_

int scan_number_ = 0
private

scan number

◆ snr_

float snr_ = 0.f
private

total SNR

◆ target_decoy_type_

PeakGroup::TargetDecoyType target_decoy_type_ = target
private

index to specify if this peak_group is a target, a noise, or a signal decoy.