72 parameter ( nmax = 2 )
78 COMPLEX a( nmax, nmax ), af( nmax, nmax ), b( nmax ),
79 $ w( nmax ), x( nmax )
92 COMMON / infoc / infot, nout, ok, lerr
93 COMMON / srnamc / srnamt
101 WRITE( nout, fmt = * )
107 a( i, j ) = cmplx( 1. /
REAL( I+J ), -1. /
REAL( I+J ) )
108 af( i, j ) = cmplx( 1. /
REAL( I+J ), -1. /
REAL( I+J ) )
122 CALL cgeqrf( -1, 0, a, 1, b, w, 1, info )
123 CALL chkxer(
'CGEQRF', infot, nout, lerr, ok )
125 CALL cgeqrf( 0, -1, a, 1, b, w, 1, info )
126 CALL chkxer(
'CGEQRF', infot, nout, lerr, ok )
128 CALL cgeqrf( 2, 1, a, 1, b, w, 1, info )
129 CALL chkxer(
'CGEQRF', infot, nout, lerr, ok )
131 CALL cgeqrf( 1, 2, a, 1, b, w, 1, info )
132 CALL chkxer(
'CGEQRF', infot, nout, lerr, ok )
138 CALL cgeqrfp( -1, 0, a, 1, b, w, 1, info )
139 CALL chkxer(
'CGEQRFP', infot, nout, lerr, ok )
141 CALL cgeqrfp( 0, -1, a, 1, b, w, 1, info )
142 CALL chkxer(
'CGEQRFP', infot, nout, lerr, ok )
144 CALL cgeqrfp( 2, 1, a, 1, b, w, 1, info )
145 CALL chkxer(
'CGEQRFP', infot, nout, lerr, ok )
147 CALL cgeqrfp( 1, 2, a, 1, b, w, 1, info )
148 CALL chkxer(
'CGEQRFP', infot, nout, lerr, ok )
154 CALL cgeqr2( -1, 0, a, 1, b, w, info )
155 CALL chkxer(
'CGEQR2', infot, nout, lerr, ok )
157 CALL cgeqr2( 0, -1, a, 1, b, w, info )
158 CALL chkxer(
'CGEQR2', infot, nout, lerr, ok )
160 CALL cgeqr2( 2, 1, a, 1, b, w, info )
161 CALL chkxer(
'CGEQR2', infot, nout, lerr, ok )
167 CALL cgeqr2p( -1, 0, a, 1, b, w, info )
168 CALL chkxer(
'CGEQR2P', infot, nout, lerr, ok )
170 CALL cgeqr2p( 0, -1, a, 1, b, w, info )
171 CALL chkxer(
'CGEQR2P', infot, nout, lerr, ok )
173 CALL cgeqr2p( 2, 1, a, 1, b, w, info )
174 CALL chkxer(
'CGEQR2P', infot, nout, lerr, ok )
180 CALL cgeqrs( -1, 0, 0, a, 1, x, b, 1, w, 1, info )
181 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
183 CALL cgeqrs( 0, -1, 0, a, 1, x, b, 1, w, 1, info )
184 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
186 CALL cgeqrs( 1, 2, 0, a, 2, x, b, 2, w, 1, info )
187 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
189 CALL cgeqrs( 0, 0, -1, a, 1, x, b, 1, w, 1, info )
190 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
192 CALL cgeqrs( 2, 1, 0, a, 1, x, b, 2, w, 1, info )
193 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
195 CALL cgeqrs( 2, 1, 0, a, 2, x, b, 1, w, 1, info )
196 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
198 CALL cgeqrs( 1, 1, 2, a, 1, x, b, 1, w, 1, info )
199 CALL chkxer(
'CGEQRS', infot, nout, lerr, ok )
205 CALL cungqr( -1, 0, 0, a, 1, x, w, 1, info )
206 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
208 CALL cungqr( 0, -1, 0, a, 1, x, w, 1, info )
209 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
211 CALL cungqr( 1, 2, 0, a, 1, x, w, 2, info )
212 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
214 CALL cungqr( 0, 0, -1, a, 1, x, w, 1, info )
215 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
217 CALL cungqr( 1, 1, 2, a, 1, x, w, 1, info )
218 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
220 CALL cungqr( 2, 2, 0, a, 1, x, w, 2, info )
221 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
223 CALL cungqr( 2, 2, 0, a, 2, x, w, 1, info )
224 CALL chkxer(
'CUNGQR', infot, nout, lerr, ok )
230 CALL cung2r( -1, 0, 0, a, 1, x, w, info )
231 CALL chkxer(
'CUNG2R', infot, nout, lerr, ok )
233 CALL cung2r( 0, -1, 0, a, 1, x, w, info )
234 CALL chkxer(
'CUNG2R', infot, nout, lerr, ok )
236 CALL cung2r( 1, 2, 0, a, 1, x, w, info )
237 CALL chkxer(
'CUNG2R', infot, nout, lerr, ok )
239 CALL cung2r( 0, 0, -1, a, 1, x, w, info )
240 CALL chkxer(
'CUNG2R', infot, nout, lerr, ok )
242 CALL cung2r( 2, 1, 2, a, 2, x, w, info )
243 CALL chkxer(
'CUNG2R', infot, nout, lerr, ok )
245 CALL cung2r( 2, 1, 0, a, 1, x, w, info )
246 CALL chkxer(
'CUNG2R', infot, nout, lerr, ok )
252 CALL cunmqr(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
253 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
255 CALL cunmqr(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
256 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
258 CALL cunmqr(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
259 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
261 CALL cunmqr(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
262 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
264 CALL cunmqr(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
265 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
267 CALL cunmqr(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
268 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
270 CALL cunmqr(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
271 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
273 CALL cunmqr(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
274 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
276 CALL cunmqr(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
277 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
279 CALL cunmqr(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, 1, info )
280 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
282 CALL cunmqr(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
283 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
285 CALL cunmqr(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
286 CALL chkxer(
'CUNMQR', infot, nout, lerr, ok )
292 CALL cunm2r(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
293 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
295 CALL cunm2r(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
296 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
298 CALL cunm2r(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
299 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
301 CALL cunm2r(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
302 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
304 CALL cunm2r(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
305 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
307 CALL cunm2r(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
308 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
310 CALL cunm2r(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
311 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
313 CALL cunm2r(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, info )
314 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
316 CALL cunm2r(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, info )
317 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
319 CALL cunm2r(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, info )
320 CALL chkxer(
'CUNM2R', infot, nout, lerr, ok )
324 CALL alaesm( path, ok, nout )
subroutine cgeqrs(M, N, NRHS, A, LDA, TAU, B, LDB, WORK, LWORK, INFO)
CGEQRS
subroutine cgeqr2(M, N, A, LDA, TAU, WORK, INFO)
CGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm...
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine cungqr(M, N, K, A, LDA, TAU, WORK, LWORK, INFO)
CUNGQR
subroutine cunm2r(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
CUNM2R multiplies a general matrix by the unitary matrix from a QR factorization determined by cgeqrf...
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine cung2r(M, N, K, A, LDA, TAU, WORK, INFO)
CUNG2R
subroutine cgeqrf(M, N, A, LDA, TAU, WORK, LWORK, INFO)
CGEQRF
subroutine cunmqr(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
CUNMQR
subroutine cgeqr2p(M, N, A, LDA, TAU, WORK, INFO)
CGEQR2P computes the QR factorization of a general rectangular matrix with non-negative diagonal elem...
subroutine cgeqrfp(M, N, A, LDA, TAU, WORK, LWORK, INFO)
CGEQRFP