208 SUBROUTINE cckgqr( NM, MVAL, NP, PVAL, NN, NVAL, NMATS, ISEED,
209 $ THRESH, NMAX, A, AF, AQ, AR, TAUA, B, BF, BZ,
210 $ BT, BWK, TAUB, WORK, RWORK, NIN, NOUT, INFO )
217 INTEGER INFO, NIN, NM, NMATS, NMAX, NN, NOUT, NP
221 INTEGER ISEED( 4 ), MVAL( * ), NVAL( * ), PVAL( * )
223 COMPLEX A( * ), AF( * ), AQ( * ), AR( * ), B( * ),
224 $ bf( * ), bt( * ), bwk( * ), bz( * ), taua( * ),
225 $ taub( * ), work( * )
232 PARAMETER ( NTESTS = 7 )
234 parameter( ntypes = 8 )
238 CHARACTER DISTA, DISTB, TYPE
240 INTEGER I, IINFO, IM, IMAT, IN, IP, KLA, KLB, KUA, KUB,
241 $ lda, ldb, lwork, m, modea, modeb, n, nfail,
243 REAL ANORM, BNORM, CNDNMA, CNDNMB
246 LOGICAL DOTYPE( NTYPES )
247 REAL RESULT( NTESTS )
265 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
285 DO 30 imat = 1, ntypes
289 IF( .NOT.dotype( imat ) )
297 CALL slatb9(
'GRQ', imat, m, p, n,
TYPE, kla, kua,
298 $ klb, kub, anorm, bnorm, modea, modeb,
299 $ cndnma, cndnmb, dista, distb )
301 CALL clatms( m, n, dista, iseed,
TYPE, rwork, modea,
302 $ cndnma, anorm, kla, kua,
'No packing', a,
304 IF( iinfo.NE.0 )
THEN
305 WRITE( nout, fmt = 9999 )iinfo
310 CALL clatms( p, n, distb, iseed,
TYPE, rwork, modeb,
311 $ cndnmb, bnorm, klb, kub,
'No packing', b,
313 IF( iinfo.NE.0 )
THEN
314 WRITE( nout, fmt = 9999 )iinfo
321 CALL cgrqts( m, p, n, a, af, aq, ar, lda, taua, b, bf,
322 $ bz, bt, bwk, ldb, taub, work, lwork,
329 IF( result( i ).GE.thresh )
THEN
330 IF( nfail.EQ.0 .AND. firstt )
THEN
332 CALL alahdg( nout,
'GRQ' )
334 WRITE( nout, fmt = 9998 )m, p, n, imat, i,
346 CALL slatb9(
'GQR', imat, m, p, n,
TYPE, kla, kua,
347 $ klb, kub, anorm, bnorm, modea, modeb,
348 $ cndnma, cndnmb, dista, distb )
350 CALL clatms( n, m, dista, iseed,
TYPE, rwork, modea,
351 $ cndnma, anorm, kla, kua,
'No packing', a,
353 IF( iinfo.NE.0 )
THEN
354 WRITE( nout, fmt = 9999 )iinfo
359 CALL clatms( n, p, distb, iseed,
TYPE, rwork, modea,
360 $ cndnma, bnorm, klb, kub,
'No packing', b,
362 IF( iinfo.NE.0 )
THEN
363 WRITE( nout, fmt = 9999 )iinfo
370 CALL cgqrts( n, m, p, a, af, aq, ar, lda, taua, b, bf,
371 $ bz, bt, bwk, ldb, taub, work, lwork,
378 IF( result( i ).GE.thresh )
THEN
379 IF( nfail.EQ.0 .AND. firstt )
THEN
383 WRITE( nout, fmt = 9997 )n, m, p, imat, i,
397 CALL alasum( path, nout, nfail, nrun, 0 )
399 9999
FORMAT(
' CLATMS in CCKGQR: INFO = ', i5 )
400 9998
FORMAT(
' M=', i4,
' P=', i4,
', N=', i4,
', type ', i2,
401 $
', test ', i2,
', ratio=', g13.6 )
402 9997
FORMAT(
' N=', i4,
' M=', i4,
', P=', i4,
', type ', i2,
403 $
', 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 cckgqr(nm, mval, np, pval, nn, nval, nmats, iseed, thresh, nmax, a, af, aq, ar, taua, b, bf, bz, bt, bwk, taub, work, rwork, nin, nout, info)
CCKGQR
subroutine cgqrts(n, m, p, a, af, q, r, lda, taua, b, bf, z, t, bwk, ldb, taub, work, lwork, rwork, result)
CGQRTS
subroutine cgrqts(m, p, n, a, af, q, r, lda, taua, b, bf, z, t, bwk, ldb, taub, work, lwork, rwork, result)
CGRQTS
subroutine clatms(m, n, dist, iseed, sym, d, mode, cond, dmax, kl, ku, pack, a, lda, work, info)
CLATMS
subroutine slatb9(path, imat, m, p, n, type, kla, kua, klb, kub, anorm, bnorm, modea, modeb, cndnma, cndnmb, dista, distb)
SLATB9