123 REAL FUNCTION cla_herpvgrw( UPLO, N, INFO, A, LDA, AF, LDAF, IPIV,
133 INTEGER N, INFO, LDA, LDAF
137 COMPLEX A( lda, * ), AF( ldaf, * )
144 INTEGER NCOLS, I, J, K, KP
145 REAL AMAX, UMAX, RPVGRW, TMP
153 INTRINSIC abs,
REAL, AIMAG, MAX, MIN
159 cabs1( zdum ) = abs(
REAL ( ZDUM ) ) + abs( AIMAG ( zdum ) )
163 upper = lsame(
'Upper', uplo )
164 IF ( info.EQ.0 )
THEN
186 work( n+i ) = max( cabs1( a( i,j ) ), work( n+i ) )
187 work( n+j ) = max( cabs1( a( i,j ) ), work( n+j ) )
193 work( n+i ) = max( cabs1( a( i, j ) ), work( n+i ) )
194 work( n+j ) = max( cabs1( a( i, j ) ), work( n+j ) )
208 DO WHILE ( k .LT. ncols .AND. k.GT.0 )
209 IF ( ipiv( k ).GT.0 )
THEN
212 IF ( kp .NE. k )
THEN
214 work( n+k ) = work( n+kp )
218 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
225 work( n+k-1 ) = work( n+kp )
228 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
230 $ max( cabs1( af( i, k-1 ) ), work( k-1 ) )
232 work( k ) = max( cabs1( af( k, k ) ), work( k ) )
237 DO WHILE ( k .LE. n )
238 IF ( ipiv( k ).GT.0 )
THEN
240 IF ( kp .NE. k )
THEN
242 work( n+k ) = work( n+kp )
249 work( n+k ) = work( n+kp )
256 DO WHILE ( k .LE. ncols )
257 IF ( ipiv( k ).GT.0 )
THEN
260 IF ( kp .NE. k )
THEN
262 work( n+k ) = work( n+kp )
266 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
273 work( n+k+1 ) = work( n+kp )
276 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
278 $ max( cabs1( af( i, k+1 ) ) , work( k+1 ) )
280 work(k) = max( cabs1( af( k, k ) ), work( k ) )
285 DO WHILE ( k .GE. 1 )
286 IF ( ipiv( k ).GT.0 )
THEN
288 IF ( kp .NE. k )
THEN
290 work( n+k ) = work( n+kp )
297 work( n+k ) = work( n+kp )
315 IF ( umax /= 0.0 )
THEN
316 rpvgrw = min( amax / umax, rpvgrw )
323 IF ( umax /= 0.0 )
THEN
324 rpvgrw = min( amax / umax, rpvgrw )
real function cla_herpvgrw(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK)
CLA_HERPVGRW
subroutine claset(UPLO, M, N, ALPHA, BETA, A, LDA)
CLASET initializes the off-diagonal elements and the diagonal elements of a matrix to given values...