drotat |
Table of contents
ProcedureDROTAT ( Derivative of a rotation matrix ) SUBROUTINE DROTAT ( ANGLE, IAXIS, DMOUT ) AbstractCalculate the derivative with respect to the angle of rotation of a 3x3 coordinate system rotation matrix generated by a rotation of a specified angle about a specified axis. Required_ReadingROTATION KeywordsDERIVATIVE MATRIX ROTATION DeclarationsIMPLICIT NONE DOUBLE PRECISION ANGLE INTEGER IAXIS DOUBLE PRECISION DMOUT ( 3,3 ) Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- ANGLE I Angle of rotation (radians). IAXIS I Coordinate axis number (X=1, Y=2, Z=3). DMOUT O Derivative of rotation matrix [ANGLE] w.r.t. angle IAXIS Detailed_InputANGLE is the angle given in radians, through which the rotation is performed. IAXIS is the coordinate axis number of the rotation. The X, Y, and Z axes have indices 1, 2 and 3 respectively. Together ANGLE and IAXIS define the coordinate system rotation [ANGLE] . IAXIS Detailed_OutputDMOUT is the derivative of the rotation matrix with respect to the angle of rotation. That is, DMOUT is the derivative with respect to ANGLE of the matrix [ANGLE] . IAXIS (The rotation matrix being differentiated describes the rotation of the COORDINATE system through ANGLE radians about the axis whose index is IAXIS.) ParametersNone. Exceptions1) If the axis index is not in the range 1 to 3, the error SPICE(BADAXIS) is signaled. FilesNone. ParticularsA coordinate system rotation by ANGLE radians rotation about the first, i.e. x-axis, [ANGLE] is described by 1 | 1 0 0 | | 0 cos(ANGLE) sin(ANGLE) | | 0 -sin(ANGLE) cos(ANGLE) | A coordinate system rotation by ANGLE radians rotation about the second, i.e. y-axis, [ANGLE] is described by 2 | cos(ANGLE) 0 -sin(ANGLE) | | 0 1 0 | | sin(ANGLE) 0 cos(ANGLE) | A coordinate system rotation by ANGLE radians rotation about the third, i.e. z-axis, [ANGLE] is described by 3 | cos(ANGLE) sin(ANGLE) 0 | | -sin(ANGLE) cos(ANGLE) 0 | | 0 0 1 | The derivatives of these matrices are: about the x-axis | 0 0 0 | | 0 -sin(ANGLE) cos(ANGLE) | | 0 -cos(ANGLE) -sin(ANGLE) | about the y-axis | -sin(ANGLE) 0 -cos(ANGLE) | | 0 0 0 | | cos(ANGLE) 0 -sin(ANGLE) | about the z-axis | -sin(ANGLE) cos(ANGLE) 0 | | -cos(ANGLE) -sin(ANGLE) 0 | | 0 0 0 | ExamplesIf ROTATE is called from a FORTRAN program as follows: CALL DROTAT (PI()/4, 3, DMOUT) then DMOUT will be |-SQRT(2)/2 SQRT(2)/2 0 | |-SQRT(2)/2 -SQRT(2)/2 0 | | 0 0 0 | RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionJ. Diaz del Rio (ODC Space) W.L. Taber (JPL) VersionSPICELIB Version 1.1.0, 12-AUG-2021 (JDR) Added IMPLICIT NONE statement. Edited the header to comply with NAIF standard. SPICELIB Version 1.0.1, 10-MAR-1992 (WLT) Comment section for permuted index source lines was added following the header. SPICELIB Version 1.0.0, 05-NOV-1990 (WLT) |
Fri Dec 31 18:36:15 2021