Dr. Arno Formella, Computer Science Department
C/C++Implementation of the Kabsch algorithm (based on the library GSL) as published in: W. Kabsch, A solution for the best rotation to relate two sets of vectors, Acta Cryst. (1976), A32, 922-923 and W. Kabsch, A discussion of the solution for the best rotation to relate two sets of vectors, Acta Cryst. (1978), A34, 827-828. , which computes the optimal rigid-body transformation to align two three-dimensional point sets. The algorithm is an extension of the work of Kabsch, because besides the translation and rotation the optimal scaling is computed as well. The following files contain a version of the algorithm for bidimensional points. There is another iterative algorithm available which computes the (locally) optimal rigid motion transformation (including scaling) allowing arbitrary functions for the distance measure, e.g., average distance, or maximum distance (note Kabsch only works with RMS). The algorithm implements a new derivative-free minimization algorithm for non-smooth functions based on the work Ubaldo García-Palomares and José Rodríguez, New sequential and parallel derivative-free algorithms for constrained optimization, SIAM Journal on Optimization, 13(1):79-96, April, 2002 :
the base class: optimize.h g++ opt.cpp Area of intersection between a circle (disk) and a rectangleJavaJabRef 2.1.1
The jar-file [3.4MB] implements
an extension of the
JabRef reference manager
(version 2.1, August 9th, 2006).
This new version
(source code [2.6MB])
permits the inclusion of names of
directories as items in the BibTeX-file; their content can
be inspected conveniently with appropriate applications.
(This in an unofficial version extension of JabRef.)
The package [38k] implements a concurrent list where several threads can manipulate the list simultaneously. Almost all operations of a normal linked list are available. |
|
© Arno Formella, last update: October 13, 2006
e-mail:
formella@uvigo.es