75 COMPLEX*16 A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
76 $ W( NMAX ), X( NMAX )
89 COMMON / infoc / infot, nout, ok, lerr
90 COMMON / srnamc / srnamt
93 INTRINSIC dble, dcmplx
98 WRITE( nout, fmt = * )
104 a( i, j ) = dcmplx( 1.d0 / dble( i+j ),
105 $ -1.d0 / dble( i+j ) )
106 af( i, j ) = dcmplx( 1.d0 / dble( i+j ),
107 $ -1.d0 / dble( i+j ) )
121 CALL zgeqrf( -1, 0, a, 1, b, w, 1, info )
122 CALL chkxer(
'ZGEQRF', infot, nout, lerr, ok )
124 CALL zgeqrf( 0, -1, a, 1, b, w, 1, info )
125 CALL chkxer(
'ZGEQRF', infot, nout, lerr, ok )
127 CALL zgeqrf( 2, 1, a, 1, b, w, 1, info )
128 CALL chkxer(
'ZGEQRF', infot, nout, lerr, ok )
130 CALL zgeqrf( 1, 2, a, 1, b, w, 1, info )
131 CALL chkxer(
'ZGEQRF', infot, nout, lerr, ok )
137 CALL zgeqrfp( -1, 0, a, 1, b, w, 1, info )
138 CALL chkxer(
'ZGEQRFP', infot, nout, lerr, ok )
140 CALL zgeqrfp( 0, -1, a, 1, b, w, 1, info )
141 CALL chkxer(
'ZGEQRFP', infot, nout, lerr, ok )
143 CALL zgeqrfp( 2, 1, a, 1, b, w, 1, info )
144 CALL chkxer(
'ZGEQRFP', infot, nout, lerr, ok )
146 CALL zgeqrfp( 1, 2, a, 1, b, w, 1, info )
147 CALL chkxer(
'ZGEQRFP', infot, nout, lerr, ok )
153 CALL zgeqr2( -1, 0, a, 1, b, w, info )
154 CALL chkxer(
'ZGEQR2', infot, nout, lerr, ok )
156 CALL zgeqr2( 0, -1, a, 1, b, w, info )
157 CALL chkxer(
'ZGEQR2', infot, nout, lerr, ok )
159 CALL zgeqr2( 2, 1, a, 1, b, w, info )
160 CALL chkxer(
'ZGEQR2', infot, nout, lerr, ok )
166 CALL zgeqr2p( -1, 0, a, 1, b, w, info )
167 CALL chkxer(
'ZGEQR2P', infot, nout, lerr, ok )
169 CALL zgeqr2p( 0, -1, a, 1, b, w, info )
170 CALL chkxer(
'ZGEQR2P', infot, nout, lerr, ok )
172 CALL zgeqr2p( 2, 1, a, 1, b, w, info )
173 CALL chkxer(
'ZGEQR2P', infot, nout, lerr, ok )
179 CALL zungqr( -1, 0, 0, a, 1, x, w, 1, info )
180 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
182 CALL zungqr( 0, -1, 0, a, 1, x, w, 1, info )
183 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
185 CALL zungqr( 1, 2, 0, a, 1, x, w, 2, info )
186 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
188 CALL zungqr( 0, 0, -1, a, 1, x, w, 1, info )
189 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
191 CALL zungqr( 1, 1, 2, a, 1, x, w, 1, info )
192 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
194 CALL zungqr( 2, 2, 0, a, 1, x, w, 2, info )
195 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
197 CALL zungqr( 2, 2, 0, a, 2, x, w, 1, info )
198 CALL chkxer(
'ZUNGQR', infot, nout, lerr, ok )
204 CALL zung2r( -1, 0, 0, a, 1, x, w, info )
205 CALL chkxer(
'ZUNG2R', infot, nout, lerr, ok )
207 CALL zung2r( 0, -1, 0, a, 1, x, w, info )
208 CALL chkxer(
'ZUNG2R', infot, nout, lerr, ok )
210 CALL zung2r( 1, 2, 0, a, 1, x, w, info )
211 CALL chkxer(
'ZUNG2R', infot, nout, lerr, ok )
213 CALL zung2r( 0, 0, -1, a, 1, x, w, info )
214 CALL chkxer(
'ZUNG2R', infot, nout, lerr, ok )
216 CALL zung2r( 2, 1, 2, a, 2, x, w, info )
217 CALL chkxer(
'ZUNG2R', infot, nout, lerr, ok )
219 CALL zung2r( 2, 1, 0, a, 1, x, w, info )
220 CALL chkxer(
'ZUNG2R', infot, nout, lerr, ok )
226 CALL zunmqr(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
227 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
229 CALL zunmqr(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
230 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
232 CALL zunmqr(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
233 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
235 CALL zunmqr(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
236 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
238 CALL zunmqr(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
239 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
241 CALL zunmqr(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
242 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
244 CALL zunmqr(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
245 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
247 CALL zunmqr(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
248 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
250 CALL zunmqr(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
251 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
253 CALL zunmqr(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, 1, info )
254 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
256 CALL zunmqr(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
257 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
259 CALL zunmqr(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
260 CALL chkxer(
'ZUNMQR', infot, nout, lerr, ok )
266 CALL zunm2r(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
267 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
269 CALL zunm2r(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
270 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
272 CALL zunm2r(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
273 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
275 CALL zunm2r(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
276 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
278 CALL zunm2r(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
279 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
281 CALL zunm2r(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
282 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
284 CALL zunm2r(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
285 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
287 CALL zunm2r(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, info )
288 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
290 CALL zunm2r(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, info )
291 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
293 CALL zunm2r(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, info )
294 CALL chkxer(
'ZUNM2R', infot, nout, lerr, ok )
298 CALL alaesm( path, ok, nout )
subroutine alaesm(path, ok, nout)
ALAESM
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine zgeqr2(m, n, a, lda, tau, work, info)
ZGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm.
subroutine zgeqr2p(m, n, a, lda, tau, work, info)
ZGEQR2P computes the QR factorization of a general rectangular matrix with non-negative diagonal elem...
subroutine zgeqrf(m, n, a, lda, tau, work, lwork, info)
ZGEQRF
subroutine zgeqrfp(m, n, a, lda, tau, work, lwork, info)
ZGEQRFP
subroutine zung2r(m, n, k, a, lda, tau, work, info)
ZUNG2R
subroutine zungqr(m, n, k, a, lda, tau, work, lwork, info)
ZUNGQR
subroutine zunm2r(side, trans, m, n, k, a, lda, tau, c, ldc, work, info)
ZUNM2R multiplies a general matrix by the unitary matrix from a QR factorization determined by cgeqrf...
subroutine zunmqr(side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
ZUNMQR
subroutine zerrqr(path, nunit)
ZERRQR