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

Share:

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.

Author
Jose Gama [aut, cre], John Fuller [aut, cph], Paolo Leva [aut, cph]
Date of publication
2015-07-17 12:51:32
Maintainer
Jose Gama <rxprtgama@gmail.com>
License
GPL (>= 3)
Version
1.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

Files in this package

RSpincalc
RSpincalc/NAMESPACE
RSpincalc/demo
RSpincalc/demo/00Index
RSpincalc/demo/testRSpincalc.R
RSpincalc/R
RSpincalc/R/RSpinconv.R
RSpincalc/MD5
RSpincalc/DESCRIPTION
RSpincalc/man
RSpincalc/man/EA2DCM.Rd
RSpincalc/man/EV2Q.Rd
RSpincalc/man/EA2Q.Rd
RSpincalc/man/DCM2EV.Rd
RSpincalc/man/Q2EV.Rd
RSpincalc/man/z1.Rd
RSpincalc/man/Qrandom.Rd
RSpincalc/man/DCM2Q.Rd
RSpincalc/man/z4.Rd
RSpincalc/man/Qnorm.Rd
RSpincalc/man/Qlerp.Rd
RSpincalc/man/Q2DCM.Rd
RSpincalc/man/EA2EV.Rd
RSpincalc/man/isPureRotationMatrix.Rd
RSpincalc/man/Qzero.Rd
RSpincalc/man/EA2EA.Rd
RSpincalc/man/vectQrot.Rd
RSpincalc/man/QangularDifference.Rd
RSpincalc/man/EV2EA.Rd
RSpincalc/man/z3.Rd
RSpincalc/man/Qlog.Rd
RSpincalc/man/z5.Rd
RSpincalc/man/Qnormalize.Rd
RSpincalc/man/Q2GL.Rd
RSpincalc/man/Qconj.Rd
RSpincalc/man/z2.Rd
RSpincalc/man/EV2DCM.Rd
RSpincalc/man/Q2EA.Rd
RSpincalc/man/Qrot.Rd
RSpincalc/man/DCMrandom.Rd
RSpincalc/man/Qinv.Rd
RSpincalc/man/EVrandom.Rd
RSpincalc/man/DCM2EA.Rd
RSpincalc/man/EArandom.Rd