Sorcha Survey Simulator for LSST
- Sorcha Survey Simulator is an open-source platform that computes on-sky positions, brightness, and detectability with microarcsecond precision for LSST-scale surveys.
- It employs a modular architecture with independent pipelines for orbit propagation, spatial indexing, photometric detection, and moving-object linking to realistically simulate survey biases.
- The simulator leverages advanced numerical integration and HEALPix-based spatial indexing to dramatically reduce computational load while maintaining high astrometric accuracy.
Sorcha is an open-source solar system survey simulator built for the extreme scale and precision requirements of the Vera C. Rubin Observatory's Legacy Survey of Space and Time (LSST) and adaptable to next-generation wide-field surveys. It implements a modular architecture optimized to compute on-sky positions, brightness, and detectability for millions of input orbits across millions of survey exposures, yielding realistic predictions for survey discoveries and facilitating detailed statistical characterization of small body populations and operational biases (Holman et al., 2 Jun 2025).
1. Modular Architecture and Workflow
Sorcha is organized into a staged pipeline comprising distinct modules:
- Input Layer: Consumes a catalog of synthetic objects, each specified by orbital elements (Keplerian or cometary: or ), plus physical parameters such as absolute magnitude and color. Survey visits are defined by time-stamped exposures, boresight directions, and camera geometry—with up to millions of entries for LSST-scale operations.
- Ephemeris Generation Engine: Propagates each orbit to exposure mid-times, computes topocentric (observer-centric) positions, and filters out objects far outside the field-of-view (FOV). The optimized core uses barycentric universal-variables formalism and the IAS15 Gauss–Radau integrator from REBOUND/ASSIST, supporting perturbations by the Sun, planets, Moon, and massive asteroids, as well as relativistic and optional non-gravitational forces.
- Photometry & Detection Layer: For each surviving candidate-object/exposure pair, apparent brightness and detection probability are computed using object physical characteristics and observer geometry.
- Moving-Object Linking Layer: Implements moving-object pipeline biases, simulating tracklet formation and discovery yield under realistic linking requirements.
The modular Python design separates orbit propagation, spatial indexing, and detection modeling. Ephemeris routines have already been integrated into operational pipelines for Rubin’s Solar System Object (SSO) Processing, and are portable to alternate surveys or archives (e.g., MAST, NOIRLab Astro Data Lab).
2. Ephemeris Generation and Numerical Methods
Sorcha computes ephemerides for each orbit and candidate observation epoch in four principal algorithmic steps:
a) State-Vector Conversion: Input orbital elements are transformed into barycentric equatorial position/velocity vectors via universal-variables, accommodating all eccentricities.
b) Numerical Integration: REBOUND/ASSIST and the IAS15 integrator propagate orbits accounting for multi-body perturbations, with adaptive time-stepping for minimal error. Sorcha exploits polynomial step interpolation for repeated calls, typically accelerating ephemeris calculations by factors of 2–4 for solar-system cadence, and up to for repeated calls within daily intervals.
c) Light-Time Correction: Observed direction to the object, , is iteratively solved for the time-delay : with three iterations sufficient for microarcsecond accuracy.
d) Coordinate Conversion: Final positions and rates are expressed as right ascension and declination using ICRF rotation and topocentric geometry:
Benchmarks demonstrate several orders-of-magnitude speedup (factor in typical use) relative to naïve approaches, with RA/Dec residuals as after one month of propagation. Full formulas for Kepler’s equation and topocentric direction are implemented.
3. Spatial/Temporal Indexing and Scalability
At LSST scale, direct computation for all object/visit pairs is computationally prohibitive (). Sorcha circumvents this via:
- Nightly Picket Data Structures: Objects are propagated to three anchor epochs per day, then topocentric positions are interpolated using third-order Lagrange polynomials across a 101-point grid.
- HEALPix Indexing: Each interpolation point yields a HEALPix pixel index (default ), producing hash maps from pixel→object IDs over a two-day window.
- Exposure Candidate Extraction: For each survey exposure, only candidate objects within overlapped HEALPix pixels are processed, reducing per-exposure computational load to .
This methodology enables tractable () ephemeris and detection calculations for object populations and exposures, leveraging modern HPC resources.
4. Survey Geometry and Field Representation
Sorcha represents each survey exposure by a circular aperture parameterized by the camera’s effective area: plus a buffer for dithers and pointing uncertainties. Since the HEALPix grid is agnostic to footprint shape, arbitrary survey geometries—rectangular/hexagonal/dithered—are supported by custom pixel-coverage routines. Utilities parse official LSST field definitions (ID, boresight, rotation, dither, cadence), ensuring completeness studies employ realistic geometry and scheduling.
5. Extensibility, Adaptation, and Component Reuse
Sorcha’s software organization allows the ephemeris-generation module to function independently. Users may:
- Substitute alternative integrators (e.g., JAX-based) by implementing the
integrate_or_interpolateinterface. - Tune spatial indexing parameters (HEALPix , kd-tree mapping, bounding boxes).
- Configure picket cadence and interpolation density via YAML without code modification.
- Add new physical effects (comet outgassing, relativistic light bending, Yarkovsky forces) through subclassed ASSIST interfaces.
- Apply Sorcha to arbitrary surveys (e.g., Pan-STARRS, ZTF) by providing custom visit definitions.
The design supports rapid extension to future wide-field or archive cross-match applications.
6. Output Products and Performance Validation
Sorcha outputs detailed detection catalogs per object, exposure, and geometry, supplying apparent magnitude, detection probability, and astrometric uncertainty for subsequent stages (photometry, tracklet linking). Performance benchmarks show:
| Test Case | Optimized Time | Brute-Force Time | Speedup Factor |
|---|---|---|---|
| 10 MBAs, 216k visits | 12 s | 817 s | 68× |
| 100 MBAs, 216k visits | 15 s | 1600 s | 107× |
| 15,000 objects, full integration | 278 s | 745 s | 2.7× |
Astrometric precision is validated to the tens of microarcseconds regime (except for objects affected by unmodeled physics in the integrator) (Holman et al., 2 Jun 2025).
7. Impact and Significance in Solar System Survey Science
Sorcha fundamentally addresses the computational bottleneck inherent to next-generation solar system surveys, transforming the challenge of ephemeris-call problems into tractable -scale simulations while maintaining microarcsecond accuracy and high modularity. Its open interfaces, comprehensive treatment of n-body dynamics, efficient spatial indexing, and configurable detection/linking logic together support rigorous survey-completeness analyses, yield forecasting, and the direct simulation of discovery and characterization biases. Sorcha thus establishes the practical foundation for interpreting LSST and future survey data within a transparent, reproducible, and extensible simulation framework (Holman et al., 2 Jun 2025).