Skip to main content

High-precision HDC reference instrument for the solar system based on JPL DE441 (native C backend, runtime kernel patching, 38 bodies including all major Jovian + Saturnian moons; SPICE-free runtime)

Project description

ephemerides-spectral

High-precision HDC reference instrument for the Sol Star System.

Overview

ephemerides-spectral is a hyperdimensional-computing instrument that encodes the barycentric state of our star system using high-precision ephemeris data (NASA JPL DE441 / DE442) as resonant phases over a graph Laplacian.

Three interchangeable backends ship with the package:

  • bip (default) — bit-serialised integer ALU in pure Python. Phase composition lives in the cyclic group Z_{2^32}; binding is (φ_1 + φ_2) mod 2^32, which is implicit uint32 overflow — no FPU in the hot path. 305× faster than the FPU reference; 256 KB state at D=65536. Always available.
  • c (v0.3.1+) — native C library (libephemerides_spectral.{so,dll,dylib}) bundled in the platform wheel under _native/, loaded via ctypes. Byte-for-byte identical phase residues to bip; ~1000× speedup on the chunk loop (encode at +20 yr: 46 ms Python → 0.04 ms C). Falls back transparently to bip if the binary isn't loadable (sdist installs without a C toolchain, Pyodide / WASM, the pure-Python fallback wheel).
  • complex128 — FPU reference encoder with unit-norm complex Gaussian bases. Used for the algebraic identities (Syzygy operator, observer binding) and as a regression baseline.

Both backends implement the same algebraic substrate (cyclic-group representation of celestial phase-space, graph-Laplacian eigenbasis); they trade precision for speed.

Companion Project

ephemerides-spectral lives in the same docs/antikythera-maths/ folder as antikythera-spectral because the two share the spectral / cyclic-group framing and the Pyodide bridge contract. They are not consolidated: antikythera-spectral encodes a specific bronze-age mechanism (940-tooth Callippic gear DAG) while ephemerides-spectral encodes the live JPL DE441 ephemeris with phase-dependent (breathing) gravitational couplings. The chess-spectral notebook §20.13–§20.17 calls out the cross-pollination — chess uses Z_{640} (paying an explicit % 640 per op); ephemerides uses Z_{2^32} (free uint32 overflow).

Key Capabilities

  • Graph Laplacian Propagator: Diagonal content = Newtonian mean motions + Mercury 43"/century post-Newtonian correction. Off-diagonal = gravitational fiber couplings (planet-sun, moon-planet, mean-motion resonances, asteroid-Jupiter).
  • Phase 9 "Breathing" Couplings: Off-diagonal weights modulate with the resonant phase difference cos(n_a·φ_a − n_b·φ_b). Formally a state-dependent (non-autonomous) graph Laplacian / adaptive Kuramoto-family network with phase-difference-dependent coupling — see the research notebook §1.4 for the full positioning across spectral-graph-theory / dynamical-systems / DNLS-on-a-graph vocabularies. Implemented end-to-end without FPU using a 1024-entry int32 cosine LUT (Q1.14 amplitude, 4 KB).
  • Sol Star System Roster (v0.5.0+): 38 bodies — Sun, 9 planets (incl. Pluto), 24 moons, 4 main-belt asteroids. The moon set covers Earth's Moon, Mars's Phobos / Deimos, all 4 Galileans (Io, Europa, Ganymede, Callisto) plus the 4 inner regulars (Metis, Adrastea, Amalthea, Thebe), the canonical 9 Saturnians (Mimas, Enceladus, Tethys, Dione, Rhea, Titan, Hyperion, Iapetus, Phoebe) plus the Janus / Epimetheus co-orbitals, Uranus's Titania, and Neptune's Triton.
  • Mean-motion resonances (v0.5.0+): 7 entries in RESONANCES — Jupiter–Saturn 5:2, Neptune–Pluto 3:2, Io–Europa 2:1, Europa–Ganymede 2:1, Mimas–Tethys 4:2 (Cassini Division), Enceladus–Dione 2:1 (powers Enceladus tidal heating), Titan–Hyperion 4:3 (Hyperion's chaotic rotation). Natural-resonance gear group: Z_60 = Z_4 × Z_3 × Z_5.
  • Runtime kernel patching (v0.4.0+): Diagnosed-fiber overlay — patches sit beside the published kernel as DATA, not code edits, and contribute per-body residue deltas at encode time. Inspired by Linux ksplice / kpatch; the kernel's published bytes never change. Bridge surface: apply_patch(name) / apply_custom_patch(...) / clear_patches(). Three patches in the bundled CATALOG authored from the v0.3.1 FFT residual analysis. v0.5.1 patch-shrinks-residual benchmark measured the catalog and showed partial vindication: J–S coupled patch shrinks both bodies' residuals by ~77% with phase-recovered authoring (research-side; stays out of the v0.5.x catalog until ≥80% on every body); Mars stays stuck at 3% due to FFT bin leakage. v0.5.2 adds windowed FFT + multi-bin patches for full predictive power.
  • SPICE-free runtime (v0.5.0+): pip install works out of the box — both backends use codegen-baked initial phases shipped in _data/initial_phases.json. No SPICE kernel staging required for basic encoding. Skyfield + jplephem stay as optional [ephemeris] extras for callers who want runtime recalibration against custom kernels.
  • Observer-Agnostic Views: Unitary binding to generate topocentric "Local View" hypervectors at any (lat, lon) on any body.
  • Spectral Syzygy Window Search (v0.3.1+): find-syzygies --from-jd ... --to-jd ... enumerates candidate syzygies in closed form via the natural cyclic-group decomposition (synodic + draconic month), then confirms each by spectral projection. ~1000× faster than the v0.3.0 point-evaluation eclipse --jd pattern for window queries.

Resolution Scaling

Temporal resolution of a residue shift scales inversely with hypervector dimension D:

D Earth resolution Use case
2^16 ~8 minutes default; long-term mapping
2^19 ~1 minute medium-cadence events
2^25 ~1 second high-cadence local readout

Installation

pip install ephemerides-spectral

For full ephemeris support (skyfield + JPL DE-kernels):

pip install "ephemerides-spectral[ephemeris]"

CLI Usage

The package ships a rich ephemerides-spectral console script. Use --help on the top-level or any sub-command:

ephemerides-spectral --help
ephemerides-spectral encode --help
ephemerides-spectral breathing --help

Sub-command Cheat-Sheet

# Package version + frozen-data manifest
ephemerides-spectral version

# All 26 bodies in the Sol Star System Laplacian
ephemerides-spectral bodies

# Earth temporal resolution at the default D=65536
ephemerides-spectral resolution --body earth

# Encode J2000 with the integer ALU backend (default)
ephemerides-spectral encode --jd 2451545.0

# Same JD with the FPU complex128 reference encoder
ephemerides-spectral encode --jd 2451545.0 --backend complex128

# Topocentric view from London at J2000
ephemerides-spectral local-view --jd 2451545.0 --body earth --lat 51.5 --lon -0.1

# Syzygy alignment probability AT a JD (point evaluation; encode-then-check)
# v0.4+ ROADMAP: window search via the natural cyclic-group decomposition
ephemerides-spectral eclipse --jd 2451545.0

# Off-diagonal couplings (Laplacian fiber bundle)
ephemerides-spectral couplings

# Phase 9 breathing modulation (Jupiter-Saturn 5:2 by default)
ephemerides-spectral breathing --jd 2458850.0

# Override resonance: 3:2 Neptune-Pluto
ephemerides-spectral breathing --jd 2451545.0 \
    --pair-a neptune --pair-b pluto --n-a 3 --n-b 2

# Mars Sol Date / Mars Coordinated Time at a JD (v0.3.0)
ephemerides-spectral time-mars --jd 2451549.5     # → MSD ≈ 44795.99
ephemerides-spectral time-mars --msd 50000        # invert: MSD → JD_UTC

# Mean lunar synodic + sidereal age/phase at a JD (v0.3.0)
ephemerides-spectral time-lunar --jd 2451545.0

# Lunar-time kernel metadata (LTE440 + LTC status; v0.3.0)
ephemerides-spectral lunar-kernels

# Resonance-derived natural cyclic group (v0.3.0)
ephemerides-spectral natural-group     # → Z_30 = Z_2 × Z_3 × Z_5

# Spectral-native syzygy window search (v0.3.1+)
# Replaces the v0.3.0 point-evaluation `eclipse --jd` for window queries.
# ~1000× faster than encode-then-check; uses the closed-form Saros /
# Metonic / synodic / draconic-month enumeration.
ephemerides-spectral find-syzygies --from-jd 2460311 --to-jd 2460676

# Diagnosed-fiber runtime kernel patching (v0.4.0+)
# Patches sit beside the published kernel as DATA, not code edits, and
# contribute per-body residue deltas at encode time. The kernel's
# published bytes never change. Three patches in the bundled CATALOG
# authored from v0.3.1's de441_error_spectrum FFT (Mars 7.96 yr,
# Mercury 10.69 yr, Jupiter–Saturn 9.56 yr coupled).
ephemerides-spectral patches catalog
ephemerides-spectral patches apply --name jupiter-saturn-9.56yr-coupled
ephemerides-spectral patches active
ephemerides-spectral patches clear

All sub-commands emit JSON to stdout; pass --no-pretty (top-level flag, before the sub-command) for compact single-line output suitable for piping into jq or downstream tooling. Every response carries an ok field; ok: false returns exit code 1 with an error message.

Python API

from ephemerides_spectral import default_encode, bridge

# One-liner: encode a JD as a system state under the default backend.
state = default_encode(jd=2451545.0)            # uint32[26] residues (BIP)
state = default_encode(jd=2451545.0, backend="complex128")  # complex128[D]

# JSON-friendly bridge surface (Pyodide / web frontend)
bridge.get_version()                             # version + manifest
bridge.list_bodies()                             # 26-body roster
bridge.get_resolution(body="mars", D=65536)      # sec/residue
bridge.get_system_state(jd_tdb=2451545.0)        # encode + per-body residues
bridge.get_local_view(jd_tdb=2451545.0, body="earth", lat=51.5, lon=-0.1)
bridge.get_eclipse_probability(jd_tdb=2451545.0)
bridge.list_couplings()                          # Laplacian fibers
bridge.get_breathing_modulation(jd_tdb=2451545.0)  # Phase 9 LUT inspector

# v0.3.0 surface
bridge.jd_to_mars_time(jd_utc=2451549.5)         # MSD + MTC (Allison & McEwen 2000)
bridge.mars_time_to_jd(msd=50000)                # MSD → JD_UTC inverse
bridge.get_lunar_phase(jd_tdb=2451545.0)         # mean synodic + sidereal phase
bridge.list_lunar_kernels()                      # LTE440 metadata + LTC status
bridge.get_natural_resonance_group()             # Z_30 = Z_2 × Z_3 × Z_5

# v0.4.0 surface — runtime kernel patching (overlay on the spectral kernel)
bridge.list_catalog_patches()                    # bundled CATALOG (3 patches)
bridge.apply_patch("mars-7.96yr-diagonal")       # load from CATALOG
bridge.apply_custom_patch(name="my-patch", kind="sinusoid",
                          body="earth", amplitude_deg=0.93,
                          period_days=1940.2)    # FFT-diagnosed custom patch
bridge.list_active_patches()                     # what's currently overlaid
bridge.clear_patches()                           # wipe back to byte-exact baseline

Every bridge method returns a Pyodide-JSON-serialisable dict with ok: True/False. Caller-side errors return {ok: False, error: "..."} rather than raising — designed for crossing the Python/JS boundary cleanly.

Performance & Footprint

ephemerides-spectral is designed for high-performance galactic mapping on edge devices where large SPICE kernels (the 3.3 GB DE441) are prohibitive.

Memory Footprint

Component Format RAM / Flash Description
State (BIP) uint32[D] 256 KB At D=65536; pure cyclic-group residues.
State (complex128) complex128 1.0 MB At D=65536; FPU reference encoder.
Channel Bases mixed ~26 MB Full 26-body roster; pageable from Flash.
Laplacian (L) complex128 < 15 KB 26 × 26 interaction matrix.
Cosine LUT (Phase 9) int32[1024] 4 KB Off-diagonal breathing modulation.
DE441 Truth BSP 3,300 MB Original JPL source (calibration only).

Compression vs DE441: > 100:1. Once calibrated, the HDC instrument functions as standalone algebraic truth — no kernel needed for propagation, local-view extraction, or syzygy detection.

Microcontroller Compatibility

The BIP backend is the natural production target for embedded use:

  • ESP32-S3 / ESP32-C6 (8 MB+ PSRAM): full 26-body BIP state in PSRAM, microsecond-latency phase updates via uint32 adds.
  • ARM Cortex-M7 (Teensy 4.1, etc.): integer multiply-accumulate suits the omega * delta_t step path natively; cosine LUT fits in tightly-coupled memory.
  • RISC-V / Edge AI accelerators: (φ_1 + φ_2) mod 2^32 is a single uint32 add — directly mappable to vector-extension lanes.

Instead of searching 3.3 GB of Chebyshev coefficients, these devices evolve the entire Sol Star System phase-space using integer additions and a 4 KB cosine table.

Honest accuracy: DE441 full-epoch sweep (v0.3.0)

research/de441_sweep.py runs the BIP integer-ALU encoder at 15 sample points spanning J2000 ± 14,000 yr (just inside DE441's ~30,000-yr coverage window) and compares per-body ecliptic-longitude residues against DE441 ground truth. Results — sorted by max error, descending:

Body n median (rad) p95 (rad) max (rad) max (deg)
jupiter 15 1.357 2.937 3.070 175.92
saturn 15 1.415 2.990 3.062 175.46
neptune 15 0.691 2.748 2.778 159.18
pluto 15 0.791 2.524 2.721 155.92
moon 15 1.084 2.559 2.670 153.00
mercury 15 0.356 1.444 1.461 83.74
mars 15 0.117 0.250 0.253 14.52
uranus 15 0.047 0.120 0.141 8.06
venus 15 0.024 0.114 0.124 7.11
earth 15 0.011 0.104 0.115 6.59

Earth phase error scales roughly linearly with horizon:

Δt (yr) Earth err (deg)
0 0.000
±1 0.001–0.004
±10 0.006–0.008
±100 0.065–0.069
±1000 0.65–0.68
±5000 2.93–3.31
±10000 4.70–5.71
±14000 5.48–6.59

Three regimes, honestly named

  • Sub-10° at multi-millennium horizons (Earth, Venus, Uranus): bodies whose mean motion + small eccentricity + the static gravitational fiber couplings approximate the actual orbit well. Earth benefits from being the calibration body for Mercury's PN diagonal.
  • Tens of degrees (Mars 14.5°, Mercury 83.7°): dynamics include eccentricity + long-period perturbations the Phase-9 model captures only partially. Mars has no resonance entry; Mercury's PN diagonal is linear whereas its actual perihelion precession at multi-millennium scales has higher-order terms.
  • Phase-scrambled (Jupiter, Saturn, Neptune, Pluto, Moon all hit >150°): bodies whose secular drift is dominated by resonant perturbations the Phase-9 model approximates phenomenologically. The α = 0.1 modulation depth is the right order of magnitude but wrong-in-detail; over ±14,000 yr that wrong-detail accumulates to a ~3 rad phase deficit.

This measures how much of multi-millennium ephemeris our v0.3.0 model captures, not how accurate the BIP encoder is at its design horizon. v0.3.0 is calibrated for the ±20-yr horizon (0.0002 rad ≈ 0.012° Earth phase floor); the multi-millennium errors are the cost of running a model trained for short-horizon dynamics far past its design point. The v0.4+ first-principles per-resonance α derivation is the planned fix — see ROADMAP.

Encoding timings (BIP integer-ALU path, default D = 65536)

Δt (yr) encode wall time
0 0.2 ms
±1 0.7–1.3 ms
±10 4.2–6.8 ms
±100 44.7–45.8 ms
±1000 447–483 ms
±5000 2.38–2.44 s
±10000 4.34–4.44 s
±14000 6.18–6.37 s

Linear in |Δt| — one 30-day chunk per integration step. At the v0.1.0 design horizon (±20 yr, ~243 chunks) the encode is ~1.85 ms; at ±14,000 yr (~170k chunks) it's ~6.4 s. Median across the sweep: 447 ms; max: 6.4 s.

v0.4.1+ C native path drops these by ~1000× (encode at +20 yr: 46 ms BIP → 0.04 ms C). The full DE441 FFT-residual sweep (1024 samples) takes ~14 seconds on the C native path versus ~5 minutes on Python BIP — the truth-lookup against skyfield is the new bottleneck.

Patch-shrinks-residual benchmark — VINDICATED on planets (v0.5.2)

Earn the right to predict the missing data. — measured.

The v0.4.0 catalog patches claimed to predict missing physics; v0.5.1 audited them and surfaced two authoring bugs (amplitude off by 2×, phase=0 assumption wrong); v0.5.2 fixed both with least-squares fitting at the exact target period. Result: VINDICATED on every targeted planet body.

Patch v0.4.0 (mag-only) v0.5.1 (phase-recovered) v0.5.2 (LS-fit)
Mars 7.96 yr +2.5% +2.7% +99.2%
Mercury 10.69 yr −49.9% (peak GREW) +39.6% +99.9%
Jupiter 9.56 yr +30.9% +77.1% +97.6%
Saturn 9.56 yr −0.4% +76.4% +96.0%

The vindicated patches ship as CATALOG_V2 alongside the original v0.4.0 CATALOG. Use the -v2 suffix:

bridge.apply_patch("mars-7.96yr-diagonal-v2")              # 99.2% shrinkage
bridge.apply_patch("mercury-10.69yr-diagonal-v2")          # 99.9%
bridge.apply_patch("jupiter-saturn-9.56yr-coupled-v2")     # 97.6% J / 96.0% S

Empirical findings worth noting:

  • J–S correlation = +1 (in-phase), not −1 as v0.4.0 assumed. Anti-correlated-libration intuition was empirically wrong.
  • LS-fit amplitudes are 25–55% larger than FFT-bin extraction — the energy that was leaking into adjacent bins.
  • Mars's true residual amplitude is 10.69° (LS) vs 3.45° (FFT-bin rank-1) — a 3× underestimate, the worst leakage case in the catalog.

See the v0.5.2 patch-shrinks-residual analysis on the project docs for the full math derivation, methodology, and moon-residual open question.

Status

  • v0.5.2 (current) — Patch-shrinks-residual benchmark VINDICATED on planets via LS-fit catalog (Mars 99.2%, Mercury 99.9%, J–S 97.6/96.0%). CATALOG_V2 ships alongside v0.4.0. Moon-kernel infrastructure (mar099s / jup365 / sat441) added; moon-residual root cause queued for v0.5.x. See the project CHANGELOG and package CHANGELOG.
  • v0.5.1 — Patch-shrinks-residual benchmark: PARTIAL vindication (J–S 77%, Mercury 40%, Mars stuck on FFT leakage); two v0.4.0 authoring bugs surfaced.
  • v0.5.0 — All major Jovian + Saturnian moons join the encoder (26 → 38 bodies). Three new resonances (Cassini Division, Enceladus tidal heating, Hyperion chaos). SPICE-free runtime via codegen-baked initial phases.
  • v0.4.1 — C-side runtime kernel patching (ABI v2). 237× speedup on patched encodes vs BIP.
  • v0.4.0 — Diagnosed-fiber runtime overlay (Python side). Patches as data, ksplice/kpatch-style.
  • v0.3.1 — C-in-wheel + spectral syzygy window search + DE441 error-spectrum FFT.
  • v0.3.0 — Mars Sol Date / Mars Coordinated Time, mean lunar primitives, LTE440 awareness, DE441 full-epoch sweep, natural-resonance gear group.
  • v0.2.0 — Phase 9 coverage extension to four resonance pairs (J–S 5:2, N–P 3:2, Io–Europa 2:1, Europa–Ganymede 2:1).
  • v0.1.0 — first PyPI release. 26-body Sol Star System Laplacian + Phase 9 breathing couplings + ALU-native BIP encoder.

Roadmap

  • v0.4+ first-principles per-resonance α — replaces phenomenological α = 0.1 with values derived from a Hamilton/Delaunay-variable Lagrangian (Lie-series perturbation theory around each resonance). The DE441 sweep above is the empirical motivation: bodies inside the resonance set phase-scramble at multi-millennium horizons because their α values are wrong-in-detail.
  • v0.4+ DE441 vs DE442 spectral error signature (experiment) — build two BIP instruments, one calibrated only from DE441, one only from DE442; encode the same JD on both; project the per-body residue deltas onto the encoder's eigenbasis. If the deltas have a coherent spectral signature, DE442's corrections to DE441 live in a specific eigenmode subspace — which means we could predict where ephemeris error correction is structurally needed without needing the corrected kernel.
  • v0.4+ spectral syzygy window search — replaces the v0.3.0 point-evaluation eclipse --jd (encode-then-check) with a find-syzygies --from-jd ... --to-jd ... window search that uses the encoder's natural cyclic-group decomposition (Saros 6585.32 d, Metonic 19 yr, synodic month 29.53 d, lunar nodes 18.6 yr). The bronze antikythera's Saros dial doesn't encode-and-check either — it just turns gears whose ratios are the Saros cycle. The HDC-native pattern is to enumerate window-multiples of the slow modes in closed form from the Q-format omega values, then confirm each candidate by spectral projection. This reduces the cost from O(window_days × encode_cost) to O(n_syzygies × confirmation_cost).
  • v0.5+ CORDIC topocentric rendering — the cosine LUT is half a CORDIC kernel; the rotation half can subsume the topocentric lat / lon observer-bind, taking that path off the FPU entirely.
  • v0.5+ LTC (Lunar Coordinated Time) — pending NASA + international space-agency standardisation (target ~2026–2028 per April 2024 White House directive). LTE440 (Lin et al. 2025) ships the underlying SPICE-format conversion ephemeris with 0.15 ns accuracy through 2050; the bridge gains an LTC namespace mirroring MarsTime once the LTC epoch + day-length convention are formalised.
  • Phase 10 resonance coverage — Jupiter–Uranus 7:1, Saturn–Uranus 3:1, Saros / Metonic / Earth–Moon precession entries. Each adds a row to the RESONANCES table; the integer-LUT machinery is shared.
  • Bit-serial hardware port (Verilog/SystemC) — the cosine LUT becomes block RAM, the omega * step becomes a fixed-precision multiplier.

License

GPL-3.0-or-later.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ephemerides_spectral-0.5.5.tar.gz (104.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ephemerides_spectral-0.5.5-py3-none-any.whl (83.9 kB view details)

Uploaded Python 3

ephemerides_spectral-0.5.5-cp314-cp314-win_amd64.whl (97.2 kB view details)

Uploaded CPython 3.14Windows x86-64

ephemerides_spectral-0.5.5-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (92.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

ephemerides_spectral-0.5.5-cp314-cp314-macosx_11_0_arm64.whl (91.8 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

ephemerides_spectral-0.5.5-cp313-cp313-win_amd64.whl (96.2 kB view details)

Uploaded CPython 3.13Windows x86-64

ephemerides_spectral-0.5.5-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (92.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

ephemerides_spectral-0.5.5-cp313-cp313-macosx_11_0_arm64.whl (91.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ephemerides_spectral-0.5.5-cp312-cp312-win_amd64.whl (96.2 kB view details)

Uploaded CPython 3.12Windows x86-64

ephemerides_spectral-0.5.5-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (92.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

ephemerides_spectral-0.5.5-cp312-cp312-macosx_11_0_arm64.whl (91.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ephemerides_spectral-0.5.5-cp311-cp311-win_amd64.whl (96.2 kB view details)

Uploaded CPython 3.11Windows x86-64

ephemerides_spectral-0.5.5-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (92.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

ephemerides_spectral-0.5.5-cp311-cp311-macosx_11_0_arm64.whl (91.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ephemerides_spectral-0.5.5-cp310-cp310-win_amd64.whl (96.2 kB view details)

Uploaded CPython 3.10Windows x86-64

ephemerides_spectral-0.5.5-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (92.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

ephemerides_spectral-0.5.5-cp310-cp310-macosx_11_0_arm64.whl (91.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file ephemerides_spectral-0.5.5.tar.gz.

File metadata

  • Download URL: ephemerides_spectral-0.5.5.tar.gz
  • Upload date:
  • Size: 104.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ephemerides_spectral-0.5.5.tar.gz
Algorithm Hash digest
SHA256 3fbc781ce5920a7d00911b61dbaabd33b822b9d0f1d770c25ea1bf154d21bce8
MD5 c6abaaf863330cd66ef86a822efad76b
BLAKE2b-256 56429dfd169a1b071255f4119faccbd8a0eecbb407e98021e10dc014d4b3ca3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5.tar.gz:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-py3-none-any.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-py3-none-any.whl
Algorithm Hash digest
SHA256 246934761012e8ba73487c1584b25fdf83150fbddc16ec88672c05c20ca1a8c8
MD5 ad9ff2cb0a7408bd25283cf00e77bc39
BLAKE2b-256 c37c65c47418e0e22225e355f31c1b6d1b274338a8da9c1e9c02cf24af15c81e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-py3-none-any.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 764abe827cd3bac8ae0fa76a77bb2e37842d32c5f966664fdd1b167c873879da
MD5 34344f284244dadb34c91cb8fe5c5bca
BLAKE2b-256 553e5a8ef101eeaf39f76227d766f34eeb59afef0274a36cb411c12948d10057

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp314-cp314-win_amd64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 eb79e47b4aefbcd10fa059a0f606c3d10320cc1a336c3b6fb6c6121d9182f588
MD5 46f14d1f26b48d337db50a60bbdb54b6
BLAKE2b-256 112976fe12f5f1882c3655fe671e3cce0d9f5084a7d40150869e460f33fc4527

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93bd51c851affe359bc94e68e3afbe8235947c50383ee13850e906e1052794c6
MD5 bef594f379164d32be2cf7463f23cca5
BLAKE2b-256 c57771fdef03a363dd34ab2751c6b17483723ce6db3ee88b3cc457f7443c564e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e677d6d514a6c7c35d883e64243c9d73679f686279a719a6d4f004a5d307bbef
MD5 7cfd77d458ccf47237e073c0248aedc3
BLAKE2b-256 7fe12dd7e7bfbdd065c49f54ebaae22dac2e775028ad62717faa1c0edfe2ce18

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp313-cp313-win_amd64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 44e37e67e1ca508b7acbdee391296d1f1741ee785b380675d7a705bb7396b1d5
MD5 3c1ff8993e714ace731e0fff6abc889f
BLAKE2b-256 19ce0768cf788471c17d7ed4c98648e808352f335dfe1335ed698c105accd8ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 76e9ff1c7ce78fbf0d15d48c0164728bd39f7582910057cf7f078b119dcb553b
MD5 ad603581acdd6559ff67ddb61925f727
BLAKE2b-256 ad06952a66fcd9d0d8fa64d1b01509098d12f38f137ba64841ff6afcbc4ce7bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9d0fc464d1bb34531669dd0e52d892962da574d271dd2bda4be39018ae9f85cd
MD5 1cd708dac97c871e19c436f4af2bd21e
BLAKE2b-256 b1d3ee97d21d5c1f8e2fd98628897cc6f27cd13e3a42b46d0c6f4cdf6c4f6056

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp312-cp312-win_amd64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 26326fe19127e5e3158ff8d2fa5aa54fdd420b2523fe72fc547bf2ecd158bbb9
MD5 1e3516e925575dab9880b87bc4d31ea9
BLAKE2b-256 49024e0371dd7cc4218729e35750b1ff26713301358351cd9c3f1fabbfec8672

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8c85897743236faf8b13cd8e7a2f0b08e9a76e669486c84c984870d0037f0d48
MD5 d2aee1eb8f1881dca6d32d2fa5d0f897
BLAKE2b-256 64fe23e29a38d6b1ea879d915d58d6fb62aa4b8690a2f1c9837000708695aa11

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 97b5a845973d54eb3e5cde0d47bc41586e7a9b7894428bcefde596eed269b07e
MD5 65ee03f8c8eedde3f7ba879e2acd5f14
BLAKE2b-256 3d22a17d07dfbb96d8a0fce6b08ba808f8a060611632d50226c803ce0d64e006

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp311-cp311-win_amd64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 71619b8e501a2b6667faa73afbc23d6a06a69397971bd20247496b2a7b740842
MD5 69a711450d28d1c1d5139f796d781c1f
BLAKE2b-256 1b06c40e056d189e8c80594b28a9f03071788e3d3919a5804b210240d32b214c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6a9cd1fdd136ac00cb48a6f9faf297f02a9e865a0023a76b9937e71ca76aa25a
MD5 8f733ef8cffe49897affd6d6ddd12fa3
BLAKE2b-256 804bd1b3c76eb3c2d66d0df8a64c8fd54d4ecb63bd6f6507ae46946006904c3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3b5bf4f331bedbcd4484d8b9b5df0b3dd3739c8af039a1f353ce1f9bc1705588
MD5 592a973ecd2c66b64942f03c45735518
BLAKE2b-256 d2e9dc4d32b5f76fbf8430bdf8fe98181d35a95f7bfd52e553fea25579dfab88

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp310-cp310-win_amd64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 f65b0066fe02c9692155ed5448fca7b6f5b8616e8d2c86d334e7a835b9443871
MD5 1881b1c5d56590305e3626e18423408c
BLAKE2b-256 7dca3850fdb3ff06a813d385a2169ce9b62b8597d1df1adba4b8a4669f8dd504

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ephemerides_spectral-0.5.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ephemerides_spectral-0.5.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9564a9f88c6d82b700e3387f77fa5671ed19a38ebe263ac450b534493a193ac3
MD5 af9b5a5bf07a7f80e1c4469f5b494629
BLAKE2b-256 2b9b23ce50fb8fa215336edc77ed4bbaed07a8bceebfce10f94c35b143baddc6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ephemerides_spectral-0.5.5-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: ephemerides-spectral-publish.yml on lemonforest/mlehaptics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page