73 parameter ( nmax = 2 )
76 INTEGER i, info, j, nb
79 DOUBLE PRECISION a( nmax, nmax ), t( nmax, nmax ), w( nmax ),
80 $ c( nmax, nmax ), tau(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 c( i, j ) = 1.d0 / dble( i+j )
109 t( i, j ) = 1.d0 / dble( i+j )
121 CALL dgeqr( -1, 0, a, 1, tau, 1, w, 1, info )
122 CALL chkxer(
'DGEQR', infot, nout, lerr, ok )
124 CALL dgeqr( 0, -1, a, 1, tau, 1, w, 1, info )
125 CALL chkxer(
'DGEQR', infot, nout, lerr, ok )
127 CALL dgeqr( 1, 1, a, 0, tau, 1, w, 1, info )
128 CALL chkxer(
'DGEQR', infot, nout, lerr, ok )
130 CALL dgeqr( 3, 2, a, 3, tau, 1, w, 1, info )
131 CALL chkxer(
'DGEQR', infot, nout, lerr, ok )
133 CALL dgeqr( 3, 2, a, 3, tau, 7, w, 0, info )
134 CALL chkxer(
'DGEQR', infot, nout, lerr, ok )
143 CALL dgemqr(
'/',
'N', 0, 0, 0, a, 1, tau, 1, c, 1, w, 1,info)
144 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
146 CALL dgemqr(
'L',
'/', 0, 0, 0, a, 1, tau, 1, c, 1, w, 1,info)
147 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
149 CALL dgemqr(
'L',
'N', -1, 0, 0, a, 1, tau, 1, c, 1, w,1,info)
150 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
152 CALL dgemqr(
'L',
'N', 0, -1, 0, a, 1, tau, 1, c, 1, w,1,info)
153 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
155 CALL dgemqr(
'L',
'N', 0, 0, -1, a, 1, tau, 1, c, 1, w,1,info)
156 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
158 CALL dgemqr(
'R',
'N', 0, 0, -1, a, 1, tau, 1, c, 1, w,1,info)
159 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
161 CALL dgemqr(
'L',
'N', 2, 1, 0, a, 0, tau, 1, c, 1, w, 1,info)
162 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
164 CALL dgemqr(
'R',
'N', 2, 2, 1, a, 2, tau, 0, c, 1, w, 1,info)
165 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
167 CALL dgemqr(
'L',
'N', 2, 2, 1, a, 2, tau, 0, c, 1, w, 1,info)
168 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
170 CALL dgemqr(
'L',
'N', 2, 1, 1, a, 2, tau, 6, c, 0, w, 1,info)
171 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
173 CALL dgemqr(
'L',
'N', 2, 2, 1, a, 2, tau, 6, c, 2, w, 0,info)
174 CALL chkxer(
'DGEMQR', infot, nout, lerr, ok )
180 CALL dgelq( -1, 0, a, 1, tau, 1, w, 1, info )
181 CALL chkxer(
'DGELQ', infot, nout, lerr, ok )
183 CALL dgelq( 0, -1, a, 1, tau, 1, w, 1, info )
184 CALL chkxer(
'DGELQ', infot, nout, lerr, ok )
186 CALL dgelq( 1, 1, a, 0, tau, 1, w, 1, info )
187 CALL chkxer(
'DGELQ', infot, nout, lerr, ok )
189 CALL dgelq( 2, 3, a, 3, tau, 1, w, 1, info )
190 CALL chkxer(
'DGELQ', infot, nout, lerr, ok )
192 CALL dgelq( 2, 3, a, 3, tau, 7, w, 0, info )
193 CALL chkxer(
'DGELQ', infot, nout, lerr, ok )
202 CALL dgemlq(
'/',
'N', 0, 0, 0, a, 1, tau, 1, c, 1, w, 1,info)
203 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
205 CALL dgemlq(
'L',
'/', 0, 0, 0, a, 1, tau, 1, c, 1, w, 1,info)
206 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
208 CALL dgemlq(
'L',
'N', -1, 0, 0, a, 1, tau, 1, c, 1, w,1,info)
209 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
211 CALL dgemlq(
'L',
'N', 0, -1, 0, a, 1, tau, 1, c, 1, w,1,info)
212 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
214 CALL dgemlq(
'L',
'N', 0, 0, -1, a, 1, tau, 1, c, 1, w,1,info)
215 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
217 CALL dgemlq(
'R',
'N', 0, 0, -1, a, 1, tau, 1, c, 1, w,1,info)
218 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
220 CALL dgemlq(
'L',
'N', 1, 2, 0, a, 0, tau, 1, c, 1, w, 1,info)
221 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
223 CALL dgemlq(
'R',
'N', 2, 2, 1, a, 1, tau, 0, c, 1, w, 1,info)
224 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
226 CALL dgemlq(
'L',
'N', 2, 2, 1, a, 1, tau, 0, c, 1, w, 1,info)
227 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
229 CALL dgemlq(
'L',
'N', 1, 2, 1, a, 1, tau, 6, c, 0, w, 1,info)
230 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
232 CALL dgemlq(
'L',
'N', 2, 2, 1, a, 2, tau, 6, c, 2, w, 0,info)
233 CALL chkxer(
'DGEMLQ', infot, nout, lerr, ok )
237 CALL alaesm( path, ok, nout )
subroutine dgemlq(SIDE, TRANS, M, N, K, A, LDA, T, TSIZE, C, LDC, WORK, LWORK, INFO)
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine dgeqr(M, N, A, LDA, T, TSIZE, WORK, LWORK, INFO)
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine dgemqr(SIDE, TRANS, M, N, K, A, LDA, T, TSIZE, C, LDC, WORK, LWORK, INFO)
subroutine dgelq(M, N, A, LDA, T, TSIZE, WORK, LWORK, INFO)