version 1.2, 2017/06/17 11:06:54
|
version 1.3, 2018/05/29 06:55:24
|
Line 23
|
Line 23
|
*> |
*> |
*> SIDE = 'L' SIDE = 'R' |
*> SIDE = 'L' SIDE = 'R' |
*> TRANS = 'N': Q * C C * Q |
*> TRANS = 'N': Q * C C * Q |
*> TRANS = 'T': Q**T * C C * Q**T |
*> TRANS = 'C': Q**H * C C * Q**H |
*> where Q is a real orthogonal matrix defined as the product of blocked |
*> where Q is a real orthogonal matrix defined as the product of blocked |
*> elementary reflectors computed by short wide LQ |
*> elementary reflectors computed by short wide LQ |
*> factorization (ZLASWLQ) |
*> factorization (ZLASWLQ) |
Line 35
|
Line 35
|
*> \param[in] SIDE |
*> \param[in] SIDE |
*> \verbatim |
*> \verbatim |
*> SIDE is CHARACTER*1 |
*> SIDE is CHARACTER*1 |
*> = 'L': apply Q or Q**T from the Left; |
*> = 'L': apply Q or Q**H from the Left; |
*> = 'R': apply Q or Q**T from the Right. |
*> = 'R': apply Q or Q**H from the Right. |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] TRANS |
*> \param[in] TRANS |
*> \verbatim |
*> \verbatim |
*> TRANS is CHARACTER*1 |
*> TRANS is CHARACTER*1 |
*> = 'N': No transpose, apply Q; |
*> = 'N': No transpose, apply Q; |
*> = 'T': Transpose, apply Q**T. |
*> = 'C': Conjugate Transpose, apply Q**H. |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] M |
*> \param[in] M |
*> \verbatim |
*> \verbatim |
*> M is INTEGER |
*> M is INTEGER |
*> The number of rows of the matrix A. M >=0. |
*> The number of rows of the matrix C. M >=0. |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] N |
*> \param[in] N |
Line 88
|
Line 88
|
*> |
*> |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in,out] A |
*> \param[in] A |
*> \verbatim |
*> \verbatim |
*> A is COMPLEX*16 array, dimension (LDA,K) |
*> A is COMPLEX*16 array, dimension |
|
*> (LDA,M) if SIDE = 'L', |
|
*> (LDA,N) if SIDE = 'R' |
*> The i-th row must contain the vector which defines the blocked |
*> The i-th row must contain the vector which defines the blocked |
*> elementary reflector H(i), for i = 1,2,...,k, as returned by |
*> elementary reflector H(i), for i = 1,2,...,k, as returned by |
*> DLASWLQ in the first k rows of its array argument A. |
*> ZLASWLQ in the first k rows of its array argument A. |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] LDA |
*> \param[in] LDA |
Line 123
|
Line 125
|
*> \verbatim |
*> \verbatim |
*> C is COMPLEX*16 array, dimension (LDC,N) |
*> C is COMPLEX*16 array, dimension (LDC,N) |
*> On entry, the M-by-N matrix C. |
*> On entry, the M-by-N matrix C. |
*> On exit, C is overwritten by Q*C or Q**T*C or C*Q**T or C*Q. |
*> On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q. |
*> \endverbatim |
*> \endverbatim |
*> |
*> |
*> \param[in] LDC |
*> \param[in] LDC |
Line 200
|
Line 202
|
SUBROUTINE ZLAMSWLQ( SIDE, TRANS, M, N, K, MB, NB, A, LDA, T, |
SUBROUTINE ZLAMSWLQ( SIDE, TRANS, M, N, K, MB, NB, A, LDA, T, |
$ LDT, C, LDC, WORK, LWORK, INFO ) |
$ LDT, C, LDC, WORK, LWORK, INFO ) |
* |
* |
* -- LAPACK computational routine (version 3.7.0) -- |
* -- LAPACK computational routine (version 3.7.1) -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* December 2016 |
* June 2017 |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
CHARACTER SIDE, TRANS |
CHARACTER SIDE, TRANS |
INTEGER INFO, LDA, M, N, K, MB, NB, LDT, LWORK, LDC, LW |
INTEGER INFO, LDA, M, N, K, MB, NB, LDT, LWORK, LDC |
* .. |
* .. |
* .. Array Arguments .. |
* .. Array Arguments .. |
COMPLEX*16 A( LDA, * ), WORK( * ), C(LDC, * ), |
COMPLEX*16 A( LDA, * ), WORK( * ), C(LDC, * ), |
Line 219
|
Line 221
|
* .. |
* .. |
* .. Local Scalars .. |
* .. Local Scalars .. |
LOGICAL LEFT, RIGHT, TRAN, NOTRAN, LQUERY |
LOGICAL LEFT, RIGHT, TRAN, NOTRAN, LQUERY |
INTEGER I, II, KK, CTR |
INTEGER I, II, KK, LW, CTR |
* .. |
* .. |
* .. External Functions .. |
* .. External Functions .. |
LOGICAL LSAME |
LOGICAL LSAME |