Skip to main content

rrlu_inplace

Function rrlu_inplace 

Source
pub fn rrlu_inplace<T: Scalar>(
    a: &mut Matrix<T>,
    options: Option<RrLUOptions>,
) -> Result<RrLU<T>>
Expand description

Perform in-place rank-revealing LU decomposition.

The input matrix a is modified in place. Use rrlu for a non-destructive version.

§Errors

Returns MatrixCIError::NaNEncountered if NaN values appear in the L or U factors.

§Examples

use tensor4all_tcicore::{from_vec2d, matrixlu::rrlu_inplace, RrLUOptions};

let mut m = from_vec2d(vec![
    vec![1.0_f64, 2.0],
    vec![3.0, 4.0],
]);
let lu = rrlu_inplace(&mut m, Some(RrLUOptions { max_rank: 1, ..Default::default() })).unwrap();
assert_eq!(lu.npivots(), 1);