Index of Functions: A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 
Index Page
spke10

Table of contents
Procedure
Abstract
Required_Reading
Keywords
Declarations
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version

Procedure

     SPKE10 ( Evaluate SPK record, type 10 )

     SUBROUTINE SPKE10 ( ET, RECORD, STATE )

Abstract

     Evaluate a single SPK data record from a segment of type 10
     (NORAD two-line element sets.). This evaluator uses algorithms 
     as described in Vallado 2006 [4].

Required_Reading

     SPK

Keywords

     EPHEMERIS

Declarations

     IMPLICIT NONE

     INCLUDE 'zzsgp4.inc'

     DOUBLE PRECISION      ET
     DOUBLE PRECISION      RECORD   ( * )
     DOUBLE PRECISION      STATE    ( 6 )

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     ET         I   Target epoch.
     RECORD     I   Data record.
     STATE      O   State (position and velocity).

Detailed_Input

     ET       is a target epoch, specified as ephemeris seconds past
              J2000, at which a state vector is to be computed.

     RECORD   is a data record which, when evaluated at epoch ET,
              will give the state (position and velocity) of some
              body, relative to some center, in some inertial
              reference frame.

              The structure of RECORD is:

                  RECORD(1)
                     .            Geophysical Constants such as
                     .            GM, J2, J3, J4, etc.
                     .
                  RECORD(NGEO)

                  RECORD(NGEO + 1)
                     .
                     .            elements and epoch for the body
                     .            at epoch 1.
                     .
                  RECORD(NGEO + NELEMS )

                  RECORD(NGEO + NELEMS + 1)
                     .
                     .            elements and epoch for the body
                     .            at epoch 2.
                     .
                  RECORD(NGEO + 2*NELEMS )

              Epoch 1 and epoch 2 are the times in the segment that
              bracket ET. If ET is less than the first time in the
              segment then both epochs 1 and 2 are equal to the
              first time. And if ET is greater than the last time
              then, epochs 1 and 2 are set equal to this last time.

Detailed_Output

     STATE    is the state produced by evaluating RECORD at ET.
              Units are km and km/sec relative to the J2000 
              reference frame.

Parameters

     NGEO     is the number of geophysical constants for SGP4 SPK
              records.

     AFSPC    set the SGP4 propagator to use the original 
              Space Track #3 GST algorithm as described in Hoots [1];
              value defined in zzsgp4.inc.

     IMPRVD   set the SGP4 propagator to use the improved GST 
              algorithm as defined in Vallado [4]; value defined in
              zzsgp4.inc. 

Exceptions

     1)  If a problem occurs when evaluating the two-line elements, an
         error is signaled by a routine in the call tree of this
         routine.

Files

     None.

Particulars

     This routine interpolates a state from the two reference sets
     of two-line element sets contained in RECORD.

     It is assumed that this routine is used in conjunction with
     the routine SPKR10 as shown here:

        CALL SPKR10   ( HANDLE, DESCR, ET, RECORD         )
        CALL SPKE10   (                ET, RECORD, STATE  )

     Where it is known in advance that the HANDLE, DESCR pair points
     to a type 10 data segment.

Examples

     The SPKEnn routines are almost always used in conjunction with
     the corresponding SPKRnn routines, which read the records from
     SPK files.

     The data returned by the SPKRnn 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 SPKRnn
     routines might be used to examine raw segment data before
     evaluating it with the SPKEnn routines.


     C
     C     Get a segment applicable to a specified body and epoch.
     C
           CALL SPKSFS ( BODY, ET, HANDLE, DESCR, IDENT, FOUND )

     C
     C     Look at parts of the descriptor.
     C
           CALL DAFUS ( DESCR, 2, 6, DCD, ICD )
           CENTER = ICD( 2 )
           REF    = ICD( 3 )
           TYPE   = ICD( 4 )

           IF ( TYPE .EQ. 10 ) THEN

              CALL SPKR10 ( HANDLE, DESCR, ET, RECORD )
                  .
                  .  Look at the RECORD data.
                  .
              CALL SPKE10 ( ET, RECORD, STATE )
                  .
                  .  Check out the evaluated state.
                  .
           END IF

Restrictions

     None.

Literature_References

     [1]  F. Hoots and R. Roehrich, "Spacetrack Report #3: Models for
          Propagation of the NORAD Element Sets," U.S. Air Force
          Aerospace Defense Command, Colorado Springs, CO, 1980.

     [2]  F. Hoots, "Spacetrack Report #6: Models for Propagation of
          Space Command Element Sets,"  U.S. Air Force Aerospace
          Defense Command, Colorado Springs, CO, 1986.

     [3]  F. Hoots, P. Schumacher and R. Glover, "History of Analytical
          Orbit Modeling in the U. S. Space Surveillance System,"
          Journal of Guidance, Control, and Dynamics. 27(2):174-185,
          2004.

     [4]  D. Vallado, P. Crawford, R. Hujsak and T. Kelso, "Revisiting
          Spacetrack Report #3," paper AIAA 2006-6753 presented at the
          AIAA/AAS Astrodynamics Specialist Conference, Keystone, CO.,
          August 21-24, 2006.

Author_and_Institution

     N.J. Bachman       (JPL)
     J. Diaz del Rio    (ODC Space)
     W.L. Taber         (JPL)
     E.D. Wright        (JPL)

Version

    SPICELIB Version 3.1.0, 10-OCT-2021 (JDR) (EDW)

        Use of modified ZZTEME to eliminate a matrix inversion.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 3.0.0, 18-FEB-2015 (EDW)

        Evaluator now uses Vallado derived propagator as described
        in Vallado 2006 [4].

    SPICELIB Version 2.0.0, 01-JAN-2011 (EDW)

        Correction of state transformation calculation. Algorithm
        now computes state transformation as from TEME to J2000.
        The previous version of this routine calculated TETE to
        J2000.

    SPICELIB Version 1.1.0, 01-SEP-2005 (NJB)

        Updated to remove non-standard use of duplicate arguments
        in MTXV and VADD calls.

    SPICELIB Version 1.0.0, 18-JUL-1997 (WLT)
Fri Dec 31 18:36:51 2021