Module propagation

Module propagation 

Source

StructsΒ§

AdaptiveConfig
Configuration for the RK45 adaptive integrator.
AdaptiveResult
Result of an adaptive propagation.
IntegratorConfig
Configuration for the RK4 integrator.
PropState
State of a spacecraft/body in 3D Cartesian coordinates.
SymplecticResult
Result of a symplectic StΓΆrmer-Verlet propagation.

EnumsΒ§

ThrustProfile
Thrust profile for continuous-thrust propagation.

ConstantsΒ§

DP_A21 πŸ”’
a matrix (lower triangular, row by row)
DP_A31 πŸ”’
DP_A32 πŸ”’
DP_A41 πŸ”’
DP_A42 πŸ”’
DP_A43 πŸ”’
DP_A51 πŸ”’
DP_A52 πŸ”’
DP_A53 πŸ”’
DP_A54 πŸ”’
DP_A61 πŸ”’
DP_A62 πŸ”’
DP_A63 πŸ”’
DP_A64 πŸ”’
DP_A65 πŸ”’
DP_B πŸ”’
5th-order weights (solution)
DP_C πŸ”’
Dormand-Prince 5(4) Butcher tableau coefficients (FSAL). c nodes (time fractions within step)
DP_E πŸ”’
Error coefficients: e_i = b_i - b*_i (difference between 5th and 4th order)
FAC_MAX πŸ”’
FAC_MIN πŸ”’
PI_EXPONENT_I πŸ”’
PI_EXPONENT_P πŸ”’
SAFETY πŸ”’
PI controller constants for step size selection (Codex-recommended).

FunctionsΒ§

circular_orbit_state
Create initial state for a circular orbit in the XY plane.
derivatives πŸ”’
Derivative of state: (velocity, acceleration). Returns (dr/dt, dv/dt) as raw f64 arrays [x,y,z] each.
dopri45_step πŸ”’
Perform one RK45 Dormand-Prince step. Returns (new_pos, new_vel, err_pos, err_vel). Uses 7 stages (FSAL: k7 of this step = k1 of next step).
elliptical_orbit_state_at_periapsis
Create initial state for an elliptical orbit in the XY plane at periapsis.
energy_drift
Compute maximum relative energy drift during a propagation.
estimate_initial_step πŸ”’
Estimate initial step size using the approach from Hairer-NΓΈrsett-Wanner.
gravity_accel πŸ”’
Compute gravitational acceleration at a position (km/sΒ²).
propagate
Propagate an orbit from initial state for a given duration.
propagate_adaptive
Propagate using RK45 Dormand-Prince adaptive step integrator.
propagate_adaptive_final
Propagate adaptively and return only the final state (memory-efficient).
propagate_final
Propagate and return only the final state (memory-efficient for long propagations).
propagate_symplectic
Propagate a ballistic (thrust-free) orbit using the StΓΆrmer-Verlet symplectic integrator.
propagate_symplectic_final
Propagate a ballistic orbit using StΓΆrmer-Verlet and return only the final state. Memory-efficient variant.
rk4_step πŸ”’
Perform one RK4 step.
scaled_error_norm πŸ”’
Compute scaled RMS error norm for step acceptance. State is [x, y, z, vx, vy, vz] (6 components).