pub trait LeastSquaresSvdInPlace<D, E, I> where
D: Data<Elem = E>,
E: Scalar + Lapack,
I: Dimension, {
fn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D, I>
) -> Result<LeastSquaresResult<E, I>>;
}Expand description
Solve least squares for mutable references, overwriting the input fields in the process
Required Methods
sourcefn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D, I>
) -> Result<LeastSquaresResult<E, I>>
fn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D, I>
) -> Result<LeastSquaresResult<E, I>>
Solve a least squares problem of the form Ax = rhs
by calling A.least_squares(&mut rhs), overwriting both A
and rhs. This uses the memory location of A and
rhs, which avoids some extra memory allocations.
A and rhs must have the same layout, i.e. they must
be both either row- or column-major format, otherwise a
IncompatibleShape error is raised.
Implementations on Foreign Types
sourceimpl<E, D1, D2> LeastSquaresSvdInPlace<D2, E, Dim<[usize; 1]>> for ArrayBase<D1, Ix2> where
E: Scalar + Lapack,
D1: DataMut<Elem = E>,
D2: DataMut<Elem = E>,
impl<E, D1, D2> LeastSquaresSvdInPlace<D2, E, Dim<[usize; 1]>> for ArrayBase<D1, Ix2> where
E: Scalar + Lapack,
D1: DataMut<Elem = E>,
D2: DataMut<Elem = E>,
Solve least squares for mutable references and a vector as a right-hand side. Both values are overwritten in the call.
E is one of f32, f64, c32, c64. D1, D2 can be any
valid representation for ArrayBase (over E).
sourcefn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D2, Ix1>
) -> Result<LeastSquaresResult<E, Ix1>>
fn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D2, Ix1>
) -> Result<LeastSquaresResult<E, Ix1>>
Solve a least squares problem of the form Ax = rhs
by calling A.least_squares(rhs), where rhs is a
vector. A and rhs are overwritten in the call.
A and rhs must have the same layout, i.e. they must
be both either row- or column-major format, otherwise a
IncompatibleShape error is raised.
sourceimpl<E, D1, D2> LeastSquaresSvdInPlace<D2, E, Dim<[usize; 2]>> for ArrayBase<D1, Ix2> where
E: Scalar + Lapack + LeastSquaresSvdDivideConquer_,
D1: DataMut<Elem = E>,
D2: DataMut<Elem = E>,
impl<E, D1, D2> LeastSquaresSvdInPlace<D2, E, Dim<[usize; 2]>> for ArrayBase<D1, Ix2> where
E: Scalar + Lapack + LeastSquaresSvdDivideConquer_,
D1: DataMut<Elem = E>,
D2: DataMut<Elem = E>,
Solve least squares for mutable references and a matrix as a right-hand side. Both values are overwritten in the call.
E is one of f32, f64, c32, c64. D1, D2 can be any
valid representation for ArrayBase (over E).
sourcefn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D2, Ix2>
) -> Result<LeastSquaresResult<E, Ix2>>
fn least_squares_in_place(
&mut self,
rhs: &mut ArrayBase<D2, Ix2>
) -> Result<LeastSquaresResult<E, Ix2>>
Solve a least squares problem of the form Ax = rhs
by calling A.least_squares(rhs), where rhs is a
matrix. A and rhs are overwritten in the call.
A and rhs must have the same layout, i.e. they must
be both either row- or column-major format, otherwise a
IncompatibleShape error is raised.