72 parameter ( nmax = 2 )
78 COMPLEX a( nmax, nmax ), af( nmax, nmax ), b( nmax ),
79 $ w( nmax ), x( nmax )
91 COMMON / infoc / infot, nout, ok, lerr
92 COMMON / srnamc / srnamt
100 WRITE( nout, fmt = * )
106 a( i, j ) = cmplx( 1. /
REAL( I+J ), -1. /
REAL( I+J ) )
107 af( i, j ) = cmplx( 1. /
REAL( I+J ), -1. /
REAL( I+J ) )
121 CALL cgelqf( -1, 0, a, 1, b, w, 1, info )
122 CALL chkxer(
'CGELQF', infot, nout, lerr, ok )
124 CALL cgelqf( 0, -1, a, 1, b, w, 1, info )
125 CALL chkxer(
'CGELQF', infot, nout, lerr, ok )
127 CALL cgelqf( 2, 1, a, 1, b, w, 2, info )
128 CALL chkxer(
'CGELQF', infot, nout, lerr, ok )
130 CALL cgelqf( 2, 1, a, 2, b, w, 1, info )
131 CALL chkxer(
'CGELQF', infot, nout, lerr, ok )
137 CALL cgelq2( -1, 0, a, 1, b, w, info )
138 CALL chkxer(
'CGELQ2', infot, nout, lerr, ok )
140 CALL cgelq2( 0, -1, a, 1, b, w, info )
141 CALL chkxer(
'CGELQ2', infot, nout, lerr, ok )
143 CALL cgelq2( 2, 1, a, 1, b, w, info )
144 CALL chkxer(
'CGELQ2', infot, nout, lerr, ok )
150 CALL cgelqs( -1, 0, 0, a, 1, x, b, 1, w, 1, info )
151 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
153 CALL cgelqs( 0, -1, 0, a, 1, x, b, 1, w, 1, info )
154 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
156 CALL cgelqs( 2, 1, 0, a, 2, x, b, 1, w, 1, info )
157 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
159 CALL cgelqs( 0, 0, -1, a, 1, x, b, 1, w, 1, info )
160 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
162 CALL cgelqs( 2, 2, 0, a, 1, x, b, 2, w, 1, info )
163 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
165 CALL cgelqs( 1, 2, 0, a, 1, x, b, 1, w, 1, info )
166 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
168 CALL cgelqs( 1, 1, 2, a, 1, x, b, 1, w, 1, info )
169 CALL chkxer(
'CGELQS', infot, nout, lerr, ok )
175 CALL cunglq( -1, 0, 0, a, 1, x, w, 1, info )
176 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
178 CALL cunglq( 0, -1, 0, a, 1, x, w, 1, info )
179 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
181 CALL cunglq( 2, 1, 0, a, 2, x, w, 2, info )
182 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
184 CALL cunglq( 0, 0, -1, a, 1, x, w, 1, info )
185 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
187 CALL cunglq( 1, 1, 2, a, 1, x, w, 1, info )
188 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
190 CALL cunglq( 2, 2, 0, a, 1, x, w, 2, info )
191 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
193 CALL cunglq( 2, 2, 0, a, 2, x, w, 1, info )
194 CALL chkxer(
'CUNGLQ', infot, nout, lerr, ok )
200 CALL cungl2( -1, 0, 0, a, 1, x, w, info )
201 CALL chkxer(
'CUNGL2', infot, nout, lerr, ok )
203 CALL cungl2( 0, -1, 0, a, 1, x, w, info )
204 CALL chkxer(
'CUNGL2', infot, nout, lerr, ok )
206 CALL cungl2( 2, 1, 0, a, 2, x, w, info )
207 CALL chkxer(
'CUNGL2', infot, nout, lerr, ok )
209 CALL cungl2( 0, 0, -1, a, 1, x, w, info )
210 CALL chkxer(
'CUNGL2', infot, nout, lerr, ok )
212 CALL cungl2( 1, 1, 2, a, 1, x, w, info )
213 CALL chkxer(
'CUNGL2', infot, nout, lerr, ok )
215 CALL cungl2( 2, 2, 0, a, 1, x, w, info )
216 CALL chkxer(
'CUNGL2', infot, nout, lerr, ok )
222 CALL cunmlq(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
223 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
225 CALL cunmlq(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
226 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
228 CALL cunmlq(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
229 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
231 CALL cunmlq(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
232 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
234 CALL cunmlq(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
235 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
237 CALL cunmlq(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
238 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
240 CALL cunmlq(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
241 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
243 CALL cunmlq(
'L',
'N', 2, 0, 2, a, 1, x, af, 2, w, 1, info )
244 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
246 CALL cunmlq(
'R',
'N', 0, 2, 2, a, 1, x, af, 1, w, 1, info )
247 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
249 CALL cunmlq(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, 1, info )
250 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
252 CALL cunmlq(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
253 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
255 CALL cunmlq(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
256 CALL chkxer(
'CUNMLQ', infot, nout, lerr, ok )
262 CALL cunml2(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
263 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
265 CALL cunml2(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
266 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
268 CALL cunml2(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
269 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
271 CALL cunml2(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
272 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
274 CALL cunml2(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
275 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
277 CALL cunml2(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
278 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
280 CALL cunml2(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
281 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
283 CALL cunml2(
'L',
'N', 2, 1, 2, a, 1, x, af, 2, w, info )
284 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
286 CALL cunml2(
'R',
'N', 1, 2, 2, a, 1, x, af, 1, w, info )
287 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
289 CALL cunml2(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, info )
290 CALL chkxer(
'CUNML2', infot, nout, lerr, ok )
294 CALL alaesm( path, ok, nout )
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine cgelqf(M, N, A, LDA, TAU, WORK, LWORK, INFO)
CGELQF
subroutine cunglq(M, N, K, A, LDA, TAU, WORK, LWORK, INFO)
CUNGLQ
subroutine cungl2(M, N, K, A, LDA, TAU, WORK, INFO)
CUNGL2 generates all or part of the unitary matrix Q from an LQ factorization determined by cgelqf (u...
subroutine cunml2(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
CUNML2 multiplies a general matrix by the unitary matrix from a LQ factorization determined by cgelqf...
subroutine cgelqs(M, N, NRHS, A, LDA, TAU, B, LDB, WORK, LWORK, INFO)
CGELQS
subroutine cunmlq(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
CUNMLQ
subroutine cgelq2(M, N, A, LDA, TAU, WORK, INFO)
CGELQ2 computes the LQ factorization of a general rectangular matrix using an unblocked algorithm...