Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes

EnzymaticDigestion Class Reference
[Chemistry]

Class for the enzymatic digestion of proteins. More...

#include <OpenMS/CHEMISTRY/EnzymaticDigestion.h>

List of all members.

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, CleavageModelmodel_data_
 Holds the cleavage model.

Detailed Description

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.


Member Enumeration Documentation

enum Enzyme

Possible enzymes for the digestion (adapt NamesOfEnzymes & getEnzymeByName() & nextCleavageSite_() if you add more enzymes here).

Enumerator:
TRYPSIN 
SIZE_OF_ENZYMES 

Constructor & Destructor Documentation

Default constructor.


Member Function Documentation

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.

Enzyme getEnzymeByName ( const String name  ) 

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.


Member Data Documentation

Enzyme enzyme_ [protected]

Used enzyme.

Threshold to decide if position is cleaved or missed (only for the model).

Number of missed cleavages.

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