orbitx.Orbit.simulate

Contents

orbitx.Orbit.simulate#

classmethod Orbit.simulate(satellites: List[str], start_date: datetime64, end_date: datetime64, propagation_sampling_interval: timedelta64, interpolation_sampling_interval: timedelta64, reference_date: datetime64 = np.datetime64('1970-01-01T00:00:00'), custom_satellites: List[Dict[str, str]] = [])[source]#

Main generator for the Orbit class

Simulates the orbit of requested satellites between start_date and end_date. The supported names for satellites are the following:

"CS2": "CryoSat-2",
"J2": "JASON-2",
"J3": "JASON-3",
"LS8": "Landsat-8",
"LS9": "Landsat-9",
"N20": "NOAA-20",
"S2A": "Sentinel-2A",
"S2B": "Sentinel-2B",
"S3A": "Sentinel-3A",
"S3B": "Sentinel-3B",
"S6": "Sentinel-6",
"SA": "Saral-AltiKa"

If the satellite you are interested in is not in this list, you may use the custom_satellites argument.

The simulation starts by finding relevant Two Line Elements (TLE). The simulation then does a Physics simulation of the orbits (propagation step) from the TLEs at the requested resolution propagation_sampling_interval. Finally the simulation performs an interpolation of the propagated orbits at the requested resolution interpolation_sampling_interval

Parameters:
  • satellites (List[str]) – List of short names for satellites.

  • start_date (np.datetime64) – The date from which the orbits are to be simulated

  • end_date (np.datetime64) – The date until which the orbits are to be simulated

  • propagation_sampling_interval (np.timedelta64) – The time interval in seconds between two successive physics simulations of the orbit

  • interpolation_sampling_interval (np.timedelta64) – The time interval in seconds between two successive interpolations

  • reference_date (_type_, optional) – The time variable of an orbit is given in seconds since a reference year. This variable let’s you set this reference year. Defaults to np.datetime64(“1970-01-01T00:00:00”).

  • custom_satellites (List[Dict[str, str]], optional) – A list of dictionaries used for the satellites that are not natively covered in OrbitX. Each element of the list needs to be a dictionary with the following entries: tle_filepath (the path to the TLE file for the satellite), satellite_shortname (the short name of the satellite), satellite_name (the full name of the satellite). Defaults to [].

Returns:

An Orbit object with the requested parameters. See the Orbit class documentation for details about their structure

Return type:

Orbit