OpenMS  2.7.0
Static Public Member Functions | List of all members
XQuestScores Class Reference

An implementation of the scores for cross-link identification from the xQuest algorithm (O. Rinner et al., 2008, "Identification of cross-linked peptides from large sequence databases") More...

#include <OpenMS/ANALYSIS/XLMS/XQuestScores.h>

Static Public Member Functions

static float preScore (Size matched_alpha, Size ions_alpha, Size matched_beta, Size ions_beta)
 compute a simple and fast to compute pre-score for a cross-link spectrum match More...
 
static float preScore (Size matched_alpha, Size ions_alpha)
 compute a simple and fast to compute pre-score for a mono-link spectrum match More...
 
static double matchOddsScore (const PeakSpectrum &theoretical_spec, const Size matched_size, double fragment_mass_tolerance, bool fragment_mass_tolerance_unit_ppm, bool is_xlink_spectrum=false, Size n_charges=1)
 compute the match-odds score, a score based on the probability of getting the given number of matched peaks by chance More...
 
static double matchOddsScoreSimpleSpec (const std::vector< SimpleTSGXLMS::SimplePeak > &theoretical_spec, const Size matched_size, double fragment_mass_tolerance, bool fragment_mass_tolerance_unit_ppm, bool is_xlink_spectrum=false, Size n_charges=1)
 
static double logOccupancyProb (const PeakSpectrum &theoretical_spec, const Size matched_size, double fragment_mass_tolerance, bool fragment_mass_tolerance_unit_ppm)
 compute the logOccupancyProb score, similar to the match_odds, a score based on the probability of getting the given number of matched peaks by chance More...
 
static double weightedTICScoreXQuest (Size alpha_size, Size beta_size, double intsum_alpha, double intsum_beta, double total_current, bool type_is_cross_link)
 compute the weighted total ion current score for a cross-link. Reimplementation from xQuest. More...
 
static double weightedTICScore (Size alpha_size, Size beta_size, double intsum_alpha, double intsum_beta, double total_current, bool type_is_cross_link)
 compute the weighted total ion current score for a cross-link. Scaling changed from original xQuest. More...
 
static double matchedCurrentChain (const std::vector< std::pair< Size, Size > > &matched_spec_linear, const std::vector< std::pair< Size, Size > > &matched_spec_xlinks, const PeakSpectrum &spectrum_linear_peaks, const PeakSpectrum &spectrum_xlink_peaks)
 computes sum of peak intensities of matched peaks for either the alpha or the beta peptide More...
 
static double totalMatchedCurrent (const std::vector< std::pair< Size, Size > > &matched_spec_linear_alpha, const std::vector< std::pair< Size, Size > > &matched_spec_linear_beta, const std::vector< std::pair< Size, Size > > &matched_spec_xlinks_alpha, const std::vector< std::pair< Size, Size > > &matched_spec_xlinks_beta, const PeakSpectrum &spectrum_linear_peaks, const PeakSpectrum &spectrum_xlink_peaks)
 computes sum of peak intensities of all matched peaks More...
 
static std::vector< double > xCorrelation (const PeakSpectrum &spec1, const PeakSpectrum &spec2, Int maxshift, double tolerance)
 computes a crude cross-correlation between two spectra. Crude, because it uses a static binsize based on a tolerance in Da and it uses equal intensities for all peaks More...
 
static double xCorrelationPrescore (const PeakSpectrum &spec1, const PeakSpectrum &spec2, double tolerance)
 computes a crude dot product between two spectra. Crude, because it uses a static binsize based on a tolerance in Da and it uses equal intensities for all peaks More...
 

Detailed Description

An implementation of the scores for cross-link identification from the xQuest algorithm (O. Rinner et al., 2008, "Identification of cross-linked peptides from large sequence databases")

Member Function Documentation

◆ logOccupancyProb()

static double logOccupancyProb ( const PeakSpectrum theoretical_spec,
const Size  matched_size,
double  fragment_mass_tolerance,
bool  fragment_mass_tolerance_unit_ppm 
)
static

compute the logOccupancyProb score, similar to the match_odds, a score based on the probability of getting the given number of matched peaks by chance

Parameters
theoretical_spectheoretical spectrum, sorted by position
matched_sizenumber of matched peaks between experimental and theoretical spectra
fragment_mass_tolerancethe tolerance of the alignment
fragment_mass_tolerance_unitthe tolerance unit of the alignment, true = ppm, false = Da

◆ matchedCurrentChain()

static double matchedCurrentChain ( const std::vector< std::pair< Size, Size > > &  matched_spec_linear,
const std::vector< std::pair< Size, Size > > &  matched_spec_xlinks,
const PeakSpectrum spectrum_linear_peaks,
const PeakSpectrum spectrum_xlink_peaks 
)
static

computes sum of peak intensities of matched peaks for either the alpha or the beta peptide

Parameters
alignmentbetween linear alpha or beta ions and linear experimental peaks
alignmentbetween xlink alpha or beta ions and xlink experimental peaks
experimentallinear ion spectrum
experimentalxlink spectrum

◆ matchOddsScore()

static double matchOddsScore ( const PeakSpectrum theoretical_spec,
const Size  matched_size,
double  fragment_mass_tolerance,
bool  fragment_mass_tolerance_unit_ppm,
bool  is_xlink_spectrum = false,
Size  n_charges = 1 
)
static

compute the match-odds score, a score based on the probability of getting the given number of matched peaks by chance

Parameters
theoreticalspectrum, sorted by position
alignmentbetween the theoretical and the experimental spectra
fragmentmass tolerance of the alignment
fragmentmass tolerance unit of the alignment, true = ppm, false = Da
typeof cross-link, true = cross-link, false = mono-link
numberof considered charges in the theoretical spectrum

◆ matchOddsScoreSimpleSpec()

static double matchOddsScoreSimpleSpec ( const std::vector< SimpleTSGXLMS::SimplePeak > &  theoretical_spec,
const Size  matched_size,
double  fragment_mass_tolerance,
bool  fragment_mass_tolerance_unit_ppm,
bool  is_xlink_spectrum = false,
Size  n_charges = 1 
)
static

◆ preScore() [1/2]

static float preScore ( Size  matched_alpha,
Size  ions_alpha 
)
static

compute a simple and fast to compute pre-score for a mono-link spectrum match

Parameters
numberof experimental peaks matched to theoretical linear ions from the alpha peptide
numberof theoretical ions from the alpha peptide

◆ preScore() [2/2]

static float preScore ( Size  matched_alpha,
Size  ions_alpha,
Size  matched_beta,
Size  ions_beta 
)
static

compute a simple and fast to compute pre-score for a cross-link spectrum match

Parameters
numberof experimental peaks matched to theoretical linear ions from the alpha peptide
numberof theoretical ions from the alpha peptide
numberof experimental peaks matched to theoretical linear ions from the beta peptide
numberof theoretical ions from the beta peptide

◆ totalMatchedCurrent()

static double totalMatchedCurrent ( const std::vector< std::pair< Size, Size > > &  matched_spec_linear_alpha,
const std::vector< std::pair< Size, Size > > &  matched_spec_linear_beta,
const std::vector< std::pair< Size, Size > > &  matched_spec_xlinks_alpha,
const std::vector< std::pair< Size, Size > > &  matched_spec_xlinks_beta,
const PeakSpectrum spectrum_linear_peaks,
const PeakSpectrum spectrum_xlink_peaks 
)
static

computes sum of peak intensities of all matched peaks

Parameters
alignmentbetween linear alpha ions and linear experimental peaks
alignmentbetween linear beta ions and linear experimental peaks
alignmentbetween xlink alpha ions and xlink experimental peaks
alignmentbetween xlink beta ions and xlink experimental peaks
experimentallinear ion spectrum
experimentalxlink spectrum

◆ weightedTICScore()

static double weightedTICScore ( Size  alpha_size,
Size  beta_size,
double  intsum_alpha,
double  intsum_beta,
double  total_current,
bool  type_is_cross_link 
)
static

compute the weighted total ion current score for a cross-link. Scaling changed from original xQuest.

Parameters
sequencelength of alpha peptide
sequencelength of beta peptide
intensitysum of matched peaks from alpha peptide
intensitysum of matched peaks from beta peptide
typeof cross-link, true = cross-link, false = mono-link
sumof peak intensities of the experimental spectrum
true= cross-link, false = mono-link. in case of a mono-link, beta_size and intsum_beta should be 0

◆ weightedTICScoreXQuest()

static double weightedTICScoreXQuest ( Size  alpha_size,
Size  beta_size,
double  intsum_alpha,
double  intsum_beta,
double  total_current,
bool  type_is_cross_link 
)
static

compute the weighted total ion current score for a cross-link. Reimplementation from xQuest.

Parameters
sequencelength of alpha peptide
sequencelength of beta peptide
intensitysum of matched peaks from alpha peptide
intensitysum of matched peaks from beta peptide
typeof cross-link, true = cross-link, false = mono-link
sumof peak intensities of the experimental spectrum
true= cross-link, false = mono-link. in case of a mono-link, beta_size and intsum_beta should be 0

◆ xCorrelation()

static std::vector< double > xCorrelation ( const PeakSpectrum spec1,
const PeakSpectrum spec2,
Int  maxshift,
double  tolerance 
)
static

computes a crude cross-correlation between two spectra. Crude, because it uses a static binsize based on a tolerance in Da and it uses equal intensities for all peaks

Parameters
firstspectrum
secondspectrum
numberof bins, that should be considered for shifting the second spectrum. the second spectrum is shifted from -maxshift to +maxshift of tolerance bins and a correlation is computed for each position.
toleranceor binsize in Da

◆ xCorrelationPrescore()

static double xCorrelationPrescore ( const PeakSpectrum spec1,
const PeakSpectrum spec2,
double  tolerance 
)
static

computes a crude dot product between two spectra. Crude, because it uses a static binsize based on a tolerance in Da and it uses equal intensities for all peaks

Parameters
spec1first spectrum
spec2second spectrum
tolerancetolerance or binsize in Da