collision#
Collision probability computation for conjunction assessment.
Compute probability of collision (Pc) between two space objects given their state vectors, position covariances, and hard-body radii. Implements the Foster 2D method (NASA CARA), Chan series expansion, and Alfano maximum Pc bound. Validates against the TraCSS CA verification dataset.
Installation#
Install with opam:
$ opam install collision
If opam cannot find the package, it may not yet be released in the public
opam-repository. Add the overlay repository, then install it:
$ opam repo add samoht https://tangled.org/gazagnaire.org/opam-overlay.git
$ opam update
$ opam install collision
Usage#
let report_pc (cdm : Cdm.t) =
(* Quick Pc from a CDM *)
let pc = Collision.pc ~hbr:0.015 cdm in
Fmt.pr "Pc = %e@." pc;
(* Step-by-step: project to conjunction plane, then compute *)
let enc = Collision.encounter_of_cdm ~hbr:0.015 cdm in
let pc_foster = Collision.pc_foster enc in
let pc_max = Collision.pc_max enc in
Fmt.pr "Foster Pc: %e, Max Pc bound: %e@." pc_foster pc_max
API Overview#
type encounter-- Conjunction geometry in the encounter plane:miss_x,miss_y,sigma_x,sigma_y,hbrencounter_of_cdm-- Project CDM conjunction geometry onto the conjunction planepc_foster-- 2D Pc via Gauss-Legendre quadrature (NASA CARA standard method)pc_chan-- Pc via Chan series expansionpc_max-- Upper bound:hbr^2 / (2 * sigma_x * sigma_y)pc-- Convenience: project + Foster in one callassess-- Full assessment from a CDM (returnsassessmentwith all Pc methods)risk_level-- Classify an assessment:Low,Medium,High,Criticaltca-- Refine time of closest approach from ephemeris arrays
Testing#
- TraCSS verification dataset: Validated against 900K+ conjunction scenarios from the TraCSS CA Verification Dataset (spherical + SFSH screening volumes)
- GMAT interop: Two-object conjunction scenario from NASA GMAT R2026a — ISS-like vs SSO-like on crossing orbits. Validates miss distance and relative velocity from OEM ephemerides. See
test/interop/gmat/.
License#
ISC