[][src]Trait nyx_space::od::estimate::Estimate

pub trait Estimate<S> where
    Self: Clone + PartialEq + Sized,
    S: DimName,
    DefaultAllocator: Allocator<f64, S> + Allocator<f64, S, S>, 
{ fn zeros() -> Self;
fn dt(&self) -> Epoch;
fn state(&self) -> VectorN<f64, S>;
fn covar(&self) -> MatrixMN<f64, S, S>;
fn set_dt(&mut self, dt: Epoch);
fn set_state(&mut self, new_state: VectorN<f64, S>);
fn set_covar(&mut self, new_covar: MatrixMN<f64, S, S>);
fn predicted(&self) -> bool;
fn stm(&self) -> MatrixMN<f64, S, S>;
fn epoch_fmt(&self) -> EpochFormat;
fn covar_fmt(&self) -> CovarFormat; fn within_sigma(&self, sigma: f64) -> bool { ... }
fn within_3sigma(&self) -> bool { ... }
fn header(epoch_fmt: EpochFormat, covar_fmt: CovarFormat) -> Vec<String> { ... }
fn default_header() -> Vec<String> { ... } }

Stores an Estimate, as the result of a time_update or measurement_update.

Required methods

fn zeros() -> Self

An empty estimate. This is useful if wanting to store an estimate outside the scope of a filtering loop.

fn dt(&self) -> Epoch

Date time of this Estimate

fn state(&self) -> VectorN<f64, S>

The estimated state, or state deviation (check filter docs).

fn covar(&self) -> MatrixMN<f64, S, S>

The Covariance of this estimate

fn set_dt(&mut self, dt: Epoch)

fn set_state(&mut self, new_state: VectorN<f64, S>)

Sets the estimated state, or state deviation (check filter docs).

fn set_covar(&mut self, new_covar: MatrixMN<f64, S, S>)

Sets the Covariance of this estimate

fn predicted(&self) -> bool

Whether or not this is a predicted estimate from a time update, or an estimate from a measurement

fn stm(&self) -> MatrixMN<f64, S, S>

The STM used to compute this Estimate

fn epoch_fmt(&self) -> EpochFormat

The Epoch format upon serialization

fn covar_fmt(&self) -> CovarFormat

The covariance format upon serialization

Loading content...

Provided methods

fn within_sigma(&self, sigma: f64) -> bool

Returns whether this estimate is within some bound The 68-95-99.7 rule is a good way to assess whether the filter is operating normally

fn within_3sigma(&self) -> bool

Returns whether this estimate is within 3 sigma, which represent 99.7% for a Normal distribution

fn header(epoch_fmt: EpochFormat, covar_fmt: CovarFormat) -> Vec<String>

Returns the header

fn default_header() -> Vec<String>

Returns the default header

Loading content...

Implementors

impl<S> Estimate<S> for IfEstimate<S> where
    S: DimName,
    DefaultAllocator: Allocator<f64, S> + Allocator<f64, S, S>, 
[src]

fn state(&self) -> VectorN<f64, S>[src]

Will panic if the information matrix inversion fails

fn covar(&self) -> MatrixMN<f64, S, S>[src]

Will panic if the information matrix inversion fails

fn set_state(&mut self, new_info_state: VectorN<f64, S>)[src]

WARNING: This sets the information state, not the filter state

fn set_covar(&mut self, new_info_mat: MatrixMN<f64, S, S>)[src]

WARNING: This sets the information matrix

impl<S> Estimate<S> for KfEstimate<S> where
    S: DimName,
    DefaultAllocator: Allocator<f64, S> + Allocator<f64, S, S>, 
[src]

Loading content...