Sidereon.GNSS.PrecisePositioning.FixedSolution (Sidereon v3.0.0)

Copy Markdown View Source

Static multi-epoch integer-fixed carrier-phase solution.

Summary

Types

t()

A static integer-fixed solution. epoch_clocks holds one clock per solved epoch, in the order of solved_epoch_indices, and ssr_bias_exclusions the observations left out for an unresolved SSR/HAS bias, which this binding never requests.

Types

epoch_clock()

position()

@type position() :: %{x_m: float(), y_m: float(), z_m: float()}

residual()

t()

@type t() :: %Sidereon.GNSS.PrecisePositioning.FixedSolution{
  epoch_clocks: [epoch_clock()],
  epochs: [NaiveDateTime.t()],
  fixed_ambiguities_cycles: %{required(String.t()) => integer()},
  fixed_ambiguities_m: %{required(String.t()) => float()},
  float_solution: Sidereon.GNSS.PrecisePositioning.MultiEpochSolution.t(),
  formal_position_covariance: term(),
  formal_tropo_gradient_covariance_m2: term(),
  metadata: %{
    :iterations => pos_integer(),
    :converged => boolean(),
    :status => :state_tolerance | :max_iterations,
    :n_epochs => pos_integer(),
    :n_observations => pos_integer(),
    :code_rms_m => float(),
    :phase_rms_m => float(),
    :weighted_rms_m => float(),
    :integer_status => :fixed | :not_fixed,
    :integer_method => :lambda,
    :integer_ratio => float() | :infinity,
    :integer_best_score => float(),
    :integer_second_best_score => float() | nil,
    :integer_candidates => pos_integer(),
    :troposphere_applied => boolean(),
    :ztd_estimated => boolean(),
    optional(:ambiguity_search) => %{
      order: [String.t()],
      float_cycles: %{required(String.t()) => float()},
      covariance_cycles: [[float()]],
      covariance_inverse_cycles: [[float()]]
    }
  },
  position: position(),
  position_covariance: term(),
  residual_ionosphere_m: term(),
  residuals_m: [residual()],
  solved_epoch_indices: [non_neg_integer()],
  ssr_bias_exclusions: [
    Sidereon.GNSS.PrecisePositioning.MultiEpochSolution.ssr_bias_exclusion()
  ],
  temporal_position_covariance: term(),
  tropo_gradient_covariance_m2: term(),
  tropo_gradient_east_m: term(),
  tropo_gradient_north_m: term(),
  unplaced_observations: [
    Sidereon.GNSS.PrecisePositioning.MultiEpochSolution.unplaced_observation()
  ],
  used_sats: [String.t()],
  ztd_residual_m: float() | nil
}

A static integer-fixed solution. epoch_clocks holds one clock per solved epoch, in the order of solved_epoch_indices, and ssr_bias_exclusions the observations left out for an unresolved SSR/HAS bias, which this binding never requests.