pcke03 |
Table of contents
ProcedurePCKE03 ( PCK, evaluate data record from type 3 segment ) SUBROUTINE PCKE03 ( ET, RECORD, ROTMAT ) AbstractEvaluate a single PCK data record from a segment of type 03 (Variable width Chebyshev Polynomials for RA, DEC, and W) to obtain a state transformation matrix. Required_ReadingPCK KeywordsPCK DeclarationsIMPLICIT NONE DOUBLE PRECISION ET DOUBLE PRECISION RECORD ( * ) DOUBLE PRECISION ROTMAT ( 6, 6 ) Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- ET I Target epoch state transformation. RECORD I Data record valid for epoch ET. ROTMAT O State transformation matrix at epoch ET. Detailed_InputET is a target epoch, at which a state transformation matrix is to be calculated. RECORD is a data record which, when evaluated at epoch ET, will give RA, DEC, and W and angular velocity for a body. The RA, DEC and W are relative to some inertial frame. The angular velocity is expressed relative to the body fixed coordinate frame. Detailed_OutputROTMAT is the state transformation matrix at epoch ET. ParametersNone. ExceptionsNone. FilesNone. ParticularsThe exact format and structure of type 03 PCK segments are described in the PCK Required Reading file. A type 03 segment contains six sets of Chebyshev coefficients, one set each for RA, DEC, and W and one set each for the components of the angular velocity of the body. The coefficients for RA, DEC, and W are relative to some inertial reference frame. The coefficients for the components of angular velocity are relative to the body fixed frame and must be transformed via the position transformation corresponding to RA, DEC and W. PCKE03 calls the routine CHBVAL to evaluate each polynomial, to obtain a complete set of values. These values are then used to determine a state transformation matrix that will rotate an inertially referenced state into the bodyfixed coordinate system. ExamplesThe PCKEnn routines are almost always used in conjunction with the corresponding PCKRnn routines, which read the records from binary PCK files. The data returned by the PCKRnn routine is in its rawest form, taken directly from the segment. As such, it will be meaningless to a user unless he/she understands the structure of the data type completely. Given that understanding, however, the PCKRnn routines might be used to examine raw segment data before evaluating it with the PCKEnn routines. C C Get a segment applicable to a specified body and epoch. C CALL PCKSFS ( BODY, ET, HANDLE, DESCR, IDENT, FOUND ) C C Look at parts of the descriptor. C CALL DAFUS ( DESCR, 2, 6, DCD, ICD ) TYPE = ICD( 3 ) IF ( TYPE .EQ. 03 ) THEN CALL PCKR03 ( HANDLE, DESCR, ET, RECORD ) . . Look at the RECORD data. . CALL PCKE03 ( ET, RECORD, ROTMAT ) . . Apply the rotation and check out the state. . END IF RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionJ. Diaz del Rio (ODC Space) K.R. Gehringer (JPL) W.L. Taber (JPL) E.D. Wright (JPL) VersionSPICELIB Version 3.0.2, 20-AUG-2021 (JDR) Edited the header to comply with NAIF standard. SPICELIB Version 3.0.1, 03-JAN-2014 (EDW) Minor edits to $Procedure; clean trailing whitespace. Removed unneeded $Revisions section. SPICELIB Version 3.0.0, 06-OCT-1995 (WLT) Brian Carcich at Cornell discovered that the Euler angles were being re-arranged unnecessarily. As a result the state transformation matrix computed was not the one we expected. (The re-arrangement was a left-over from implementation 1.0.0. This problem has now been corrected. SPICELIB Version 2.0.0, 28-JUL-1995 (WLT) Version 1.0.0 was written under the assumption that RA, DEC, W and dRA/dt, dDEC/dt and dW/dt were supplied in the input RECORD. This version repairs the previous misinterpretation. SPICELIB Version 1.0.0, 14-MAR-1995 (KRG) |
Fri Dec 31 18:36:37 2021