Skip to content

PyOutfit

py_outfit.PyOutfit

PyOutfit(ephem: str, error_model: str)

pyOutfit: Python bindings for the Outfit orbit-determination engine.

Provides a thin, Pythonic surface around the Rust core Outfit, exposing: - High-precision ephemerides configuration (e.g., DE440). - Observatories management (MPC code lookup, listing). - Gauss-based initial orbit determination (via other types in this module).

See also
  • Outfit – Core Rust engine (linked from the Rust docs).
  • IODParams – Tuning parameters for Gauss IOD.
  • TrajectorySet – Batched ingestion and IOD helpers.
  • Observer – Observing site handle.
PARAMETER DESCRIPTION
ephem

Ephemerides selector in the form "{source}:{version}". The source must be "horizon" (legacy JPL DE binaries) or "naif" (NAIF SPK/DAF kernels). The version must be a supported DE series label recognized by Outfit. Common values include "DE430", "DE431", "DE440", "DE441", and "DE442". Examples include "horizon:DE440" and "naif:DE441". The ephemeris file is resolved into the user cache and opened lazily; when downloads are enabled at build time, a missing file may be fetched automatically, otherwise an error is raised.

TYPE: str

error_model

Astrometric error model. Accepted values are "FCCT14", "VFCC17", and "CBM10". Unknown strings default to "FCCT14". The model provides per-site RA/DEC bias and RMS used during orbit determination.

TYPE: str

RETURNS DESCRIPTION
PyOutfit

An initialized PyOutfit environment.

add_observer

add_observer(observer: Observer) -> None

Register an Observer in the current environment.

PARAMETER DESCRIPTION
observer

The observatory/site descriptor to register.

TYPE: Observer

show_observatories

show_observatories() -> str

Render a human-readable list of currently known observatories.

RETURNS DESCRIPTION
str

A formatted str (table/list) of observatories.

get_observer_from_mpc_code

get_observer_from_mpc_code(code: str) -> Observer

Lookup an Observer from its MPC code.

PARAMETER DESCRIPTION
code

MPC observatory code, e.g. "807".

TYPE: str

RETURNS DESCRIPTION
Observer

an Observer handle usable with add_observer.

Physical and astronomical constants exposed by Outfit.

These values are provided in SI units or astronomical conventions

py_outfit

Attributes

DPI module-attribute

DPI: float = 6.283185307179586

Convert a string or number to a floating-point number, if possible.

SECONDS_PER_DAY module-attribute

SECONDS_PER_DAY: float = 86400.0

Convert a string or number to a floating-point number, if possible.

AU module-attribute

AU: float = 149597870.7

Convert a string or number to a floating-point number, if possible.

EPS module-attribute

EPS: float = 1e-06

Convert a string or number to a floating-point number, if possible.

T2000 module-attribute

T2000: float = 51544.5

Convert a string or number to a floating-point number, if possible.

JDTOMJD module-attribute

JDTOMJD: float = 2400000.5

Convert a string or number to a floating-point number, if possible.

RADEG module-attribute

RADEG: float = 0.017453292519943295

Convert a string or number to a floating-point number, if possible.

RADSEC module-attribute

RADSEC: float = 4.84813681109536e-06

Convert a string or number to a floating-point number, if possible.

RAD2ARC module-attribute

RAD2ARC: float = 206264.80624709636

Convert a string or number to a floating-point number, if possible.

RADH module-attribute

RADH: float = 0.2617993877991494

Convert a string or number to a floating-point number, if possible.

GAUSS_GRAV module-attribute

GAUSS_GRAV: float = 0.01720209895

Convert a string or number to a floating-point number, if possible.

GAUSS_GRAV_SQUARED module-attribute

GAUSS_GRAV_SQUARED: float = 0.00029591220828559115

Convert a string or number to a floating-point number, if possible.

VLIGHT module-attribute

VLIGHT: float = 299792.458

Convert a string or number to a floating-point number, if possible.

VLIGHT_AU module-attribute

VLIGHT_AU: float = 173.14463267424034

Convert a string or number to a floating-point number, if possible.

Classes