METHODHow It Works

From Raw TLE Data
to Actionable Risk Reports

OrbVeil runs a full-catalog conjunction screening every morning at 06:00 PST. Here's exactly how the pipeline works.

01

TLE Ingestion

We pull the complete active satellite catalog from CelesTrak twice daily (midnight and noon UTC). This covers the full public catalog of operational satellites, rocket bodies, and tracked debris fragments (size varies day to day with the published catalog). TLEs are validated, deduplicated, and loaded into memory.

Source: CelesTrak full catalog · Updated 2x daily

02

SGP4 Propagation

Each object's TLE is propagated forward using the SGP4/SDP4 algorithm — the same method used by NORAD and Space-Track. We compute position vectors at 1-minute intervals across a 72-hour lookahead window. This gives us 145 timesteps per object, ~4.3M position vectors total.

Algorithm: SGP4/SDP4 (NORAD standard) · 145 timesteps · 72h window

03

Spatial Indexing & Close-Approach Detection

At each timestep, we build a kD-tree over all object positions and query for pairs within a 25 km threshold. This reduces O(n²) comparisons to O(n log n) — enabling full-catalog screening in under 10 seconds on edge hardware (NVIDIA Jetson Orin Nano).

Threshold: 25 km · Algorithm: kD-tree · Hardware: Jetson Orin Nano 8GB

04

CDM Cross-Reference

When a conjunction event is detected, we cross-reference it against the Space-Track CDM archive (collected every 30 minutes). When a matching CDM exists, we surface the authoritative collision probability, miss distance, and object covariance data alongside our TLE-based screening.

CDM collection interval: 30 min · Source: Space-Track.org

05

ML Risk Classification

Each detected event is passed through our escalation classifier — an XGBoost model trained on 627,000+ historical CDM events. The model predicts whether a conjunction will escalate to critical (requiring maneuver consideration) with PR-AUC 0.849 on held-out test data. Features include miss distance, relative velocity, radial/in-track/cross-track (RSW) geometry, object B* drag terms, and solar activity (F10.7 index).

Model: XGBoost · PR-AUC: 0.849 · Training set: 627K CDM events

06

Risk Classification

Events are classified into five tiers using a composite score — not distance alone. Miss distance sets the initial band, but RSW geometry and ML-estimated Pc can escalate or de-escalate the final level. RSW decomposition separates separation into Radial (R), In-Track (S), and Cross-Track (W) components. A 2 km cross-track miss is far less dangerous than a 2 km radial miss — RSW captures this. Pc weights the geometry against object size and covariance uncertainty. Final classification = composite of distance band + RSW-informed Pc + velocity factor:

CRITICAL< 1 km or composite Pc > 1×10⁻⁴
HIGH1–5 km
MEDIUM5–10 km
LOW10–25 km
NEGLIGIBLE25+ km
07

Report Generation & Delivery

Per-operator HTML and PDF reports are generated and published to orbveil.com/reports/. Email digests are sent at 06:30 PST. Critical and High events trigger immediate alerts within minutes of screening completion. All reports include 3D visualization links to sattrack.io.

Daily screening: 06:00 PST · Email digest: 06:30 PST · Alerts: immediate

Limitations & Caveats

OrbVeil uses publicly available TLE data and SGP4 propagation. TLEs are "dead reckoning" for orbits — errors accumulate over time, especially for objects that maneuver or experience variable atmospheric drag. We do not use Special Perturbations (SP) propagation or proprietary radar track data.

For mission-critical maneuver decisions, operators should use authoritative SP-derived CDMs from 18th SDS via Space-Track.org, LeoLabs, or ExoAnalytic Solutions. OrbVeil is a second set of eyes, not the primary authority.