74 DOUBLE PRECISION ANORM, RCOND
78 DOUBLE PRECISION D( NMAX ), DF( NMAX ), R1( NMAX ), R2( NMAX ),
80 COMPLEX*16 B( NMAX ), DL( NMAX ), DLF( NMAX ), DU( NMAX ),
81 $ DU2( NMAX ), DUF( NMAX ), E( NMAX ),
82 $ EF( ), W( NMAX ), X( NMAX )
98 COMMON / infoc / infot, nout, ok, lerr
99 COMMON / srnamc / srnamt
104 WRITE( nout, fmt = * )
115 IF( lsamen( 2, c2,
'GT' ) )
THEN
123 CALL zgttrf( -1, dl, e, du, du2, ip
124 CALL chkxer(
'ZGTTRF', infot, nout, lerr, ok )
130 CALL zgttrs(
'/', 0, 0, dl, e, du, du2, ip, x, 1, info )
131 CALL chkxer(
'ZGTTRS', infot, nout, lerr, ok )
133 CALL zgttrs(
'N', -1, 0, dl, e, du, du2, ip, x, 1, info )
134 CALL chkxer(
'ZGTTRS', infot, nout, lerr, ok )
136 CALL zgttrs(
'N', 0, -1, dl, e, du, du2, ip, x, 1, info )
137 CALL chkxer(
'ZGTTRS', infot, nout, lerr, ok )
139 CALL zgttrs(
'N', 2, 1, dl, e, du, du2, ip, x, 1, info )
140 CALL chkxer(
'ZGTTRS', infot, nout, lerr, ok )
146 CALL zgtrfs(
'/', 0, 0, dl, e, du, dlf, ef, duf, du2, ip, b, 1,
147 $ x, 1, r1, r2, w, rw, info )
150 CALL ZGTRFS( 'n
', -1, 0, DL, E, DU, DLF, EF, DUF, DU2, IP, B,
151 $ 1, X, 1, R1, R2, W, RW, INFO )
152 CALL CHKXER( 'zgtrfs', INFOT, NOUT, LERR, OK )
154 CALL ZGTRFS( 'n
', 0, -1, DL, E, DU, DLF, EF, DUF, DU2, IP, B,
155 $ 1, X, 1, R1, R2, W, RW, INFO )
156 CALL CHKXER( 'zgtrfs', INFOT, NOUT, LERR, OK )
158 CALL ZGTRFS( 'n
', 2, 1, DL, E, DU, DLF, EF, DUF, DU2, IP, B, 1,
159 $ X, 2, R1, R2, W, RW, INFO )
160 CALL CHKXER( 'zgtrfs', INFOT, NOUT, LERR, OK )
162 CALL ZGTRFS( 'n
', 2, 1, DL, E, DU, DLF, EF, DUF, DU2, IP, B, 2,
163 $ X, 1, R1, R2, W, RW, INFO )
164 CALL CHKXER( 'zgtrfs', INFOT, NOUT, LERR, OK )
170 CALL ZGTCON( '/
', 0, DL, E, DU, DU2, IP, ANORM, RCOND, W,
172 CALL CHKXER( 'zgtcon', INFOT, NOUT, LERR, OK )
174 CALL ZGTCON( 'i
', -1, DL, E, DU, DU2, IP, ANORM, RCOND, W,
176 CALL CHKXER( 'zgtcon', INFOT, NOUT, LERR, OK )
178 CALL ZGTCON( 'i
', 0, DL, E, DU, DU2, IP, -ANORM, RCOND, W,
180 CALL CHKXER( 'zgtcon', INFOT, NOUT, LERR, OK )
182 ELSE IF( LSAMEN( 2, C2, 'pt
' ) ) THEN
191 CALL ZPTTRF( -1, D, E, INFO )
192 CALL CHKXER( 'zpttrf', INFOT, NOUT, LERR, OK )
198 CALL zpttrs(
'/', 1, 0, d, e, x, 1, info )
199 CALL chkxer(
'ZPTTRS', infot, nout, lerr, ok )
201 CALL zpttrs(
'U', -1, 0, d, e, x, 1, info )
202 CALL chkxer(
'ZPTTRS', infot, nout, lerr, ok )
204 CALL zpttrs(
'U', 0, -1, d, e, x, 1, info )
205 CALL chkxer(
'ZPTTRS', infot, nout, lerr, ok )
207 CALL zpttrs(
'U', 2, 1, d, e, x, 1, info )
208 CALL chkxer(
'ZPTTRS', infot, nout, lerr, ok )
214 CALL zptrfs(
'/', 1, 0, d, e, df, ef, b, 1, x, 1, r1, r2, w,
216 CALL chkxer(
'ZPTRFS', infot, nout, lerr, ok )
218 CALL zptrfs(
'U', -1, 0, d, e, df, ef, b, 1, x, 1, r1, r2, w,
220 CALL chkxer(
'ZPTRFS', infot, nout, lerr, ok )
222 CALL zptrfs( 'u
', 0, -1, D, E, DF, EF, B, 1, X, 1, R1, R2, W,
224 CALL CHKXER( 'zptrfs', INFOT, NOUT, LERR, OK )
226 CALL ZPTRFS( 'u
', 2, 1, D, E, DF, EF, B, 1, X, 2, R1, R2, W,
228 CALL CHKXER( 'zptrfs', INFOT, NOUT, LERR, OK )
230 CALL ZPTRFS( 'u
', 2, 1, D, E, DF, EF, B, 2, X, 1, R1, R2, W,
232 CALL CHKXER( 'zptrfs', INFOT, NOUT, LERR, OK )
238 CALL ZPTCON( -1, D, E, ANORM, RCOND, RW, INFO )
239 CALL CHKXER( 'zptcon', INFOT, NOUT, LERR, OK )
241 CALL ZPTCON( 0, D, E, -ANORM, RCOND, RW, INFO )
242 CALL CHKXER( 'zptcon', INFOT, NOUT, LERR, OK )
247 CALL ALAESM( PATH, OK, NOUT )
subroutine zgtrfs(trans, n, nrhs, dl, d, du, dlf, df, duf, du2, ipiv, b, ldb, x, ldx, ferr, berr, work, rwork, info)
ZGTRFS