Struct la::LUDecomposition [] [src]

pub struct LUDecomposition<T> {
    // some fields omitted
}

LU Decomposition.

Originally based on JAMA.

For an m-by-n matrix A with m >= n, the LU decomposition is an m-by-n unit lower triangular matrix L, an n-by-n upper triangular matrix U, and a permutation vector piv of length m so that A(piv,:) = L*U. If m < n, then L is m-by-m and U is m-by-n.

The LU decompostion with pivoting always exists, even if the matrix is singular. The primary use of the LU decomposition is in the solution of square systems of simultaneous linear equations. This will fail if the matrix is singular.

Methods

impl<T: Float + ApproxEq<T> + Signed> LUDecomposition<T>

fn new(a: &Matrix<T>) -> LUDecomposition<T>

fn is_singular(&self) -> bool

fn is_non_singular(&self) -> bool

fn get_l(&self) -> Matrix<T>

fn get_u(&self) -> Matrix<T>

fn get_p(&self) -> Matrix<T>

fn get_piv<'lt>(&'lt self) -> &'lt Vec<usize>

fn det(&self) -> T

fn solve(&self, b: &Matrix<T>) -> Option<Matrix<T>>