Define a difference vector between two conformational states.
difference.vector(xyz, xyz.inds=NULL, normalize=FALSE)
numeric matrix of Cartesian coordinates with a row per structure.
a vector of indices that selects the elements of columns upon which the calculation should be based.
logical, if TRUE the difference vector is normalized.
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.
Returns a numeric vector of the structural difference (normalized if desired).
Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696.
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)