Learn R Programming

bio3d (version 2.3-4)

deformation.nma: Deformation Analysis

Description

Calculate deformation energies from Normal Mode Analysis.

Usage

deformation.nma(nma, mode.inds = NULL, pfc.fun = NULL, ncore = NULL)

Arguments

nma

a list object of class "nma" (obtained with nma).

mode.inds

a numeric vector of mode indices in which the calculation should be based.

pfc.fun

customized pair force constant (‘pfc’) function. The provided function should take a vector of distances as an argument to return a vector of force constants. See nma for examples.

ncore

number of CPU cores used to do the calculation. ncore>1 requires package ‘parallel’ installed.

Value

Returns a list with the following components:

ei

numeric matrix containing the energy contribution (E) from each atom (i; row-wise) at each mode index (column-wise).

sums

deformation energies corresponding to each mode.

Details

Deformation analysis provides a measure for the amount of local flexibility of the protein structure - i.e. atomic motion relative to neighbouring atoms. It differs from ‘fluctuations’ (e.g. RMSF values) which provide amplitudes of the absolute atomic motion.

Deformation energies are calculated based on the nma object. By default the first 20 non-trivial modes are included in the calculation.

See examples for more details.

References

Hinsen, K. (1998) Proteins 33, 417--429. Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696.

See Also

nma

Examples

Run this code
# NOT RUN {
# Running the example takes some time - testing excluded

## Fetch stucture
pdb <- read.pdb( system.file("examples/1hel.pdb", package="bio3d") )

## Calculate (vibrational) normal modes
modes <- nma(pdb)

## Calculate deformation energies
def.energies <- deformation.nma(modes)
# }
# NOT RUN {
# }
# NOT RUN {
## Fluctuations of first non-trivial mode
def.energies <- deformation.nma(modes, mode.inds=seq(7, 16))

write.pdb(pdb=NULL, xyz=modes$xyz,
          b=def.energies$ei[,1])
# }

Run the code above in your browser using DataLab