pleiades-data 0.5.6

Packaged offline ephemeris data (precomputed positions for the Sun, the Moon, Mercury through Pluto, derived from JPL public-domain ephemerides) and its EphemerisBackend for the pleiades astrology workspace.
Documentation

pleiades-data

crates.io docs.rs License: MIT OR Apache-2.0

Packaged offline ephemeris data (precomputed positions for the Sun, the Moon, Mercury through Pluto, derived from JPL public-domain ephemerides) and its EphemerisBackend for the pleiades astrology workspace.

The crate ships a compressed artifact covering 1900-01-01 through 2100-01-01, regenerated from the checked-in JPL reference snapshot and validated against a deterministic binary fixture. The backend serves the Sun, the Moon and Mercury through Pluto, and falls back to other providers when callers request bodies outside the packaged slice.

The artifact also carries segments for asteroid:433-Eros, fitted to 17 reference rows. They are not served: outside those rows the fit is wrong by tens of degrees. PackagedDataBackend reports the body unsupported, and packaged_lookup refuses it too. Enable the packaged-artifact-path feature to load an explicit artifact file for larger or externally distributed packaged datasets.

Quick start

use pleiades_backend::{CelestialBody, Instant, JulianDay, TimeScale};
use pleiades_data::{packaged_backend, packaged_lookup};

let _backend = packaged_backend();
let instant = Instant::new(JulianDay::from_days(2_451_545.0), TimeScale::Tt);
let sun = packaged_lookup(&CelestialBody::Sun, instant)
    .expect("Sun should be in the packaged artifact");
assert!(sun.distance_au.is_some());

Besides the packaged bodies, the backend serves six derived lunar points: the osculating TrueNode, TrueApogee and TruePerigee (from the packaged Moon state) and the mean MeanNode, MeanApogee and MeanPerigee (from the mean lunar elements in pleiades-apsides). The mean apogee and perigee are the points on the inclined mean orbit, as Swiss Ephemeris reports SE_MEAN_APOG. All six are served only inside the packaged window.

Status

Experimental, pre-1.0: breaking changes can land in any minor release. This backend returns mean geometric coordinates and rejects apparent requests; the chart layer in pleiades-core and the event engines in pleiades-events apply apparent place on top of it. See the workspace README for the full maturity posture.

License

MIT OR Apache-2.0