pub trait SolveH<A: Scalar> {
// Required method
fn solveh_inplace<'a, S: DataMut<Elem = A>>(
&self,
b: &'a mut ArrayBase<S, Ix1>,
) -> Result<&'a mut ArrayBase<S, Ix1>>;
// Provided methods
fn solveh<S: Data<Elem = A>>(
&self,
b: &ArrayBase<S, Ix1>,
) -> Result<Array1<A>> { ... }
fn solveh_into<S: DataMut<Elem = A>>(
&self,
b: ArrayBase<S, Ix1>,
) -> Result<ArrayBase<S, Ix1>> { ... }
}Expand description
An interface for solving systems of Hermitian (or real symmetric) linear equations.
If you plan to solve many equations with the same Hermitian (or real
symmetric) coefficient matrix A but different b vectors, it’s faster to
factor the A matrix once using the FactorizeH trait, and then solve
using the BKFactorized struct.
Required Methods§
Sourcefn solveh_inplace<'a, S: DataMut<Elem = A>>(
&self,
b: &'a mut ArrayBase<S, Ix1>,
) -> Result<&'a mut ArrayBase<S, Ix1>>
fn solveh_inplace<'a, S: DataMut<Elem = A>>( &self, b: &'a mut ArrayBase<S, Ix1>, ) -> Result<&'a mut ArrayBase<S, Ix1>>
Solves a system of linear equations A * x = b with Hermitian (or real
symmetric) matrix A, where A is self, b is the argument, and
x is the successful result. The value of x is also assigned to the
argument.
§Panics
Panics if the length of b is not the equal to the number of columns
of A.
Provided Methods§
Sourcefn solveh<S: Data<Elem = A>>(&self, b: &ArrayBase<S, Ix1>) -> Result<Array1<A>>
fn solveh<S: Data<Elem = A>>(&self, b: &ArrayBase<S, Ix1>) -> Result<Array1<A>>
Solves a system of linear equations A * x = b with Hermitian (or real
symmetric) matrix A, where A is self, b is the argument, and
x is the successful result.
§Panics
Panics if the length of b is not the equal to the number of columns
of A.
Sourcefn solveh_into<S: DataMut<Elem = A>>(
&self,
b: ArrayBase<S, Ix1>,
) -> Result<ArrayBase<S, Ix1>>
fn solveh_into<S: DataMut<Elem = A>>( &self, b: ArrayBase<S, Ix1>, ) -> Result<ArrayBase<S, Ix1>>
Solves a system of linear equations A * x = b with Hermitian (or real
symmetric) matrix A, where A is self, b is the argument, and
x is the successful result.
§Panics
Panics if the length of b is not the equal to the number of columns
of A.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.