A method of rotation.
the rotation best mapping the list u onto the list v, by Horn’s quaternion method or Kabsch’s matrix method
Syntax
rot = rotation.fit(u, v)
Rot * u is nearest v.
rot = rotation.fit(u, v, weights=w)
Some pairs counting more.
rot = rotation.fit(u, v, method='kabsch')
By the singular value decomposition.
Description
The rotation maximising the weighted sum of <rot u_i, v_i> over the unit vectors: Horn’s method takes the largest eigenvector of a 4 x 4 matrix, Kabsch’s the singular value decomposition of the cross covariance; both give the same rotation. MATLAB’s call is rotation.fit(r, l) with l = rot * r, the same order. MATLAB’s handling of antipodal vectors is not ported: the vectors are taken with their sign.
Input
u, v |
vector3d, lists of one length |
Keywords
| keyword | default | description |
|---|---|---|
weights |
None |
one weight per pair |
method |
'horn' |
‘horn’ or ‘kabsch’ |
Output
rot |
rotation |
References
- W. Kabsch, A solution for the best rotation to relate two sets of vectors, Acta Cryst. A32 (1976) 922
- B. K. P. Horn, Closed-form solution of absolute orientation using unit quaternions, Journal of the Optical Society of America A 4 (1987) 629
See also
rotation.map, rotation.byMatrix
MATLAB’s rotation.fit
source
Citing this page.
This page is part of the documentation of
MTEX, a free and open
source MATLAB toolbox for analyzing and modeling crystallographic textures.
It was written by The MTEX Developers and is published at
https://mtex-toolbox.github.io/rotation.fit_py.html.
If you use MTEX, or reuse text or figures from this page, in your research,
please cite
F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63
BibTeX
@article{bachmann2010mtex,
author = {F. Bachmann and R. Hielscher and H. Schaeben},
title = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
journal = {Solid State Phenomena},
volume = {160},
pages = {63-68},
year = {2010},
doi = {10.4028/www.scientific.net/SSP.160.63},
url = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}
Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.