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 zgeqlf( -1, 0, a, 1, b, w, 1, info )
124 CALL chkxer(
'ZGEQLF', infot, nout, lerr, ok )
126 CALL zgeqlf( 0, -1, a, 1, b, w, 1, info )
127 CALL chkxer(
'ZGEQLF', infot, nout, lerr, ok )
129 CALL zgeqlf( 2, 1, a, 1, b, w, 1, info )
130 CALL chkxer(
'ZGEQLF', infot, nout, lerr, ok )
132 CALL zgeqlf( 1, 2, a, 1, b, w, 1, info )
133 CALL chkxer(
'ZGEQLF', infot, nout, lerr, ok )
139 CALL zgeql2( -1, 0, a, 1, b, w, info )
140 CALL chkxer(
'ZGEQL2', infot, nout, lerr, ok )
142 CALL zgeql2( 0, -1, a, 1, b, w, info )
143 CALL chkxer(
'ZGEQL2', infot, nout, lerr, ok )
145 CALL zgeql2( 2, 1, a, 1, b, w, info )
146 CALL chkxer(
'ZGEQL2', infot, nout, lerr, ok )
152 CALL zgeqls( -1, 0, 0, a, 1, x, b, 1, w, 1, info )
153 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
155 CALL zgeqls( 0, -1, 0, a, 1, x, b, 1, w, 1, info )
156 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
158 CALL zgeqls( 1, 2, 0, a, 1, x, b, 1, w, 1, info )
159 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
161 CALL zgeqls( 0, 0, -1, a, 1, x, b, 1, w, 1, info )
162 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
164 CALL zgeqls( 2, 1, 0, a, 1, x, b, 2, w, 1, info )
165 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
167 CALL zgeqls( 2, 1, 0, a, 2, x, b, 1, w, 1, info )
168 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
170 CALL zgeqls( 1, 1, 2, a, 1, x, b, 1, w, 1, info )
171 CALL chkxer(
'ZGEQLS', infot, nout, lerr, ok )
177 CALL zungql( -1, 0, 0, a, 1, x, w, 1, info )
178 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
180 CALL zungql( 0, -1, 0, a, 1, x, w, 1, info )
181 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
183 CALL zungql( 1, 2, 0, a, 1, x, w, 2, info )
184 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
186 CALL zungql( 0, 0, -1, a, 1, x, w, 1, info )
187 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
189 CALL zungql( 1, 1, 2, a, 1, x, w, 1, info )
190 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
192 CALL zungql( 2, 1, 0, a, 1, x, w, 1, info )
193 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
195 CALL zungql( 2, 2, 0, a, 2, x, w, 1, info )
196 CALL chkxer(
'ZUNGQL', infot, nout, lerr, ok )
202 CALL zung2l( -1, 0, 0, a, 1, x, w, info )
203 CALL chkxer(
'ZUNG2L', infot, nout, lerr, ok )
205 CALL zung2l( 0, -1, 0, a, 1, x, w, info )
206 CALL chkxer(
'ZUNG2L', infot, nout, lerr, ok )
208 CALL zung2l( 1, 2, 0, a, 1, x, w, info )
209 CALL chkxer(
'ZUNG2L', infot, nout, lerr, ok )
211 CALL zung2l( 0, 0, -1, a, 1, x, w, info )
212 CALL chkxer(
'ZUNG2L', infot, nout, lerr, ok )
214 CALL zung2l( 2, 1, 2, a, 2, x, w, info )
215 CALL chkxer(
'ZUNG2L', infot, nout, lerr, ok )
217 CALL zung2l( 2, 1, 0, a, 1, x, w, info )
218 CALL chkxer(
'ZUNG2L', infot, nout, lerr, ok )
224 CALL zunmql(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
225 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
227 CALL zunmql(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
228 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
230 CALL zunmql(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
231 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
233 CALL zunmql(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
234 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
236 CALL zunmql(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
237 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
239 CALL zunmql(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
240 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
242 CALL zunmql(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
243 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
245 CALL zunmql(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
246 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
248 CALL zunmql(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
249 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
251 CALL zunmql(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, 1, info )
252 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
254 CALL zunmql(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
255 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
257 CALL zunmql(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
258 CALL chkxer(
'ZUNMQL', infot, nout, lerr, ok )
264 CALL zunm2l(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
265 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
267 CALL zunm2l(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
268 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
270 CALL zunm2l(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
271 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
273 CALL zunm2l(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
274 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
276 CALL zunm2l(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
277 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
279 CALL zunm2l(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
280 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
282 CALL zunm2l(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
283 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
285 CALL zunm2l(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, info )
286 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
288 CALL zunm2l(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, info )
289 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
291 CALL zunm2l(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, info )
292 CALL chkxer(
'ZUNM2L', infot, nout, lerr, ok )
296 CALL alaesm( path, ok, nout )
subroutine zgeql2(M, N, A, LDA, TAU, WORK, INFO)
ZGEQL2 computes the QL factorization of a general rectangular matrix using an unblocked algorithm...
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine zungql(M, N, K, A, LDA, TAU, WORK, LWORK, INFO)
ZUNGQL
subroutine zunm2l(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
ZUNM2L multiplies a general matrix by the unitary matrix from a QL factorization determined by cgeqlf...
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine zgeqls(M, N, NRHS, A, LDA, TAU, B, LDB, WORK, LWORK, INFO)
ZGEQLS
subroutine zung2l(M, N, K, A, LDA, TAU, WORK, INFO)
ZUNG2L generates all or part of the unitary matrix Q from a QL factorization determined by cgeqlf (un...
subroutine zunmql(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
ZUNMQL
subroutine zgeqlf(M, N, A, LDA, TAU, WORK, LWORK, INFO)
ZGEQLF