55* Online html documentation available at
66* http://www.netlib.org/lapack/explore-html/
77*
8- * > \htmlonly
98* > Download SLAQZ0 + dependencies
109* > <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/slaqz0.f">
1110* > [TGZ]</a>
1211* > <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/slaqz0.f">
1312* > [ZIP]</a>
1413* > <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/slaqz0.f">
1514* > [TXT]</a>
16- * > \endhtmlonly
1715*
1816* Definition:
1917* ===========
297295* > \ingroup laqz0
298296* >
299297* =====================================================================
300- RECURSIVE SUBROUTINE SLAQZ0 ( WANTS , WANTQ , WANTZ , N , ILO , IHI , A ,
298+ RECURSIVE SUBROUTINE SLAQZ0 ( WANTS , WANTQ , WANTZ , N , ILO , IHI ,
299+ $ A ,
301300 $ LDA , B , LDB , ALPHAR , ALPHAI , BETA ,
302301 $ Q , LDQ , Z , LDZ , WORK , LWORK , REC ,
303302 $ INFO )
@@ -431,12 +430,14 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
431430 NSR = MAX ( 2 , NSR- MOD ( NSR, 2 ) )
432431
433432 RCOST = ILAENV( 17 , ' SLAQZ0' , JBCMPZ, N, ILO, IHI, LWORK )
434- ITEMP1 = INT ( NSR/ SQRT ( 1+2 * NSR/ ( REAL ( RCOST )/ 100 * N ) ) )
433+ ITEMP1 = INT ( REAL ( NSR )/ SQRT ( 1+2 * REAL ( NSR )/
434+ $ ( REAL ( RCOST )/ 100 * REAL ( N ) ) ) )
435435 ITEMP1 = ( ( ITEMP1-1 )/ 4 )* 4+4
436436 NBR = NSR+ ITEMP1
437437
438438 IF ( N .LT. NMIN .OR. REC .GE. 2 ) THEN
439- CALL SHGEQZ( WANTS, WANTQ, WANTZ, N, ILO, IHI, A, LDA, B, LDB,
439+ CALL SHGEQZ( WANTS, WANTQ, WANTZ, N, ILO, IHI, A, LDA, B,
440+ $ LDB,
440441 $ ALPHAR, ALPHAI, BETA, Q, LDQ, Z, LDZ, WORK,
441442 $ LWORK, INFO )
442443 RETURN
@@ -448,7 +449,8 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
448449
449450* Workspace query to slaqz3
450451 NW = MAX ( NWR, NMIN )
451- CALL SLAQZ3( ILSCHUR, ILQ, ILZ, N, ILO, IHI, NW, A, LDA, B, LDB,
452+ CALL SLAQZ3( ILSCHUR, ILQ, ILZ, N, ILO, IHI, NW, A, LDA, B,
453+ $ LDB,
452454 $ Q, LDQ, Z, LDZ, N_UNDEFLATED, N_DEFLATED, ALPHAR,
453455 $ ALPHAI, BETA, WORK, NW, WORK, NW, WORK, - 1 , REC,
454456 $ AED_INFO )
@@ -467,14 +469,16 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
467469 INFO = - 19
468470 END IF
469471 IF ( INFO.NE. 0 ) THEN
470- CALL XERBLA( ' SLAQZ0' , INFO )
472+ CALL XERBLA( ' SLAQZ0' , - INFO )
471473 RETURN
472474 END IF
473475*
474476* Initialize Q and Z
475477*
476- IF ( IWANTQ.EQ. 3 ) CALL SLASET( ' FULL' , N, N, ZERO, ONE, Q, LDQ )
477- IF ( IWANTZ.EQ. 3 ) CALL SLASET( ' FULL' , N, N, ZERO, ONE, Z, LDZ )
478+ IF ( IWANTQ.EQ. 3 ) CALL SLASET( ' FULL' , N, N, ZERO, ONE, Q,
479+ $ LDQ )
480+ IF ( IWANTZ.EQ. 3 ) CALL SLASET( ' FULL' , N, N, ZERO, ONE, Z,
481+ $ LDZ )
478482
479483* Get machine constants
480484 SAFMIN = SLAMCH( ' SAFE MINIMUM' )
@@ -567,17 +571,20 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
567571* to the top and deflate it
568572
569573 DO K2 = K, ISTART2+1 , - 1
570- CALL SLARTG( B( K2-1 , K2 ), B( K2-1 , K2-1 ), C1, S1,
574+ CALL SLARTG( B( K2-1 , K2 ), B( K2-1 , K2-1 ), C1,
575+ $ S1,
571576 $ TEMP )
572577 B( K2-1 , K2 ) = TEMP
573578 B( K2-1 , K2-1 ) = ZERO
574579
575580 CALL SROT( K2-2 - ISTARTM+1 , B( ISTARTM, K2 ), 1 ,
576581 $ B( ISTARTM, K2-1 ), 1 , C1, S1 )
577- CALL SROT( MIN ( K2+1 , ISTOP )- ISTARTM+1 , A( ISTARTM,
582+ CALL SROT( MIN ( K2+1 , ISTOP )- ISTARTM+1 ,
583+ $ A( ISTARTM,
578584 $ K2 ), 1 , A( ISTARTM, K2-1 ), 1 , C1, S1 )
579585 IF ( ILZ ) THEN
580- CALL SROT( N, Z( 1 , K2 ), 1 , Z( 1 , K2-1 ), 1 , C1,
586+ CALL SROT( N, Z( 1 , K2 ), 1 , Z( 1 , K2-1 ), 1 ,
587+ $ C1,
581588 $ S1 )
582589 END IF
583590
@@ -587,9 +594,11 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
587594 A( K2, K2-1 ) = TEMP
588595 A( K2+1 , K2-1 ) = ZERO
589596
590- CALL SROT( ISTOPM- K2+1 , A( K2, K2 ), LDA, A( K2+1 ,
597+ CALL SROT( ISTOPM- K2+1 , A( K2, K2 ), LDA,
598+ $ A( K2+1 ,
591599 $ K2 ), LDA, C1, S1 )
592- CALL SROT( ISTOPM- K2+1 , B( K2, K2 ), LDB, B( K2+1 ,
600+ CALL SROT( ISTOPM- K2+1 , B( K2, K2 ), LDB,
601+ $ B( K2+1 ,
593602 $ K2 ), LDB, C1, S1 )
594603 IF ( ILQ ) THEN
595604 CALL SROT( N, Q( 1 , K2 ), 1 , Q( 1 , K2+1 ), 1 ,
@@ -651,7 +660,8 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
651660*
652661* Time for AED
653662*
654- CALL SLAQZ3( ILSCHUR, ILQ, ILZ, N, ISTART2, ISTOP, NW, A, LDA,
663+ CALL SLAQZ3( ILSCHUR, ILQ, ILZ, N, ISTART2, ISTOP, NW, A,
664+ $ LDA,
655665 $ B, LDB, Q, LDQ, Z, LDZ, N_UNDEFLATED, N_DEFLATED,
656666 $ ALPHAR, ALPHAI, BETA, WORK, NW, WORK( NW** 2+1 ),
657667 $ NW, WORK( 2 * NW** 2+1 ), LWORK-2 * NW** 2 , REC,
@@ -721,7 +731,8 @@ RECURSIVE SUBROUTINE SLAQZ0( WANTS, WANTQ, WANTZ, N, ILO, IHI, A,
721731*
722732* Time for a QZ sweep
723733*
724- CALL SLAQZ4( ILSCHUR, ILQ, ILZ, N, ISTART2, ISTOP, NS, NBLOCK,
734+ CALL SLAQZ4( ILSCHUR, ILQ, ILZ, N, ISTART2, ISTOP, NS,
735+ $ NBLOCK,
725736 $ ALPHAR( SHIFTPOS ), ALPHAI( SHIFTPOS ),
726737 $ BETA( SHIFTPOS ), A, LDA, B, LDB, Q, LDQ, Z, LDZ,
727738 $ WORK, NBLOCK, WORK( NBLOCK** 2+1 ), NBLOCK,
0 commit comments