pub enum NormalRecipe {
SppWeightedResidualFiniteDifference,
RtkDoubleDifferenceBlockFirstTie,
PppDenseLastTie,
CanonicalSquareRoot,
}Expand description
Normal-equation assembly tie-breaking / fold order. The tie order is the pivot/elimination convention that fixes the bit pattern of the reduced system.
Variants§
SppWeightedResidualFiniteDifference
SPP weighted-residual rows with a finite-difference design matrix
(spp least-squares).
RtkDoubleDifferenceBlockFirstTie
RTK double-difference block assembly with the first-tie covariance fold
(rtk_filter::normal first-tie block).
PppDenseLastTie
PPP dense normal equations with the last-tie solve
(precise_positioning::normal *_last_tie).
CanonicalSquareRoot
Canonical square-root-information solve, shared by canonical RTK and
canonical PPP: the SPD normal system is solved by the owned deterministic
Cholesky factorization Λ = L Lᵀ plus forward/back substitution, where
L is the information-matrix square root. For RTK this is the
double-difference information system Λ x = η assembled by the same shared
block fold the RTK reference uses; for PPP it is the dense weighted normal
system AᵀWA x = AᵀWy assembled from the same undifferenced rows the PPP
reference uses. This is the numerically rigorous op-order for an SPD normal
matrix (no pivoting; exploits symmetry), distinct from the reference RTK
general first-tie Gaussian elimination
(Self::RtkDoubleDifferenceBlockFirstTie) and the reference PPP last-tie
Gaussian elimination (Self::PppDenseLastTie). Driven by
EstimationRecipe::canonical_rtk and EstimationRecipe::canonical_ppp
on the owned SolverRecipe::OwnedDeterministicCholesky kernel; not used
by any reference strategy.
Trait Implementations§
Source§impl Clone for NormalRecipe
impl Clone for NormalRecipe
Source§fn clone(&self) -> NormalRecipe
fn clone(&self) -> NormalRecipe
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for NormalRecipe
Source§impl Debug for NormalRecipe
impl Debug for NormalRecipe
Source§impl Default for NormalRecipe
impl Default for NormalRecipe
Source§fn default() -> NormalRecipe
fn default() -> NormalRecipe
impl Eq for NormalRecipe
Source§impl Hash for NormalRecipe
impl Hash for NormalRecipe
Source§impl PartialEq for NormalRecipe
impl PartialEq for NormalRecipe
Source§fn eq(&self, other: &NormalRecipe) -> bool
fn eq(&self, other: &NormalRecipe) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for NormalRecipe
Auto Trait Implementations§
impl Freeze for NormalRecipe
impl RefUnwindSafe for NormalRecipe
impl Send for NormalRecipe
impl Sync for NormalRecipe
impl Unpin for NormalRecipe
impl UnsafeUnpin for NormalRecipe
impl UnwindSafe for NormalRecipe
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.