libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
posttreatment.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/processing/specglob/sgposttreatment.h
3
* \date 15/11/2023
4
* \author Olivier Langella
5
* \brief SpecGlobTool peptide model post treatment
6
*
7
* C++ implementation of the SpecGlob algorithm described in :
8
* 1. Prunier, G. et al. Fast alignment of mass spectra in large proteomics
9
* datasets, capturing dissimilarities arising from multiple complex
10
* modifications of peptides. BMC Bioinformatics 24, 421 (2023).
11
*
12
* HAL Id : hal-04296170 , version 1
13
* Mot de passe : hxo20cl
14
* DOI : 10.1186/s12859-023-05555-y
15
*/
16
17
18
/*
19
* SpecGlobTool, Spectra to peptide alignment tool
20
* Copyright (C) 2023 Olivier Langella
21
* <olivier.langella@universite-paris-saclay.fr>
22
*
23
* This program is free software: you can redistribute ipetide to spectrum
24
* alignmentt and/or modify it under the terms of the GNU General Public License
25
* as published by the Free Software Foundation, either version 3 of the
26
* License, or (at your option) any later version.
27
*
28
* This program is distributed in the hope that it will be useful,
29
* but WITHOUT ANY WARRANTY; without even the implied warranty of
30
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
31
* GNU General Public License for more details.
32
*
33
* You should have received a copy of the GNU General Public License
34
* along with this program. If not, see <http://www.gnu.org/licenses/>.
35
*
36
*/
37
38
#pragma once
39
40
41
#include "
peptidemodel.h
"
42
#include "../../exportinmportconfig.h"
43
44
45
namespace
pappso
46
{
47
namespace
specglob
48
{
49
/**
50
* @todo write docs
51
*/
52
class
PMSPP_LIB_DECL
PostTreatment
53
{
54
public
:
55
/**
56
* Default constructor
57
*/
58
PostTreatment
(
pappso::PrecisionPtr
precision,
59
const
PeptideModel
&peptide_model);
60
61
/**
62
* Destructor
63
*/
64
virtual
~PostTreatment
();
65
66
const
PeptideModel
&getBetterPeptideModel()
const
;
67
const
PeptideModel
&getOriginalPeptideModel()
const
;
68
69
bool
findReplaceMutations();
70
71
private
:
72
/** @brief whole processus to find a better peptide model
73
*
74
* assign residual mass to Cter
75
* remove complementary mass delta
76
* eliminate negative offsets (perhaps neutral loss)
77
* check negative offsets for amino acid mass sums to remove
78
* try better positions for mass delta
79
*
80
*/
81
void
findBetterPeptideModel();
82
83
/** @brief try to move offset (mass difference)
84
*
85
* for each mass difference position, try to move to other position if the
86
* amino acid is not aligned, count matched peaks and compare to the previous
87
* solution.
88
* Keep only the better position
89
*/
90
void
tryBetterPositionOffsets();
91
92
/** @brief try to remove offset (mass difference)
93
*
94
* for each mass difference position, count matched peaks and compare to the
95
* previous solution. Removes mass difference if it does not degrade the
96
* number of matched peaks
97
*/
98
void
tryToRemoveOffsets();
99
100
/** @brief try to assign residual mass delta to non aligned elements
101
*
102
* This method is run only if there is not-aligned offSets. It may be
103
* explained by an inadequate alignment at the start because we give some
104
* advance to non-tryptic peptides. But, at the end of the alignment, we can
105
* consider it was not the best choice Trying to improve this alignment by
106
* adding not-aligned offSet with another one
107
*/
108
void
tryToCumulateOffSets();
109
110
111
private
:
112
PeptideModel
m_originalPeptideModel
;
113
PeptideModel
m_betterPeptideModel
;
114
pappso::PrecisionPtr
m_precision
;
115
};
116
}
// namespace specglob
117
}
// namespace pappso
pappso::PrecisionBase
Definition
precision.h:44
pappso::specglob::PeptideModel
Definition
peptidemodel.h:73
pappso::specglob::PostTreatment
Definition
posttreatment.h:53
pappso::specglob::PostTreatment::m_precision
pappso::PrecisionPtr m_precision
Definition
posttreatment.h:114
pappso::specglob::PostTreatment::m_betterPeptideModel
PeptideModel m_betterPeptideModel
Definition
posttreatment.h:113
pappso::specglob::PostTreatment::m_originalPeptideModel
PeptideModel m_originalPeptideModel
Definition
posttreatment.h:112
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
exportinmportconfig.h:14
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
peptidemodel.h
SpecGlobTool peptide model.
pappsomspp
processing
specglob
posttreatment.h
Generated on Mon Jan 27 2025 18:02:54 for libpappsomspp by
1.9.8