astrodyn_planet
Reference-ellipsoid parameters and standard preset bodies for the
astrodyn_bevy workspace.
Ports
models/environment/planet/
from NASA JEOD v5.4.0 — the per-body
shape parameters (gravitational parameter, equatorial and polar radii,
flattening) consumed by gravity, geodetic, atmospheric, and
frame-rotation code.
Layered architecture
astrodyn_bevy (Bevy ECS adapter, mission code)
↓
astrodyn (orchestration, recipes, single API surface)
↓
astrodyn_planet ← this crate (pure Rust, zero Bevy)
↓
astrodyn_quantities (typed length / GravParam quantities)
astrodyn_planet is part of the astrodyn_* physics layer — pure Rust with no
Bevy dependency. See the project
Strategy wiki page
for the layered architecture.
Public surface
PlanetShape— reference-ellipsoid parameter block (mu,r_eq,r_pol,flat_coeff) with derived helpers and typed accessors.presets::EARTH/MOON/SUN/MARS— canonical constants matching the JEODplanet/data/src/<body>.ccfiles plus the corresponding gravity-modelmu(Earth uses GGM05C, Moon GRAIL150, Mars MRO110B2, Sun spherical).
Earth's mu follows the GGM05C value 3.986004415e14 m³/s² rather
than IERS 2010, to keep cross-validation faithful to JEOD source.
See also
docs/JEOD_invariants.md—PL.*invariants this crate enforces.- Project README and
CLAUDE.md— workspace-level architecture. - Rendered rustdoc: https://docs.rs/astrodyn_planet