Generates an SPK kernel for a small body using the JPL Horizons API.
Downloads a Type 21 (Extended Modified Difference Array) SPK file from
Horizons and saves it to priv/ephemeris/spk/asteroids/{naif_id}.bsp.
Usage
mix eph.generate_kernel NAIF_ID [options]Arguments
NAIF_ID— NAIF/SPICE body ID (e.g.2000001for Ceres,2000004for Vesta). Must be an IAU numbered asteroid (2000001–2887103) or use the--nameoption for named lookup.
Options
--name NAME— resolve by name instead of NAIF ID (e.g.--name Ceres)--start DATE— coverage start (default:1900-01-01)--stop DATE— coverage stop (default:2200-01-01)--out PATH— output path (default:priv/ephemeris/spk/asteroids/NAIF_ID.bsp)--force— overwrite existing file
Examples
mix eph.generate_kernel 2000001
mix eph.generate_kernel 2000001 --start 1980-01-01 --stop 2050-01-01
mix eph.generate_kernel 2000001 --name "Ceres" --forceNotes
The Horizons API endpoint used is:
https://ssd.jpl.nasa.gov/api/horizons_file.api
Requests must use COMMAND='DES=NAIF_ID;' for numbered asteroid lookup.
The API returns a JSON response containing base64-encoded SPK binary data.