FactorizationPLU

Computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges. The factorization has the form

   A = P * L * U

where P is a permutation matrix, L is lower triangular with unit diagonal elements (lower trapezoidal if m > n), and U is upper triangular (upper trapezoidal if m < n). Lapack function GETRF.

Computing for type matrix<double>

bool  matrix::FactorizationPLU(
   matrix&         P,            // permutation matrix P
   matrix&         L,            // lower triangular matrix L
   matrix&         U             // upper triangular matrix U
   );

Computing for type matrix<float>

bool  matrix::FactorizationPLU(
   matrixf&        P,            // permutation matrix P
   matrixf&        L,            // lower triangular matrix L
   matrixf&        U             // upper triangular matrix U
   );

Computing for type matrix<complex>

bool  matrix::FactorizationPLU(
   matrixc&        P,            // permutation matrix P
   matrixc&        L,            // lower triangular matrix L
   matrixc&        U             // upper triangular matrix U
   );

Computing for type matrix<complexf>

bool  matrix::FactorizationPLU(
   matrixcf&       P,            // permutation matrix P
   matrixcf&       L,            // lower triangular matrix L
   matrixcf&       U             // upper triangular matrix U
   );

Parameters

P

[out]  Permutation matrix P.

L

[out]  Lower triangular matrix L with unit diagonal elements.

U

[out]  Upper triangular matrix U.

 

Return Value

Return true if successful, otherwise false in case of an error.