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 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