fortran-lapack
Loading...
Searching...
No Matches
la_lapack_orthogonal_factors_ql Module Reference

LQ and QL factorizations: blocked, short-wide and triangular-pentagonal variants. More...

Functions/Subroutines

pure subroutine, public la_sorg2l (m, n, k, a, lda, tau, work, info)
 SORG2L: generates an m by n real matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by SGEQLF.
 
pure subroutine, public la_dorg2l (m, n, k, a, lda, tau, work, info)
 DORG2L: generates an m by n real matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by DGEQLF.
 
pure subroutine, public la_qorg2l (m, n, k, a, lda, tau, work, info)
 QORG2L: generates an m by n real matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by QGEQLF.
 
pure subroutine, public la_sorgl2 (m, n, k, a, lda, tau, work, info)
 SORGL2: generates an m by n real matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k) . . . H(2) H(1) as returned by SGELQF.
 
pure subroutine, public la_dorgl2 (m, n, k, a, lda, tau, work, info)
 DORGL2: generates an m by n real matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k) . . . H(2) H(1) as returned by DGELQF.
 
pure subroutine, public la_qorgl2 (m, n, k, a, lda, tau, work, info)
 QORGL2: generates an m by n real matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k) . . . H(2) H(1) as returned by QGELQF.
 
pure subroutine, public la_sorglq (m, n, k, a, lda, tau, work, lwork, info)
 SORGLQ: generates an M-by-N real matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k) . . . H(2) H(1) as returned by SGELQF.
 
pure subroutine, public la_dorglq (m, n, k, a, lda, tau, work, lwork, info)
 DORGLQ: generates an M-by-N real matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k) . . . H(2) H(1) as returned by DGELQF.
 
pure subroutine, public la_qorglq (m, n, k, a, lda, tau, work, lwork, info)
 QORGLQ: generates an M-by-N real matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k) . . . H(2) H(1) as returned by QGELQF.
 
pure subroutine, public la_sorgql (m, n, k, a, lda, tau, work, lwork, info)
 SORGQL: generates an M-by-N real matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by SGEQLF.
 
pure subroutine, public la_dorgql (m, n, k, a, lda, tau, work, lwork, info)
 DORGQL: generates an M-by-N real matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by DGEQLF.
 
pure subroutine, public la_qorgql (m, n, k, a, lda, tau, work, lwork, info)
 QORGQL: generates an M-by-N real matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by QGEQLF.
 
pure subroutine, public la_sorm2l (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 SORM2L: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T * C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_dorm2l (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 DORM2L: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T * C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_qorm2l (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 QORM2L: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T * C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_sorml2 (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 SORML2: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T* C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_dorml2 (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 DORML2: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T* C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_qorml2 (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 QORML2: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T* C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_sormlq (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 SORMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_dormlq (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 DORMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_qormlq (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 QORMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_sormql (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 SORMQL: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_dormql (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 DORMQL: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_qormql (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 QORMQL: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_sgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
 DGEMLQT overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**T generated using the compact WY representation as returned by SGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_dgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
 DGEMLQT: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**T generated using the compact WY representation as returned by DGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_qgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
 QGEMLQT: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**T generated using the compact WY representation as returned by QGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_stplqt2 (m, n, l, a, lda, b, ldb, t, ldt, info)
 STPLQT2: computes a LQ a factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_dtplqt2 (m, n, l, a, lda, b, ldb, t, ldt, info)
 DTPLQT2: computes a LQ a factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_qtplqt2 (m, n, l, a, lda, b, ldb, t, ldt, info)
 QTPLQT2: computes a LQ a factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_stpmlqt (side, trans, m, n, k, l, mb, v, ldv, t, ldt, a, lda, b, ldb, work, info)
 STPMLQT: applies a real orthogonal matrix Q obtained from a "triangular-pentagonal" real block reflector H to a general real matrix C, which consists of two blocks A and B.
 
pure subroutine, public la_dtpmlqt (side, trans, m, n, k, l, mb, v, ldv, t, ldt, a, lda, b, ldb, work, info)
 DTPMQRT applies a real orthogonal matrix Q obtained from a "triangular-pentagonal" real block reflector H to a general real matrix C, which consists of two blocks A and B.
 
pure subroutine, public la_qtpmlqt (side, trans, m, n, k, l, mb, v, ldv, t, ldt, a, lda, b, ldb, work, info)
 QTPMQRT applies a real orthogonal matrix Q obtained from a "triangular-pentagonal" real block reflector H to a general real matrix C, which consists of two blocks A and B.
 
pure subroutine, public la_sgelq2 (m, n, a, lda, tau, work, info)
 SGELQ2: computes an LQ factorization of a real m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.
 
pure subroutine, public la_dgelq2 (m, n, a, lda, tau, work, info)
 DGELQ2: computes an LQ factorization of a real m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.
 
pure subroutine, public la_qgelq2 (m, n, a, lda, tau, work, info)
 QGELQ2: computes an LQ factorization of a real m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.
 
pure subroutine, public la_sgelqf (m, n, a, lda, tau, work, lwork, info)
 SGELQF: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_dgelqf (m, n, a, lda, tau, work, lwork, info)
 DGELQF: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_qgelqf (m, n, a, lda, tau, work, lwork, info)
 QGELQF: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure recursive subroutine, public la_sgelqt3 (m, n, a, lda, t, ldt, info)
 SGELQT3: recursively computes a LQ factorization of a real M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.
 
pure recursive subroutine, public la_dgelqt3 (m, n, a, lda, t, ldt, info)
 DGELQT3: recursively computes a LQ factorization of a real M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.
 
pure recursive subroutine, public la_qgelqt3 (m, n, a, lda, t, ldt, info)
 QGELQT3: recursively computes a LQ factorization of a real M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.
 
pure subroutine, public la_sgeql2 (m, n, a, lda, tau, work, info)
 SGEQL2: computes a QL factorization of a real m by n matrix A: A = Q * L.
 
pure subroutine, public la_dgeql2 (m, n, a, lda, tau, work, info)
 DGEQL2: computes a QL factorization of a real m by n matrix A: A = Q * L.
 
pure subroutine, public la_qgeql2 (m, n, a, lda, tau, work, info)
 QGEQL2: computes a QL factorization of a real m by n matrix A: A = Q * L.
 
pure subroutine, public la_sgeqlf (m, n, a, lda, tau, work, lwork, info)
 SGEQLF: computes a QL factorization of a real M-by-N matrix A: A = Q * L.
 
pure subroutine, public la_dgeqlf (m, n, a, lda, tau, work, lwork, info)
 DGEQLF: computes a QL factorization of a real M-by-N matrix A: A = Q * L.
 
pure subroutine, public la_qgeqlf (m, n, a, lda, tau, work, lwork, info)
 QGEQLF: computes a QL factorization of a real M-by-N matrix A: A = Q * L.
 
pure subroutine, public la_slamswlq (side, trans, m, n, k, mb, nb, a, lda, t, ldt, c, ldc, work, lwork, info)
 SLAMSWLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (SLASWLQ)
 
pure subroutine, public la_dlamswlq (side, trans, m, n, k, mb, nb, a, lda, t, ldt, c, ldc, work, lwork, info)
 DLAMSWLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (DLASWLQ)
 
pure subroutine, public la_qlamswlq (side, trans, m, n, k, mb, nb, a, lda, t, ldt, c, ldc, work, lwork, info)
 QLAMSWLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (QLASWLQ)
 
pure subroutine, public la_stplqt (m, n, l, mb, a, lda, b, ldb, t, ldt, work, info)
 STPLQT: computes a blocked LQ factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_dtplqt (m, n, l, mb, a, lda, b, ldb, t, ldt, work, info)
 DTPLQT: computes a blocked LQ factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_qtplqt (m, n, l, mb, a, lda, b, ldb, t, ldt, work, info)
 QTPLQT: computes a blocked LQ factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_sgelqt (m, n, mb, a, lda, t, ldt, work, info)
 DGELQT computes a blocked LQ factorization of a real M-by-N matrix A using the compact WY representation of Q.
 
pure subroutine, public la_dgelqt (m, n, mb, a, lda, t, ldt, work, info)
 DGELQT: computes a blocked LQ factorization of a real M-by-N matrix A using the compact WY representation of Q.
 
pure subroutine, public la_qgelqt (m, n, mb, a, lda, t, ldt, work, info)
 QGELQT: computes a blocked LQ factorization of a real M-by-N matrix A using the compact WY representation of Q.
 
pure subroutine, public la_sgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
 SGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (SGELQ)
 
pure subroutine, public la_dgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
 DGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (DGELQ)
 
pure subroutine, public la_qgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
 QGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (QGELQ)
 
pure subroutine, public la_slaswlq (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
 SLASWLQ: computes a blocked Tall-Skinny LQ factorization of a real M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.
 
pure subroutine, public la_dlaswlq (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
 DLASWLQ: computes a blocked Tall-Skinny LQ factorization of a real M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.
 
pure subroutine, public la_qlaswlq (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
 QLASWLQ: computes a blocked Tall-Skinny LQ factorization of a real M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.
 
pure subroutine, public la_sgelq (m, n, a, lda, t, tsize, work, lwork, info)
 SGELQ: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_dgelq (m, n, a, lda, t, tsize, work, lwork, info)
 DGELQ: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_qgelq (m, n, a, lda, t, tsize, work, lwork, info)
 QGELQ: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_ctplqt2 (m, n, l, a, lda, b, ldb, t, ldt, info)
 CTPLQT2: computes a LQ a factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_ztplqt2 (m, n, l, a, lda, b, ldb, t, ldt, info)
 ZTPLQT2: computes a LQ a factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_wtplqt2 (m, n, l, a, lda, b, ldb, t, ldt, info)
 WTPLQT2: computes a LQ a factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_cung2l (m, n, k, a, lda, tau, work, info)
 CUNG2L: generates an m by n complex matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by CGEQLF.
 
pure subroutine, public la_zung2l (m, n, k, a, lda, tau, work, info)
 ZUNG2L: generates an m by n complex matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by ZGEQLF.
 
pure subroutine, public la_wung2l (m, n, k, a, lda, tau, work, info)
 WUNG2L: generates an m by n complex matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by WGEQLF.
 
pure subroutine, public la_cungl2 (m, n, k, a, lda, tau, work, info)
 CUNGL2: generates an m-by-n complex matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF.
 
pure subroutine, public la_zungl2 (m, n, k, a, lda, tau, work, info)
 ZUNGL2: generates an m-by-n complex matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF.
 
pure subroutine, public la_wungl2 (m, n, k, a, lda, tau, work, info)
 WUNGL2: generates an m-by-n complex matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF.
 
pure subroutine, public la_cunglq (m, n, k, a, lda, tau, work, lwork, info)
 CUNGLQ: generates an M-by-N complex matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF.
 
pure subroutine, public la_zunglq (m, n, k, a, lda, tau, work, lwork, info)
 ZUNGLQ: generates an M-by-N complex matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF.
 
pure subroutine, public la_wunglq (m, n, k, a, lda, tau, work, lwork, info)
 WUNGLQ: generates an M-by-N complex matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF.
 
pure subroutine, public la_cungql (m, n, k, a, lda, tau, work, lwork, info)
 CUNGQL: generates an M-by-N complex matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by CGEQLF.
 
pure subroutine, public la_zungql (m, n, k, a, lda, tau, work, lwork, info)
 ZUNGQL: generates an M-by-N complex matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by ZGEQLF.
 
pure subroutine, public la_wungql (m, n, k, a, lda, tau, work, lwork, info)
 WUNGQL: generates an M-by-N complex matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by WGEQLF.
 
pure subroutine, public la_cunm22 (side, trans, m, n, n1, n2, q, ldq, c, ldc, work, lwork, info)
 
pure subroutine, public la_zunm22 (side, trans, m, n, n1, n2, q, ldq, c, ldc, work, lwork, info)
 
pure subroutine, public la_wunm22 (side, trans, m, n, n1, n2, q, ldq, c, ldc, work, lwork, info)
 
pure subroutine, public la_cunm2l (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 CUNM2L: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by CGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_zunm2l (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 ZUNM2L: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by ZGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_wunm2l (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 WUNM2L: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by WGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_cunml2 (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 CUNML2: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_zunml2 (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 ZUNML2: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_wunml2 (side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
 WUNML2: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.
 
pure subroutine, public la_cunmlq (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 CUNMLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_zunmlq (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 ZUNMLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_wunmlq (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 WUNMLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_cunmql (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 CUNMQL: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by CGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_zunmql (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 ZUNMQL: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by ZGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_wunmql (side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 WUNMQL: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by WGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_cgelq2 (m, n, a, lda, tau, work, info)
 CGELQ2: computes an LQ factorization of a complex m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.
 
pure subroutine, public la_zgelq2 (m, n, a, lda, tau, work, info)
 ZGELQ2: computes an LQ factorization of a complex m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.
 
pure subroutine, public la_wgelq2 (m, n, a, lda, tau, work, info)
 WGELQ2: computes an LQ factorization of a complex m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.
 
pure subroutine, public la_cgelqf (m, n, a, lda, tau, work, lwork, info)
 CGELQF: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_zgelqf (m, n, a, lda, tau, work, lwork, info)
 ZGELQF: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_wgelqf (m, n, a, lda, tau, work, lwork, info)
 WGELQF: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure recursive subroutine, public la_cgelqt3 (m, n, a, lda, t, ldt, info)
 CGELQT3: recursively computes a LQ factorization of a complex M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.
 
pure recursive subroutine, public la_zgelqt3 (m, n, a, lda, t, ldt, info)
 ZGELQT3: recursively computes a LQ factorization of a complex M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.
 
pure recursive subroutine, public la_wgelqt3 (m, n, a, lda, t, ldt, info)
 WGELQT3: recursively computes a LQ factorization of a complex M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.
 
pure subroutine, public la_cgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
 CGEMLQT: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'C': Q**H C C Q**H where Q is a complex unitary matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**H generated using the compact WY representation as returned by CGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_zgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
 ZGEMLQT: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'C': Q**H C C Q**H where Q is a complex unitary matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**H generated using the compact WY representation as returned by ZGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_wgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
 WGEMLQT: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'C': Q**H C C Q**H where Q is a complex unitary matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**H generated using the compact WY representation as returned by WGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.
 
pure subroutine, public la_cgeql2 (m, n, a, lda, tau, work, info)
 CGEQL2: computes a QL factorization of a complex m by n matrix A: A = Q * L.
 
pure subroutine, public la_zgeql2 (m, n, a, lda, tau, work, info)
 ZGEQL2: computes a QL factorization of a complex m by n matrix A: A = Q * L.
 
pure subroutine, public la_wgeql2 (m, n, a, lda, tau, work, info)
 WGEQL2: computes a QL factorization of a complex m by n matrix A: A = Q * L.
 
pure subroutine, public la_cgeqlf (m, n, a, lda, tau, work, lwork, info)
 CGEQLF: computes a QL factorization of a complex M-by-N matrix A: A = Q * L.
 
pure subroutine, public la_zgeqlf (m, n, a, lda, tau, work, lwork, info)
 ZGEQLF: computes a QL factorization of a complex M-by-N matrix A: A = Q * L.
 
pure subroutine, public la_wgeqlf (m, n, a, lda, tau, work, lwork, info)
 WGEQLF: computes a QL factorization of a complex M-by-N matrix A: A = Q * L.
 
pure subroutine, public la_ctplqt (m, n, l, mb, a, lda, b, ldb, t, ldt, work, info)
 CTPLQT: computes a blocked LQ factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_ztplqt (m, n, l, mb, a, lda, b, ldb, t, ldt, work, info)
 ZTPLQT: computes a blocked LQ factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_wtplqt (m, n, l, mb, a, lda, b, ldb, t, ldt, work, info)
 WTPLQT: computes a blocked LQ factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.
 
pure subroutine, public la_ctpmlqt (side, trans, m, n, k, l, mb, v, ldv, t, ldt, a, lda, b, ldb, work, info)
 CTPMLQT: applies a complex unitary matrix Q obtained from a "triangular-pentagonal" complex block reflector H to a general complex matrix C, which consists of two blocks A and B.
 
pure subroutine, public la_ztpmlqt (side, trans, m, n, k, l, mb, v, ldv, t, ldt, a, lda, b, ldb, work, info)
 ZTPMLQT: applies a complex unitary matrix Q obtained from a "triangular-pentagonal" complex block reflector H to a general complex matrix C, which consists of two blocks A and B.
 
pure subroutine, public la_wtpmlqt (side, trans, m, n, k, l, mb, v, ldv, t, ldt, a, lda, b, ldb, work, info)
 WTPMLQT: applies a complex unitary matrix Q obtained from a "triangular-pentagonal" complex block reflector H to a general complex matrix C, which consists of two blocks A and B.
 
pure subroutine, public la_cgelqt (m, n, mb, a, lda, t, ldt, work, info)
 CGELQT: computes a blocked LQ factorization of a complex M-by-N matrix A using the compact WY representation of Q.
 
pure subroutine, public la_zgelqt (m, n, mb, a, lda, t, ldt, work, info)
 ZGELQT: computes a blocked LQ factorization of a complex M-by-N matrix A using the compact WY representation of Q.
 
pure subroutine, public la_wgelqt (m, n, mb, a, lda, t, ldt, work, info)
 WGELQT: computes a blocked LQ factorization of a complex M-by-N matrix A using the compact WY representation of Q.
 
pure subroutine, public la_clamswlq (side, trans, m, n, k, mb, nb, a, lda, t, ldt, c, ldc, work, lwork, info)
 CLAMSWLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (CLASWLQ)
 
pure subroutine, public la_zlamswlq (side, trans, m, n, k, mb, nb, a, lda, t, ldt, c, ldc, work, lwork, info)
 ZLAMSWLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (ZLASWLQ)
 
pure subroutine, public la_wlamswlq (side, trans, m, n, k, mb, nb, a, lda, t, ldt, c, ldc, work, lwork, info)
 WLAMSWLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (WLASWLQ)
 
pure subroutine, public la_claswlq (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
 CLASWLQ: computes a blocked Tall-Skinny LQ factorization of a complex M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.
 
pure subroutine, public la_zlaswlq (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
 ZLASWLQ: computes a blocked Tall-Skinny LQ factorization of a complexx M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.
 
pure subroutine, public la_wlaswlq (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
 WLASWLQ: computes a blocked Tall-Skinny LQ factorization of a complexx M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.
 
pure subroutine, public la_cgelq (m, n, a, lda, t, tsize, work, lwork, info)
 CGELQ: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_zgelq (m, n, a, lda, t, tsize, work, lwork, info)
 ZGELQ: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_wgelq (m, n, a, lda, t, tsize, work, lwork, info)
 WGELQ: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.
 
pure subroutine, public la_cgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
 CGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (CGELQ)
 
pure subroutine, public la_zgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
 ZGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (ZGELQ)
 
pure subroutine, public la_wgemlq (side, trans, m, n, k, a, lda, t, tsize, c, ldc, work, lwork, info)
 WGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (WGELQ)
 

Detailed Description

LQ and QL factorizations: blocked, short-wide and triangular-pentagonal variants.

Function/Subroutine Documentation

◆ la_cgelq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgelq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(out) t,
integer(ilp), intent(in) tsize,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CGELQ: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_cgelq2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgelq2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(out) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CGELQ2: computes an LQ factorization of a complex m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.

Here is the call graph for this function:

◆ la_cgelqf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgelqf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(out) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CGELQF: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_cgelqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgelqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CGELQT: computes a blocked LQ factorization of a complex M-by-N matrix A using the compact WY representation of Q.

Here is the call graph for this function:

◆ la_cgelqt3()

pure recursive subroutine, public la_lapack_orthogonal_factors_ql::la_cgelqt3 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

CGELQT3: recursively computes a LQ factorization of a complex M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.

Here is the call graph for this function:

◆ la_cgemlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgemlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) t,
integer(ilp), intent(in) tsize,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (CGELQ)

Here is the call graph for this function:

◆ la_cgemlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgemlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
complex(sp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
complex(sp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CGEMLQT: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'C': Q**H C C Q**H where Q is a complex unitary matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**H generated using the compact WY representation as returned by CGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_cgeql2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgeql2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(out) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CGEQL2: computes a QL factorization of a complex m by n matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_cgeqlf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cgeqlf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(out) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CGEQLF: computes a QL factorization of a complex M-by-N matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_clamswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_clamswlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
complex(sp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CLAMSWLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (CLASWLQ)

Here is the call graph for this function:

◆ la_claswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_claswlq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CLASWLQ: computes a blocked Tall-Skinny LQ factorization of a complex M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.

Here is the call graph for this function:

◆ la_ctplqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_ctplqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CTPLQT: computes a blocked LQ factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_ctplqt2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_ctplqt2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

CTPLQT2: computes a LQ a factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_ctpmlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_ctpmlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
complex(sp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
complex(sp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CTPMLQT: applies a complex unitary matrix Q obtained from a "triangular-pentagonal" complex block reflector H to a general complex matrix C, which consists of two blocks A and B.

Here is the call graph for this function:

◆ la_cung2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cung2l ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CUNG2L: generates an m by n complex matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by CGEQLF.

Here is the call graph for this function:

◆ la_cungl2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cungl2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CUNGL2: generates an m-by-n complex matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF.

Here is the call graph for this function:

◆ la_cunglq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cunglq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CUNGLQ: generates an M-by-N complex matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF.

Here is the call graph for this function:

◆ la_cungql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cungql ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CUNGQL: generates an M-by-N complex matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by CGEQLF.

Here is the call graph for this function:

◆ la_cunm22()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cunm22 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) n1,
integer(ilp), intent(in) n2,
complex(sp), dimension(ldq,*), intent(in) q,
integer(ilp), intent(in) ldq,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )
Here is the call graph for this function:

◆ la_cunm2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cunm2l ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CUNM2L: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by CGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_cunml2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cunml2 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

CUNML2: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_cunmlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cunmlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CUNMLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by CGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_cunmql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_cunmql ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(sp), dimension(*), intent(in) tau,
complex(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

CUNMQL: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by CGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_dgelq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgelq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(out) t,
integer(ilp), intent(in) tsize,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DGELQ: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_dgelq2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgelq2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(out) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DGELQ2: computes an LQ factorization of a real m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.

Here is the call graph for this function:

◆ la_dgelqf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgelqf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(out) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DGELQF: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_dgelqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgelqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DGELQT: computes a blocked LQ factorization of a real M-by-N matrix A using the compact WY representation of Q.

Here is the call graph for this function:

◆ la_dgelqt3()

pure recursive subroutine, public la_lapack_orthogonal_factors_ql::la_dgelqt3 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

DGELQT3: recursively computes a LQ factorization of a real M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.

Here is the call graph for this function:

◆ la_dgemlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgemlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) t,
integer(ilp), intent(in) tsize,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (DGELQ)

Here is the call graph for this function:

◆ la_dgemlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgemlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
real(dp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
real(dp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DGEMLQT: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**T generated using the compact WY representation as returned by DGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_dgeql2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgeql2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(out) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DGEQL2: computes a QL factorization of a real m by n matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_dgeqlf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dgeqlf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(out) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DGEQLF: computes a QL factorization of a real M-by-N matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_dlamswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dlamswlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
real(dp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DLAMSWLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (DLASWLQ)

Here is the call graph for this function:

◆ la_dlaswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dlaswlq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DLASWLQ: computes a blocked Tall-Skinny LQ factorization of a real M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.

Here is the call graph for this function:

◆ la_dorg2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dorg2l ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DORG2L: generates an m by n real matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by DGEQLF.

Here is the call graph for this function:

◆ la_dorgl2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dorgl2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DORGL2: generates an m by n real matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k) . . . H(2) H(1) as returned by DGELQF.

Here is the call graph for this function:

◆ la_dorglq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dorglq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DORGLQ: generates an M-by-N real matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k) . . . H(2) H(1) as returned by DGELQF.

Here is the call graph for this function:

◆ la_dorgql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dorgql ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DORGQL: generates an M-by-N real matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by DGEQLF.

Here is the call graph for this function:

◆ la_dorm2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dorm2l ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DORM2L: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T * C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_dorml2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dorml2 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DORML2: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T* C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_dormlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dormlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DORMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_dormql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dormql ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(*), intent(in) tau,
real(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

DORMQL: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by DGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_dtplqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dtplqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DTPLQT: computes a blocked LQ factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_dtplqt2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dtplqt2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

DTPLQT2: computes a LQ a factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_dtpmlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_dtpmlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
real(dp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
real(dp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(dp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DTPMQRT applies a real orthogonal matrix Q obtained from a "triangular-pentagonal" real block reflector H to a general real matrix C, which consists of two blocks A and B.

Here is the call graph for this function:

◆ la_qgelq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgelq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(out) t,
integer(ilp), intent(in) tsize,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QGELQ: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_qgelq2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgelq2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(out) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QGELQ2: computes an LQ factorization of a real m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.

Here is the call graph for this function:

◆ la_qgelqf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgelqf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(out) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QGELQF: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_qgelqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgelqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QGELQT: computes a blocked LQ factorization of a real M-by-N matrix A using the compact WY representation of Q.

Here is the call graph for this function:

◆ la_qgelqt3()

pure recursive subroutine, public la_lapack_orthogonal_factors_ql::la_qgelqt3 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

QGELQT3: recursively computes a LQ factorization of a real M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.

Here is the call graph for this function:

◆ la_qgemlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgemlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) t,
integer(ilp), intent(in) tsize,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (QGELQ)

Here is the call graph for this function:

◆ la_qgemlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgemlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
real(qp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
real(qp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QGEMLQT: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**T generated using the compact WY representation as returned by QGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_qgeql2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgeql2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(out) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QGEQL2: computes a QL factorization of a real m by n matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_qgeqlf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qgeqlf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(out) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QGEQLF: computes a QL factorization of a real M-by-N matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_qlamswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qlamswlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
real(qp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QLAMSWLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (QLASWLQ)

Here is the call graph for this function:

◆ la_qlaswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qlaswlq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QLASWLQ: computes a blocked Tall-Skinny LQ factorization of a real M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.

Here is the call graph for this function:

◆ la_qorg2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qorg2l ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QORG2L: generates an m by n real matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by QGEQLF.

Here is the call graph for this function:

◆ la_qorgl2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qorgl2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QORGL2: generates an m by n real matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k) . . . H(2) H(1) as returned by QGELQF.

Here is the call graph for this function:

◆ la_qorglq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qorglq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QORGLQ: generates an M-by-N real matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k) . . . H(2) H(1) as returned by QGELQF.

Here is the call graph for this function:

◆ la_qorgql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qorgql ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QORGQL: generates an M-by-N real matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by QGEQLF.

Here is the call graph for this function:

◆ la_qorm2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qorm2l ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QORM2L: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T * C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_qorml2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qorml2 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QORML2: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T* C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_qormlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qormlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QORMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_qormql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qormql ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(*), intent(in) tau,
real(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

QORMQL: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by QGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_qtplqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qtplqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QTPLQT: computes a blocked LQ factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_qtplqt2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qtplqt2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

QTPLQT2: computes a LQ a factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_qtpmlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_qtpmlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
real(qp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
real(qp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(qp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

QTPMQRT applies a real orthogonal matrix Q obtained from a "triangular-pentagonal" real block reflector H to a general real matrix C, which consists of two blocks A and B.

Here is the call graph for this function:

◆ la_sgelq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgelq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(out) t,
integer(ilp), intent(in) tsize,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SGELQ: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_sgelq2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgelq2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(out) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

SGELQ2: computes an LQ factorization of a real m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.

Here is the call graph for this function:

◆ la_sgelqf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgelqf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(out) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SGELQF: computes an LQ factorization of a real M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_sgelqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgelqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DGELQT computes a blocked LQ factorization of a real M-by-N matrix A using the compact WY representation of Q.

Here is the call graph for this function:

◆ la_sgelqt3()

pure recursive subroutine, public la_lapack_orthogonal_factors_ql::la_sgelqt3 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

SGELQT3: recursively computes a LQ factorization of a real M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.

Here is the call graph for this function:

◆ la_sgemlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgemlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) t,
integer(ilp), intent(in) tsize,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (SGELQ)

Here is the call graph for this function:

◆ la_sgemlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgemlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
real(sp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
real(sp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

DGEMLQT overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**T generated using the compact WY representation as returned by SGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_sgeql2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgeql2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(out) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

SGEQL2: computes a QL factorization of a real m by n matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_sgeqlf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sgeqlf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(out) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SGEQLF: computes a QL factorization of a real M-by-N matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_slamswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_slamswlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
real(sp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SLAMSWLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (SLASWLQ)

Here is the call graph for this function:

◆ la_slaswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_slaswlq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SLASWLQ: computes a blocked Tall-Skinny LQ factorization of a real M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.

Here is the call graph for this function:

◆ la_sorg2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sorg2l ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

SORG2L: generates an m by n real matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by SGEQLF.

Here is the call graph for this function:

◆ la_sorgl2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sorgl2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

SORGL2: generates an m by n real matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k) . . . H(2) H(1) as returned by SGELQF.

Here is the call graph for this function:

◆ la_sorglq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sorglq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SORGLQ: generates an M-by-N real matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k) . . . H(2) H(1) as returned by SGELQF.

Here is the call graph for this function:

◆ la_sorgql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sorgql ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SORGQL: generates an M-by-N real matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by SGEQLF.

Here is the call graph for this function:

◆ la_sorm2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sorm2l ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

SORM2L: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T * C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_sorml2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sorml2 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

SORML2: overwrites the general real m by n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**T* C if SIDE = 'L' and TRANS = 'T', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**T if SIDE = 'R' and TRANS = 'T', where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_sormlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sormlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SORMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_sormql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_sormql ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(*), intent(in) tau,
real(sp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

SORMQL: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'T': Q**T * C C * Q**T where Q is a real orthogonal matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by SGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_stplqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_stplqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

STPLQT: computes a blocked LQ factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_stplqt2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_stplqt2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(sp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

STPLQT2: computes a LQ a factorization of a real "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_stpmlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_stpmlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
real(sp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
real(sp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
real(sp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
real(sp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
real(sp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

STPMLQT: applies a real orthogonal matrix Q obtained from a "triangular-pentagonal" real block reflector H to a general real matrix C, which consists of two blocks A and B.

Here is the call graph for this function:

◆ la_wgelq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgelq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(out) t,
integer(ilp), intent(in) tsize,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WGELQ: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_wgelq2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgelq2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(out) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WGELQ2: computes an LQ factorization of a complex m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.

Here is the call graph for this function:

◆ la_wgelqf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgelqf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(out) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WGELQF: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_wgelqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgelqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WGELQT: computes a blocked LQ factorization of a complex M-by-N matrix A using the compact WY representation of Q.

Here is the call graph for this function:

◆ la_wgelqt3()

pure recursive subroutine, public la_lapack_orthogonal_factors_ql::la_wgelqt3 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

WGELQT3: recursively computes a LQ factorization of a complex M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.

Here is the call graph for this function:

◆ la_wgemlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgemlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) t,
integer(ilp), intent(in) tsize,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (WGELQ)

Here is the call graph for this function:

◆ la_wgemlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgemlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
complex(qp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
complex(qp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WGEMLQT: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'C': Q**H C C Q**H where Q is a complex unitary matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**H generated using the compact WY representation as returned by WGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_wgeql2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgeql2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(out) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WGEQL2: computes a QL factorization of a complex m by n matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_wgeqlf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wgeqlf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(out) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WGEQLF: computes a QL factorization of a complex M-by-N matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_wlamswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wlamswlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
complex(qp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WLAMSWLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (WLASWLQ)

Here is the call graph for this function:

◆ la_wlaswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wlaswlq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WLASWLQ: computes a blocked Tall-Skinny LQ factorization of a complexx M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.

Here is the call graph for this function:

◆ la_wtplqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wtplqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WTPLQT: computes a blocked LQ factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_wtplqt2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wtplqt2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(qp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

WTPLQT2: computes a LQ a factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_wtpmlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wtpmlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
complex(qp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
complex(qp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WTPMLQT: applies a complex unitary matrix Q obtained from a "triangular-pentagonal" complex block reflector H to a general complex matrix C, which consists of two blocks A and B.

Here is the call graph for this function:

◆ la_wung2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wung2l ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WUNG2L: generates an m by n complex matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by WGEQLF.

Here is the call graph for this function:

◆ la_wungl2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wungl2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WUNGL2: generates an m-by-n complex matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF.

Here is the call graph for this function:

◆ la_wunglq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wunglq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WUNGLQ: generates an M-by-N complex matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF.

Here is the call graph for this function:

◆ la_wungql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wungql ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WUNGQL: generates an M-by-N complex matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by WGEQLF.

Here is the call graph for this function:

◆ la_wunm22()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wunm22 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) n1,
integer(ilp), intent(in) n2,
complex(qp), dimension(ldq,*), intent(in) q,
integer(ilp), intent(in) ldq,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )
Here is the call graph for this function:

◆ la_wunm2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wunm2l ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WUNM2L: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by WGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_wunml2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wunml2 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

WUNML2: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_wunmlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wunmlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WUNMLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by WGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_wunmql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_wunmql ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(qp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(qp), dimension(*), intent(in) tau,
complex(qp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(qp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

WUNMQL: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by WGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_zgelq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgelq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(out) t,
integer(ilp), intent(in) tsize,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZGELQ: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_zgelq2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgelq2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(out) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZGELQ2: computes an LQ factorization of a complex m-by-n matrix A: A = ( L 0 ) * Q where: Q is a n-by-n orthogonal matrix; L is a lower-triangular m-by-m matrix; 0 is a m-by-(n-m) zero matrix, if m < n.

Here is the call graph for this function:

◆ la_zgelqf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgelqf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(out) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZGELQF: computes an LQ factorization of a complex M-by-N matrix A: A = ( L 0 ) * Q where: Q is a N-by-N orthogonal matrix; L is a lower-triangular M-by-M matrix; 0 is a M-by-(N-M) zero matrix, if M < N.

Here is the call graph for this function:

◆ la_zgelqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgelqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZGELQT: computes a blocked LQ factorization of a complex M-by-N matrix A using the compact WY representation of Q.

Here is the call graph for this function:

◆ la_zgelqt3()

pure recursive subroutine, public la_lapack_orthogonal_factors_ql::la_zgelqt3 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

ZGELQT3: recursively computes a LQ factorization of a complex M-by-N matrix A, using the compact WY representation of Q. Based on the algorithm of Elmroth and Gustavson, IBM J. Res. Develop. Vol 44 No. 4 July 2000.

Here is the call graph for this function:

◆ la_zgemlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgemlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) t,
integer(ilp), intent(in) tsize,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZGEMLQ: overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (ZGELQ)

Here is the call graph for this function:

◆ la_zgemlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgemlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
complex(dp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
complex(dp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZGEMLQT: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'C': Q**H C C Q**H where Q is a complex unitary matrix defined as the product of K elementary reflectors: Q = H(1) H(2) . . . H(K) = I - V T V**H generated using the compact WY representation as returned by ZGELQT. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_zgeql2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgeql2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(out) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZGEQL2: computes a QL factorization of a complex m by n matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_zgeqlf()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zgeqlf ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(out) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZGEQLF: computes a QL factorization of a complex M-by-N matrix A: A = Q * L.

Here is the call graph for this function:

◆ la_zlamswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zlamswlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
complex(dp), dimension(lda,*), intent(in) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZLAMSWLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of blocked elementary reflectors computed by short wide LQ factorization (ZLASWLQ)

Here is the call graph for this function:

◆ la_zlaswlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zlaswlq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) mb,
integer(ilp), intent(in) nb,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZLASWLQ: computes a blocked Tall-Skinny LQ factorization of a complexx M-by-N matrix A for M <= N: A = ( L 0 ) * Q, where: Q is a n-by-N orthogonal matrix, stored on exit in an implicit form in the elements above the diagonal of the array A and in the elements of the array T; L is a lower-triangular M-by-M matrix stored on exit in the elements on and below the diagonal of the array A. 0 is a M-by-(N-M) zero matrix, if M < N, and is not stored.

Here is the call graph for this function:

◆ la_ztplqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_ztplqt ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZTPLQT: computes a blocked LQ factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_ztplqt2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_ztplqt2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) l,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(dp), dimension(ldt,*), intent(out) t,
integer(ilp), intent(in) ldt,
integer(ilp), intent(out) info )

ZTPLQT2: computes a LQ a factorization of a complex "triangular-pentagonal" matrix C, which is composed of a triangular block A and pentagonal block B, using the compact WY representation for Q.

Here is the call graph for this function:

◆ la_ztpmlqt()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_ztpmlqt ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
integer(ilp), intent(in) l,
integer(ilp), intent(in) mb,
complex(dp), dimension(ldv,*), intent(in) v,
integer(ilp), intent(in) ldv,
complex(dp), dimension(ldt,*), intent(in) t,
integer(ilp), intent(in) ldt,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(ldb,*), intent(inout) b,
integer(ilp), intent(in) ldb,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZTPMLQT: applies a complex unitary matrix Q obtained from a "triangular-pentagonal" complex block reflector H to a general complex matrix C, which consists of two blocks A and B.

Here is the call graph for this function:

◆ la_zung2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zung2l ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZUNG2L: generates an m by n complex matrix Q with orthonormal columns, which is defined as the last n columns of a product of k elementary reflectors of order m Q = H(k) . . . H(2) H(1) as returned by ZGEQLF.

Here is the call graph for this function:

◆ la_zungl2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zungl2 ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZUNGL2: generates an m-by-n complex matrix Q with orthonormal rows, which is defined as the first m rows of a product of k elementary reflectors of order n Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF.

Here is the call graph for this function:

◆ la_zunglq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zunglq ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZUNGLQ: generates an M-by-N complex matrix Q with orthonormal rows, which is defined as the first M rows of a product of K elementary reflectors of order N Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF.

Here is the call graph for this function:

◆ la_zungql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zungql ( integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZUNGQL: generates an M-by-N complex matrix Q with orthonormal columns, which is defined as the last N columns of a product of K elementary reflectors of order M Q = H(k) . . . H(2) H(1) as returned by ZGEQLF.

Here is the call graph for this function:

◆ la_zunm22()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zunm22 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) n1,
integer(ilp), intent(in) n2,
complex(dp), dimension(ldq,*), intent(in) q,
integer(ilp), intent(in) ldq,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )
Here is the call graph for this function:

◆ la_zunm2l()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zunm2l ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZUNM2L: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by ZGEQLF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_zunml2()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zunml2 ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(out) info )

ZUNML2: overwrites the general complex m-by-n matrix C with Q * C if SIDE = 'L' and TRANS = 'N', or Q**H* C if SIDE = 'L' and TRANS = 'C', or C * Q if SIDE = 'R' and TRANS = 'N', or C * Q**H if SIDE = 'R' and TRANS = 'C', where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF. Q is of order m if SIDE = 'L' and of order n if SIDE = 'R'.

Here is the call graph for this function:

◆ la_zunmlq()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zunmlq ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZUNMLQ: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k)**H . . . H(2)**H H(1)**H as returned by ZGELQF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function:

◆ la_zunmql()

pure subroutine, public la_lapack_orthogonal_factors_ql::la_zunmql ( character, intent(in) side,
character, intent(in) trans,
integer(ilp), intent(in) m,
integer(ilp), intent(in) n,
integer(ilp), intent(in) k,
complex(dp), dimension(lda,*), intent(inout) a,
integer(ilp), intent(in) lda,
complex(dp), dimension(*), intent(in) tau,
complex(dp), dimension(ldc,*), intent(inout) c,
integer(ilp), intent(in) ldc,
complex(dp), dimension(*), intent(out) work,
integer(ilp), intent(in) lwork,
integer(ilp), intent(out) info )

ZUNMQL: overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': Q**H * C C * Q**H where Q is a complex unitary matrix defined as the product of k elementary reflectors Q = H(k) . . . H(2) H(1) as returned by ZGEQLF. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.

Here is the call graph for this function: