Loading...
Searching...
No Matches
pappso::FilterTandemDeisotope Class Reference

Deisotope the mass spectrum `this` mass spectrum is iterated over and according to a data point-based moving window progression does the following tests: More...

`#include <filtertandemremovec13.h>`

Inheritance diagram for pappso::FilterTandemDeisotope:

## Public Member Functions

| FilterTandemDeisotope (double mz_range_max=0.95, double minimum_mz=200.0)
| FilterTandemDeisotope (const FilterTandemDeisotope &other)
MassSpectrum & | filter (MassSpectrum &data_points) const override
Public Member Functions inherited from pappso::MassSpectrumFilterInterface
virtual | ~MassSpectrumFilterInterface ()

## Private Attributes

double | m_arbitrary_range_between_isotopes = 0.95
double | m_arbitrary_minimum_mz = 200.0

## Detailed Description

Deisotope the mass spectrum `this` mass spectrum is iterated over and according to a data point-based moving window progression does the following tests:

- any data point having a x value (m/z value) less than 200 is conserved;
- any data point having a x value greater than the previous data point's x value by at least 0.95 is conserved;

remove isotopes as in X!Tandem algorithm this method doesn't really remove isotopes: it cleans up multiple intensities within one Dalton of each other.

    first tandem filter is 0.95 (remove_isotopes(_s);)
    second tandem filter is 1.5 (clean_isotopes(_s);)

Definition at line 57 of file filtertandemremovec13.h.

## Constructor & Destructor Documentation

## FilterTandemDeisotope() [1/2]

FilterTandemDeisotope::FilterTandemDeisotope | ( | double | mz_range_max = `0.95`,
|  | double | minimum_mz = `200.0`
| ) |  |

Definition at line 36 of file filtertandemremovec13.cpp.

{
m_arbitrary_minimum_mz = minimum_mz;
m_arbitrary_range_between_isotopes = mz_range_max;
}
pappso::FilterTandemDeisotope::m_arbitrary_range_between_isotopes
double m_arbitrary_range_between_isotopes
Definition filtertandemremovec13.h:67
pappso::FilterTandemDeisotope::m_arbitrary_minimum_mz
double m_arbitrary_minimum_mz
Definition filtertandemremovec13.h:68

References m_arbitrary_minimum_mz, and m_arbitrary_range_between_isotopes.

## FilterTandemDeisotope() [2/2]

FilterTandemDeisotope::FilterTandemDeisotope | ( | const FilterTandemDeisotope & | other | ) |

Definition at line 44 of file filtertandemremovec13.cpp.

{
m_arbitrary_minimum_mz = other.m_arbitrary_minimum_mz;
m_arbitrary_range_between_isotopes = other.m_arbitrary_range_between_isotopes;
}

References m_arbitrary_minimum_mz, and m_arbitrary_range_between_isotopes.

## Member Function Documentation

## filter()

MassSpectrum & FilterTandemDeisotope::filter | ( | MassSpectrum & | data_points | ) | const

override virtual

Implements pappso::MassSpectrumFilterInterface.

Definition at line 51 of file filtertandemremovec13.cpp.

{
MassSpectrum massSpectrum;
if(data_points.size() > 0)
{
// auto it_write = data_points.begin();
auto it_read = data_points.begin() + 1;
auto it_end = data_points.end();
DataPoint value_write = *data_points.begin();
double last_mz = value_write.x;
while(it_read != it_end)
{
if((it_read->x - last_mz) >= m_arbitrary_range_between_isotopes ||
it_read->x < m_arbitrary_minimum_mz)
{
massSpectrum.push_back(value_write);
value_write = *it_read;
last_mz = value_write.x;
}
else if(it_read->y > value_write.y)
{
value_write = *it_read;
}
it_read++;
}
massSpectrum.push_back(value_write);
}
data_points = std::move(massSpectrum);
return data_points;
}
pappso::MassSpectrum
Class to represent a mass spectrum.
Definition massspectrum.h:73
pappso::DataPoint
Definition datapoint.h:22
pappso::DataPoint::x
pappso_double x
Definition datapoint.h:23
pappso::DataPoint::y
pappso_double y
Definition datapoint.h:24

References m_arbitrary_minimum_mz, m_arbitrary_range_between_isotopes, pappso::DataPoint::x, and pappso::DataPoint::y.

Referenced by pappso::XtandemSpectrumProcess::process().

## Member Data Documentation

## m_arbitrary_minimum_mz

double pappso::FilterTandemDeisotope::m_arbitrary_minimum_mz = 200.0

private

Definition at line 68 of file filtertandemremovec13.h.

Referenced by FilterTandemDeisotope(), FilterTandemDeisotope(), and filter().

## m_arbitrary_range_between_isotopes

double pappso::FilterTandemDeisotope::m_arbitrary_range_between_isotopes = 0.95

private

Definition at line 67 of file filtertandemremovec13.h.

Referenced by FilterTandemDeisotope(), FilterTandemDeisotope(), and filter().

The documentation for this class was generated from the following files:

- pappsomspp/processing/filters/filtertandemremovec13.h
- pappsomspp/processing/filters/filtertandemremovec13.cpp