Sidereon.OrbitDetermination (Sidereon v0.15.0)

Copy Markdown View Source

Precise orbit fitting and residual ledgers.

Positions supplied through SP3 or precise ephemeris samples are ECEF metres. Fitted initial states are GCRS kilometres and kilometres per second.

Summary

Functions

Fit one satellite from a precise-ephemeris sample slice.

Fit one satellite from a parsed SP3 product.

Types

error_reason()

@type error_reason() ::
  :empty_selection
  | :invalid_option
  | :too_few_samples
  | :non_monotonic_epochs
  | :mixed_timescales
  | :invalid_epoch
  | :invalid_observation
  | :frame
  | :propagation
  | :least_squares
  | :singular_geometry
  | :did_not_converge
  | :rtn_frame
  | term()

satellite_id()

@type satellite_id() ::
  String.t() | {String.t(), pos_integer()} | {atom(), pos_integer()}

Functions

fit_precise_ephemeris_sample_orbit(samples, satellite_id, opts \\ [])

@spec fit_precise_ephemeris_sample_orbit(
  [Sidereon.GNSS.PreciseEphemerisSample.t()],
  satellite_id(),
  keyword()
) ::
  {:ok, Sidereon.OrbitDetermination.OrbitFitReport.t()}
  | {:error, error_reason()}

Fit one satellite from a precise-ephemeris sample slice.

fit_sp3_precise_orbit(sp3, satellite_id, opts \\ [])

@spec fit_sp3_precise_orbit(Sidereon.GNSS.SP3.t(), satellite_id(), keyword()) ::
  {:ok, Sidereon.OrbitDetermination.OrbitFitReport.t()}
  | {:error, error_reason()}

Fit one satellite from a parsed SP3 product.