[BioPython] Structural alignment
Thomas Hamelryck
thamelry at binf.ku.dk
Tue Nov 15 00:56:43 EST 2005
Andrew Dalke wrote:
> If it's two conformations of the same structure and the goal is
> to minimize overall RMSD through a single global alignment matrix
> then the usual reference I know is Kabsch
>
> [Kabsch, 1976] Kabsch, W. (1976). A solution for the best rotation
> to relate two sets of vectors. Acta. Crystal, 32A:922-923.
> [Kabsch, 1978] Kabsch, W. (1978). A discussion of the solution
> for the best rotation to related two sets of vectors. Acta. Crystal,
> 34A:827-828.
>
> (The first had an ambiguity that could cause a sign error; fixed
> in the second.)
>
> Several structure program implement that including:
> O - http://xray.bmc.uu.se/usf/factory_4.html
> VMD - http://www.ks.uiuc.edu/Research/vmd/vmd-1.7.1/ug/node183.html
> PyMol - http://www.pymolwiki.org/index.php/Kabsch
Maybe more relevant in the context of this newsgroup is that
it's implemented in Biopython's Bio.PDB.Superimposer.
The Kabsch algorithm mentioned sometimes returns a rotation+a reflection,
but that can easily be avoided, see:
Umeyama S: Least squares estimation of transformation parameters between
two point patterns. IEEE Trans Pattern Anal Mach Intell 1991, 13:376-80.
There's an automated structure superposition method (which finds the
alignment itself) on its way to Biopython, BTW.
-Thomas
More information about the BioPython
mailing list