72 parameter ( nmax = 2 )
78 COMPLEX*16 a( nmax, nmax ), af( nmax, nmax ), b( nmax ),
79 $ w( nmax ), x( nmax )
91 COMMON / infoc / infot, nout, ok, lerr
92 COMMON / srnamc / srnamt
95 INTRINSIC dble, dcmplx
100 WRITE( nout, fmt = * )
106 a( i, j ) = dcmplx( 1.d0 / dble( i+j ),
107 $ -1.d0 / dble( i+j ) )
108 af( i, j ) = dcmplx( 1.d0 / dble( i+j ),
109 $ -1.d0 / dble( i+j ) )
123 CALL zgelqf( -1, 0, a, 1, b, w, 1, info )
124 CALL chkxer(
'ZGELQF', infot, nout, lerr, ok )
126 CALL zgelqf( 0, -1, a, 1, b, w, 1, info )
127 CALL chkxer(
'ZGELQF', infot, nout, lerr, ok )
129 CALL zgelqf( 2, 1, a, 1, b, w, 2, info )
130 CALL chkxer(
'ZGELQF', infot, nout, lerr, ok )
132 CALL zgelqf( 2, 1, a, 2, b, w, 1, info )
133 CALL chkxer(
'ZGELQF', infot, nout, lerr, ok )
139 CALL zgelq2( -1, 0, a, 1, b, w, info )
140 CALL chkxer(
'ZGELQ2', infot, nout, lerr, ok )
142 CALL zgelq2( 0, -1, a, 1, b, w, info )
143 CALL chkxer(
'ZGELQ2', infot, nout, lerr, ok )
145 CALL zgelq2( 2, 1, a, 1, b, w, info )
146 CALL chkxer(
'ZGELQ2', infot, nout, lerr, ok )
152 CALL zgelqs( -1, 0, 0, a, 1, x, b, 1, w, 1, info )
153 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
155 CALL zgelqs( 0, -1, 0, a, 1, x, b, 1, w, 1, info )
156 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
158 CALL zgelqs( 2, 1, 0, a, 2, x, b, 1, w, 1, info )
159 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
161 CALL zgelqs( 0, 0, -1, a, 1, x, b, 1, w, 1, info )
162 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
164 CALL zgelqs( 2, 2, 0, a, 1, x, b, 2, w, 1, info )
165 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
167 CALL zgelqs( 1, 2, 0, a, 1, x, b, 1, w, 1, info )
168 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
170 CALL zgelqs( 1, 1, 2, a, 1, x, b, 1, w, 1, info )
171 CALL chkxer(
'ZGELQS', infot, nout, lerr, ok )
177 CALL zunglq( -1, 0, 0, a, 1, x, w, 1, info )
178 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
180 CALL zunglq( 0, -1, 0, a, 1, x, w, 1, info )
181 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
183 CALL zunglq( 2, 1, 0, a, 2, x, w, 2, info )
184 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
186 CALL zunglq( 0, 0, -1, a, 1, x, w, 1, info )
187 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
189 CALL zunglq( 1, 1, 2, a, 1, x, w, 1, info )
190 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
192 CALL zunglq( 2, 2, 0, a, 1, x, w, 2, info )
193 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
195 CALL zunglq( 2, 2, 0, a, 2, x, w, 1, info )
196 CALL chkxer(
'ZUNGLQ', infot, nout, lerr, ok )
202 CALL zungl2( -1, 0, 0, a, 1, x, w, info )
203 CALL chkxer(
'ZUNGL2', infot, nout, lerr, ok )
205 CALL zungl2( 0, -1, 0, a, 1, x, w, info )
206 CALL chkxer(
'ZUNGL2', infot, nout, lerr, ok )
208 CALL zungl2( 2, 1, 0, a, 2, x, w, info )
209 CALL chkxer(
'ZUNGL2', infot, nout, lerr, ok )
211 CALL zungl2( 0, 0, -1, a, 1, x, w, info )
212 CALL chkxer(
'ZUNGL2', infot, nout, lerr, ok )
214 CALL zungl2( 1, 1, 2, a, 1, x, w, info )
215 CALL chkxer(
'ZUNGL2', infot, nout, lerr, ok )
217 CALL zungl2( 2, 2, 0, a, 1, x, w, info )
218 CALL chkxer(
'ZUNGL2', infot, nout, lerr, ok )
224 CALL zunmlq(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
225 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
227 CALL zunmlq(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
228 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
230 CALL zunmlq(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
231 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
233 CALL zunmlq(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
234 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
236 CALL zunmlq(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
237 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
239 CALL zunmlq(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
240 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
242 CALL zunmlq(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
243 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
245 CALL zunmlq(
'L',
'N', 2, 0, 2, a, 1, x, af, 2, w, 1, info )
246 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
248 CALL zunmlq(
'R',
'N', 0, 2, 2, a, 1, x, af, 1, w, 1, info )
249 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
251 CALL zunmlq(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, 1, info )
252 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
254 CALL zunmlq(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
255 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
257 CALL zunmlq(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
258 CALL chkxer(
'ZUNMLQ', infot, nout, lerr, ok )
264 CALL zunml2(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
265 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
267 CALL zunml2(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
268 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
270 CALL zunml2(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
271 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
273 CALL zunml2(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
274 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
276 CALL zunml2(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
277 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
279 CALL zunml2(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
280 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
282 CALL zunml2(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
283 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
285 CALL zunml2(
'L',
'N', 2, 1, 2, a, 1, x, af, 2, w, info )
286 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
288 CALL zunml2(
'R',
'N', 1, 2, 2, a, 1, x, af, 1, w, info )
289 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
291 CALL zunml2(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, info )
292 CALL chkxer(
'ZUNML2', infot, nout, lerr, ok )
296 CALL alaesm( path, ok, nout )
subroutine zunglq(M, N, K, A, LDA, TAU, WORK, LWORK, INFO)
ZUNGLQ
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine zgelq2(M, N, A, LDA, TAU, WORK, INFO)
ZGELQ2 computes the LQ factorization of a general rectangular matrix using an unblocked algorithm...
subroutine zgelqs(M, N, NRHS, A, LDA, TAU, B, LDB, WORK, LWORK, INFO)
ZGELQS
subroutine zungl2(M, N, K, A, LDA, TAU, WORK, INFO)
ZUNGL2 generates all or part of the unitary matrix Q from an LQ factorization determined by cgelqf (u...
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine zunmlq(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
ZUNMLQ
subroutine zgelqf(M, N, A, LDA, TAU, WORK, LWORK, INFO)
ZGELQF
subroutine zunml2(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
ZUNML2 multiplies a general matrix by the unitary matrix from a LQ factorization determined by cgelqf...