pub trait ObservableEphemerisSource {
// Required method
fn observable_state_at_j2000_s(
&self,
sat: GnssSatelliteId,
t_j2000_s: f64,
) -> Result<ObservableState, ObservablesError>;
// Provided methods
fn observable_states_at_j2000_s(
&self,
satellites: &[GnssSatelliteId],
epochs_j2000_s: &[f64],
) -> Result<ObservableStateBatch, ObservablesError> { ... }
fn observable_states_at_shared_j2000_s(
&self,
satellites: &[GnssSatelliteId],
epoch_j2000_s: f64,
) -> ObservableStateBatch { ... }
}Expand description
An ephemeris product usable by predict.
Required Methods§
Sourcefn observable_state_at_j2000_s(
&self,
sat: GnssSatelliteId,
t_j2000_s: f64,
) -> Result<ObservableState, ObservablesError>
fn observable_state_at_j2000_s( &self, sat: GnssSatelliteId, t_j2000_s: f64, ) -> Result<ObservableState, ObservablesError>
ECEF position and optional satellite clock at seconds since J2000.
Provided Methods§
Sourcefn observable_states_at_j2000_s(
&self,
satellites: &[GnssSatelliteId],
epochs_j2000_s: &[f64],
) -> Result<ObservableStateBatch, ObservablesError>
fn observable_states_at_j2000_s( &self, satellites: &[GnssSatelliteId], epochs_j2000_s: &[f64], ) -> Result<ObservableStateBatch, ObservablesError>
ECEF states for parallel satellite and epoch arrays.
satellites[i] is evaluated at epochs_j2000_s[i]. The output is
index-aligned with the input and preserves the scalar result for every
element. A length mismatch is the only batch-level error.
ECEF states for many satellites at one shared epoch.
The output is index-aligned with satellites and preserves the scalar
result for every element.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".