209 COMPLEX A( LDA, * ), E( * )
216 parameter( zero = ( 0.0e+0, 0.0e+0 ) )
225 LOGICAL UPPER, CONVERT
231 upper = lsame( uplo,
'U' )
232 convert = lsame( way,
'C' )
233 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
235 ELSE IF( .NOT.convert .AND. .NOT.lsame( way,
'R' ) )
THEN
237 ELSE IF( n.LT.0 )
THEN
239 ELSE IF( lda.LT.max( 1, n ) )
THEN
244 CALL xerbla(
'CSYCONVF_ROOK', -info )
270 IF( ipiv( i ).LT.0 )
THEN
288 IF( ipiv( i ).GT.0 )
THEN
297 CALL cswap( n-i, a( i, i+1 ), lda,
298 $ a( ip, i+1 ), lda )
313 CALL cswap( n-i, a( i, i+1 ), lda,
314 $ a( ip, i+1 ), lda )
316 IF( ip2.NE.(i-1) )
THEN
317 CALL cswap( n-i, a( i-1, i+1 ), lda,
318 $ a( ip2, i+1 ), lda )
339 IF( ipiv( i ).GT.0 )
THEN
348 CALL cswap( n-i, a( ip, i+1 ), lda,
364 IF( ip2.NE.(i-1) )
THEN
365 CALL cswap( n-i, a( ip2, i+1 ), lda,
366 $ a( i-1, i+1 ), lda )
369 CALL cswap( n-i, a( ip, i+1 ), lda,
384 IF( ipiv( i ).LT.0 )
THEN
411 IF( i.LT.n .AND. ipiv(i).LT.0 )
THEN
429 IF( ipiv( i ).GT.0 )
THEN
438 CALL cswap( i-1, a( i, 1 ), lda,
454 CALL cswap( i-1, a( i, 1 ), lda,
457 IF( ip2.NE.(i+1) )
THEN
458 CALL cswap( i-1, a( i+1, 1 ), lda,
480 IF( ipiv( i ).GT.0 )
THEN
489 CALL cswap( i-1, a( ip, 1 ), lda,
505 IF( ip2.NE.(i+1) )
THEN
506 CALL cswap( i-1, a( ip2, 1 ), lda,
510 CALL cswap( i-1, a( ip, 1 ), lda,
524 DO WHILE ( i.LE.n-1 )
525 IF( ipiv( i ).LT.0 )
THEN
526 a( i + 1, i ) = e( i )
subroutine csyconvf_rook(uplo, way, n, a, lda, e, ipiv, info)
CSYCONVF_ROOK