Skip to content

Commit 4cd5779

Browse files
committed
Corrections to claqr4.f and slaqr4.f code, and update comments in other xLAQR routines
1 parent 799ef93 commit 4cd5779

File tree

8 files changed

+12
-12
lines changed

8 files changed

+12
-12
lines changed

SRC/claqr0.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,7 @@ SUBROUTINE CLAQR0( WANTT, WANTZ, N, ILO, IHI, H, LDH, W, ILOZ,
555555
*
556556
* ==== Got NS/2 or fewer shifts? Use CLAQR4 or
557557
* . CLAHQR on a trailing principal submatrix to
558-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
558+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
559559
* . there is enough space below the subdiagonal
560560
* . to fit an NS-by-NS scratch array.) ====
561561
*

SRC/claqr4.f

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ SUBROUTINE CLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, W, ILOZ,
377377
* . and greater than or equal to two as required. ====
378378
*
379379
NSR = ILAENV( 15, 'CLAQR4', JBCMPZ, N, ILO, IHI, LWORK )
380-
NSR = MIN( NSR, ( N+6 ) / 9, IHI-ILO )
380+
NSR = MIN( NSR, ( N-3 ) / 6, IHI-ILO )
381381
NSR = MAX( 2, NSR-MOD( NSR, 2 ) )
382382
*
383383
* ==== Estimate optimal workspace ====
@@ -425,7 +425,7 @@ SUBROUTINE CLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, W, ILOZ,
425425
* ==== NSMAX = the Largest number of simultaneous shifts
426426
* . for which there is sufficient workspace. ====
427427
*
428-
NSMAX = MIN( ( N+6 ) / 9, 2*LWORK / 3 )
428+
NSMAX = MIN( ( N-3 ) / 6, 2*LWORK / 3 )
429429
NSMAX = NSMAX - MOD( NSMAX, 2 )
430430
*
431431
* ==== NDFL: an iteration count restarted at deflation. ====
@@ -565,7 +565,7 @@ SUBROUTINE CLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, W, ILOZ,
565565
*
566566
* ==== Got NS/2 or fewer shifts? Use CLAHQR
567567
* . on a trailing principal submatrix to
568-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
568+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
569569
* . there is enough space below the subdiagonal
570570
* . to fit an NS-by-NS scratch array.) ====
571571
*

SRC/dlaqr0.f

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ SUBROUTINE DLAQR0( WANTT, WANTZ, N, ILO, IHI, H, LDH, WR, WI,
359359
END IF
360360
*
361361
* ==== NWR = recommended deflation window size. At this
362-
* . point, N .GT. NTINY = 14, so there is enough
362+
* . point, N .GT. NTINY = 15, so there is enough
363363
* . subdiagonal workspace for NWR.GE.2 as required.
364364
* . (In fact, there is enough subdiagonal space for
365365
* . NWR.GE.4.) ====
@@ -573,7 +573,7 @@ SUBROUTINE DLAQR0( WANTT, WANTZ, N, ILO, IHI, H, LDH, WR, WI,
573573
*
574574
* ==== Got NS/2 or fewer shifts? Use DLAQR4 or
575575
* . DLAHQR on a trailing principal submatrix to
576-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
576+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
577577
* . there is enough space below the subdiagonal
578578
* . to fit an NS-by-NS scratch array.) ====
579579
*

SRC/dlaqr4.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -579,7 +579,7 @@ SUBROUTINE DLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, WR, WI,
579579
*
580580
* ==== Got NS/2 or fewer shifts? Use DLAHQR
581581
* . on a trailing principal submatrix to
582-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
582+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
583583
* . there is enough space below the subdiagonal
584584
* . to fit an NS-by-NS scratch array.) ====
585585
*

SRC/slaqr0.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,7 @@ SUBROUTINE SLAQR0( WANTT, WANTZ, N, ILO, IHI, H, LDH, WR, WI,
572572
*
573573
* ==== Got NS/2 or fewer shifts? Use SLAQR4 or
574574
* . SLAHQR on a trailing principal submatrix to
575-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
575+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
576576
* . there is enough space below the subdiagonal
577577
* . to fit an NS-by-NS scratch array.) ====
578578
*

SRC/slaqr4.f

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -582,7 +582,7 @@ SUBROUTINE SLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, WR, WI,
582582
*
583583
* ==== Got NS/2 or fewer shifts? Use SLAHQR
584584
* . on a trailing principal submatrix to
585-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
585+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
586586
* . there is enough space below the subdiagonal
587587
* . to fit an NS-by-NS scratch array.) ====
588588
*
@@ -697,7 +697,7 @@ SUBROUTINE SLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, WR, WI,
697697
* . (NVE-by-KDU) vertical work WV arrow along
698698
* . the left-hand-edge. ====
699699
*
700-
KDU = 3*NS - 3
700+
KDU = 2*NS
701701
KU = N - KDU + 1
702702
KWH = KDU + 1
703703
NHO = ( N-KDU+1-4 ) - ( KDU+1 ) + 1

SRC/zlaqr0.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -557,7 +557,7 @@ SUBROUTINE ZLAQR0( WANTT, WANTZ, N, ILO, IHI, H, LDH, W, ILOZ,
557557
*
558558
* ==== Got NS/2 or fewer shifts? Use ZLAQR4 or
559559
* . ZLAHQR on a trailing principal submatrix to
560-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
560+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
561561
* . there is enough space below the subdiagonal
562562
* . to fit an NS-by-NS scratch array.) ====
563563
*

SRC/zlaqr4.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -563,7 +563,7 @@ SUBROUTINE ZLAQR4( WANTT, WANTZ, N, ILO, IHI, H, LDH, W, ILOZ,
563563
*
564564
* ==== Got NS/2 or fewer shifts? Use ZLAHQR
565565
* . on a trailing principal submatrix to
566-
* . get more. (Since NS.LE.NSMAX.LE.(N+6)/9,
566+
* . get more. (Since NS.LE.NSMAX.LE.(N-3)/6,
567567
* . there is enough space below the subdiagonal
568568
* . to fit an NS-by-NS scratch array.) ====
569569
*

0 commit comments

Comments
 (0)