adam_core

adam_core exists to provide a single, reliable scientific foundation for asteroid analysis, astrodynamics, and solar system astronomy. It centralizes core representations (time, coordinates, covariances, orbits, observers, residuals, and photometry) so different applications use the same physical assumptions and data contracts. We built this library because existing tools did not meet the precision, accuracy, or engineering performance required for large scale analysis or scientifically critical applications like impact risk assessment.

Many adam_core tables are implemented with quivr, which provides typed, Arrow-backed scientific tables. This gives explicit schemas, efficient columnar operations, and predictable behavior when moving between in-memory analysis and file/service boundaries.

Orbit preview from the Using Orbits guide.

Orbit inspection Quick state checks and geometry inspection from Using Orbits.

Mars to Apophis transfer porkchop from the transfer guide.

Mars-Apophis transfer Lambert trade-space snapshot from Lambert Solutions, Transfers, and Porkchop Plots.

Impact risk corridor visualization from the impact guide.

Impact corridor Earth entry corridor visualization from Impact Risk Analysis.

Engineering Standards

  • Strict quality gates in development: linting/formatting, type checking, and tests.

  • Aim for machine precision when possible and benchmarked CPU/GPU performance with bounded memory usage.

Development Philosophy

  • Build small, composable scientific objects first; compose behavior from those objects.

  • Prefer explicitness over hidden heuristics for frames, scales, time systems, and uncertainty handling.

  • Start simple, then expose advanced controls for scale, performance, and mission-specific constraints.

  • Keep domain logic close to data models so behavior remains inspectable and testable.

Documentation Map

  • Getting Started: installation and environment setup.

  • Reference: module-by-module API coverage and inventory.

Use Cases (Complete List)

Guide

Focus

Working with Time

Working with time scales, windows, and time arithmetic.

Using Orbits

Using Orbits: ingesting orbit sources, constructing state tables, and inspecting orbit content.

Coordinate Classes Guide

Coordinate class tour with class-specific methods and usage boundaries.

Coordinate Covariances

Coordinate covariance construction, interpretation, and uncertainty propagation patterns.

Coordinate Transforms

High-level and low-level coordinate transformations, including translation cache behavior.

Observations and Observers

Observation and observer modeling, including custom SPICE kernel observer workflows.

Propagation and Ephemeris

Propagation and ephemeris generation with practical solver/propagator guidance.

Residuals and Fit Quality

Residual primitives and Residuals.calculate* workflows.

Coordinates, Covariances, Transforms, and Residuals

Integrated coordinate/residual analysis path from representation to fit diagnostics.

Variant Sampling and Collapse

Variant sampling/collapse workflows for uncertainty propagation pipelines.

Photometry, Phase Angle, and Light Curves

Magnitude prediction, phase-angle modeling, and photometric analysis functions.

MOID Analysis

MOID analysis workflows and screening patterns.

Lambert Solutions, Transfers, and Porkchop Plots

Lambert solutions, transfer analysis, porkchop dataset generation, and plotting.

Trajectory Interchange: OEM and SPK Workflows

Ephemeris exchange formats (OEM/SPK): generating and consuming mission-analysis artifacts.

OpenSpace Visualization Assets

OpenSpace export and visualization setup for trajectory and orbit communication.

ADES Module: Parse, Build, and Exchange

ADES PSV parsing/building/export boundaries and validation patterns.

Orbit Determination from Linked Observations

Orbit determination flows and residual-driven refinement loops.

NEO Tracking for Follow-Up

NEO candidate tracking from uncertain orbit state to follow-up planning products.

Multi-Source Orbit Ingest for APIs

Source selection patterns across SBDB/NEOCC/JPL-facing ingestion routes.

Ephemeris Generation for Services

Service-style ephemeris generation patterns and operational concerns.

Observability and Light Curves

Observability constraints, phase-angle analysis, and light-curve tooling.

Impact Risk Analysis

Impact-risk analysis with collision conditions, stopping behavior, and visual products.

Scaling and Utilities

Scaling/runtime controls and utility patterns for high-throughput analysis.

Indices and tables