195 SUBROUTINE dckgsv( NM, MVAL, PVAL, NVAL, NMATS, ISEED, THRESH,
196 $ NMAX, A, AF, B, BF, U, V, Q, ALPHA, BETA, R,
197 $ IWORK, WORK, RWORK, NIN, NOUT, INFO )
204 INTEGER INFO, NIN, NM, NMATS, NMAX, NOUT
205 DOUBLE PRECISION THRESH
208 INTEGER ISEED( 4 ), IWORK( * ), MVAL( * ), NVAL( * ),
210 DOUBLE PRECISION A( * ), AF( * ), ALPHA( * ), B( * ), BETA( * ),
211 $ BF( * ), Q( * ), R( * ), RWORK( * ), U( * ),
219 PARAMETER ( NTESTS = 12 )
221 parameter( ntypes = 8 )
225 CHARACTER DISTA, DISTB, TYPE
227 INTEGER I, IINFO, IM, IMAT, KLA, KLB, KUA, KUB, LDA,
228 $ ldb, ldq, ldr, ldu, ldv, lwork, m, modea,
229 $ modeb, n, nfail, nrun, nt, p
230 DOUBLE PRECISION ANORM, BNORM, CNDNMA, CNDNMB
233 LOGICAL DOTYPE( NTYPES )
234 DOUBLE PRECISION RESULT( NTESTS )
251 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
267 DO 20 imat = 1, ntypes
271 IF( .NOT.dotype( imat ) )
277 CALL dlatb9( path, imat, m, p, n,
TYPE, kla, kua, klb, kub,
278 $ anorm, bnorm, modea, modeb, cndnma, cndnmb,
283 CALL dlatms( m, n, dista, iseed,
TYPE, rwork, modea, cndnma,
284 $ anorm, kla, kua,
'No packing', a, lda, work,
286 IF( iinfo.NE.0 )
THEN
287 WRITE( nout, fmt = 9999 )iinfo
292 CALL dlatms( p, n, distb, iseed,
TYPE, rwork, modeb, cndnmb,
293 $ bnorm, klb, kub,
'No packing', b, ldb, work,
295 IF( iinfo.NE.0 )
THEN
296 WRITE( nout, fmt = 9999 )iinfo
303 CALL dgsvts3( m, p, n, a, af, lda, b, bf, ldb, u, ldu, v,
304 $ ldv, q, ldq, alpha, beta, r, ldr, iwork, work,
305 $ lwork, rwork, result )
311 IF( result( i ).GE.thresh )
THEN
312 IF( nfail.EQ.0 .AND. firstt )
THEN
316 WRITE( nout, fmt = 9998 )m, p, n, imat, i,
327 CALL alasum( path, nout, nfail, nrun, 0 )
329 9999
FORMAT(
' DLATMS in DCKGSV INFO = ', i5 )
330 9998
FORMAT(
' M=', i4,
' P=', i4,
', N=', i4,
', type ', i2,
331 $
', test ', i2,
', ratio=', g13.6 )
subroutine alareq(path, nmats, dotype, ntypes, nin, nout)
ALAREQ
subroutine alasum(type, nout, nfail, nrun, nerrs)
ALASUM
subroutine alahdg(iounit, path)
ALAHDG
subroutine dckgsv(nm, mval, pval, nval, nmats, iseed, thresh, nmax, a, af, b, bf, u, v, q, alpha, beta, r, iwork, work, rwork, nin, nout, info)
DCKGSV
subroutine dgsvts3(m, p, n, a, af, lda, b, bf, ldb, u, ldu, v, ldv, q, ldq, alpha, beta, r, ldr, iwork, work, lwork, rwork, result)
DGSVTS3
subroutine dlatb9(path, imat, m, p, n, type, kla, kua, klb, kub, anorm, bnorm, modea, modeb, cndnma, cndnmb, dista, distb)
DLATB9
subroutine dlatms(m, n, dist, iseed, sym, d, mode, cond, dmax, kl, ku, pack, a, lda, work, info)
DLATMS