207 SUBROUTINE sckgqr( NM, MVAL, NP, PVAL, NN, NVAL, NMATS, ISEED,
208 $ THRESH, NMAX, A, AF, AQ, AR, TAUA, B, BF, BZ,
209 $ BT, BWK, TAUB, WORK, RWORK, NIN, NOUT, INFO )
216 INTEGER INFO, NIN, NM, NMATS, NMAX, NN, NOUT, NP
220 INTEGER ISEED( 4 ), MVAL( * ), NVAL( * ), PVAL( * )
221 REAL A( * ), AF( * ), AQ( * ), AR( * ), B( * ),
222 $ bf( * ), bt( * ), bwk( * ), bz( * ),
223 $ rwork( * ), taua( * ), taub( * ), work( * )
230 PARAMETER ( NTESTS = 7 )
232 parameter( ntypes = 8 )
236 CHARACTER DISTA, DISTB, TYPE
238 INTEGER I, IINFO, IM, IMAT, IN, IP, KLA, KLB, KUA, KUB,
239 $ lda, ldb, lwork, m, modea, modeb, n, nfail,
241 REAL ANORM, BNORM, CNDNMA, CNDNMB
244 LOGICAL DOTYPE( NTYPES )
245 REAL RESULT( NTESTS )
263 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
283 DO 30 imat = 1, ntypes
287 IF( .NOT.dotype( imat ) )
295 CALL slatb9(
'GRQ', imat, m, p, n,
TYPE, kla, kua,
296 $ klb, kub, anorm, bnorm, modea, modeb,
297 $ cndnma, cndnmb, dista, distb )
301 CALL slatms( 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
312 CALL slatms( p, n, distb, iseed,
TYPE, rwork, modeb,
313 $ cndnmb, bnorm, klb, kub,
'No packing', b,
315 IF( iinfo.NE.0 )
THEN
316 WRITE( nout, fmt = 9999 )iinfo
323 CALL sgrqts( m, p, n, a, af, aq, ar, lda, taua, b, bf,
324 $ bz, bt, bwk, ldb, taub, work, lwork,
331 IF( result( i ).GE.thresh )
THEN
332 IF( nfail.EQ.0 .AND. firstt )
THEN
334 CALL alahdg( nout,
'GRQ' )
336 WRITE( nout, fmt = 9998 )m, p, n, imat, i,
348 CALL slatb9(
'GQR', imat, m, p, n,
TYPE, kla, kua,
349 $ klb, kub, anorm, bnorm, modea, modeb,
350 $ cndnma, cndnmb, dista, distb )
354 CALL slatms( n, m, dista, iseed,
TYPE, rwork, modea,
355 $ cndnma, anorm, kla, kua,
'No packing', a,
357 IF( iinfo.NE.0 )
THEN
358 WRITE( nout, fmt = 9999 )iinfo
365 CALL slatms( n, p, distb, iseed,
TYPE, rwork, modea,
366 $ cndnma, bnorm, klb, kub,
'No packing', b,
368 IF( iinfo.NE.0 )
THEN
369 WRITE( nout, fmt = 9999 )iinfo
376 CALL sgqrts( n, m, p, a, af, aq, ar, lda, taua, b, bf,
377 $ bz, bt, bwk, ldb, taub, work, lwork,
384 IF( result( i ).GE.thresh )
THEN
385 IF( nfail.EQ.0 .AND. firstt )
THEN
389 WRITE( nout, fmt = 9997 )n, m, p, imat, i,
403 CALL alasum( path, nout, nfail, nrun, 0 )
405 9999
FORMAT(
' SLATMS in SCKGQR: INFO = ', i5 )
406 9998
FORMAT(
' M=', i4,
' P=', i4,
', N=', i4,
', type ', i2,
407 $
', test ', i2,
', ratio=', g13.6 )
408 9997
FORMAT(
' N=', i4,
' M=', i4,
', P=', i4,
', type ', i2,
409 $
', 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 sckgqr(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)
SCKGQR
subroutine sgqrts(n, m, p, a, af, q, r, lda, taua, b, bf, z, t, bwk, ldb, taub, work, lwork, rwork, result)
SGQRTS
subroutine sgrqts(m, p, n, a, af, q, r, lda, taua, b, bf, z, t, bwk, ldb, taub, work, lwork, rwork, result)
SGRQTS
subroutine slatb9(path, imat, m, p, n, type, kla, kua, klb, kub, anorm, bnorm, modea, modeb, cndnma, cndnmb, dista, distb)
SLATB9
subroutine slatms(m, n, dist, iseed, sym, d, mode, cond, dmax, kl, ku, pack, a, lda, work, info)
SLATMS