Struct ndarray_linalg::krylov::mgs::MGS
source · pub struct MGS<A: Scalar> { /* private fields */ }
Expand description
Iterative orthogonalizer using modified Gram-Schmit procedure
Implementations§
Trait Implementations§
source§impl<A: Scalar + Lapack> Orthogonalizer for MGS<A>
impl<A: Scalar + Lapack> Orthogonalizer for MGS<A>
type Elem = A
fn tolerance(&self) -> A::Real
source§fn decompose<S>(&self, a: &mut ArrayBase<S, Ix1>) -> Array1<A>where
S: DataMut<Elem = A>,
fn decompose<S>(&self, a: &mut ArrayBase<S, Ix1>) -> Array1<A>where
S: DataMut<Elem = A>,
Decompose given vector into the span of current basis and
its tangent space Read more
source§fn coeff<S>(&self, a: ArrayBase<S, Ix1>) -> Array1<A>
fn coeff<S>(&self, a: ArrayBase<S, Ix1>) -> Array1<A>
Calculate the coefficient to the current basis basis Read more
source§fn append<S>(&mut self, a: ArrayBase<S, Ix1>) -> AppendResult<A>
fn append<S>(&mut self, a: ArrayBase<S, Ix1>) -> AppendResult<A>
Add new vector if the residual is larger than relative tolerance
source§fn div_append<S>(&mut self, a: &mut ArrayBase<S, Ix1>) -> AppendResult<A>
fn div_append<S>(&mut self, a: &mut ArrayBase<S, Ix1>) -> AppendResult<A>
Add new vector if the residual is larger than relative tolerance,
and return the residual vector
fn is_empty(&self) -> bool
Auto Trait Implementations§
impl<A> Freeze for MGS<A>
impl<A> RefUnwindSafe for MGS<A>
impl<A> Send for MGS<A>
impl<A> Sync for MGS<A>
impl<A> Unpin for MGS<A>
impl<A> UnwindSafe for MGS<A>
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
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)