adam_core.orbit_determination.evaluate module

class adam_core.orbit_determination.evaluate.OrbitDeterminationPhotometry(table: Table, **kwargs: int | float | str)[source]

Bases: Table

mag

A column for storing 64-bit floating point numbers.

rmsmag

A column for storing 64-bit floating point numbers.

band

A column for storing large strings (over 231 bytes long). Large string data is stored in variable-length chunks.

schema: ClassVar[pa.Schema] = mag: double rmsmag: double band: large_string
class adam_core.orbit_determination.evaluate.OrbitDeterminationObservations(table: Table, **kwargs: int | float | str)[source]

Bases: Table

id

A column for storing large strings (over 231 bytes long). Large string data is stored in variable-length chunks.

coordinates

A column which represents an embedded quivr table.

Parameters:
  • table_type – The type of the table to embed.

  • nullable – Whether the column can contain null values.

  • metadata – A dictionary of metadata to attach to the column.

observers

A column which represents an embedded quivr table.

Parameters:
  • table_type – The type of the table to embed.

  • nullable – Whether the column can contain null values.

  • metadata – A dictionary of metadata to attach to the column.

photometry

A column which represents an embedded quivr table.

Parameters:
  • table_type – The type of the table to embed.

  • nullable – Whether the column can contain null values.

  • metadata – A dictionary of metadata to attach to the column.

schema: ClassVar[pa.Schema] = id: large_string not null coordinates: struct<rho: double, lon: double, lat: double, vrho: double, vlon: double, vlat: double, time: struct (... 118 chars omitted)   child 0, rho: double   child 1, lon: double   child 2, lat: double   child 3, vrho: double   child 4, vlon: double   child 5, vlat: double   child 6, time: struct<days: int64, nanos: int64>       child 0, days: int64       child 1, nanos: int64   child 7, covariance: struct<values: large_list<item: double>>       child 0, values: large_list<item: double>           child 0, item: double   child 8, origin: struct<code: large_string>       child 0, code: large_string observers: struct<code: large_string, coordinates: struct<x: double, y: double, z: double, vx: double, vy: doub (... 147 chars omitted)   child 0, code: large_string   child 1, coordinates: struct<x: double, y: double, z: double, vx: double, vy: double, vz: double, time: struct<days: int64 (... 106 chars omitted)       child 0, x: double       child 1, y: double       child 2, z: double       child 3, vx: double       child 4, vy: double       child 5, vz: double       child 6, time: struct<days: int64, nanos: int64>           child 0, days: int64           child 1, nanos: int64       child 7, covariance: struct<values: large_list<item: double>>           child 0, values: large_list<item: double>               child 0, item: double       child 8, origin: struct<code: large_string>           child 0, code: large_string photometry: struct<mag: double, rmsmag: double, band: large_string>   child 0, mag: double   child 1, rmsmag: double   child 2, band: large_string
adam_core.orbit_determination.evaluate.evaluate_orbits(orbits: Orbits | FittedOrbits, observations: OrbitDeterminationObservations, propagator: Propagator, parameters: int = 6, ignore: List[str] | None = None) Tuple[FittedOrbits, FittedOrbitMembers][source]

Creates a fitted orbit and fitted orbit members from input orbits and observations. This function takes the input orbits and calculates the residuals with respect to the observations. It then computes the chi2 and reduced chi2 values for the orbits. If outliers are provided, they are ignored when calculating the chi2, reduced chi2, and arc length values.

This function is intended to be used to evaluate the quality of orbits with respect to observations in scenarios for orbit determination.

Parameters:
  • orbit (~adam_core.orbits.Orbits (N)) – Orbits to calculate residuals with respect to the observations for.

  • observations (~adam_core.orbit_determination.DifferentialCorrectionObservations (M)) – Observations believed to belong to the input orbit.

  • propagator (~adam_core.propagator.Propagator) – Propagator to use to generate ephemeris.

  • parameters (int) – Number of parameters that were initially fit to the observations. This is typically 6 for an orbit fit to observations (assuming the epoch was not fit).

  • ignore (list of str) – List of observation IDs to ignore when calculating chi2 and reduced chi2 values. This is typically a list of outlier observation IDs.

Returns:

  • fitted_orbit (~adam_core.orbit_determination.FittedOrbits (N)) – Fitted orbit.

  • fitted_orbit_members (~adam_core.orbit_determination.FittedOrbitMembers (N * M)) – Fitted orbit members.