ndarray_linalg::least_squares

Trait LeastSquaresSvdInPlace

source
pub trait LeastSquaresSvdInPlace<D, E, I>
where D: Data<Elem = E>, E: Scalar + Lapack, I: Dimension,
{ // Required method 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§

source

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§

source§

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).

source§

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.

source§

impl<E, D1, D2> LeastSquaresSvdInPlace<D2, E, Dim<[usize; 2]>> for ArrayBase<D1, Ix2>
where E: Scalar + Lapack, 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).

source§

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.

Implementors§