66 DOUBLE PRECISION ALPHA, BETA
69 DOUBLE PRECISION A( 1, 1), B( 1, 1)
82 COMMON / infoc / infot, nout, ok, lerr
83 COMMON / srnamc / srnamt
96 CALL dpftrf(
'/',
'U', 0, a, info )
97 CALL chkxer(
'DPFTRF', infot, nout, lerr, ok )
99 CALL dpftrf(
'N',
'/', 0, a, info )
100 CALL chkxer(
'DPFTRF', infot, nout, lerr, ok )
102 CALL dpftrf(
'N',
'U', -1, a, info )
103 CALL chkxer(
'DPFTRF', infot, nout, lerr, ok )
107 CALL dpftrs(
'/',
'U', 0, 0, a, b, 1, info )
108 CALL chkxer(
'DPFTRS', infot, nout, lerr, ok )
110 CALL dpftrs(
'N',
'/', 0, 0, a, b, 1, info )
111 CALL chkxer(
'DPFTRS', infot, nout, lerr, ok )
113 CALL dpftrs(
'N',
'U', -1, 0, a, b, 1, info )
116 CALL DPFTRS( 'n
', 'u
', 0, -1, A, B, 1, INFO )
117 CALL CHKXER( 'dpftrs', INFOT, NOUT, LERR, OK )
119 CALL DPFTRS( 'n
', 'u
', 0, 0, A, B, 0, INFO )
120 CALL CHKXER( 'dpftrs', INFOT, NOUT, LERR, OK )
124 CALL DPFTRI( '/',
'U', 0, a, info )
125 CALL chkxer(
'DPFTRI', infot, nout, lerr, ok )
127 CALL dpftri(
'N',
'/', 0, a, info )
128 CALL chkxer(
'DPFTRI', infot, nout, lerr, ok )
130 CALL dpftri(
'N',
'U', -1, a, info )
131 CALL chkxer(
'DPFTRI', infot, nout, lerr, ok )
135 CALL dtfsm(
'/',
'L',
'U',
'T',
'U', 0, 0, alpha, a, b, 1 )
136 CALL chkxer(
'DTFSM ', infot, nout, lerr, ok )
138 CALL dtfsm( 'n
', '/
', 'u
', 't
', 'u
', 0, 0, ALPHA, A, B, 1 )
139 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
141 CALL DTFSM( 'n
', 'l
', '/
', 't
', 'u
', 0, 0, ALPHA, A, B, 1 )
142 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
144 CALL DTFSM( 'n
', 'l
', 'u
', '/
', 'u
', 0, 0, ALPHA, A, B, 1 )
145 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
147 CALL DTFSM( 'n
', 'l
', 'u
', 't
', '/
', 0, 0, ALPHA, A, B, 1 )
148 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
150 CALL DTFSM( 'n
', 'l
', 'u
', 't
', 'u
', -1, 0, ALPHA, A, B, 1 )
151 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
153 CALL DTFSM( 'n
', 'l
', 'u
', 't
', 'u
', 0, -1, ALPHA, A, B, 1 )
154 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
156 CALL DTFSM( 'n
', 'l
', 'u
', 't
', 'u
', 0, 0, ALPHA, A, B, 0 )
157 CALL CHKXER( 'dtfsm ', INFOT, NOUT, LERR, OK )
161 CALL DTFTRI( '/
', 'l
', 'n
', 0, A, INFO )
162 CALL CHKXER( 'dtftri', INFOT, NOUT, LERR, OK )
164 CALL DTFTRI( 'n
', '/
', 'n
', 0, A, INFO )
165 CALL CHKXER( 'dtftri', INFOT, NOUT, LERR, OK )
167 CALL DTFTRI( 'n
', 'l
', '/
', 0, A, INFO )
168 CALL CHKXER( 'dtftri', INFOT, NOUT, LERR, OK )
170 CALL DTFTRI( 'n',
'L',
'N', -1, a, info )
171 CALL chkxer(
'DTFTRI', infot, nout, lerr, ok )
175 CALL dtfttr(
'/',
'U', 0, a, b, 1, info )
176 CALL chkxer(
'DTFTTR', infot, nout, lerr, ok )
178 CALL dtfttr(
'N',
'/', 0, a, b, 1, info )
179 CALL chkxer(
'DTFTTR', infot, nout, lerr, ok )
181 CALL dtfttr(
'N',
'U', -1, a, b, 1, info )
182 CALL chkxer(
'DTFTTR', infot, nout, lerr, ok )
184 CALL dtfttr(
'N',
'U', 0, a, b, 0, info )
185 CALL chkxer(
'DTFTTR', infot, nout, lerr, ok )
189 CALL dtrttf(
'/',
'U', 0, a, 1, b, info )
190 CALL chkxer(
'DTRTTF', infot, nout, lerr, ok )
192 CALL dtrttf(
'N',
'/', 0, a, 1, b, info )
193 CALL chkxer(
'DTRTTF', infot, nout, lerr, ok )
195 CALL dtrttf(
'N',
'U', -1, a, 1, b, info )
196 CALL chkxer(
'DTRTTF', infot, nout, lerr, ok )
198 CALL dtrttf(
'N',
'U', 0, a, 0, b, info )
199 CALL chkxer(
'DTRTTF', infot, nout, lerr, ok )
203 CALL dtfttp( '/
', 'u', 0, a, b, info )
204 CALL chkxer(
'DTFTTP', infot, nout, lerr, ok )
206 CALL dtfttp(
'N',
'/', 0, a, b, info )
207 CALL chkxer(
'DTFTTP', infot, nout, lerr, ok )
209 CALL dtfttp(
'N',
'U', -1, a, b, info )
210 CALL chkxer(
'DTFTTP', infot, nout, lerr, ok )
214 CALL dtpttf(
'/',
'U', 0, a, b, info )
215 CALL chkxer(
'DTPTTF', infot, nout, lerr, ok )
217 CALL dtpttf(
'N',
'/', 0, a, b, info )
218 CALL chkxer(
'DTPTTF', infot, nout, lerr, ok )
220 CALL dtpttf(
'N',
'U', -1, a, b, info )
221 CALL chkxer(
'DTPTTF', infot, nout, lerr, ok )
225 CALL dtrttp( '/
', 0, A, 1, B, INFO )
226 CALL CHKXER( 'dtrttp', INFOT, NOUT, LERR, OK )
228 CALL DTRTTP( 'u
', -1, A, 1, B, INFO )
229 CALL CHKXER( 'dtrttp', INFOT, NOUT, LERR, OK )
231 CALL DTRTTP( 'u
', 0, A, 0, B, INFO )
232 CALL CHKXER( 'dtrttp', INFOT, NOUT, LERR, OK )
236 CALL DTPTTR( '/
', 0, A, B, 1, INFO )
237 CALL CHKXER( 'dtpttr', INFOT, NOUT, LERR, OK )
239 CALL DTPTTR( 'u
', -1, A, B, 1, INFO )
240 CALL CHKXER( 'dtpttr', INFOT, NOUT, LERR, OK )
242 CALL DTPTTR( 'u
', 0, A, B, 0, INFO )
243 CALL CHKXER( 'dtpttr', INFOT, NOUT, LERR, OK )
247 CALL DSFRK( '/
', 'u
', 'n
', 0, 0, ALPHA, A, 1, BETA, B )
248 CALL CHKXER( 'dsfrk ', INFOT, NOUT, LERR, OK )
250 CALL DSFRK( 'n
', '/
', 'n
', 0, 0, ALPHA, A, 1, BETA, B )
251 CALL CHKXER( 'dsfrk ', INFOT, NOUT, LERR, OK )
253 CALL DSFRK( 'n
', 'u
', '/
', 0, 0, ALPHA, A, 1, BETA, B )
254 CALL CHKXER( 'dsfrk ', INFOT, NOUT, LERR, OK )
256 CALL DSFRK( 'n
', 'u
', 'n
', -1, 0, ALPHA, A, 1, BETA, B )
257 CALL CHKXER( 'dsfrk ', infot, nout, lerr, ok )
259 CALL dsfrk(
'N',
'U',
'N', 0, -1, alpha, a, 1, beta, b )
260 CALL chkxer(
'DSFRK ', infot, nout, lerr, ok )
262 CALL dsfrk(
'N',
'U',
'N', 0, 0, alpha, a, 0, beta, b )
263 CALL chkxer(
'DSFRK ', infot, nout, lerr, ok )
268 WRITE( nout, fmt = 9999 )
270 WRITE( nout, fmt = 9998 )
273 9999
FORMAT( 1x,
'DOUBLE PRECISION RFP routines passed the tests of '
274 $
'the error exits' )
275 9998
FORMAT(
' *** RFP routines failed the tests of the error ',
subroutine dtfsm(transr, side, uplo, trans, diag, m, n, alpha, a, b, ldb)
DTFSM solves a matrix equation (one operand is a triangular matrix in RFP format).