qr_decomposition

Function qr_decomposition 

Source
pub fn qr_decomposition<T, S>(matrix: &S) -> SparseResult<QRResult<T>>
where T: Float + SparseElement + Debug + Copy + Add<Output = T> + Sub<Output = T> + Mul<Output = T> + Div<Output = T>, S: SparseArray<T>,
Expand description

Compute sparse QR decomposition using Givens rotations

Computes the QR decomposition of a sparse matrix A = Q*R, where Q is orthogonal and R is upper triangular.

§Arguments

  • matrix - The sparse matrix to decompose

§Returns

QR decomposition result

§Examples

use scirs2_sparse::linalg::qr_decomposition;
use scirs2_sparse::csr_array::CsrArray;

let rows = vec![0, 1, 2];
let cols = vec![0, 0, 1];
let data = vec![1.0, 2.0, 3.0];
let matrix = CsrArray::from_triplets(&rows, &cols, &data, (3, 2), false).unwrap();

let qr_result = qr_decomposition(&matrix).unwrap();