OpenMS
SpectrumAlignmentScore Class Reference

Similarity score via spectra alignment. More...

#include <OpenMS/COMPARISON/SpectrumAlignmentScore.h>

Inheritance diagram for SpectrumAlignmentScore:
[legend]
Collaboration diagram for SpectrumAlignmentScore:
[legend]

Public Member Functions

 SpectrumAlignmentScore ()
 default constructor More...
 
 SpectrumAlignmentScore (const SpectrumAlignmentScore &source)
 copy constructor More...
 
 ~SpectrumAlignmentScore () override
 destructor More...
 
SpectrumAlignmentScoreoperator= (const SpectrumAlignmentScore &source)
 assignment operator More...
 
double operator() (const PeakSpectrum &spec1, const PeakSpectrum &spec2) const override
 function call operator, calculates the similarity More...
 
double operator() (const PeakSpectrum &spec) const override
 calculates self similarity More...
 
- Public Member Functions inherited from PeakSpectrumCompareFunctor
 PeakSpectrumCompareFunctor ()
 default constructor More...
 
 PeakSpectrumCompareFunctor (const PeakSpectrumCompareFunctor &source)
 copy constructor More...
 
 ~PeakSpectrumCompareFunctor () override
 destructor More...
 
PeakSpectrumCompareFunctoroperator= (const PeakSpectrumCompareFunctor &source)
 assignment operator 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...
 
DefaultParamHandleroperator= (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 ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () 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...
 

Additional Inherited Members

- Static Public Member Functions inherited from DefaultParamHandler
static void writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &key_prefix="")
 Writes all parameters to meta values. More...
 
- Protected Member Functions inherited from DefaultParamHandler
virtual void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. 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< Stringsubsections_
 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...
 

Detailed Description

Similarity score via spectra alignment.

This class implements a simple scoring based on the alignment of spectra. This alignment is implemented in the SpectrumAlignment class and performs a dynamic programming alignment of the peaks, minimizing the distances between the aligned peaks and maximizing the number of peak pairs.

The scoring is done via the simple formula score = sum / (sqrt(sum1 * sum2)). sum is the product of the intensities of the aligned peaks, with the given exponent (default is 2). sum1 and sum2 are the sum of the intensities squared for each peak of both spectra respectively.

A binned version of this scoring is implemented in the ZhangSimilarityScoring class.

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
tolerance float0.3  Defines the absolute (in Da) or relative (in ppm) tolerance
is_relative_tolerance stringfalse true, falseif true, the tolerance value is interpreted as ppm
use_linear_factor stringfalse true, falseif true, the intensities are weighted with the relative m/z difference
use_gaussian_factor stringfalse true, falseif true, the intensities are weighted with the relative m/z difference using a gaussian

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

Constructor & Destructor Documentation

◆ SpectrumAlignmentScore() [1/2]

default constructor

◆ SpectrumAlignmentScore() [2/2]

copy constructor

◆ ~SpectrumAlignmentScore()

~SpectrumAlignmentScore ( )
override

destructor

Member Function Documentation

◆ operator()() [1/2]

double operator() ( const PeakSpectrum a) const
overridevirtual

calculates self similarity

Implements PeakSpectrumCompareFunctor.

◆ operator()() [2/2]

double operator() ( const PeakSpectrum a,
const PeakSpectrum b 
) const
overridevirtual

function call operator, calculates the similarity

Implements PeakSpectrumCompareFunctor.

◆ operator=()

SpectrumAlignmentScore& operator= ( const SpectrumAlignmentScore source)

assignment operator