72 parameter ( nmax = 2 )
78 DOUBLE PRECISION 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 ) = 1.d0 / dble( i+j )
108 af( i, j ) = 1.d0 / dble( i+j )
122 CALL dgeqrf( -1, 0, a, 1, b, w, 1, info )
123 CALL chkxer(
'DGEQRF', infot, nout, lerr, ok )
125 CALL dgeqrf( 0, -1, a, 1, b, w, 1, info )
126 CALL chkxer(
'DGEQRF', infot, nout, lerr, ok )
128 CALL dgeqrf( 2, 1, a, 1, b, w, 1, info )
129 CALL chkxer(
'DGEQRF', infot, nout, lerr, ok )
131 CALL dgeqrf( 1, 2, a, 1, b, w, 1, info )
132 CALL chkxer(
'DGEQRF', infot, nout, lerr, ok )
138 CALL dgeqrfp( -1, 0, a, 1, b, w, 1, info )
139 CALL chkxer(
'DGEQRFP', infot, nout, lerr, ok )
141 CALL dgeqrfp( 0, -1, a, 1, b, w, 1, info )
142 CALL chkxer(
'DGEQRFP', infot, nout, lerr, ok )
144 CALL dgeqrfp( 2, 1, a, 1, b, w, 1, info )
145 CALL chkxer(
'DGEQRFP', infot, nout, lerr, ok )
147 CALL dgeqrfp( 1, 2, a, 1, b, w, 1, info )
148 CALL chkxer(
'DGEQRFP', infot, nout, lerr, ok )
154 CALL dgeqr2( -1, 0, a, 1, b, w, info )
155 CALL chkxer(
'DGEQR2', infot, nout, lerr, ok )
157 CALL dgeqr2( 0, -1, a, 1, b, w, info )
158 CALL chkxer(
'DGEQR2', infot, nout, lerr, ok )
160 CALL dgeqr2( 2, 1, a, 1, b, w, info )
161 CALL chkxer(
'DGEQR2', infot, nout, lerr, ok )
167 CALL dgeqr2p( -1, 0, a, 1, b, w, info )
168 CALL chkxer(
'DGEQR2P', infot, nout, lerr, ok )
170 CALL dgeqr2p( 0, -1, a, 1, b, w, info )
171 CALL chkxer(
'DGEQR2P', infot, nout, lerr, ok )
173 CALL dgeqr2p( 2, 1, a, 1, b, w, info )
174 CALL chkxer(
'DGEQR2P', infot, nout, lerr, ok )
180 CALL dgeqrs( -1, 0, 0, a, 1, x, b, 1, w, 1, info )
181 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
183 CALL dgeqrs( 0, -1, 0, a, 1, x, b, 1, w, 1, info )
184 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
186 CALL dgeqrs( 1, 2, 0, a, 2, x, b, 2, w, 1, info )
187 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
189 CALL dgeqrs( 0, 0, -1, a, 1, x, b, 1, w, 1, info )
190 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
192 CALL dgeqrs( 2, 1, 0, a, 1, x, b, 2, w, 1, info )
193 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
195 CALL dgeqrs( 2, 1, 0, a, 2, x, b, 1, w, 1, info )
196 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
198 CALL dgeqrs( 1, 1, 2, a, 1, x, b, 1, w, 1, info )
199 CALL chkxer(
'DGEQRS', infot, nout, lerr, ok )
205 CALL dorgqr( -1, 0, 0, a, 1, x, w, 1, info )
206 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
208 CALL dorgqr( 0, -1, 0, a, 1, x, w, 1, info )
209 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
211 CALL dorgqr( 1, 2, 0, a, 1, x, w, 2, info )
212 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
214 CALL dorgqr( 0, 0, -1, a, 1, x, w, 1, info )
215 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
217 CALL dorgqr( 1, 1, 2, a, 1, x, w, 1, info )
218 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
220 CALL dorgqr( 2, 2, 0, a, 1, x, w, 2, info )
221 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
223 CALL dorgqr( 2, 2, 0, a, 2, x, w, 1, info )
224 CALL chkxer(
'DORGQR', infot, nout, lerr, ok )
230 CALL dorg2r( -1, 0, 0, a, 1, x, w, info )
231 CALL chkxer(
'DORG2R', infot, nout, lerr, ok )
233 CALL dorg2r( 0, -1, 0, a, 1, x, w, info )
234 CALL chkxer(
'DORG2R', infot, nout, lerr, ok )
236 CALL dorg2r( 1, 2, 0, a, 1, x, w, info )
237 CALL chkxer(
'DORG2R', infot, nout, lerr, ok )
239 CALL dorg2r( 0, 0, -1, a, 1, x, w, info )
240 CALL chkxer(
'DORG2R', infot, nout, lerr, ok )
242 CALL dorg2r( 2, 1, 2, a, 2, x, w, info )
243 CALL chkxer(
'DORG2R', infot, nout, lerr, ok )
245 CALL dorg2r( 2, 1, 0, a, 1, x, w, info )
246 CALL chkxer(
'DORG2R', infot, nout, lerr, ok )
252 CALL dormqr(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
253 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
255 CALL dormqr(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, 1, info )
256 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
258 CALL dormqr(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, 1, info )
259 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
261 CALL dormqr(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, 1, info )
262 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
264 CALL dormqr(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, 1, info )
265 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
267 CALL dormqr(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, 1, info )
268 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
270 CALL dormqr(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, 1, info )
271 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
273 CALL dormqr(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
274 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
276 CALL dormqr(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
277 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
279 CALL dormqr(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, 1, info )
280 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
282 CALL dormqr(
'L',
'N', 1, 2, 0, a, 1, x, af, 1, w, 1, info )
283 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
285 CALL dormqr(
'R',
'N', 2, 1, 0, a, 1, x, af, 2, w, 1, info )
286 CALL chkxer(
'DORMQR', infot, nout, lerr, ok )
292 CALL dorm2r(
'/',
'N', 0, 0, 0, a, 1, x, af, 1, w, info )
293 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
295 CALL dorm2r(
'L',
'/', 0, 0, 0, a, 1, x, af, 1, w, info )
296 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
298 CALL dorm2r(
'L',
'N', -1, 0, 0, a, 1, x, af, 1, w, info )
299 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
301 CALL dorm2r(
'L',
'N', 0, -1, 0, a, 1, x, af, 1, w, info )
302 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
304 CALL dorm2r(
'L',
'N', 0, 0, -1, a, 1, x, af, 1, w, info )
305 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
307 CALL dorm2r(
'L',
'N', 0, 1, 1, a, 1, x, af, 1, w, info )
308 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
310 CALL dorm2r(
'R',
'N', 1, 0, 1, a, 1, x, af, 1, w, info )
311 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
313 CALL dorm2r(
'L',
'N', 2, 1, 0, a, 1, x, af, 2, w, info )
314 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
316 CALL dorm2r(
'R',
'N', 1, 2, 0, a, 1, x, af, 1, w, info )
317 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
319 CALL dorm2r(
'L',
'N', 2, 1, 0, a, 2, x, af, 1, w, info )
320 CALL chkxer(
'DORM2R', infot, nout, lerr, ok )
324 CALL alaesm( path, ok, nout )
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine dgeqr2(M, N, A, LDA, TAU, WORK, INFO)
DGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm...
subroutine dormqr(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
DORMQR
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine dgeqr2p(M, N, A, LDA, TAU, WORK, INFO)
DGEQR2P computes the QR factorization of a general rectangular matrix with non-negative diagonal elem...
subroutine dgeqrs(M, N, NRHS, A, LDA, TAU, B, LDB, WORK, LWORK, INFO)
DGEQRS
subroutine dorm2r(SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO)
DORM2R multiplies a general matrix by the orthogonal matrix from a QR factorization determined by sge...
subroutine dgeqrf(M, N, A, LDA, TAU, WORK, LWORK, INFO)
DGEQRF
subroutine dorg2r(M, N, K, A, LDA, TAU, WORK, INFO)
DORG2R generates all or part of the orthogonal matrix Q from a QR factorization determined by sgeqrf ...
subroutine dgeqrfp(M, N, A, LDA, TAU, WORK, LWORK, INFO)
DGEQRFP
subroutine dorgqr(M, N, K, A, LDA, TAU, WORK, LWORK, INFO)
DORGQR