proper rotations represented by unit quaternions, with opposite signs identified.
Syntax
rot = rotation(a, b, c, d)
rot = rotation(q)
rot = rotation(cs)
Description
Numeric coefficients and general quaternions are normalised on construction. A point
group or reference frame supplies its proper rotational parts. Improper orthogonal
transforms cannot be converted to a rotation; use orthogonalTransform to retain parity.
For vector3d data, rot*v rotates each vector. The product rot1*rot2 applies rot2 first,
then rot1. Array shapes broadcast, while the trailing four coefficients are internal
to each element.
Keywords
| keyword | default | description |
|---|---|---|
dtype |
floating-point type of the stored coefficients |
Properties
a, b, c, d |
unit quaternion coefficients, with opposite signs representing the same rotation |
data |
coefficient array of shape rot.shape + (4,) |
phi1, Phi, phi2 |
Bunge Euler angles in radians |
shape |
shape of the rotation array |
See also
rotation.byEuler, rotation.byAxisAngle, rotation.byMatrix, quaternion
Members
| byAxisAngle | construct right-handed rotations about given axes |
| byCubochoric | construct rotations from equal-volume cubochoric coordinates |
| byEuler | rotations defined by Euler angles |
| byHomochoric | construct rotations from coordinates in the homochoric ball |
| byMatrix | construct rotations from proper orthogonal matrices |
| byRodrigues | construct rotations from dimensionless Rodrigues vectors |
| calcDensity | estimate a smooth density from orientations, directions, angles or real-valued samples |
| cat | the list of the operands, MATLAB’s [r1, r2] |
| discrepancy | the discrepancy between two densities and/or weighted point sets on the sphere (S2Fun, vector3d) or on SO(3) (SO3Fun, rotation, orientation), in either order |
| dot | the inner product up to sign, since q and -q are one rotation |
| dot_outer | the inner product up to sign, since q and -q are one rotation |
| double | the coordinates of the images of an embedding in their orthonormal basis, one row per orientation, e.double() |
| fit | the rotation best mapping the list u onto the list v, by Horn’s quaternion method or Kabsch’s matrix method |
| id | the identity, 1 + 0i + 0j + 0k (MATLAB’s id and eye) |
| interp | interp(ori, values, ‘harmonic’ | ‘bingham’): a function on SO(3) through values at the rotations, by the function spaces above this layer, MATLAB’s rotation/interp |
| inv | return the rotation that reverses each input rotation |
| inversion | the inversion, the orthogonalTransform -I |
| isclose | equal within the angular tolerance tol, MATLAB’s eq |
| map | the smallest rotation taking u1 to v1, or the one taking u1 to v1 and u2 to v2 |
| matrix | return the numeric rotation matrix of each unit quaternion |
| mtimes | |
| nan | construct quaternions whose four coefficients are NaN |
| plotSection | plotSection(odf), plotSection(odf, ‘sigma’), plotSection(ori, oS, sections=9) |
| rand | uniformly distributed rotations, the Haar measure |
| rotation | proper rotations represented by unit quaternions, with opposite signs identified |
| subsref | |
| times | |
| transpose | the transpose of the leading axes |
| uminus | |
| unique | the disjoint list of quaternions, those equal up to a tolerance in the coefficients taken as one |
Used on
CrystalSymmetries, MTEXvsBungeConvention, EBSDKAM, RotationDefinition, RotationImproper, SO3FunConvolution, SO3FunOperations, SO3FunVectorValued
MATLAB’s rotation_index
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_index_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.