Skip to content

Commit e85ec96

Browse files
committed
getting testing for SY for Aasen in
1 parent 897af99 commit e85ec96

14 files changed

Lines changed: 1216 additions & 65 deletions

SRC/zhetrf_aa_2stage.f

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -150,9 +150,9 @@
150150
*> \author Univ. of Colorado Denver
151151
*> \author NAG Ltd.
152152
*
153-
*> \date December 2016
153+
*> \date November 2017
154154
*
155-
*> \ingroup complexSYcomputational
155+
*> \ingroup complex16SYcomputational
156156
*
157157
* =====================================================================
158158
SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
@@ -194,10 +194,10 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
194194
* .. External Subroutines ..
195195
EXTERNAL XERBLA, ZCOPY, ZLACGV, ZLACPY,
196196
$ ZLASET, ZGBTRF, ZGEMM, ZGETRF,
197-
$ CHEGST, ZSWAP, ZTRSM
197+
$ ZHEGST, ZSWAP, ZTRSM
198198
* ..
199199
* .. Intrinsic Functions ..
200-
INTRINSIC CONJG, MIN, MAX
200+
INTRINSIC DCONJG, MIN, MAX
201201
* ..
202202
* .. Executable Statements ..
203203
*
@@ -333,7 +333,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
333333
$ ONE, TB( TD+1 + (J*NB)*LDTB ), LDTB-1 )
334334
END IF
335335
IF( J.GT.0 ) THEN
336-
CALL CHEGST( 1, 'Upper', KB,
336+
CALL ZHEGST( 1, 'Upper', KB,
337337
$ TB( TD+1 + (J*NB)*LDTB ), LDTB-1,
338338
$ A( (J-1)*NB+1, J*NB+1 ), LDA, IINFO )
339339
END IF
@@ -345,7 +345,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
345345
$ = REAL( TB( TD+1 + (J*NB+I-1)*LDTB ) )
346346
DO K = I+1, KB
347347
TB( TD+(K-I)+1 + (J*NB+I-1)*LDTB )
348-
$ = CONJG( TB( TD-(K-(I+1)) + (J*NB+K-1)*LDTB ) )
348+
$ = DCONJG( TB( TD-(K-(I+1)) + (J*NB+K-1)*LDTB ) )
349349
END DO
350350
END DO
351351
*
@@ -430,7 +430,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
430430
DO K = 1, NB
431431
DO I = 1, KB
432432
TB( TD-NB+K-I+1 + (J*NB+NB+I-1)*LDTB )
433-
$ = CONJG( TB( TD+NB+I-K+1 + (J*NB+K-1)*LDTB ) )
433+
$ = DCONJG( TB( TD+NB+I-K+1 + (J*NB+K-1)*LDTB ) )
434434
END DO
435435
END DO
436436
CALL ZLASET( 'Lower', KB, NB, ZERO, ONE,
@@ -531,7 +531,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
531531
$ ONE, TB( TD+1 + (J*NB)*LDTB ), LDTB-1 )
532532
END IF
533533
IF( J.GT.0 ) THEN
534-
CALL CHEGST( 1, 'Lower', KB,
534+
CALL ZHEGST( 1, 'Lower', KB,
535535
$ TB( TD+1 + (J*NB)*LDTB ), LDTB-1,
536536
$ A( J*NB+1, (J-1)*NB+1 ), LDA, IINFO )
537537
END IF
@@ -543,7 +543,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
543543
$ = REAL( TB( TD+1 + (J*NB+I-1)*LDTB ) )
544544
DO K = I+1, KB
545545
TB( TD-(K-(I+1)) + (J*NB+K-1)*LDTB )
546-
$ = CONJG( TB( TD+(K-I)+1 + (J*NB+I-1)*LDTB ) )
546+
$ = DCONJG( TB( TD+(K-I)+1 + (J*NB+I-1)*LDTB ) )
547547
END DO
548548
END DO
549549
*
@@ -605,7 +605,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
605605
DO K = 1, NB
606606
DO I = 1, KB
607607
TB( TD-NB+K-I+1 + (J*NB+NB+I-1)*LDTB )
608-
$ = CONJG( TB( TD+NB+I-K+1 + (J*NB+K-1)*LDTB ) )
608+
$ = DCONJG( TB( TD+NB+I-K+1 + (J*NB+K-1)*LDTB ) )
609609
END DO
610610
END DO
611611
CALL ZLASET( 'Upper', KB, NB, ZERO, ONE,
@@ -645,7 +645,7 @@ SUBROUTINE ZHETRF_AA_2STAGE( UPLO, N, A, LDA, TB, LTB, IPIV,
645645
*
646646
* Apply pivots to previous columns of L
647647
*
648-
c CALL CLASWP( J*NB, A( 1, 1 ), LDA,
648+
c CALL ZLASWP( J*NB, A( 1, 1 ), LDA,
649649
c $ (J+1)*NB+1, (J+1)*NB+KB, IPIV, 1 )
650650
END IF
651651
END DO

TESTING/LIN/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,15 +157,15 @@ set(ZLINTST zchkaa.f
157157
zchkhp.f zchklq.f zchkpb.f
158158
zchkpo.f zchkps.f zchkpp.f zchkpt.f zchkq3.f zchkql.f
159159
zchkqr.f zchkrq.f zchksp.f zchksy.f zchksy_rook.f zchksy_rk.f
160-
zchksy_aa.f
160+
zchksy_aa.f zchksy_aa_2stage.f
161161
zchktb.f
162162
zchktp.f zchktr.f zchktz.f
163163
zdrvgt.f zdrvhe_rook.f zdrvhe_rk.f
164164
zdrvhe_aa.f zdrvhe_aa_2stage.f
165165
zdrvhp.f
166166
zdrvls.f zdrvpb.f zdrvpp.f zdrvpt.f
167167
zdrvsp.f zdrvsy_rook.f zdrvsy_rk.f
168-
zdrvsy_aa.f
168+
zdrvsy_aa.f zdrvsy_aa_2stage.f
169169
zerrgt.f zerrlq.f
170170
zerrls.f zerrps.f zerrql.f zerrqp.f
171171
zerrqr.f zerrrq.f zerrtr.f zerrtz.f

TESTING/LIN/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -185,11 +185,11 @@ ZLINTST = zchkaa.o \
185185
zchkhp.o zchklq.o zchkpb.o \
186186
zchkpo.o zchkps.o zchkpp.o zchkpt.o zchkq3.o zchkql.o \
187187
zchkqr.o zchkrq.o zchksp.o zchksy.o zchksy_rook.o zchksy_rk.o \
188-
zchksy_aa.o zchktb.o \
188+
zchksy_aa.o zchksy_aa_2stage.o zchktb.o \
189189
zchktp.o zchktr.o zchktz.o \
190190
zdrvgt.o zdrvhe_rook.o zdrvhe_rk.o zdrvhe_aa.o zdrvhe_aa_2stage.o zdrvhp.o \
191191
zdrvls.o zdrvpb.o zdrvpp.o zdrvpt.o \
192-
zdrvsp.o zdrvsy_rook.o zdrvsy_rk.o zdrvsy_aa.o \
192+
zdrvsp.o zdrvsy_rook.o zdrvsy_rk.o zdrvsy_aa.o zdrvsy_aa_2stage.o \
193193
zerrgt.o zerrlq.o \
194194
zerrls.o zerrps.o zerrql.o zerrqp.o \
195195
zerrqr.o zerrrq.o zerrtr.o zerrtz.o \

TESTING/LIN/cchkaa.f

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@
5454
*> CHK 10 List types on next line if 0 < NTYPES < 10
5555
*> CHA 10 List types on next line if 0 < NTYPES < 10
5656
*> CH2 10 List types on next line if 0 < NTYPES < 10
57+
*> CSA 11 List types on next line if 0 < NTYPES < 10
58+
*> CS2 11 List types on next line if 0 < NTYPES < 10
5759
*> CHP 10 List types on next line if 0 < NTYPES < 10
5860
*> CSY 11 List types on next line if 0 < NTYPES < 11
5961
*> CSK 11 List types on next line if 0 < NTYPES < 11
@@ -728,7 +730,7 @@ PROGRAM CCHKAA
728730
*
729731
ELSE IF( LSAMEN( 2, C2, 'H2' ) ) THEN
730732
*
731-
* SA: symmetric indefinite matrices,
733+
* H2: Hermitian matrices,
732734
* with partial (Aasen's) pivoting algorithm
733735
*
734736
NTYPES = 10
@@ -886,7 +888,8 @@ PROGRAM CCHKAA
886888
*
887889
ELSE IF( LSAMEN( 2, C2, 'S2' ) ) THEN
888890
*
889-
* SA: symmetric indefinite matrices with Aasen's algorithm,
891+
* S2: symmetric indefinite matrices with Aasen's algorithm
892+
* 2 stage
890893
*
891894
NTYPES = 11
892895
CALL ALAREQ( PATH, NMATS, DOTYPE, NTYPES, NIN, NOUT )

TESTING/LIN/cchksy_aa_2stage.f

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*> \brief \b SCHKSY_AA_2STAGE
1+
*> \brief \b CCHKSY_AA_2STAGE
22
*
33
* =========== DOCUMENTATION ===========
44
*
@@ -16,13 +16,14 @@
1616
* .. Scalar Arguments ..
1717
* LOGICAL TSTERR
1818
* INTEGER NMAX, NN, NNB, NNS, NOUT
19-
* COMPLEX THRESH
19+
* REAL THRESH
2020
* ..
2121
* .. Array Arguments ..
2222
* LOGICAL DOTYPE( * )
2323
* INTEGER IWORK( * ), NBVAL( * ), NSVAL( * ), NVAL( * )
24+
* REAL RWORK( * )
2425
* COMPLEX A( * ), AFAC( * ), AINV( * ), B( * ),
25-
* $ RWORK( * ), WORK( * ), X( * ), XACT( * )
26+
* $ WORK( * ), X( * ), XACT( * )
2627
* ..
2728
*
2829
*
@@ -31,7 +32,7 @@
3132
*>
3233
*> \verbatim
3334
*>
34-
*> SCHKSY_AA_2STAGE tests CSYTRF_AA_2STAGE, -TRS_AA_2STAGE.
35+
*> CCHKSY_AA_2STAGE tests CSYTRF_AA_2STAGE, -TRS_AA_2STAGE.
3536
*> \endverbatim
3637
*
3738
* Arguments:
@@ -83,7 +84,7 @@
8384
*>
8485
*> \param[in] THRESH
8586
*> \verbatim
86-
*> THRESH is COMPLEX
87+
*> THRESH is REAL
8788
*> The threshold value for the test ratios. A result is
8889
*> included in the output file if RESULT >= THRESH. To have
8990
*> every test ratio printed, use THRESH = 0.
@@ -164,8 +165,6 @@
164165
*
165166
*> \date June 2017
166167
*
167-
* @generated from dsytrf_aasen_2stage.f, fortran d -> s, Mon Oct 30 12:03:46 2017
168-
*
169168
*> \ingroup complex_lin
170169
*
171170
* =====================================================================
@@ -196,9 +195,8 @@ SUBROUTINE CCHKSY_AA_2STAGE( DOTYPE, NN, NVAL, NNB, NBVAL, NNS,
196195
* =====================================================================
197196
*
198197
* .. Parameters ..
199-
COMPLEX ZERO, ONE
200-
PARAMETER ( ZERO = ( 0.0E+0, 0.0E+0 ),
201-
$ ONE = ( 1.0E+0, 0.0E+0 ) )
198+
COMPLEX CZERO
199+
PARAMETER ( CZERO = ( 0.0E+0, 0.0E+0 ) )
202200
INTEGER NTYPES
203201
PARAMETER ( NTYPES = 10 )
204202
INTEGER NTESTS
@@ -355,22 +353,22 @@ SUBROUTINE CCHKSY_AA_2STAGE( DOTYPE, NN, NVAL, NNB, NBVAL, NNS,
355353
IF( IUPLO.EQ.1 ) THEN
356354
IOFF = ( IZERO-1 )*LDA
357355
DO 20 I = 1, IZERO - 1
358-
A( IOFF+I ) = ZERO
356+
A( IOFF+I ) = CZERO
359357
20 CONTINUE
360358
IOFF = IOFF + IZERO
361359
DO 30 I = IZERO, N
362-
A( IOFF ) = ZERO
360+
A( IOFF ) = CZERO
363361
IOFF = IOFF + LDA
364362
30 CONTINUE
365363
ELSE
366364
IOFF = IZERO
367365
DO 40 I = 1, IZERO - 1
368-
A( IOFF ) = ZERO
366+
A( IOFF ) = CZERO
369367
IOFF = IOFF + LDA
370368
40 CONTINUE
371369
IOFF = IOFF - IZERO
372370
DO 50 I = IZERO, N
373-
A( IOFF+I ) = ZERO
371+
A( IOFF+I ) = CZERO
374372
50 CONTINUE
375373
END IF
376374
ELSE
@@ -382,7 +380,7 @@ SUBROUTINE CCHKSY_AA_2STAGE( DOTYPE, NN, NVAL, NNB, NBVAL, NNS,
382380
DO 70 J = 1, N
383381
I2 = MIN( J, IZERO )
384382
DO 60 I = 1, I2
385-
A( IOFF+I ) = ZERO
383+
A( IOFF+I ) = CZERO
386384
60 CONTINUE
387385
IOFF = IOFF + LDA
388386
70 CONTINUE
@@ -395,7 +393,7 @@ SUBROUTINE CCHKSY_AA_2STAGE( DOTYPE, NN, NVAL, NNB, NBVAL, NNS,
395393
DO 90 J = 1, N
396394
I1 = MAX( J, IZERO )
397395
DO 80 I = I1, N
398-
A( IOFF+I ) = ZERO
396+
A( IOFF+I ) = CZERO
399397
80 CONTINUE
400398
IOFF = IOFF + LDA
401399
90 CONTINUE

0 commit comments

Comments
 (0)