From: John Stone (johns_at_ks.uiuc.edu)
Date: Tue Feb 26 2013 - 08:26:17 CST

The two implementations in VMD for 4 or more points are variants of
the Kabsch algorithm:
  http://en.wikipedia.org/wiki/Kabsch_algorithm

For 2 or 3 points, we have special case handling.

Cheers,
  John Stone
  vmd_at_ks.uiuc.edu

On Tue, Feb 26, 2013 at 11:43:23AM +0100, Daniel Klose wrote:
> Dear John,
>
> thank you for your answer! ... After looking up the Jacobi method, I got your point why there is no internal composition of the measure fit matrix. This leads me to a couple of short follow up questions:
>
> Is the algorithm used by measure fit published anywhere?
>
> Could the translation matrix computed in the first step by VMD be obtained separately or is it simply the 3x3 unit matrix with the 4th column of the measure fit matrix?
>
> Could you elaborate on your suggestion to use quaternions instead for the interpolation between start and final structure? I've got an idea what they are, but how would I apply them to this problem?
>
> Thank you for your help!!
> With best wishes,
> Daniel
>
>
>
> Am Montag, 25. Februar 2013 22:11 CET, John Stone <johns_at_ks.uiuc.edu> schrieb:
>
> > Hi,
> > You say you want to compute "intermediate steps" in a rotation.
> > What is it that you plan to do with them? Depending on what it is, you
> > might be able to interpolation between the starting and final orientation
> > using a quaternion, or something similar, without having to reverse-engineer
> > the RMS alignment code in VMD -- the fitting routines in VMD internally
> > compute a translation matrix and rotation matrix in two discrete steps,
> > but the rotation matrix is computed in an iterative Jacobi solver,
> > not in terms of a sequence of separate rotation steps.
> >
> > Cheers,
> > John Stone
> > vmd_at_ks.uiuc.edu
> >
> > On Fri, Feb 22, 2013 at 05:16:23PM +0100, Daniel Klose wrote:
> > > Dear VMD users and developers,
> > >
> > > I'm interested in decomposing the rotation matrix returned by measure fit into its components so that I can do intermediate steps in the given rotation.
> > >
> > > I assume the matrix is a product of a translation matrix and a rotation matrix around an arbitrary point (or three rotations about the origin and a translation?), but writing down the matrix equations I found that I seem to need to know a more exact convention ... Could someone tell me?
> > >
> > > And is there maybe an independent way to figure out the translation vector and/or the rotation center? Without, this problem may be underdetermined.
> > >
> > > Thank you for your help!!
> > > Daniel
> > >
> > > --
> > > Daniel Klose
> > > University of Osnabrück
> > > Department of Physics, Room 32/341
> > > Barbarastr. 7
> > > 49076 Osnabrück
> > > Germany
> > >
> > > daniel.klose_at_uos.de
> > > phone +49 541 969 2465
> >
> > --
> > NIH Center for Macromolecular Modeling and Bioinformatics
> > Beckman Institute for Advanced Science and Technology
> > University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
> > http://www.ks.uiuc.edu/~johns/ Phone: 217-244-3349
> > http://www.ks.uiuc.edu/Research/vmd/ Fax: 217-244-6078
>
>
>

-- 
NIH Center for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
http://www.ks.uiuc.edu/~johns/           Phone: 217-244-3349
http://www.ks.uiuc.edu/Research/vmd/       Fax: 217-244-6078