103 SUBROUTINE clauu2( UPLO, N, A, LDA, INFO )
122 parameter( one = ( 1.0e+0, 0.0e+0 ) )
132 EXTERNAL lsame, cdotc
138 INTRINSIC cmplx, max, real
145 upper = lsame( uplo,
'U' )
146 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
148 ELSE IF( n.LT.0 )
THEN
150 ELSE IF( lda.LT.max( 1, n ) )
THEN
154 CALL xerbla(
'CLAUU2', -info )
170 a( i, i ) = aii*aii + real( cdotc( n-i, a( i, i+1 ), lda,
171 $ a( i, i+1 ), lda ) )
172 CALL clacgv( n-i, a( i, i+1 ), lda )
173 CALL cgemv(
'No transpose', i-1, n-i, one, a( 1, i+1 ),
174 $ lda, a( i, i+1 ), lda, cmplx( aii ),
176 CALL clacgv( n-i, a( i, i+1 ), lda )
178 CALL csscal( i, aii, a( 1, i ), 1 )
189 a( i, i ) = aii*aii + real( cdotc( n-i, a( i+1, i ), 1,
191 CALL clacgv( i-1, a( i, 1 ), lda )
192 CALL cgemv(
'Conjugate transpose', n-i, i-1, one,
193 $ a( i+1, 1 ), lda, a( i+1, i ), 1,
194 $ cmplx( aii ), a( i, 1 ), lda )
195 CALL clacgv( i-1, a( i, 1 ), lda )
197 CALL csscal( i, aii, a( i, 1 ), lda )