Learn R Programming

bio3d (version 2.1-2)

rmsip: Root Mean Square Inner Product

Description

Calculate the RMSIP between two mode subspaces.

Usage

rmsip(...)
## S3 method for class 'enma':
rmsip(enma, ncore=NULL, subset=10, ...)
## S3 method for class 'default':
rmsip(modes.a, modes.b, subset=10,
                        row.name="a", col.name="b", ...)

Arguments

enma
an object of class "enma" obtained from function nma.pdbs.
ncore
number of CPU cores used to do the calculation. ncore>1 requires package parallel installed.
subset
the number of modes to consider.
modes.a
an object of class "pca" or "nma" as obtained from functions pca.xyz or nma.
modes.b
an object of class "pca" or "nma" as obtained from functions pca.xyz or nma.
row.name
prefix name for the rows.
col.name
prefix name for the columns.
...
arguments passed to associated functions.

Value

  • Returns an rmsip object with the following components:
  • overlapa numeric matrix containing pairwise (squared) dot products between the modes.
  • rmsipa numeric RMSIP value.
  • For function rmsip.enma a numeric matrix containing all pairwise RMSIP values of the modes stored in the enma object.

Details

RMSIP is a measure for the similarity between two set of modes obtained from principal component or normal modes analysis.

References

Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696. Amadei, A. et al. (1999) Proteins 36, 19--424.

See Also

pca, nma, overlap.

Other similarity measures: sip, covsoverlap, bhattacharyya.

Examples

Run this code
# Load data for HIV example
trj <- read.dcd(system.file("examples/hivp.dcd", package="bio3d"))
pdb <- read.pdb(system.file("examples/hivp.pdb", package="bio3d"))

# Do PCA on simulation data
xyz.md <- fit.xyz(pdb$xyz, trj, fixed.inds=1:ncol(trj))
pc.sim <- pca.xyz(xyz.md)

# NMA 
modes <- nma(pdb)

# Calculate the RMSIP between the MD-PCs and the NMA-MODEs
r <- rmsip(modes, pc.sim, subset=10, row.name="NMA", col.name="PCA")

# Plot pairwise overlap values
plot(r, xlab="NMA", ylab="PCA")

Run the code above in your browser using DataLab