Skip to content

Orbit and State Reference

In ANISE, an Orbit represents the full state of an object at a specific time within a specific coordinate frame.

The Orbit Struct

An Orbit consists of:

  • State Vector: Position and Velocity (\(\mathbf{r}, \mathbf{v}\)).
  • Epoch: The time at which the state is defined (using hifitime).
  • Frame: The reference frame in which the vectors are expressed.

Initialization

You can initialize an Orbit from various representations, including with the following initializers. Refer to https://docs.rs/anise/latest/anise/astro/orbit/type.Orbit.html for the exhaustive list, which includes Keplerian altitudes, Keplerian apses radii, Keplerian mean anomaly, etc.

Cartesian

Orbit::cartesian(x, y, z, vx, vy, vz, epoch, frame) Directly sets the position and velocity in km and km/s.

Keplerian

Orbit::keplerian(sma, ecc, inc, raan, aop, true_anomaly, epoch, frame) Calculates the state from classical orbital elements. - Note: Requires the frame to have a defined gravitational parameter (\(\mu\)).

Geodetic / LatLongAlt

Orbit::try_latlongalt(lat, lon, alt, epoch, frame) Defines a state relative to a body's surface. Useful for ground stations.

Common Operations

transform_to

almanac.transform_to(orbit, target_frame, aberration) Returns a new Orbit expressed in the target_frame. This accounts for both translation and rotation of the frames.

Orbital Elements

You can extract orbital elements from an Orbit object:

  • sma_km(), ecc(), inc_deg(), raan_deg(), aop_deg(), ta_deg()
  • Other Anomalies: ma_deg() (Mean Anomaly), ea_deg() (Eccentric Anomaly).
  • Other Parameters: periapsis_km(), apoapsis_km(), hmag() (Specific Angular Momentum).
  • Python: Accessible as methods (e.g., orbit.sma_km()).

Propagation (Two-Body)

ANISE provides basic two-body propagation for quick estimates:

  • at_epoch(new_epoch): Propagates the orbit to a new time using Keplerian motion.
  • Warning: For high-fidelity propagation including J2, solar radiation pressure, etc., use a dedicated propagator like those found in the Nyx library.