PLaSK library
|
#include <solvers/gain/wasiak/wzmocnienie/jama/jama_lu.h>
Public Member Functions | |
LU (const Array2D< Real > &A) | |
LU Decomposition. | |
int | isNonsingular () |
Is the matrix nonsingular? | |
Array2D< Real > | getL () |
Return lower triangular factor. | |
Array2D< Real > | getU () |
Return upper triangular factor. | |
Array1D< int > | getPivot () |
Return pivot permutation vector. | |
Real | det () |
Compute determinant using LU factors. | |
Array2D< Real > | solve (const Array2D< Real > &B) |
Solve A*X = B. | |
Array1D< Real > | solve (const Array1D< Real > &b) |
Solve A*x = b, where x and b are vectors of length equal to the number of rows in A. | |
LU Decomposition.
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 decomposition with pivoting always exists, even if the matrix is singular, so the constructor will never fail. The primary use of the LU decomposition is in the solution of square systems of simultaneous linear equations. This will fail if isNonsingular() returns false.
|
inline |
|
inline |
Solve A*x = b, where x and b are vectors of length equal
to the number of rows in A.
b | a vector (Array1D> of length equal to the first dimension of A. |