Skip to main content

ObservableEphemerisSource

Trait ObservableEphemerisSource 

Source
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§

Source

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§

Source

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.

Source

fn observable_states_at_shared_j2000_s( &self, satellites: &[GnssSatelliteId], epoch_j2000_s: f64, ) -> ObservableStateBatch

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".

Implementors§