research · sioslab
Roman Space Telescope — Target Database paper submitted
SIOSLab, Dr. Dmitry Savransky · Cornell · Spring 2026 · two merged PRs
Query tooling and new science for the Roman Coronagraph’s target database — the stars a NASA flagship instrument may observe.
Overview
The Roman Space Telescope’s Community Participation Program maintains a target database for the coronagraph instrument: the stars it may observe, with the measurements its planning tools need. I built the importable Python query client over the hosted HTTP API, added Python equivalents for previously PHP-only server scripts, and added new science — populating all-sky ecliptic coordinates with Monte Carlo uncertainties. Merged through two PRs.
Design decisions 05
- The client ships as a thin HTTP client against the hosted database rather than bundling data, because a single snapshot is on the order of 2 GB; users import the package and query the live API instead of downloading a pickle.
- Star lookup resolves any registered alias through the server-side alias table, so a caller can use any catalog name — “HD 95128” or “47 UMa” — and get the same record without knowing the canonical id.
- Ecliptic-coordinate uncertainty comes from Monte Carlo draws over a two-piece asymmetric normal honoring the separate upper/lower error columns on every input axis (RA, dec, parallax, proper motion, radial velocity), because the catalog’s own uncertainties are asymmetric — a symmetric error bar would misstate them.
- The coordinate-population script is dry-run by default (
--write to commit), so a script that mutates the production stars table cannot write by accident; rows with all-NULL input errors still get coordinates but leave uncertainty columns NULL rather than fabricating a value.
- PHP-only server functionality was reimplemented in Python to unify the toolchain around one language for downstream researchers.
Python · SQL · astropy · Monte Carlo
paper write-up →
listed under research →