Struct GnssMeasurementOptions

Struct Documentation

struct GnssMeasurementOptions

Public Members

std::vector<GnssObservable> observables = {GnssObservable::PSEUDORANGE, GnssObservable::DOPPLER, GnssObservable::CARRIER_PHASE}
GnssMeasurementStateIndices indices
ClockBiasUnit clock_bias_unit = ClockBiasUnit::SECONDS
Time receive_time_scale = Time::TAI

Epochs passed to GNSSMeasurements::Compute / Precompute are receiver signal-reception epochs in this time scale.

Time ephemeris_time_scale = Time::TAI

GNSS constellation ephemeris epochs are represented in this scale. GnssConstellation stores its tables as TAI seconds by convention.

Frame frame = Frame::ECI

Receiver and transmitter states are expressed in this frame.

bool solve_light_time = true
bool recompute_transmit_time_from_ephemeris = false

If true, GnssMeasurement::Compute resolves the transmit epoch from the current user state and the channel ephemeris coefficients instead of reusing the transmit epoch stored in the precomputed channel. This is intended for estimated/filter measurements; truth generation can keep the precomputed light-time solution tied to the truth state.

int light_time_max_iterations = 10
Real light_time_tolerance_s = 1.0e-11
bool apply_transmitter_relativity = true
bool apply_shapiro_delay = true
Real shapiro_mu = GM_SUN

Deprecated: Shapiro delay is currently evaluated for the Sun only.

Vec3 shapiro_body_position = Vec3::Zero()

Deprecated: Shapiro delay is currently evaluated using SunPosition().

bool apply_visibility = true
bool apply_cn0_threshold = true
Real cn0_threshold_dbhz = 15.0
bool apply_ionosphere_plasma_delay = false
Real default_ionosphere_plasma_delay_m = 0.0