RSpincalc: Conversion Between Attitude Representations of DCM, Euler Angles, Quaternions, and Euler Vectors

Conversion between attitude representations: DCM, Euler angles, Quaternions, and Euler vectors. Plus conversion between 2 Euler angle set types (xyx, yzy, zxz, xzx, yxy, zyz, xyz, yzx, zxy, xzy, yxz, zyx). Fully vectorized code, with warnings/errors for Euler angles (singularity, out of range, invalid angle order), DCM (orthogonality, not proper, exceeded tolerance to unity determinant) and Euler vectors(not unity). Also quaternion and other useful functions. Based on SpinCalc by John Fuller and SpinConv by Paolo de Leva.

AuthorJose Gama [aut, cre], John Fuller [aut, cph], Paolo Leva [aut, cph]
Date of publication2015-07-17 12:51:32
MaintainerJose Gama <rxprtgama@gmail.com>
LicenseGPL (>= 3)
Version1.0.2

View on CRAN

Man pages

DCM2EA: Convert from Direction Cosine Matrix to Euler Angles

DCM2EV: Convert from Direction Cosine Matrix to Euler Vectors

DCM2Q: Convert from Direction Cosine Matrix to rotation Quaternions

DCMrandom: Generate uniform random direction cosine matrices

EA2DCM: Convert from Euler Angles to Direction Cosine Matrix

EA2EA: Convert from Euler Angles to Euler Angles

EA2EV: Convert from Euler Angles to Euler Vectors

EA2Q: Convert from Euler Angles to rotation Quaternions

EArandom: Generate uniform random Euler Angles

EV2DCM: Convert from Euler Vectors to Direction Cosine Matrix

EV2EA: Convert from Euler Vectors to Euler Angles

EV2Q: Convert from Euler Vectors to rotation Quaternions

EVrandom: Generate uniform random Euler Vectors

isPureRotationMatrix: Determine if the variable is a pure rotation matrix

Q2DCM: Convert from rotation Quaternions to Direction Cosine Matrix

Q2EA: Convert from rotation Quaternions to Euler Angles

Q2EV: Convert from rotation Quaternions to Euler Vectors

Q2GL: Convert from rotation Quaternions to OpenGL rotation matrix

QangularDifference: Angular difference between 2 quaternions

Qconj: Quaternion conjugate

Qinv: Quaternion inverse

Qlerp: Linear quaternion interpolation

Qlog: Quaternion logarithm

Qnorm: Norm of a quaternion

Qnormalize: Quaternion normalization

Qrandom: Generate uniform random unit quaternions

Qrot: Updates current attitude quaternion

Qzero: Generate zero-valued quaternions

vectQrot: Rotate a vector by a quaternion

z1: Quaternion multiplication

z2: Quaternion division

z3: Quaternion subtraction

z4: Quaternion addition

z5: Quaternion dot product

Functions

DCM2EA Man page
DCM2EV Man page
DCM2Q Man page
DCMrandom Man page
EA2DCM Man page
EA2EA Man page
EA2EV Man page
EA2Q Man page
EArandom Man page
EV2DCM Man page
EV2EA Man page
EV2Q Man page
EVrandom Man page
isPureQuaternion Man page
isPureRotationMatrix Man page
isRealQuaternion Man page
isUnitQuaternion Man page
\%Q-\% Man page
\%Q/\% Man page
\%Q.\% Man page
\%Q*\% Man page
\%Q+\% Man page
Q2DCM Man page
Q2EA Man page
Q2EA.Xiao Man page
Q2EV Man page
Q2GL Man page
QangularDifference Man page
Qbezier Man page
Qconj Man page
Qexp Man page
Qinv Man page
Qlerp Man page
Qlog Man page
Qnorm Man page
Qnormalize Man page
Qone Man page
Qrandom Man page
Qrot Man page
Qslerp Man page
QslerpNoInvert Man page
Qspline Man page
Qspline Man page
Qsquad Man page
Qzero Man page
vectQrot Man page

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.