difference.vector.Rd
Define a difference vector between two conformational states.
difference.vector(xyz, xyz.inds=NULL, normalize=FALSE)
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. |
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.
Lars Skjaerven
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)