128 SUBROUTINE cgeqrt2( M, N, A, LDA, T, LDT, INFO )
136 INTEGER INFO, LDA, LDT, M, N
139 COMPLEX A( lda, * ), T( ldt, * )
146 parameter( one = (1.0,0.0), zero = (0.0,0.0) )
162 ELSE IF( n.LT.0 )
THEN
164 ELSE IF( lda.LT.max( 1, m ) )
THEN
166 ELSE IF( ldt.LT.max( 1, n ) )
THEN
170 CALL
xerbla(
'CGEQRT2', -info )
180 CALL
clarfg( m-i+1, a( i, i ), a( min( i+1, m ), i ), 1,
191 CALL
cgemv(
'C',m-i+1, n-i, one, a( i, i+1 ), lda,
192 $ a( i, i ), 1, zero, t( 1, n ), 1 )
196 alpha = -conjg(t( i, 1 ))
197 CALL
cgerc( m-i+1, n-i, alpha, a( i, i ), 1,
198 $ t( 1, n ), 1, a( i, i+1 ), lda )
210 CALL
cgemv(
'C', m-i+1, i-1, alpha, a( i, 1 ), lda,
211 $ a( i, i ), 1, zero, t( 1, i ), 1 )
216 CALL
ctrmv(
'U',
'N',
'N', i-1, t, ldt, t( 1, i ), 1 )
220 t( i, i ) = t( i, 1 )
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine cgeqrt2(M, N, A, LDA, T, LDT, INFO)
CGEQRT2 computes a QR factorization of a general real or complex matrix using the compact WY represen...
subroutine cgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
CGEMV
subroutine clarfg(N, ALPHA, X, INCX, TAU)
CLARFG generates an elementary reflector (Householder matrix).
subroutine ctrmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
CTRMV
subroutine cgerc(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
CGERC