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