LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ dlafts()

subroutine dlafts ( character*3  type,
integer  m,
integer  n,
integer  imat,
integer  ntests,
double precision, dimension( * )  result,
integer, dimension( 4 )  iseed,
double precision  thresh,
integer  iounit,
integer  ie 
)

DLAFTS

Purpose:
    DLAFTS tests the result vector against the threshold value to
    see which tests for this matrix type failed to pass the threshold.
    Output is to the file given by unit IOUNIT.
  TYPE   - CHARACTER*3
           On entry, TYPE specifies the matrix type to be used in the
           printed messages.
           Not modified.

  N      - INTEGER
           On entry, N specifies the order of the test matrix.
           Not modified.

  IMAT   - INTEGER
           On entry, IMAT specifies the type of the test matrix.
           A listing of the different types is printed by DLAHD2
           to the output file if a test fails to pass the threshold.
           Not modified.

  NTESTS - INTEGER
           On entry, NTESTS is the number of tests performed on the
           subroutines in the path given by TYPE.
           Not modified.

  RESULT - DOUBLE PRECISION               array of dimension( NTESTS )
           On entry, RESULT contains the test ratios from the tests
           performed in the calling program.
           Not modified.

  ISEED  - INTEGER            array of dimension( 4 )
           Contains the random seed that generated the matrix used
           for the tests whose ratios are in RESULT.
           Not modified.

  THRESH - DOUBLE PRECISION
           On entry, THRESH specifies the acceptable threshold of the
           test ratios.  If RESULT( K ) > THRESH, then the K-th test
           did not pass the threshold and a message will be printed.
           Not modified.

  IOUNIT - INTEGER
           On entry, IOUNIT specifies the unit number of the file
           to which the messages are printed.
           Not modified.

  IE     - INTEGER
           On entry, IE contains the number of tests which have
           failed to pass the threshold so far.
           Updated on exit if any of the ratios in RESULT also fail.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.

Definition at line 97 of file dlafts.f.

99*
100* -- LAPACK test routine --
101* -- LAPACK is a software package provided by Univ. of Tennessee, --
102* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
103*
104* .. Scalar Arguments ..
105 CHARACTER*3 TYPE
106 INTEGER IE, IMAT, IOUNIT, M, N, NTESTS
107 DOUBLE PRECISION THRESH
108* ..
109* .. Array Arguments ..
110 INTEGER ISEED( 4 )
111 DOUBLE PRECISION RESULT( * )
112* ..
113*
114* =====================================================================
115*
116* .. Local Scalars ..
117 INTEGER K
118* ..
119* .. External Subroutines ..
120 EXTERNAL dlahd2
121* ..
122* .. Executable Statements ..
123*
124 IF( m.EQ.n ) THEN
125*
126* Output for square matrices:
127*
128 DO 10 k = 1, ntests
129 IF( result( k ).GE.thresh ) THEN
130*
131* If this is the first test to fail, call DLAHD2
132* to print a header to the data file.
133*
134 IF( ie.EQ.0 )
135 $ CALL dlahd2( iounit, TYPE )
136 ie = ie + 1
137 IF( result( k ).LT.10000.0d0 ) THEN
138 WRITE( iounit, fmt = 9999 )n, imat, iseed, k,
139 $ result( k )
140 9999 FORMAT( ' Matrix order=', i5, ', type=', i2,
141 $ ', seed=', 4( i4, ',' ), ' result ', i3, ' is',
142 $ 0p, f8.2 )
143 ELSE
144 WRITE( iounit, fmt = 9998 )n, imat, iseed, k,
145 $ result( k )
146 9998 FORMAT( ' Matrix order=', i5, ', type=', i2,
147 $ ', seed=', 4( i4, ',' ), ' result ', i3, ' is',
148 $ 1p, d10.3 )
149 END IF
150 END IF
151 10 CONTINUE
152 ELSE
153*
154* Output for rectangular matrices
155*
156 DO 20 k = 1, ntests
157 IF( result( k ).GE.thresh ) THEN
158*
159* If this is the first test to fail, call DLAHD2
160* to print a header to the data file.
161*
162 IF( ie.EQ.0 )
163 $ CALL dlahd2( iounit, TYPE )
164 ie = ie + 1
165 IF( result( k ).LT.10000.0d0 ) THEN
166 WRITE( iounit, fmt = 9997 )m, n, imat, iseed, k,
167 $ result( k )
168 9997 FORMAT( 1x, i5, ' x', i5, ' matrix, type=', i2, ', s',
169 $ 'eed=', 3( i4, ',' ), i4, ': result ', i3,
170 $ ' is', 0p, f8.2 )
171 ELSE
172 WRITE( iounit, fmt = 9996 )m, n, imat, iseed, k,
173 $ result( k )
174 9996 FORMAT( 1x, i5, ' x', i5, ' matrix, type=', i2, ', s',
175 $ 'eed=', 3( i4, ',' ), i4, ': result ', i3,
176 $ ' is', 1p, d10.3 )
177 END IF
178 END IF
179 20 CONTINUE
180*
181 END IF
182 RETURN
183*
184* End of DLAFTS
185*
subroutine dlahd2(iounit, path)
DLAHD2
Definition dlahd2.f:65
Here is the call graph for this function:
Here is the caller graph for this function: