FactorizationPLUGeTrid

Computes an LU factorization of a general (non-symmetric) tridiagonal N-by-N matrix A using elimination with partial pivoting and 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, and U is upper triangular. Lapack function GTTRF.

Computing for type matrix<double>

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

Computing for type matrix<float>

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

Computing for type matrix<complex>

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

Computing for type matrix<complexf>

bool  matrix::FactorizationPLUGeTrid(
  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.