00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include "f2c.h"
00014 #include "blaswrap.h"
00015
00016
00017
00018 struct {
00019 integer infot, nout;
00020 logical ok, lerr;
00021 } infoc_;
00022
00023 #define infoc_1 infoc_
00024
00025 struct {
00026 char srnamt[32];
00027 } srnamc_;
00028
00029 #define srnamc_1 srnamc_
00030
00031
00032
00033 static integer c_n1 = -1;
00034 static integer c__0 = 0;
00035 static integer c__1 = 1;
00036 static integer c__2 = 2;
00037
00038 int derrrq_(char *path, integer *nunit)
00039 {
00040
00041 integer s_wsle(cilist *), e_wsle(void);
00042 int s_copy(char *, char *, ftnlen, ftnlen);
00043
00044
00045 doublereal a[4] , b[2];
00046 integer i__, j;
00047 doublereal w[2], x[2], af[4] ;
00048 integer info;
00049 extern int dgerq2_(integer *, integer *, doublereal *,
00050 integer *, doublereal *, doublereal *, integer *), dorgr2_(
00051 integer *, integer *, integer *, doublereal *, integer *,
00052 doublereal *, doublereal *, integer *), dormr2_(char *, char *,
00053 integer *, integer *, integer *, doublereal *, integer *,
00054 doublereal *, doublereal *, integer *, doublereal *, integer *), alaesm_(char *, logical *, integer *),
00055 dgerqf_(integer *, integer *, doublereal *, integer *, doublereal
00056 *, doublereal *, integer *, integer *), chkxer_(char *, integer *,
00057 integer *, logical *, logical *), dgerqs_(integer *,
00058 integer *, integer *, doublereal *, integer *, doublereal *,
00059 doublereal *, integer *, doublereal *, integer *, integer *),
00060 dorgrq_(integer *, integer *, integer *, doublereal *, integer *,
00061 doublereal *, doublereal *, integer *, integer *), dormrq_(char *,
00062 char *, integer *, integer *, integer *, doublereal *, integer *,
00063 doublereal *, doublereal *, integer *, doublereal *, integer *,
00064 integer *);
00065
00066
00067 static cilist io___1 = { 0, 0, 0, 0, 0 };
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111 infoc_1.nout = *nunit;
00112 io___1.ciunit = infoc_1.nout;
00113 s_wsle(&io___1);
00114 e_wsle();
00115
00116
00117
00118 for (j = 1; j <= 2; ++j) {
00119 for (i__ = 1; i__ <= 2; ++i__) {
00120 a[i__ + (j << 1) - 3] = 1. / (doublereal) (i__ + j);
00121 af[i__ + (j << 1) - 3] = 1. / (doublereal) (i__ + j);
00122
00123 }
00124 b[j - 1] = 0.;
00125 w[j - 1] = 0.;
00126 x[j - 1] = 0.;
00127
00128 }
00129 infoc_1.ok = TRUE_;
00130
00131
00132
00133
00134
00135 s_copy(srnamc_1.srnamt, "DGERQF", (ftnlen)32, (ftnlen)6);
00136 infoc_1.infot = 1;
00137 dgerqf_(&c_n1, &c__0, a, &c__1, b, w, &c__1, &info);
00138 chkxer_("DGERQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00139 infoc_1.ok);
00140 infoc_1.infot = 2;
00141 dgerqf_(&c__0, &c_n1, a, &c__1, b, w, &c__1, &info);
00142 chkxer_("DGERQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00143 infoc_1.ok);
00144 infoc_1.infot = 4;
00145 dgerqf_(&c__2, &c__1, a, &c__1, b, w, &c__2, &info);
00146 chkxer_("DGERQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00147 infoc_1.ok);
00148 infoc_1.infot = 7;
00149 dgerqf_(&c__2, &c__1, a, &c__2, b, w, &c__1, &info);
00150 chkxer_("DGERQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00151 infoc_1.ok);
00152
00153
00154
00155 s_copy(srnamc_1.srnamt, "DGERQ2", (ftnlen)32, (ftnlen)6);
00156 infoc_1.infot = 1;
00157 dgerq2_(&c_n1, &c__0, a, &c__1, b, w, &info);
00158 chkxer_("DGERQ2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00159 infoc_1.ok);
00160 infoc_1.infot = 2;
00161 dgerq2_(&c__0, &c_n1, a, &c__1, b, w, &info);
00162 chkxer_("DGERQ2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00163 infoc_1.ok);
00164 infoc_1.infot = 4;
00165 dgerq2_(&c__2, &c__1, a, &c__1, b, w, &info);
00166 chkxer_("DGERQ2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00167 infoc_1.ok);
00168
00169
00170
00171 s_copy(srnamc_1.srnamt, "DGERQS", (ftnlen)32, (ftnlen)6);
00172 infoc_1.infot = 1;
00173 dgerqs_(&c_n1, &c__0, &c__0, a, &c__1, x, b, &c__1, w, &c__1, &info);
00174 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00175 infoc_1.ok);
00176 infoc_1.infot = 2;
00177 dgerqs_(&c__0, &c_n1, &c__0, a, &c__1, x, b, &c__1, w, &c__1, &info);
00178 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00179 infoc_1.ok);
00180 infoc_1.infot = 2;
00181 dgerqs_(&c__2, &c__1, &c__0, a, &c__2, x, b, &c__1, w, &c__1, &info);
00182 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00183 infoc_1.ok);
00184 infoc_1.infot = 3;
00185 dgerqs_(&c__0, &c__0, &c_n1, a, &c__1, x, b, &c__1, w, &c__1, &info);
00186 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00187 infoc_1.ok);
00188 infoc_1.infot = 5;
00189 dgerqs_(&c__2, &c__2, &c__0, a, &c__1, x, b, &c__2, w, &c__1, &info);
00190 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00191 infoc_1.ok);
00192 infoc_1.infot = 8;
00193 dgerqs_(&c__2, &c__2, &c__0, a, &c__2, x, b, &c__1, w, &c__1, &info);
00194 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00195 infoc_1.ok);
00196 infoc_1.infot = 10;
00197 dgerqs_(&c__1, &c__1, &c__2, a, &c__1, x, b, &c__1, w, &c__1, &info);
00198 chkxer_("DGERQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00199 infoc_1.ok);
00200
00201
00202
00203 s_copy(srnamc_1.srnamt, "DORGRQ", (ftnlen)32, (ftnlen)6);
00204 infoc_1.infot = 1;
00205 dorgrq_(&c_n1, &c__0, &c__0, a, &c__1, x, w, &c__1, &info);
00206 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00207 infoc_1.ok);
00208 infoc_1.infot = 2;
00209 dorgrq_(&c__0, &c_n1, &c__0, a, &c__1, x, w, &c__1, &info);
00210 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00211 infoc_1.ok);
00212 infoc_1.infot = 2;
00213 dorgrq_(&c__2, &c__1, &c__0, a, &c__2, x, w, &c__2, &info);
00214 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00215 infoc_1.ok);
00216 infoc_1.infot = 3;
00217 dorgrq_(&c__0, &c__0, &c_n1, a, &c__1, x, w, &c__1, &info);
00218 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00219 infoc_1.ok);
00220 infoc_1.infot = 3;
00221 dorgrq_(&c__1, &c__2, &c__2, a, &c__1, x, w, &c__1, &info);
00222 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00223 infoc_1.ok);
00224 infoc_1.infot = 5;
00225 dorgrq_(&c__2, &c__2, &c__0, a, &c__1, x, w, &c__2, &info);
00226 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00227 infoc_1.ok);
00228 infoc_1.infot = 8;
00229 dorgrq_(&c__2, &c__2, &c__0, a, &c__2, x, w, &c__1, &info);
00230 chkxer_("DORGRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00231 infoc_1.ok);
00232
00233
00234
00235 s_copy(srnamc_1.srnamt, "DORGR2", (ftnlen)32, (ftnlen)6);
00236 infoc_1.infot = 1;
00237 dorgr2_(&c_n1, &c__0, &c__0, a, &c__1, x, w, &info);
00238 chkxer_("DORGR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00239 infoc_1.ok);
00240 infoc_1.infot = 2;
00241 dorgr2_(&c__0, &c_n1, &c__0, a, &c__1, x, w, &info);
00242 chkxer_("DORGR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00243 infoc_1.ok);
00244 infoc_1.infot = 2;
00245 dorgr2_(&c__2, &c__1, &c__0, a, &c__2, x, w, &info);
00246 chkxer_("DORGR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00247 infoc_1.ok);
00248 infoc_1.infot = 3;
00249 dorgr2_(&c__0, &c__0, &c_n1, a, &c__1, x, w, &info);
00250 chkxer_("DORGR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00251 infoc_1.ok);
00252 infoc_1.infot = 3;
00253 dorgr2_(&c__1, &c__2, &c__2, a, &c__2, x, w, &info);
00254 chkxer_("DORGR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00255 infoc_1.ok);
00256 infoc_1.infot = 5;
00257 dorgr2_(&c__2, &c__2, &c__0, a, &c__1, x, w, &info);
00258 chkxer_("DORGR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00259 infoc_1.ok);
00260
00261
00262
00263 s_copy(srnamc_1.srnamt, "DORMRQ", (ftnlen)32, (ftnlen)6);
00264 infoc_1.infot = 1;
00265 dormrq_("/", "N", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00266 info);
00267 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00268 infoc_1.ok);
00269 infoc_1.infot = 2;
00270 dormrq_("L", "/", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00271 info);
00272 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00273 infoc_1.ok);
00274 infoc_1.infot = 3;
00275 dormrq_("L", "N", &c_n1, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00276 info);
00277 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00278 infoc_1.ok);
00279 infoc_1.infot = 4;
00280 dormrq_("L", "N", &c__0, &c_n1, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00281 info);
00282 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00283 infoc_1.ok);
00284 infoc_1.infot = 5;
00285 dormrq_("L", "N", &c__0, &c__0, &c_n1, a, &c__1, x, af, &c__1, w, &c__1, &
00286 info);
00287 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00288 infoc_1.ok);
00289 infoc_1.infot = 5;
00290 dormrq_("L", "N", &c__0, &c__1, &c__1, a, &c__1, x, af, &c__1, w, &c__1, &
00291 info);
00292 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00293 infoc_1.ok);
00294 infoc_1.infot = 5;
00295 dormrq_("R", "N", &c__1, &c__0, &c__1, a, &c__1, x, af, &c__1, w, &c__1, &
00296 info);
00297 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00298 infoc_1.ok);
00299 infoc_1.infot = 7;
00300 dormrq_("L", "N", &c__2, &c__1, &c__2, a, &c__1, x, af, &c__2, w, &c__1, &
00301 info);
00302 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00303 infoc_1.ok);
00304 infoc_1.infot = 7;
00305 dormrq_("R", "N", &c__1, &c__2, &c__2, a, &c__1, x, af, &c__1, w, &c__1, &
00306 info);
00307 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00308 infoc_1.ok);
00309 infoc_1.infot = 10;
00310 dormrq_("L", "N", &c__2, &c__1, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00311 info);
00312 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00313 infoc_1.ok);
00314 infoc_1.infot = 12;
00315 dormrq_("L", "N", &c__1, &c__2, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00316 info);
00317 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00318 infoc_1.ok);
00319 infoc_1.infot = 12;
00320 dormrq_("R", "N", &c__2, &c__1, &c__0, a, &c__1, x, af, &c__2, w, &c__1, &
00321 info);
00322 chkxer_("DORMRQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00323 infoc_1.ok);
00324
00325
00326
00327 s_copy(srnamc_1.srnamt, "DORMR2", (ftnlen)32, (ftnlen)6);
00328 infoc_1.infot = 1;
00329 dormr2_("/", "N", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &info);
00330 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00331 infoc_1.ok);
00332 infoc_1.infot = 2;
00333 dormr2_("L", "/", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &info);
00334 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00335 infoc_1.ok);
00336 infoc_1.infot = 3;
00337 dormr2_("L", "N", &c_n1, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &info);
00338 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00339 infoc_1.ok);
00340 infoc_1.infot = 4;
00341 dormr2_("L", "N", &c__0, &c_n1, &c__0, a, &c__1, x, af, &c__1, w, &info);
00342 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00343 infoc_1.ok);
00344 infoc_1.infot = 5;
00345 dormr2_("L", "N", &c__0, &c__0, &c_n1, a, &c__1, x, af, &c__1, w, &info);
00346 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00347 infoc_1.ok);
00348 infoc_1.infot = 5;
00349 dormr2_("L", "N", &c__0, &c__1, &c__1, a, &c__1, x, af, &c__1, w, &info);
00350 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00351 infoc_1.ok);
00352 infoc_1.infot = 5;
00353 dormr2_("R", "N", &c__1, &c__0, &c__1, a, &c__1, x, af, &c__1, w, &info);
00354 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00355 infoc_1.ok);
00356 infoc_1.infot = 7;
00357 dormr2_("L", "N", &c__2, &c__1, &c__2, a, &c__1, x, af, &c__2, w, &info);
00358 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00359 infoc_1.ok);
00360 infoc_1.infot = 7;
00361 dormr2_("R", "N", &c__1, &c__2, &c__2, a, &c__1, x, af, &c__1, w, &info);
00362 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00363 infoc_1.ok);
00364 infoc_1.infot = 10;
00365 dormr2_("L", "N", &c__2, &c__1, &c__0, a, &c__1, x, af, &c__1, w, &info);
00366 chkxer_("DORMR2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00367 infoc_1.ok);
00368
00369
00370
00371 alaesm_(path, &infoc_1.ok, &infoc_1.nout);
00372
00373 return 0;
00374
00375
00376
00377 }