Define a difference vector between two conformational states.

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

## Arguments

xyz 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.

## 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.

## Value

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

## References

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

## Author

Lars Skjaerven

overlap

## Examples

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)