libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
filtertandemremovec13.h
Go to the documentation of this file.
1/**
2 * \file pappsomspp/filers/filtertandemremovec13.h
3 * \date 26/04/2019
4 * \author Olivier Langella
5 * \brief new implementation of the X!Tandem filter to remove isotopes in an MS2
6 * signal
7 */
8
9/*******************************************************************************
10 * Copyright (c) 2019 Olivier Langella <Olivier.Langella@u-psud.fr>.
11 *
12 * This file is part of the PAPPSOms++ library.
13 *
14 * PAPPSOms++ is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU General Public License as published by
16 * the Free Software Foundation, either version 3 of the License, or
17 * (at your option) any later version.
18 *
19 * PAPPSOms++ is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
23 *
24 * You should have received a copy of the GNU General Public License
25 * along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
26 *
27 ******************************************************************************/
28
29#pragma once
30
31#include "filterinterface.h"
32#include <cstddef>
33
34namespace pappso
35{
36
37
38/** @brief Deisotope the mass spectrum
39 * \c this mass spectrum is iterated over and according to a data point-based
40 * moving window progression does the following tests:
41 *
42 * - any data point having a x value (m/z value) less than 200 is conserved;
43 *
44 * - any data point having a x value greater than the previous data point's x
45 * value by at least 0.95 is conserved;
46 *
47 *
48remove isotopes as in X!Tandem algorithm this method doesn't
49 * really remove isotopes: it cleans up multiple intensities within one
50 * Dalton of each other.
51
52
53 first tandem filter is 0.95 (remove_isotopes(_s);)
54 second tandem filter is 1.5 (clean_isotopes(_s);)
55 * */
56
58{
59
60 public:
61 FilterTandemDeisotope(double mz_range_max = 0.95, double minimum_mz = 200.0);
63 MassSpectrum &filter(MassSpectrum &data_points) const override;
64
65
66 private:
67 double m_arbitrary_range_between_isotopes = 0.95;
68 double m_arbitrary_minimum_mz = 200.0;
69};
70} // namespace pappso
Deisotope the mass spectrum this mass spectrum is iterated over and according to a data point-based m...
generic interface to apply a filter on a MassSpectrum This is the same as FilterInterface,...
Class to represent a mass spectrum.
#define PMSPP_LIB_DECL
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39