heyoka.model.sgp4_propagator

heyoka.model.sgp4_propagator#

heyoka.model.sgp4_propagator(sat_list: list | ndarray, diff_order: int = 0, **kwargs)#

Construct an SGP4 propagator.

Added in version 5.1.0.

Added in version 7.0.0: This function now also accepts sat_list as a NumPy array.

Note

A tutorial explaining the use of this function is available.

This function will construct an SGP4 propagator from the input arguments.

The only mandatory argument is sat_list, which must be either a list of general perturbations element sets (GPEs) represented as Satrec objects from the sgp4 Python module, or a 2D array.

In the former case, the GPE data is taken directly from the Satrec objects. In the latter case, sat_list is expected to be a 9 x n C-style contiguous array, where n is the total number of satellites and the rows contain the following GPE data:

  1. the mean motion (in [rad / min]),

  2. the eccentricity,

  3. the inclination (in [rad]),

  4. the right ascension of the ascending node (in [rad]),

  5. the argument of perigee (in [rad]),

  6. the mean anomaly (in [rad]),

  7. the BSTAR drag term (in the same unit as given in the GPE),

  8. the reference epoch (as a Julian date),

  9. a fractional correction to the epoch (in Julian days).

Epochs must be provided in the UTC scale of time, following the convention that days in which leap seconds are added/removed are 1 second longer/shorter than one SI day.

The diff_order argument indicates the desired differentiation order. If equal to 0, then derivatives are disabled.

The fp_type keyword argument can be passed in kwargs to select the precision of the propagator (double-precision is the default, single-precision is also supported).

kwargs can also optionally contain keyword arguments from the LLVM kwargs set and the cfunc kwargs set.

Parameters:
  • sat_list – the GPE data.

  • diff_order – the derivatives order.

Raises:

TypeError – if an unsupported fp_type is specified.

Raises:

any exception raised by the construction of the propagator.

Returns:

an SGP4 propagator object.

Return type:

sgp4_propagator_dbl | sgp4_propagator_flt