123 DOUBLE PRECISION FUNCTION zla_syrpvgrw( UPLO, N, INFO, A, LDA, AF,
133 INTEGER N, INFO, LDA, LDAF
136 COMPLEX*16 A( lda, * ), AF( ldaf, * )
137 DOUBLE PRECISION WORK( * )
144 INTEGER NCOLS, I, J, K, KP
145 DOUBLE PRECISION AMAX, UMAX, RPVGRW, TMP
150 INTRINSIC abs,
REAL, DIMAG, MAX, MIN
157 DOUBLE PRECISION CABS1
160 cabs1( zdum ) = abs( dble( zdum ) ) + abs( dimag( zdum ) )
164 upper = lsame(
'Upper', uplo )
165 IF ( info.EQ.0 )
THEN
187 work( n+i ) = max( cabs1( a( i, j ) ), work( n+i ) )
188 work( n+j ) = max( cabs1( a( i, j ) ), work( n+j ) )
194 work( n+i ) = max( cabs1( a( i, j ) ), work( n+i ) )
195 work( n+j ) = max( cabs1( a( i, j ) ), work( n+j ) )
209 DO WHILE ( k .LT. ncols .AND. k.GT.0 )
210 IF ( ipiv( k ).GT.0 )
THEN
213 IF ( kp .NE. k )
THEN
215 work( n+k ) = work( n+kp )
219 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
226 work( n+k-1 ) = work( n+kp )
229 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
231 $ max( cabs1( af( i, k-1 ) ), work( k-1 ) )
233 work( k ) = max( cabs1( af( k, k ) ), work( k ) )
238 DO WHILE ( k .LE. n )
239 IF ( ipiv( k ).GT.0 )
THEN
241 IF ( kp .NE. k )
THEN
243 work( n+k ) = work( n+kp )
250 work( n+k ) = work( n+kp )
257 DO WHILE ( k .LE. ncols )
258 IF ( ipiv( k ).GT.0 )
THEN
261 IF ( kp .NE. k )
THEN
263 work( n+k ) = work( n+kp )
267 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
274 work( n+k+1 ) = work( n+kp )
277 work( k ) = max( cabs1( af( i, k ) ), work( k ) )
279 $ max( cabs1( af( i, k+1 ) ), work( k+1 ) )
281 work( k ) = max( cabs1( af( k, k ) ), work( k ) )
286 DO WHILE ( k .GE. 1 )
287 IF ( ipiv( k ).GT.0 )
THEN
289 IF ( kp .NE. k )
THEN
291 work( n+k ) = work( n+kp )
298 work( n+k ) = work( n+kp )
316 IF ( umax /= 0.0d+0 )
THEN
317 rpvgrw = min( amax / umax, rpvgrw )
324 IF ( umax /= 0.0d+0 )
THEN
325 rpvgrw = min( amax / umax, rpvgrw )
double precision function zla_syrpvgrw(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK)
ZLA_SYRPVGRW computes the reciprocal pivot growth factor norm(A)/norm(U) for a symmetric indefinite m...
logical function lsame(CA, CB)
LSAME