72 parameter ( nmax = 2 )
78 DOUBLE PRECISION 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 ) = 1.d0 / dble( i+j )
107 af( i, j ) = 1.d0 / dble( i+j )
121 CALL dgerqf( -1, 0, a, 1, b, w, 1, info )
122 CALL chkxer(
'DGERQF', infot, nout, lerr, ok )
124 CALL dgerqf( 0, -1, a, 1, b, w, 1, info )
125 CALL chkxer(
'DGERQF', infot, nout, lerr, ok )
127 CALL dgerqf( 2, 1, a, 1, b, w, 2, info )
128 CALL chkxer(
'DGERQF', infot, nout, lerr, ok )
130 CALL dgerqf( 2, 1, a, 2, b, w, 1, info )
131 CALL chkxer(
'DGERQF', infot, nout, lerr, ok )
137 CALL dgerq2( -1, 0, a, 1, b, w, info )
138 CALL chkxer(
'DGERQ2', infot, nout, lerr, ok )
140 CALL dgerq2( 0, -1, a, 1, b, w, info )
141 CALL chkxer(
'DGERQ2', infot, nout, lerr, ok )
143 CALL dgerq2( 2, 1, a, 1, b, w, info )
144 CALL chkxer(
'DGERQ2', infot, nout, lerr, ok )
150 CALL dgerqs( -1, 0, 0, a, 1, x, b, 1, w, 1, info )
151 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
153 CALL dgerqs( 0, -1, 0, a, 1, x, b, 1, w, 1, info )
154 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
156 CALL dgerqs( 2, 1, 0, a, 2, x, b, 1, w, 1, info )
157 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
159 CALL dgerqs( 0, 0, -1, a, 1, x, b, 1, w, 1, info )
160 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
162 CALL dgerqs( 2, 2, 0, a, 1, x, b, 2, w, 1, info )
163 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
165 CALL dgerqs( 2, 2, 0, a, 2, x, b, 1, w, 1, info )
166 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
168 CALL dgerqs( 1, 1, 2, a, 1, x, b, 1, w, 1, info )
169 CALL chkxer(
'DGERQS', infot, nout, lerr, ok )
175 CALL dorgrq( -1, 0, 0, a, 1, x, w, 1, info )
176 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
178 CALL dorgrq( 0, -1, 0, a, 1, x, w, 1, info )
179 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
181 CALL dorgrq( 2, 1, 0, a, 2, x, w, 2, info )
182 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
184 CALL dorgrq( 0, 0, -1, a, 1, x, w, 1, info )
185 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
187 CALL dorgrq( 1, 2, 2, a, 1, x, w, 1, info )
188 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
190 CALL dorgrq( 2, 2, 0, a, 1, x, w, 2, info )
191 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
193 CALL dorgrq( 2, 2, 0, a, 2, x, w, 1, info )
194 CALL chkxer(
'DORGRQ', infot, nout, lerr, ok )
200 CALL dorgr2( -1, 0, 0, a, 1, x, w, info )
201 CALL chkxer(
'DORGR2', infot, nout, lerr, ok )
203 CALL dorgr2( 0, -1, 0, a, 1, x, w, info )
204 CALL chkxer(
'DORGR2', infot, nout, lerr, ok )
206 CALL dorgr2( 2, 1, 0, a, 2, x, w, info )
207 CALL chkxer(
'DORGR2', infot, nout, lerr, ok )
209 CALL dorgr2( 0, 0, -1, a, 1, x, w, info )
210 CALL chkxer(
'DORGR2', infot, nout, lerr, ok )
212 CALL dorgr2( 1, 2, 2, a, 2, x, w, info )
213 CALL chkxer(
'DORGR2', infot, nout, lerr, ok )
215 CALL dorgr2( 2, 2, 0, a, 1, x, w, info )
216 CALL chkxer(
'DORGR2', infot, nout, lerr, ok )
222 CALL dormrq(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
223 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
225 CALL dormrq(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
226 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
228 CALL dormrq(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
229 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
231 CALL dormrq(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
232 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
234 CALL dormrq(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
235 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
237 CALL dormrq(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
238 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
240 CALL dormrq(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
241 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
243 CALL dormrq(
'L',
'N', 2, 1, 2, a, 1, x, af, 2, w, 1, info )
244 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
246 CALL dormrq(
'R',
'N', 1, 2, 2, a, 1, x, af, 1, w, 1, info )
247 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
249 CALL dormrq(
'L',
'N', 2, 1, 0, a, 1, x, af, 1, w, 1, info )
250 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
252 CALL dormrq(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
253 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
255 CALL dormrq(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
256 CALL chkxer(
'DORMRQ', infot, nout, lerr, ok )
262 CALL dormr2(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
263 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
265 CALL dormr2(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
266 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
268 CALL dormr2(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
269 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
271 CALL dormr2(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
272 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
274 CALL dormr2(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
275 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
277 CALL dormr2(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
278 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
280 CALL dormr2(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
281 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
283 CALL dormr2(
'L',
'N', 2, 1, 2, a, 1, x, af, 2, w, info )
284 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
286 CALL dormr2(
'R',
'N', 1, 2, 2, a, 1, x, af, 1, w, info )
287 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
289 CALL dormr2(
'L',
'N', 2, 1, 0, a, 1, x, af, 1, w, info )
290 CALL chkxer(
'DORMR2', infot, nout, lerr, ok )
294 CALL alaesm( path, ok, nout )
subroutine dgerq2(M, N, A, LDA, TAU, WORK, INFO)
DGERQ2 computes the RQ factorization of a general rectangular matrix using an unblocked algorithm...
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine dormrq(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
DORMRQ
subroutine dgerqs(M, N, NRHS, A, LDA, TAU, B, LDB, WORK, LWORK, INFO)
DGERQS
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine dgerqf(M, N, A, LDA, TAU, WORK, LWORK, INFO)
DGERQF
subroutine dormr2(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
DORMR2 multiplies a general matrix by the orthogonal matrix from a RQ factorization determined by sge...
subroutine dorgrq(M, N, K, A, LDA, TAU, WORK, LWORK, INFO)
DORGRQ
subroutine dorgr2(M, N, K, A, LDA, TAU, WORK, INFO)
DORGR2 generates all or part of the orthogonal matrix Q from an RQ factorization determined by sgerqf...