72 parameter ( nmax = 2 )
77 DOUBLE PRECISION rcond
81 DOUBLE PRECISION rw( nmax ), s( nmax )
82 COMPLEX*16 a( nmax, nmax ), b( nmax, nmax ), w( nmax )
97 COMMON / infoc / infot, nout, ok, lerr
98 COMMON / srnamc / srnamt
104 a( 1, 1 ) = ( 1.0d+0, 0.0d+0 )
105 a( 1, 2 ) = ( 2.0d+0, 0.0d+0 )
106 a( 2, 2 ) = ( 3.0d+0, 0.0d+0 )
107 a( 2, 1 ) = ( 4.0d+0, 0.0d+0 )
109 WRITE( nout, fmt = * )
113 IF(
lsamen( 2, c2,
'LS' ) )
THEN
119 CALL zgels(
'/', 0, 0, 0, a, 1, b, 1, w, 1, info )
120 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
122 CALL zgels(
'N', -1, 0, 0, a, 1, b, 1, w, 1, info )
123 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
125 CALL zgels(
'N', 0, -1, 0, a, 1, b, 1, w, 1, info )
126 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
128 CALL zgels(
'N', 0, 0, -1, a, 1, b, 1, w, 1, info )
129 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
131 CALL zgels(
'N', 2, 0, 0, a, 1, b, 2, w, 2, info )
132 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
134 CALL zgels(
'N', 2, 0, 0, a, 2, b, 1, w, 2, info )
135 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
137 CALL zgels(
'N', 1, 1, 0, a, 1, b, 1, w, 1, info )
138 CALL chkxer(
'ZGELS ', infot, nout, lerr, ok )
144 CALL zgelss( -1, 0, 0, a, 1, b, 1, s, rcond, irnk, w, 1, rw,
146 CALL chkxer(
'ZGELSS', infot, nout, lerr, ok )
148 CALL zgelss( 0, -1, 0, a, 1, b, 1, s, rcond, irnk, w, 1, rw,
150 CALL chkxer(
'ZGELSS', infot, nout, lerr, ok )
152 CALL zgelss( 0, 0, -1, a, 1, b, 1, s, rcond, irnk, w, 1, rw,
154 CALL chkxer(
'ZGELSS', infot, nout, lerr, ok )
156 CALL zgelss( 2, 0, 0, a, 1, b, 2, s, rcond, irnk, w, 2, rw,
158 CALL chkxer(
'ZGELSS', infot, nout, lerr, ok )
160 CALL zgelss( 2, 0, 0, a, 2, b, 1, s, rcond, irnk, w, 2, rw,
162 CALL chkxer(
'ZGELSS', infot, nout, lerr, ok )
168 CALL zgelsy( -1, 0, 0, a, 1, b, 1, ip, rcond, irnk, w, 10, rw,
170 CALL chkxer(
'ZGELSY', infot, nout, lerr, ok )
172 CALL zgelsy( 0, -1, 0, a, 1, b, 1, ip, rcond, irnk, w, 10, rw,
174 CALL chkxer(
'ZGELSY', infot, nout, lerr, ok )
176 CALL zgelsy( 0, 0, -1, a, 1, b, 1, ip, rcond, irnk, w, 10, rw,
178 CALL chkxer(
'ZGELSY', infot, nout, lerr, ok )
180 CALL zgelsy( 2, 0, 0, a, 1, b, 2, ip, rcond, irnk, w, 10, rw,
182 CALL chkxer(
'ZGELSY', infot, nout, lerr, ok )
184 CALL zgelsy( 2, 0, 0, a, 2, b, 1, ip, rcond, irnk, w, 10, rw,
186 CALL chkxer(
'ZGELSY', infot, nout, lerr, ok )
188 CALL zgelsy( 0, 3, 0, a, 1, b, 3, ip, rcond, irnk, w, 1, rw,
190 CALL chkxer(
'ZGELSY', infot, nout, lerr, ok )
196 CALL zgelsd( -1, 0, 0, a, 1, b, 1, s, rcond, irnk, w, 10, rw,
198 CALL chkxer(
'ZGELSD', infot, nout, lerr, ok )
200 CALL zgelsd( 0, -1, 0, a, 1, b, 1, s, rcond, irnk, w, 10, rw,
202 CALL chkxer(
'ZGELSD', infot, nout, lerr, ok )
204 CALL zgelsd( 0, 0, -1, a, 1, b, 1, s, rcond, irnk, w, 10, rw,
206 CALL chkxer(
'ZGELSD', infot, nout, lerr, ok )
208 CALL zgelsd( 2, 0, 0, a, 1, b, 2, s, rcond, irnk, w, 10, rw,
210 CALL chkxer(
'ZGELSD', infot, nout, lerr, ok )
212 CALL zgelsd( 2, 0, 0, a, 2, b, 1, s, rcond, irnk, w, 10, rw,
214 CALL chkxer(
'ZGELSD', infot, nout, lerr, ok )
216 CALL zgelsd( 2, 2, 1, a, 2, b, 2, s, rcond, irnk, w, 1, rw, ip,
218 CALL chkxer(
'ZGELSD', infot, nout, lerr, ok )
223 CALL alaesm( path, ok, nout )
subroutine zgels(TRANS, M, N, NRHS, A, LDA, B, LDB, WORK, LWORK, INFO)
ZGELS solves overdetermined or underdetermined systems for GE matrices
subroutine zgelsy(M, N, NRHS, A, LDA, B, LDB, JPVT, RCOND, RANK, WORK, LWORK, RWORK, INFO)
ZGELSY solves overdetermined or underdetermined systems for GE matrices
subroutine zgelss(M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK, WORK, LWORK, RWORK, INFO)
ZGELSS solves overdetermined or underdetermined systems for GE matrices
logical function lsamen(N, CA, CB)
LSAMEN
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine zgelsd(M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK, WORK, LWORK, RWORK, IWORK, INFO)
ZGELSD computes the minimum-norm solution to a linear least squares problem for GE matrices ...
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)