Struct nyx_space::od::kalman::KF[][src]

pub struct KF<T, A, M> where
    A: DimName,
    M: DimName,
    T: State,
    DefaultAllocator: Allocator<f64, M> + Allocator<f64, <T as State>::Size> + Allocator<f64, A> + Allocator<f64, M, M> + Allocator<f64, M, <T as State>::Size> + Allocator<f64, <T as State>::Size, <T as State>::Size> + Allocator<f64, A, A> + Allocator<f64, <T as State>::Size, A> + Allocator<f64, A, <T as State>::Size> + Allocator<usize, <T as State>::Size> + Allocator<usize, <T as State>::Size, <T as State>::Size>, 
{ pub prev_estimate: KfEstimate<T>, pub measurement_noise: MatrixMN<f64, M, M>, pub process_noise: Vec<SNC<A>>, pub ekf: bool, // some fields omitted }
Expand description

Defines both a Classical and an Extended Kalman filter (CKF and EKF) S: State size (not propagated vector size) A: Acceleration size (for SNC) M: Measurement size (used for the sensitivity matrix) T: Type of state P: Propagated vector size

Fields

prev_estimate: KfEstimate<T>

The previous estimate used in the KF computations.

measurement_noise: MatrixMN<f64, M, M>

Sets the Measurement noise (usually noted R)

process_noise: Vec<SNC<A>>

A sets of process noise (usually noted Q), must be ordered chronologically

ekf: bool

Determines whether this KF should operate as a Conventional/Classical Kalman filter or an Extended Kalman Filter. Recall that one should switch to an Extended KF only once the estimate is good (i.e. after a few good measurement updates on a CKF).

Implementations

Initializes this KF with an initial estimate, measurement noise, and one process noise

Initializes this KF with an initial estimate, measurement noise, and several process noise WARNING: SNCs MUST be ordered chronologically! They will be selected automatically by walking the list of SNCs backward until one can be applied!

Initializes this KF without SNC

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the previous estimate

Update the State Transition Matrix (STM). This function must be called in between each call to time_update or measurement_update.

Update the sensitivity matrix (or “H tilde”). This function must be called prior to each call to measurement_update.

Computes a time update/prediction (i.e. advances the filter estimate with the updated STM).

May return a FilterError if the STM was not updated.

Computes the measurement update with a provided real observation and computed observation.

May return a FilterError if the STM or sensitivity matrices were not updated.

Overwrites all of the process noises to the one provided

Set the previous estimate

Returns whether the filter is an extended filter (e.g. EKF)

Sets the filter to be extended or not depending on the value of status

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Should always be Self

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

Checks if self is actually part of its subset T (and can be converted to it).

Use with care! Same as self.to_subset but without any property checks. Always succeeds.

The inclusion map: converts self to the equivalent element of its superset.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.