pub fn rrlu<T: Scalar>(
a: &Matrix<T>,
options: Option<RrLUOptions>,
) -> Result<RrLU<T>>Expand description
Perform rank-revealing LU decomposition (non-destructive).
Clones the input matrix and calls rrlu_inplace.
§Errors
Returns MatrixCIError::NaNEncountered
if NaN values appear in the L or U factors.
§Examples
use tensor4all_tcicore::{from_vec2d, matrixlu::rrlu};
let m = from_vec2d(vec![
vec![1.0_f64, 0.0],
vec![0.0, 2.0],
]);
let lu = rrlu(&m, None).unwrap();
assert_eq!(lu.npivots(), 2);
assert_eq!(lu.nrows(), 2);
assert_eq!(lu.ncols(), 2);