Remember the fitest.f program by Dave Heisterberg (firstname.lastname@example.org)? The fitest.f
is a FORTRAN program which shows that the quaternion method of fitting two
sets of points is probably the fastest one available. There are several
approaches to the rigid fit of molecules (sorry for no authors and
citations --- I really do not have time to write a review), e.g.:
1. Iterative methods
a) points are connected with "springs" of zero length and force constant
is equal to the statistical weight for a given atom pair, and the
minimizer optimizes the stretch energy of the springs as a function
of translation vector and Euler angles,
b) Taylor expansions of rotation matrix after centers where superimposed,
and iterative improvement of it.
2. Methods based on linear algebra
a) Principal component analysis of the X'Y product
b) Quaternion method
Methods 1a, and 1b are O.K. but slow (iterative). Method 2a will perform
inversion if needed to get a better fit (i.e., can change chirality).
Method 2b is fast (one step) and will not inverse coordinates.
So now is the quatfit.c program, It uses quaternion method to fit molecules.
This method was developed before the Kearsley paper was published:
Kearley, S.K., J. Comput. Chem, 11, 1187-1192 (1990), and is actually
slightly different. One day Dave may publish a paper on this, but he really
does not have time to do it now.
The program quatfit.c is placed in our archives on www.ccl.net in
/pub/chemistry/quatfit directory. The following files are there:
quatfit.c --- source of the program. Compile it with:
cc -o quatfit quatfit.c -lm
quatfit.roff --- (t|n|dit|pt)roff source of man page. To process it, use
your version of roff with -man. It is intended to be
installed on Unices with the Documenter's Workbench
quatfit.ps --- a PostScript version of the man page.
quatfit.txt --- a pure text version of the man page.
quatfit.ascii --- a text version of man page as came from nroff (with
underlines and backspaces for printer or terminal
readme --- this file.
rm.xyz --- example of reference molecule
fm.xyz --- example of fitted molecule
fmmod.xyz --- example of the fit result
stat.txt --- example of fit statistics file
pairs.tab --- example of pairs and weights file
How to get it?
ftp www.ccl.net (or ftp 22.214.171.124)
ftp> cd /pub/chemistry/quatfit
ftp> mget *
send ./quatfit/quatfit.c from chemistry
send ./quatfit/quatfit.roff from chemistry
send ./quatfit/quatfit.ps from chemistry
send ./quatfit/quatfit.txt from chemistry
send ./quatfit/quatfit.ascii from chemistry
send ./quatfit/readme from chemistry
send ./quatfit/rm.xyz from chemistry
send ./quatfit/fm.xyz from chemistry
send ./quatfit/fmmod.xyz from chemistry
send ./quatfit/stat.txt from chemistry
send ./quatfit/pairs.tab from chemistry
to OSCPOST@ccl.net or OSCPOST@OHSTPY.BITNET and the files will be
automatically sent to your mailbox.
Note, the program has a copyright notice, so if you want to sell it (:-)},
you have to ask us first.
Ohio Supercomputer Center