165 SUBROUTINE ccklse( NN, MVAL, PVAL, NVAL, NMATS, ISEED, THRESH,
166 $ NMAX, A, AF, B, BF, X, WORK, RWORK, NIN, NOUT,
174 INTEGER INFO, NIN, NMATS, NMAX, NN, NOUT
178 INTEGER ISEED( 4 ), MVAL( * ), NVAL( * ), PVAL( * )
180 COMPLEX A( * ), AF( * ), B( * ), BF( * ), WORK( * ),
188 PARAMETER ( NTESTS = 7 )
190 parameter( ntypes = 8 )
194 CHARACTER DISTA, DISTB, TYPE
196 INTEGER I, IINFO, IK, IMAT, KLA, KLB, KUA, KUB, LDA,
197 $ ldb, lwork, m, modea, modeb, n, nfail, nrun,
199 REAL ANORM, BNORM, CNDNMA, CNDNMB
202 LOGICAL DOTYPE( NTYPES )
203 REAL RESULT( NTESTS )
221 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
232 IF( p.GT.n .OR. n.GT.m+p )
THEN
234 WRITE( nout, fmt = * )
237 WRITE( nout, fmt = 9997 )m, p, n
248 IF( p.GT.n .OR. n.GT.m+p )
251 DO 30 imat = 1, ntypes
255 IF( .NOT.dotype( imat ) )
261 CALL slatb9( path, imat, m, p, n,
TYPE, kla, kua, klb, kub,
262 $ anorm, bnorm, modea, modeb, cndnma, cndnmb,
265 CALL clatms( m, n, dista, iseed,
TYPE, rwork, modea, cndnma,
266 $ anorm, kla, kua,
'No packing', a, lda, work,
268 IF( iinfo.NE.0 )
THEN
269 WRITE( nout, fmt = 9999 )iinfo
274 CALL clatms( p, n, distb, iseed,
TYPE, rwork, modeb, cndnmb,
275 $ bnorm, klb, kub,
'No packing', b, ldb, work,
277 IF( iinfo.NE.0 )
THEN
278 WRITE( nout, fmt = 9999 )iinfo
285 CALL clarhs(
'CGE',
'New solution',
'Upper',
'N', m, n,
286 $ max( m-1, 0 ), max( n-1, 0 ), 1, a, lda,
287 $ x( 4*nmax+1 ), max( n, 1 ), x, max( m, 1 ),
290 CALL clarhs(
'CGE',
'Computed',
'Upper',
'N', p, n,
291 $ max( p-1, 0 ), max( n-1, 0 ), 1, b, ldb,
292 $ x( 4*nmax+1 ), max( n, 1 ), x( 2*nmax+1 ),
293 $ max( p, 1 ), iseed, iinfo )
297 CALL clsets( m, p, n, a, af, lda, b, bf, ldb, x,
298 $ x( nmax+1 ), x( 2*nmax+1 ), x( 3*nmax+1 ),
299 $ x( 4*nmax+1 ), work, lwork, rwork,
306 IF( result( i ).GE.thresh )
THEN
307 IF( nfail.EQ.0 .AND. firstt )
THEN
311 WRITE( nout, fmt = 9998 )m, p, n, imat, i,
323 CALL alasum( path, nout, nfail, nrun, 0 )
325 9999
FORMAT(
' CLATMS in CCKLSE INFO = ', i5 )
326 9998
FORMAT(
' M=', i4,
' P=', i4,
', N=', i4,
', type ', i2,
327 $
', test ', i2,
', ratio=', g13.6 )
328 9997
FORMAT(
' *** Invalid input for LSE: M = ', i6,
', P = ', i6,
329 $
', N = ', i6,
';', /
' must satisfy P <= N <= P+M ',
330 $
'(this set of values will be skipped)' )
subroutine alareq(path, nmats, dotype, ntypes, nin, nout)
ALAREQ
subroutine alasum(type, nout, nfail, nrun, nerrs)
ALASUM
subroutine clarhs(path, xtype, uplo, trans, m, n, kl, ku, nrhs, a, lda, x, ldx, b, ldb, iseed, info)
CLARHS
subroutine alahdg(iounit, path)
ALAHDG
subroutine ccklse(nn, mval, pval, nval, nmats, iseed, thresh, nmax, a, af, b, bf, x, work, rwork, nin, nout, info)
CCKLSE
subroutine clatms(m, n, dist, iseed, sym, d, mode, cond, dmax, kl, ku, pack, a, lda, work, info)
CLATMS
subroutine clsets(m, p, n, a, af, lda, b, bf, ldb, c, cf, d, df, x, work, lwork, rwork, result)
CLSETS
subroutine slatb9(path, imat, m, p, n, type, kla, kua, klb, kub, anorm, bnorm, modea, modeb, cndnma, cndnmb, dista, distb)
SLATB9