Learn R Programming

bio3d (version 2.4-4)

difference.vector: Difference Vector

Description

Define a difference vector between two conformational states.

Usage

difference.vector(xyz, xyz.inds=NULL, normalize=FALSE)

Value

Returns a numeric vector of the structural difference (normalized if desired).

Arguments

xyz

numeric matrix of Cartesian coordinates with a row per structure.

xyz.inds

a vector of indices that selects the elements of columns upon which the calculation should be based.

normalize

logical, if TRUE the difference vector is normalized.

Author

Lars Skjaerven

Details

Squared overlap (or dot product) is used to measure the similiarity between a displacement vector (e.g. a difference vector between two conformational states) and mode vectors obtained from principal component or normal modes analysis.

References

Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696.

See Also

overlap

Examples

Run this code
attach(kinesin)
     
# Ignore gap containing positions
gaps.pos <- gap.inspect(pdbs$xyz)
     
#-- Do PCA
pc.xray <- pca.xyz(pdbs$xyz[, gaps.pos$f.inds])
     
# Define a difference vector between two structural states
diff.inds <- c(grep("d1v8ka", pdbs$id), 
               grep("d1goja", pdbs$id))

## Calculate the difference vector
dv <- difference.vector( pdbs$xyz[diff.inds,], gaps.pos$f.inds )

# Calculate the squared overlap between the PCs and the difference vector  
o <- overlap(pc.xray, dv)

detach(kinesin)

Run the code above in your browser using DataLab