Class for the enzymatic digestion of proteins. More...
#include <OpenMS/CHEMISTRY/EnzymaticDigestion.h>
Classes | |
| struct | BindingSite |
| struct | CleavageModel |
Public Types | |
| enum | Enzyme { TRYPSIN, SIZE_OF_ENZYMES } |
Possible enzymes for the digestion (adapt NamesOfEnzymes & getEnzymeByName() & nextCleavageSite_() if you add more enzymes here). More... | |
Public Member Functions | |
| EnzymaticDigestion () | |
| Default constructor. | |
| SignedSize | getMissedCleavages () const |
| Returns the number of missed cleavages for the digestion. | |
| void | setMissedCleavages (SignedSize missed_cleavages) |
| Sets the number of missed cleavages for the digestion (default is 0). This setting is ignored when log model is used. | |
| Enzyme | getEnzyme () const |
| Returns the enzyme for the digestion. | |
| void | setEnzyme (Enzyme enzyme) |
| Sets the enzyme for the digestion (default is TRYPSIN). | |
| Enzyme | getEnzymeByName (const String &name) |
| void | digest (const AASequence &protein, std::vector< AASequence > &output) |
| Performs the enzymatic digestion of a protein. | |
| Size | peptideCount (const AASequence &protein) |
Returns the number of peptides a digestion of protein would yield. | |
| bool | isLogModelEnabled () const |
| use trained model when digesting? | |
| void | setLogModelEnabled (bool enabled) |
| enables/disabled the trained model | |
| DoubleReal | getLogThreshold () const |
| Returns the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data). | |
| void | setLogThreshold (DoubleReal threshold) |
Static Public Attributes | |
| static const std::string | NamesOfEnzymes [SIZE_OF_ENZYMES] |
| Names of the Enzymes. | |
Protected Member Functions | |
| void | nextCleavageSite_ (const AASequence &sequence, AASequence::ConstIterator &iterator) |
moves the iterator it after the next cleavage site of the sequence | |
Protected Attributes | |
| SignedSize | missed_cleavages_ |
| Number of missed cleavages. | |
| Enzyme | enzyme_ |
| Used enzyme. | |
| bool | use_log_model_ |
| use the log model or naive digestion (with missed cleavages) | |
| DoubleReal | log_model_threshold_ |
| Threshold to decide if position is cleaved or missed (only for the model). | |
| Map< BindingSite, CleavageModel > | model_data_ |
| Holds the cleavage model. | |
Class for the enzymatic digestion of proteins.
Digestion can be performed using simple regular expressions, e.g. [KR] | [^P] for trypsin. Also missed cleavages can be modelled, i.e. adjacent peptides are not cleaved due to enzyme malfunction/access restrictions. If n missed cleavages are given, all possible resulting peptides (cleaved and uncleaved) with up to n missed cleavages are returned. Thus no random selection of just n specific missed cleavage sites is performed.
An alternative model is also available, where the protein is cleaved only at positions where a cleavage model trained on real data, exceeds a certain threshold. The model is published in Siepen et al. (2007), "Prediction of missed cleavage sites in tryptic peptides aids protein identification in proteomics.", doi: 10.1021/pr060507u The model is only available for trypsin and ignores the missed cleavage setting. You should however use setLogThreshold() to adjust FP vs FN rates. A higher threshold increases the number of cleavages predicted.
| enum Enzyme |
Possible enzymes for the digestion (adapt NamesOfEnzymes & getEnzymeByName() & nextCleavageSite_() if you add more enzymes here).
Default constructor.
| void digest | ( | const AASequence & | protein, | |
| std::vector< AASequence > & | output | |||
| ) |
Performs the enzymatic digestion of a protein.
| Enzyme getEnzyme | ( | ) | const |
Returns the enzyme for the digestion.
convert enzyme string name to enum returns SIZE_OF_ENZYMES if name is not valid
| DoubleReal getLogThreshold | ( | ) | const |
Returns the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data).
| SignedSize getMissedCleavages | ( | ) | const |
Returns the number of missed cleavages for the digestion.
| bool isLogModelEnabled | ( | ) | const |
use trained model when digesting?
| void nextCleavageSite_ | ( | const AASequence & | sequence, | |
| AASequence::ConstIterator & | iterator | |||
| ) | [protected] |
moves the iterator it after the next cleavage site of the sequence
| Size peptideCount | ( | const AASequence & | protein | ) |
Returns the number of peptides a digestion of protein would yield.
| void setEnzyme | ( | Enzyme | enzyme | ) |
Sets the enzyme for the digestion (default is TRYPSIN).
| void setLogModelEnabled | ( | bool | enabled | ) |
enables/disabled the trained model
| void setLogThreshold | ( | DoubleReal | threshold | ) |
Sets the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data) Default is 0.25
| void setMissedCleavages | ( | SignedSize | missed_cleavages | ) |
Sets the number of missed cleavages for the digestion (default is 0). This setting is ignored when log model is used.
DoubleReal log_model_threshold_ [protected] |
Threshold to decide if position is cleaved or missed (only for the model).
SignedSize missed_cleavages_ [protected] |
Number of missed cleavages.
Map<BindingSite, CleavageModel> model_data_ [protected] |
Holds the cleavage model.
const std::string NamesOfEnzymes[SIZE_OF_ENZYMES] [static] |
Names of the Enzymes.
bool use_log_model_ [protected] |
use the log model or naive digestion (with missed cleavages)
| OpenMS / TOPP release 1.10.0 | Documentation generated on Thu Mar 7 2013 09:42:50 using doxygen 1.7.1 |