mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Update BLAS API unit tests
This commit is contained in:
@@ -1,68 +1,114 @@
|
||||
*> \brief \b CBLAT2
|
||||
*
|
||||
* =========== DOCUMENTATION ===========
|
||||
*
|
||||
* Online html documentation available at
|
||||
* http://www.netlib.org/lapack/explore-html/
|
||||
*
|
||||
* Definition:
|
||||
* ===========
|
||||
*
|
||||
* PROGRAM CBLAT2
|
||||
*
|
||||
*
|
||||
*> \par Purpose:
|
||||
* =============
|
||||
*>
|
||||
*> \verbatim
|
||||
*>
|
||||
*> Test program for the COMPLEX Level 2 Blas.
|
||||
*>
|
||||
*> The program must be driven by a short data file. The first 18 records
|
||||
*> of the file are read using list-directed input, the last 17 records
|
||||
*> are read using the format ( A6, L2 ). An annotated example of a data
|
||||
*> file can be obtained by deleting the first 3 characters from the
|
||||
*> following 35 lines:
|
||||
*> 'cblat2.out' NAME OF SUMMARY OUTPUT FILE
|
||||
*> 6 UNIT NUMBER OF SUMMARY FILE
|
||||
*> 'CBLA2T.SNAP' NAME OF SNAPSHOT OUTPUT FILE
|
||||
*> -1 UNIT NUMBER OF SNAPSHOT FILE (NOT USED IF .LT. 0)
|
||||
*> F LOGICAL FLAG, T TO REWIND SNAPSHOT FILE AFTER EACH RECORD.
|
||||
*> F LOGICAL FLAG, T TO STOP ON FAILURES.
|
||||
*> T LOGICAL FLAG, T TO TEST ERROR EXITS.
|
||||
*> 16.0 THRESHOLD VALUE OF TEST RATIO
|
||||
*> 6 NUMBER OF VALUES OF N
|
||||
*> 0 1 2 3 5 9 VALUES OF N
|
||||
*> 4 NUMBER OF VALUES OF K
|
||||
*> 0 1 2 4 VALUES OF K
|
||||
*> 4 NUMBER OF VALUES OF INCX AND INCY
|
||||
*> 1 2 -1 -2 VALUES OF INCX AND INCY
|
||||
*> 3 NUMBER OF VALUES OF ALPHA
|
||||
*> (0.0,0.0) (1.0,0.0) (0.7,-0.9) VALUES OF ALPHA
|
||||
*> 3 NUMBER OF VALUES OF BETA
|
||||
*> (0.0,0.0) (1.0,0.0) (1.3,-1.1) VALUES OF BETA
|
||||
*> CGEMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CGBMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHEMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHBMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHPMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CTRMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CTBMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CTPMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CTRSV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CTBSV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CTPSV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CGERC T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CGERU T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHER T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHPR T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHER2 T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*> CHPR2 T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*>
|
||||
*> Further Details
|
||||
*> ===============
|
||||
*>
|
||||
*> See:
|
||||
*>
|
||||
*> Dongarra J. J., Du Croz J. J., Hammarling S. and Hanson R. J..
|
||||
*> An extended set of Fortran Basic Linear Algebra Subprograms.
|
||||
*>
|
||||
*> Technical Memoranda Nos. 41 (revision 3) and 81, Mathematics
|
||||
*> and Computer Science Division, Argonne National Laboratory,
|
||||
*> 9700 South Cass Avenue, Argonne, Illinois 60439, US.
|
||||
*>
|
||||
*> Or
|
||||
*>
|
||||
*> NAG Technical Reports TR3/87 and TR4/87, Numerical Algorithms
|
||||
*> Group Ltd., NAG Central Office, 256 Banbury Road, Oxford
|
||||
*> OX2 7DE, UK, and Numerical Algorithms Group Inc., 1101 31st
|
||||
*> Street, Suite 100, Downers Grove, Illinois 60515-1263, USA.
|
||||
*>
|
||||
*>
|
||||
*> -- Written on 10-August-1987.
|
||||
*> Richard Hanson, Sandia National Labs.
|
||||
*> Jeremy Du Croz, NAG Central Office.
|
||||
*>
|
||||
*> 10-9-00: Change STATUS='NEW' to 'UNKNOWN' so that the testers
|
||||
*> can be run multiple times without deleting generated
|
||||
*> output files (susan)
|
||||
*> \endverbatim
|
||||
*
|
||||
* Authors:
|
||||
* ========
|
||||
*
|
||||
*> \author Univ. of Tennessee
|
||||
*> \author Univ. of California Berkeley
|
||||
*> \author Univ. of Colorado Denver
|
||||
*> \author NAG Ltd.
|
||||
*
|
||||
*> \date April 2012
|
||||
*
|
||||
*> \ingroup complex_blas_testing
|
||||
*
|
||||
* =====================================================================
|
||||
PROGRAM CBLAT2
|
||||
*
|
||||
* Test program for the COMPLEX Level 2 Blas.
|
||||
* -- Reference BLAS test routine (version 3.4.1) --
|
||||
* -- Reference BLAS is a software package provided by Univ. of Tennessee, --
|
||||
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
|
||||
* April 2012
|
||||
*
|
||||
* The program must be driven by a short data file. The first 18 records
|
||||
* of the file are read using list-directed input, the last 17 records
|
||||
* are read using the format ( A6, L2 ). An annotated example of a data
|
||||
* file can be obtained by deleting the first 3 characters from the
|
||||
* following 35 lines:
|
||||
* 'CBLAT2.SUMM' NAME OF SUMMARY OUTPUT FILE
|
||||
* 6 UNIT NUMBER OF SUMMARY FILE
|
||||
* 'CBLA2T.SNAP' NAME OF SNAPSHOT OUTPUT FILE
|
||||
* -1 UNIT NUMBER OF SNAPSHOT FILE (NOT USED IF .LT. 0)
|
||||
* F LOGICAL FLAG, T TO REWIND SNAPSHOT FILE AFTER EACH RECORD.
|
||||
* F LOGICAL FLAG, T TO STOP ON FAILURES.
|
||||
* T LOGICAL FLAG, T TO TEST ERROR EXITS.
|
||||
* 16.0 THRESHOLD VALUE OF TEST RATIO
|
||||
* 6 NUMBER OF VALUES OF N
|
||||
* 0 1 2 3 5 9 VALUES OF N
|
||||
* 4 NUMBER OF VALUES OF K
|
||||
* 0 1 2 4 VALUES OF K
|
||||
* 4 NUMBER OF VALUES OF INCX AND INCY
|
||||
* 1 2 -1 -2 VALUES OF INCX AND INCY
|
||||
* 3 NUMBER OF VALUES OF ALPHA
|
||||
* (0.0,0.0) (1.0,0.0) (0.7,-0.9) VALUES OF ALPHA
|
||||
* 3 NUMBER OF VALUES OF BETA
|
||||
* (0.0,0.0) (1.0,0.0) (1.3,-1.1) VALUES OF BETA
|
||||
* CGEMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CGBMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHEMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHBMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHPMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CTRMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CTBMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CTPMV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CTRSV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CTBSV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CTPSV T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CGERC T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CGERU T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHER T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHPR T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHER2 T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
* CHPR2 T PUT F FOR NO TEST. SAME COLUMNS.
|
||||
*
|
||||
* See:
|
||||
*
|
||||
* Dongarra J. J., Du Croz J. J., Hammarling S. and Hanson R. J..
|
||||
* An extended set of Fortran Basic Linear Algebra Subprograms.
|
||||
*
|
||||
* Technical Memoranda Nos. 41 (revision 3) and 81, Mathematics
|
||||
* and Computer Science Division, Argonne National Laboratory,
|
||||
* 9700 South Cass Avenue, Argonne, Illinois 60439, US.
|
||||
*
|
||||
* Or
|
||||
*
|
||||
* NAG Technical Reports TR3/87 and TR4/87, Numerical Algorithms
|
||||
* Group Ltd., NAG Central Office, 256 Banbury Road, Oxford
|
||||
* OX2 7DE, UK, and Numerical Algorithms Group Inc., 1101 31st
|
||||
* Street, Suite 100, Downers Grove, Illinois 60515-1263, USA.
|
||||
*
|
||||
*
|
||||
* -- Written on 10-August-1987.
|
||||
* Richard Hanson, Sandia National Labs.
|
||||
* Jeremy Du Croz, NAG Central Office.
|
||||
* =====================================================================
|
||||
*
|
||||
* .. Parameters ..
|
||||
INTEGER NIN
|
||||
@@ -71,8 +117,8 @@
|
||||
PARAMETER ( NSUBS = 17 )
|
||||
COMPLEX ZERO, ONE
|
||||
PARAMETER ( ZERO = ( 0.0, 0.0 ), ONE = ( 1.0, 0.0 ) )
|
||||
REAL RZERO, RHALF, RONE
|
||||
PARAMETER ( RZERO = 0.0, RHALF = 0.5, RONE = 1.0 )
|
||||
REAL RZERO
|
||||
PARAMETER ( RZERO = 0.0 )
|
||||
INTEGER NMAX, INCMAX
|
||||
PARAMETER ( NMAX = 65, INCMAX = 2 )
|
||||
INTEGER NINMAX, NIDMAX, NKBMAX, NALMAX, NBEMAX
|
||||
@@ -126,7 +172,7 @@
|
||||
*
|
||||
READ( NIN, FMT = * )SUMMRY
|
||||
READ( NIN, FMT = * )NOUT
|
||||
OPEN( NOUT, FILE = SUMMRY, STATUS = 'NEW' )
|
||||
OPEN( NOUT, FILE = SUMMRY, STATUS = 'UNKNOWN' )
|
||||
NOUTC = NOUT
|
||||
*
|
||||
* Read name and unit number for snapshot output file and open file.
|
||||
@@ -135,7 +181,7 @@
|
||||
READ( NIN, FMT = * )NTRA
|
||||
TRACE = NTRA.GE.0
|
||||
IF( TRACE )THEN
|
||||
OPEN( NTRA, FILE = SNAPS, STATUS = 'NEW' )
|
||||
OPEN( NTRA, FILE = SNAPS, STATUS = 'UNKNOWN' )
|
||||
END IF
|
||||
* Read the flag that directs rewinding of the snapshot file.
|
||||
READ( NIN, FMT = * )REWI
|
||||
@@ -240,14 +286,7 @@
|
||||
*
|
||||
* Compute EPS (the machine precision).
|
||||
*
|
||||
EPS = RONE
|
||||
90 CONTINUE
|
||||
IF( SDIFF( RONE + EPS, RONE ).EQ.RZERO )
|
||||
$ GO TO 100
|
||||
EPS = RHALF*EPS
|
||||
GO TO 90
|
||||
100 CONTINUE
|
||||
EPS = EPS + EPS
|
||||
EPS = EPSILON(RZERO)
|
||||
WRITE( NOUT, FMT = 9998 )EPS
|
||||
*
|
||||
* Check the reliability of CMVCH using exact data.
|
||||
@@ -3079,7 +3118,6 @@
|
||||
50 CONTINUE
|
||||
END IF
|
||||
*
|
||||
60 CONTINUE
|
||||
LCERES = .TRUE.
|
||||
GO TO 80
|
||||
70 CONTINUE
|
||||
|
||||
Reference in New Issue
Block a user