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

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

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