R: Normal Mode Analysis

nma {bio3d} | R Documentation

## Normal Mode Analysis

### Description

Perform normal mode analysis (NMA) on either a single or an ensemble of protein structures.

### Usage

    nma(...)

### Arguments

`...` | arguments passed to the methods `nma.pdb`, or `nma.pdbs`. For function `nma.pdb` this will include an object of class `pdb` as obtained from function `read.pdb`. For function `nma.pdbs` an object of class `pdbs` as obtained from function `pdbaln` or `read.fasta.pdb`.

### Details

Normal mode analysis (NMA) is a computational approach for studying and characterizing protein flexibility. Current functionality entails normal modes calculation on either a single protein structure or an ensemble of aligned protein structures.

This generic `nma` function calls the corresponding methods for the actual calculation, which is determined by the class of the input argument:

Function `nma.pdb` will be used when the input argument is of class `pdb`. The function calculates the normal modes of a C-alpha model of a protein structure.

Function `nma.pdbs` will be used when the input argument is of class `pdbs`. The function will perform normal mode analysis of each PDB structure stored in the `pdbs` object (‘ensemble NMA’).

See documentation and examples for each corresponding function for more details.

### Author(s)

Lars Skjaerven

### References

Skjaerven, L. et al. (2014) BMC Bioinformatics 15, 399. Grant, B.J. et al. (2006) Bioinformatics 22, 2695–2696.

### See Also

`nma.pdb`, `nma.pdbs`, `pca`.

### Examples

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

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

    ## Print modes
    print(modes)

    ## Plot modes
    plot(modes)

    ## Visualize modes
    #m7 <- mktrj.nma(modes, mode=7, file="mode_7.pdb")

    ## Needs MUSCLE installed - testing excluded

    ##- Ensemble NMA
    if(check.utility("muscle")) {

    ## Fetch PDB files and split to chain A only PDB files
    ids <- c("1a70_A", "1czp_A", "1frd_A", "1fxi_A", "1iue_A", "1pfd_A")
    files <- get.pdb(ids, split = TRUE, path = tempdir())

    ## Sequence Alignement
    pdbs <- pdbaln(files, outfile = tempfile())

    ## Normal mode analysis on aligned data
    modes <- nma(pdbs, rm.gaps=FALSE)

    ## Plot fluctuation data
    plot(modes, pdbs=pdbs)

    }

[Package bio3d version 2.4-0 Index]