メインコンテンツ

Propagation Methods in Spacecraft Simulation

This section outlines analytical and numerical methods you use to propagate a spacecraft orbit and configure end‑to‑end simulation workflows in the Aerospace Toolbox.

With the simulation environment and spacecraft characteristics defined in Spacecraft Key Concepts, the next step is to propagate the spacecraft’s orbit through time. This section explains the available propagation methods, analytical and numerical, and details the workflow for configuring and executing orbit simulations in the Aerospace Toolbox. Numerical propagation integrates gravitational and non-gravitational forces based on settings in NumericalPropagatorOptions and PhysicalProperties. Analytical propagation uses Keplerian two-body motion or SGP4 without numerical force integration.

Numerical Propagation Workflow

Configure Central Body Options

Begin by setting up the Aero.spacecraft.CentralBodyOptions object. You can skip this step if you will be using Earth central body and not using Earth orientation parameters.

Actions

  • Specify central body.

  • For Earth, specify whether Earth orientation parameters must be used. If yes, specify Earth orientation parameter file.

Configure Numerical Propagator Options

Set up the Aero.spacecraft.NumericalPropagatorOptions object and pass the Aero.spacecraft.CentralBodyOptions object to the constructor. This is your primary configuration hub, where you define the environment and integrator settings for your simulation.

Actions

  • Choose time integration settings (e.g., solver type, tolerances).

  • Configure force models:

    • Central body gravity model

      • All bodies support point-mass and oblate-ellipsoid.

      • Earth, Moon and Mars support spherical harmonics.

      • When using spherical harmonics, specify the spherical harmonic model and degree.

    • Atmospheric drag (only available for Earth central body)

    • Solar radiation pressure

  • Planetary ephemeris model (if using solar radiation pressure and/or third body gravity)

Configure Third Body Options

Within the Aero.spacecraft.NumericalPropagatorOptions object, use the Aero.spacecraft.ThirdBodyOptions Properties object held by the ThirdBodyOptions property or the thirdBodyOptions function to configure third body gravity.

Actions:

  • Set the IncludeThirdBodyGravity property to true to enable third body gravitational influences.

  • Specify celestial bodies (e.g., Sun, Moon) via the ThirdBodyGravitySource property. This will make the properties for the selected third bodies visible.

  • For each selected third body, configure individual gravity models using the corresponding Aero.spacecraft.ThirdBodyProperties objects.

    • Specify the gravitational model. All third bodies support point-mass and oblate-ellipsoid.

    • Earth, Moon and Mars support spherical harmonics.

    • When using spherical harmonics, specify the spherical harmonic model and degree.

Define Spacecraft Physical Properties

Set up the Aero.spacecraft.PhysicalProperties object to account for spacecraft-specific parameters, which in turn influence forces from atmospheric drag and solar radiation pressure.

Actions:

  • Define mass. This is used to calculate acceleration terms resulting from atmospheric drag and solar radiation pressure.

  • Define drag coefficient and drag surface area. This is used for calculating atmospheric drag force.

  • Define reflectivity coefficient and solar radiation pressure area. This is used for calculating force from solar radiation pressure.

Define epoch states

Epoch states are specified using one of the following:

  • Orbital elements (with an optional Epoch time input).

  • Cartesian states (with an optional Epoch time input), specified in inertial frame, fixed-frame or geographic. The reference frame is specified using InputCoordinateFrame Name-Value argument.

  • Mean element struct (only available for Earth central body). Use tleread or ommread function to read a TLE file or an OMM file and output the mean element struct.

Simulate Orbit with propagateOrbit

With all configurations in place, simulate the spacecraft's motion.

Actions:

Integration:

Analytical Propagation Workflow

Configure Central Body Options

Use the Aero.spacecraft.CentralBodyOptions object to define the central gravitational body for the simulation. For Earth, you can also specify Earth-orientation parameters if your workflow requires transformations between inertial and fixed frames.

Actions

  • Create a central body when you need a non-Earth central body or when Earth-orientation parameters are required.

  • Specify the central body name (Earth, Moon, Mars, or other supported bodies).

  • If using Earth and EOP data, provide the Earth-orientation parameter file.

Define epoch states

Epoch states are specified using one of the following:

  • Orbital elements (with an optional Epoch time input).

  • Cartesian states (with an optional Epoch time input), specified in inertial frame, fixed-frame or geographic. The reference frame is specified using InputCoordinateFrame Name-Value argument.

  • Mean element struct (only available for Earth central body). Use tleread or ommread function to read a TLE file or an OMM file and output the mean element struct.

Simulate Orbit with propagateOrbit

Use the propagateOrbit function to simulate spacecraft motion using analytical propagation. Initial states may be specified as orbital elements, Cartesian states, or (for Earth) mean elements from TLE or OMM data.

Actions

  • Choose a propagation model in the propagateOrbit function by setting the PropModel argument to either two-body-keplerian or sgp4.

  • Supply initial states as orbital elements, Cartesian states, or a mean-element structure.

  • If you set PropModel to sgp4 and specify the epoch states using orbital elements or Cartesian states, you can also optionally specify the BStar input. This defines the drag term used by SGP4.

See Also

| | | |

Topics