OpenMS
Loading...
Searching...
No Matches
HydrophobicityProfile Class Reference

This class is used for hydrophobicity profiling of peptides. More...

#include <OpenMS/CHEMISTRY/HydrophobicityProfile.h>

Public Member Functions

double computeGRAVY (const AASequence &seq) const
 Calculates the GRAVY score.
 
std::vector< double > computeProfile (const AASequence &seq, const HydrophobicityScaleMethod scale=HydrophobicityScaleMethod::KYTE_DOOLITTLE) const
 Calculates hydrophobicity profile per residue.
 
std::vector< double > computeWindowedProfile (const AASequence &seq, const Size window_size=7, const HydrophobicityScaleMethod scale=HydrophobicityScaleMethod::KYTE_DOOLITTLE) const
 Calculates windowed hydrophobicity profile.
 
std::vector< double > computeHydrophobicMoment (const AASequence &seq, const Size window_size=11, const double angle=100.0) const
 Calculates hydrophobic moments.
 

Detailed Description

This class is used for hydrophobicity profiling of peptides.

The possible scales are listed here: HydrophobicityScaleMethod

References for the hydrophobicity scales:

  • Kyte J, Doolittle RF. A simple method for displaying the hydropathic character of a protein. J Mol Biol. 1982 May 5;157(1):105-32. doi: 10.1016/0022-2836(82)90515-0. PMID: 7108955.
  • Eisenberg D, Schwarz E, Komaromy M, Wall R. Analysis of membrane and surface protein sequences with the hydrophobic moment plot. J Mol Biol. 1984 Oct 15;179(1):125-42. doi: 10.1016/0022-2836(84)90309-7. PMID: 6502707.
  • T.P. Hopp, & K.R. Woods, Prediction of protein antigenic determinants from amino acid sequences., Proc. Natl. Acad. Sci. U.S.A. 78 (6) 3824-3828, https://doi.org/10.1073/pnas.78.6.3824 (1981).
  • Henry B. Bull, Keith Breese, Surface tension of amino acid solutions: A hydrophobicity scale of the amino acid residues, Archives of Biochemistry and Biophysics, Volume 161, Issue 2, 1974, Pages 665-670, ISSN 0003-9861, https://doi.org/10.1016/0003-9861(74)90352-X. (https://www.sciencedirect.com/science/article/pii/000398617490352X)
  • Black SD, Mould DR. Development of hydrophobicity parameters to analyze proteins which bear post- or cotranslational modifications. Anal Biochem. 1991 Feb 15;193(1):72-82. doi: 10.1016/0003-2697(91)90045-u. PMID: 2042744.
  • Guy, H. R. (1985). Amino acid side-chain partition energies and distribution of residues in soluble proteins. Biophysical journal, 47(1), 61-70.

Paper for calculating the hydrophobic moments (Eisenberg et al. 1984):

  • Eisenberg D, Schwarz E, Komaromy M, Wall R. Analysis of membrane and surface protein sequences with the hydrophobic moment plot. J Mol Biol. 1984 Oct 15;179(1):125-42. doi: 10.1016/0022-2836(84)90309-7. PMID: 6502707.
  • Eisenberg D, Weiss RM, Terwilliger TC. The hydrophobic moment detects periodicity in protein hydrophobicity. Proc Natl Acad Sci U S A. 1984 Jan;81(1):140-4. doi: 10.1073/pnas.81.1.140. PMID: 6582470; PMCID: PMC344626.

Referenced code for calculating the hydrophobic moment of a windowed peptide
R package R.Peptides: https://github.com/dosorio/Peptides/blob/master/R/hmoment.R

Member Function Documentation

◆ computeGRAVY()

double computeGRAVY ( const AASequence seq) const

Calculates the GRAVY score.

Parameters
seqThe amino acid sequence for which to calculate the GRAVY score
Returns
The GRAVY score of a given peptide
Exceptions
Exception::InvalidValueThrows an exception if the sequence is empty or contains invalid symbols (sequence can only contain the standard 20 Amino acids)

◆ computeHydrophobicMoment()

std::vector< double > computeHydrophobicMoment ( const AASequence seq,
const Size  window_size = 11,
const double  angle = 100.0 
) const

Calculates hydrophobic moments.

Parameters
seqThe Amino acid sequence
window_sizeThe size of the sliding window for the calculation
angleThe angle to use: 100 for alpha-helices, 160 for beta-sheets, other angles can be used
Returns
A vector which contains the hydrophobic moment for each window
Exceptions
Exception::InvalidValueThrows an exception if the sequence is empty or contains invalid symbols (sequence can only contain the standard 20 Amino acids)
Exception::InvalidSizeThrows an exception when the window size is 0
Warning
When the window size is larger than the sequence the window size will be clamped to the sequence length

◆ computeProfile()

std::vector< double > computeProfile ( const AASequence seq,
const HydrophobicityScaleMethod  scale = HydrophobicityScaleMethod::KYTE_DOOLITTLE 
) const

Calculates hydrophobicity profile per residue.

Parameters
seqThe amino acid sequence for which to calculate the profile
scaleThe scale to use for the calculation
Returns
A vector which contains the hydrophobicity value for each amino acid
Exceptions
Exception::InvalidValueThrows an exception if the sequence is empty or contains invalid symbols (sequence can only contain the standard 20 Amino acids) or when an unknown scale is used

◆ computeWindowedProfile()

std::vector< double > computeWindowedProfile ( const AASequence seq,
const Size  window_size = 7,
const HydrophobicityScaleMethod  scale = HydrophobicityScaleMethod::KYTE_DOOLITTLE 
) const

Calculates windowed hydrophobicity profile.

Parameters
seqThe Amino acid Sequence for which to calculate the profile
window_sizeThe size of the sliding window for the calculation
scaleThe scale to use for the calculation
Returns
A vector which contains the average hydrophobicity for each window
Exceptions
Exception::InvalidValueThrows an exception if the sequence is empty or contains invalid symbols (sequence can only contain the standard 20 Amino acids) or when an unknown scale is used
Exception::InvalidSizeThrows an exception when the window size is 0
Warning
When the window size is larger than the sequence the window size will be clamped to the sequence length