3 * =========== DOCUMENTATION ===========
5 * Online html documentation available at
6 * http://www.netlib.org/lapack/explore-html/
11 * SUBROUTINE SDRVRF2( NOUT, NN, NVAL, A, LDA, ARF, AP, ASAV )
13 * .. Scalar Arguments ..
14 * INTEGER LDA, NN, NOUT
16 * .. Array Arguments ..
18 * REAL A( LDA, * ), ARF( * ), AP(*), ASAV( LDA, * )
27 *> SDRVRF2 tests the LAPACK RFP conversion routines.
36 *> The unit number for output.
42 *> The number of values of N contained in the vector NVAL.
47 *> NVAL is INTEGER array, dimension (NN)
48 *> The values of the matrix dimension N.
53 *> A is REAL array, dimension (LDA,NMAX)
59 *> The leading dimension of the array A. LDA >= max(1,NMAX).
64 *> ARF is REAL array, dimension ((NMAX*(NMAX+1))/2).
69 *> AP is REAL array, dimension ((NMAX*(NMAX+1))/2).
74 *> ASAV is REAL array, dimension (LDA,NMAX)
80 *> \author Univ. of Tennessee
81 *> \author Univ. of California Berkeley
82 *> \author Univ. of Colorado Denver
85 *> \date November 2011
87 *> \ingroup single_lin
89 * =====================================================================
90 SUBROUTINE SDRVRF2( NOUT, NN, NVAL, A, LDA, ARF, AP, ASAV )
92 * -- LAPACK test routine (version 3.4.0) --
93 * -- LAPACK is a software package provided by Univ. of Tennessee, --
94 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
97 * .. Scalar Arguments ..
100 * .. Array Arguments ..
102 REAL A( LDA, * ), ARF( * ), AP(*), ASAV( LDA, * )
105 * =====================================================================
107 * .. Local Scalars ..
108 LOGICAL LOWER, OK1, OK2
109 CHARACTER UPLO, CFORM
110 INTEGER I, IFORM, IIN, INFO, IUPLO, J, N,
114 CHARACTER UPLOS( 2 ), FORMS( 2 )
115 INTEGER ISEED( 4 ), ISEEDY( 4 )
117 * .. External Functions ..
121 * .. External Subroutines ..
122 EXTERNAL STFTTR, STFTTP, STRTTF, STRTTP, STPTTR, STPTTF
124 * .. Scalars in Common ..
127 * .. Common blocks ..
128 COMMON / SRNAMC / SRNAMT
130 * .. Data statements ..
131 DATA ISEEDY / 1988, 1989, 1990, 1991 /
132 DATA UPLOS / 'U', 'L' /
133 DATA FORMS / 'N', 'T' /
135 * .. Executable Statements ..
137 * Initialize constants and the random number seed.
143 ISEED( I ) = ISEEDY( I )
150 * Do first for UPLO = 'U', then for UPLO = 'L'
154 UPLO = UPLOS( IUPLO )
156 IF ( IUPLO.EQ.1 ) LOWER = .FALSE.
158 * Do first for CFORM = 'N', then for CFORM = 'T'
162 CFORM = FORMS( IFORM )
168 A( I, J) = SLARND( 2, ISEED )
173 CALL STRTTF( CFORM, UPLO, N, A, LDA, ARF, INFO )
176 CALL STFTTP( CFORM, UPLO, N, ARF, AP, INFO )
179 CALL STPTTR( UPLO, N, AP, ASAV, LDA, INFO )
185 IF ( A(I,J).NE.ASAV(I,J) ) THEN
193 IF ( A(I,J).NE.ASAV(I,J) ) THEN
203 CALL STRTTP( UPLO, N, A, LDA, AP, INFO )
206 CALL STPTTF( CFORM, UPLO, N, AP, ARF, INFO )
209 CALL STFTTR( CFORM, UPLO, N, ARF, ASAV, LDA, INFO )
215 IF ( A(I,J).NE.ASAV(I,J) ) THEN
223 IF ( A(I,J).NE.ASAV(I,J) ) THEN
230 IF (( .NOT.OK1 ).OR.( .NOT.OK2 )) THEN
231 IF( NERRS.EQ.0 ) THEN
233 WRITE( NOUT, FMT = 9999 )
235 WRITE( NOUT, FMT = 9998 ) N, UPLO, CFORM
243 * Print a summary of the results.
245 IF ( NERRS.EQ.0 ) THEN
246 WRITE( NOUT, FMT = 9997 ) NRUN
248 WRITE( NOUT, FMT = 9996 ) NERRS, NRUN
251 9999 FORMAT( 1X, ' *** Error(s) while testing the RFP conversion',
253 9998 FORMAT( 1X, ' Error in RFP,conversion routines N=',I5,
254 + ' UPLO=''', A1, ''', FORM =''',A1,'''')
255 9997 FORMAT( 1X, 'All tests for the RFP conversion routines passed ( ',
257 9996 FORMAT( 1X, 'RFP conversion routines: ',I5,' out of ',I5,
258 + ' error message recorded')