FactorizationLQ

Computes the LQ factorization of a general m-by-n matrix: A = L * Q. Lapack function GELQF.

Computing for type matrix<double>

bool  matrix::FactorizationLQ(
   bool            reduced,      // calculation mode reduced or complete
   matrix&         L,            // lower triangular matrix L
   matrix&         Q             // orthogonal matrix Q
   );

Computing for type matrix<float>

bool  matrix::FactorizationLQ(
   bool            reduced,      // calculation mode reduced or complete
   matrixf&        L,            // lower triangular matrix L
   matrixf&        Q             // orthogonal matrix Q
   );

Computing for type matrix<complex>

bool  matrix::FactorizationLQ(
   bool            reduced,      // calculation mode reduced or complete
   matrixc&        L,            // lower triangular matrix L
   matrixc&                    // unitary matrix Q
   );

Computing for type matrix<complexf>

bool  matrix::FactorizationLQ(
   bool            reduced,      // calculation mode reduced or complete
   matrixcf&       L,            // lower triangular matrix L
   matrixcf&                   // unitary matrix Q
   );

Parameters

reduced

[in]  Calculation mode. If reduced is true then matrices L, Q calculated with reduced dimensions (M, K), (K, N). If reduced is false it means complete calculation of matrices L, Q with dimensions (M,N), (N,N).

L

[out]  Lower triangular matrix L.

Q

[out]  Orthogonal or unitary matrix Q.

 

Return Value

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

Note

If reduced is true

  If m <= n, matrix L is of m-by-m sizes, matrix Q is of m-by-n sizes.

  If m > n, matrix L is of m-by-n sizes, matrix Q is of n-by-n sizes.

If reduced is false, matrix L is of m-by-n sizes, matrix Q is of n-by-n sizes.