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 derrlq_(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 dgelq2_(integer *, integer *, doublereal *,
00050 integer *, doublereal *, doublereal *, integer *), dorgl2_(
00051 integer *, integer *, integer *, doublereal *, integer *,
00052 doublereal *, doublereal *, integer *), dorml2_(char *, char *,
00053 integer *, integer *, integer *, doublereal *, integer *,
00054 doublereal *, doublereal *, integer *, doublereal *, integer *), alaesm_(char *, logical *, integer *),
00055 dgelqf_(integer *, integer *, doublereal *, integer *, doublereal
00056 *, doublereal *, integer *, integer *), dgelqs_(integer *,
00057 integer *, integer *, doublereal *, integer *, doublereal *,
00058 doublereal *, integer *, doublereal *, integer *, integer *),
00059 chkxer_(char *, integer *, integer *, logical *, logical *), dorglq_(integer *, integer *, integer *, doublereal *,
00060 integer *, doublereal *, doublereal *, integer *, integer *),
00061 dormlq_(char *, char *, integer *, integer *, integer *,
00062 doublereal *, integer *, doublereal *, doublereal *, integer *,
00063 doublereal *, integer *, integer *);
00064
00065
00066 static cilist io___1 = { 0, 0, 0, 0, 0 };
00067
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 infoc_1.nout = *nunit;
00111 io___1.ciunit = infoc_1.nout;
00112 s_wsle(&io___1);
00113 e_wsle();
00114
00115
00116
00117 for (j = 1; j <= 2; ++j) {
00118 for (i__ = 1; i__ <= 2; ++i__) {
00119 a[i__ + (j << 1) - 3] = 1. / (doublereal) (i__ + j);
00120 af[i__ + (j << 1) - 3] = 1. / (doublereal) (i__ + j);
00121
00122 }
00123 b[j - 1] = 0.;
00124 w[j - 1] = 0.;
00125 x[j - 1] = 0.;
00126
00127 }
00128 infoc_1.ok = TRUE_;
00129
00130
00131
00132
00133
00134 s_copy(srnamc_1.srnamt, "DGELQF", (ftnlen)32, (ftnlen)6);
00135 infoc_1.infot = 1;
00136 dgelqf_(&c_n1, &c__0, a, &c__1, b, w, &c__1, &info);
00137 chkxer_("DGELQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00138 infoc_1.ok);
00139 infoc_1.infot = 2;
00140 dgelqf_(&c__0, &c_n1, a, &c__1, b, w, &c__1, &info);
00141 chkxer_("DGELQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00142 infoc_1.ok);
00143 infoc_1.infot = 4;
00144 dgelqf_(&c__2, &c__1, a, &c__1, b, w, &c__2, &info);
00145 chkxer_("DGELQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00146 infoc_1.ok);
00147 infoc_1.infot = 7;
00148 dgelqf_(&c__2, &c__1, a, &c__2, b, w, &c__1, &info);
00149 chkxer_("DGELQF", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00150 infoc_1.ok);
00151
00152
00153
00154 s_copy(srnamc_1.srnamt, "DGELQ2", (ftnlen)32, (ftnlen)6);
00155 infoc_1.infot = 1;
00156 dgelq2_(&c_n1, &c__0, a, &c__1, b, w, &info);
00157 chkxer_("DGELQ2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00158 infoc_1.ok);
00159 infoc_1.infot = 2;
00160 dgelq2_(&c__0, &c_n1, a, &c__1, b, w, &info);
00161 chkxer_("DGELQ2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00162 infoc_1.ok);
00163 infoc_1.infot = 4;
00164 dgelq2_(&c__2, &c__1, a, &c__1, b, w, &info);
00165 chkxer_("DGELQ2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00166 infoc_1.ok);
00167
00168
00169
00170 s_copy(srnamc_1.srnamt, "DGELQS", (ftnlen)32, (ftnlen)6);
00171 infoc_1.infot = 1;
00172 dgelqs_(&c_n1, &c__0, &c__0, a, &c__1, x, b, &c__1, w, &c__1, &info);
00173 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00174 infoc_1.ok);
00175 infoc_1.infot = 2;
00176 dgelqs_(&c__0, &c_n1, &c__0, a, &c__1, x, b, &c__1, w, &c__1, &info);
00177 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00178 infoc_1.ok);
00179 infoc_1.infot = 2;
00180 dgelqs_(&c__2, &c__1, &c__0, a, &c__2, x, b, &c__1, w, &c__1, &info);
00181 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00182 infoc_1.ok);
00183 infoc_1.infot = 3;
00184 dgelqs_(&c__0, &c__0, &c_n1, a, &c__1, x, b, &c__1, w, &c__1, &info);
00185 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00186 infoc_1.ok);
00187 infoc_1.infot = 5;
00188 dgelqs_(&c__2, &c__2, &c__0, a, &c__1, x, b, &c__2, w, &c__1, &info);
00189 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00190 infoc_1.ok);
00191 infoc_1.infot = 8;
00192 dgelqs_(&c__1, &c__2, &c__0, a, &c__1, x, b, &c__1, w, &c__1, &info);
00193 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00194 infoc_1.ok);
00195 infoc_1.infot = 10;
00196 dgelqs_(&c__1, &c__1, &c__2, a, &c__1, x, b, &c__1, w, &c__1, &info);
00197 chkxer_("DGELQS", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00198 infoc_1.ok);
00199
00200
00201
00202 s_copy(srnamc_1.srnamt, "DORGLQ", (ftnlen)32, (ftnlen)6);
00203 infoc_1.infot = 1;
00204 dorglq_(&c_n1, &c__0, &c__0, a, &c__1, x, w, &c__1, &info);
00205 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00206 infoc_1.ok);
00207 infoc_1.infot = 2;
00208 dorglq_(&c__0, &c_n1, &c__0, a, &c__1, x, w, &c__1, &info);
00209 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00210 infoc_1.ok);
00211 infoc_1.infot = 2;
00212 dorglq_(&c__2, &c__1, &c__0, a, &c__2, x, w, &c__2, &info);
00213 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00214 infoc_1.ok);
00215 infoc_1.infot = 3;
00216 dorglq_(&c__0, &c__0, &c_n1, a, &c__1, x, w, &c__1, &info);
00217 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00218 infoc_1.ok);
00219 infoc_1.infot = 3;
00220 dorglq_(&c__1, &c__1, &c__2, a, &c__1, x, w, &c__1, &info);
00221 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00222 infoc_1.ok);
00223 infoc_1.infot = 5;
00224 dorglq_(&c__2, &c__2, &c__0, a, &c__1, x, w, &c__2, &info);
00225 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00226 infoc_1.ok);
00227 infoc_1.infot = 8;
00228 dorglq_(&c__2, &c__2, &c__0, a, &c__2, x, w, &c__1, &info);
00229 chkxer_("DORGLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00230 infoc_1.ok);
00231
00232
00233
00234 s_copy(srnamc_1.srnamt, "DORGL2", (ftnlen)32, (ftnlen)6);
00235 infoc_1.infot = 1;
00236 dorgl2_(&c_n1, &c__0, &c__0, a, &c__1, x, w, &info);
00237 chkxer_("DORGL2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00238 infoc_1.ok);
00239 infoc_1.infot = 2;
00240 dorgl2_(&c__0, &c_n1, &c__0, a, &c__1, x, w, &info);
00241 chkxer_("DORGL2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00242 infoc_1.ok);
00243 infoc_1.infot = 2;
00244 dorgl2_(&c__2, &c__1, &c__0, a, &c__2, x, w, &info);
00245 chkxer_("DORGL2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00246 infoc_1.ok);
00247 infoc_1.infot = 3;
00248 dorgl2_(&c__0, &c__0, &c_n1, a, &c__1, x, w, &info);
00249 chkxer_("DORGL2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00250 infoc_1.ok);
00251 infoc_1.infot = 3;
00252 dorgl2_(&c__1, &c__1, &c__2, a, &c__1, x, w, &info);
00253 chkxer_("DORGL2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00254 infoc_1.ok);
00255 infoc_1.infot = 5;
00256 dorgl2_(&c__2, &c__2, &c__0, a, &c__1, x, w, &info);
00257 chkxer_("DORGL2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00258 infoc_1.ok);
00259
00260
00261
00262 s_copy(srnamc_1.srnamt, "DORMLQ", (ftnlen)32, (ftnlen)6);
00263 infoc_1.infot = 1;
00264 dormlq_("/", "N", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00265 info);
00266 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00267 infoc_1.ok);
00268 infoc_1.infot = 2;
00269 dormlq_("L", "/", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00270 info);
00271 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00272 infoc_1.ok);
00273 infoc_1.infot = 3;
00274 dormlq_("L", "N", &c_n1, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00275 info);
00276 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00277 infoc_1.ok);
00278 infoc_1.infot = 4;
00279 dormlq_("L", "N", &c__0, &c_n1, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00280 info);
00281 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00282 infoc_1.ok);
00283 infoc_1.infot = 5;
00284 dormlq_("L", "N", &c__0, &c__0, &c_n1, a, &c__1, x, af, &c__1, w, &c__1, &
00285 info);
00286 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00287 infoc_1.ok);
00288 infoc_1.infot = 5;
00289 dormlq_("L", "N", &c__0, &c__1, &c__1, a, &c__1, x, af, &c__1, w, &c__1, &
00290 info);
00291 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00292 infoc_1.ok);
00293 infoc_1.infot = 5;
00294 dormlq_("R", "N", &c__1, &c__0, &c__1, a, &c__1, x, af, &c__1, w, &c__1, &
00295 info);
00296 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00297 infoc_1.ok);
00298 infoc_1.infot = 7;
00299 dormlq_("L", "N", &c__2, &c__0, &c__2, a, &c__1, x, af, &c__2, w, &c__1, &
00300 info);
00301 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00302 infoc_1.ok);
00303 infoc_1.infot = 7;
00304 dormlq_("R", "N", &c__0, &c__2, &c__2, a, &c__1, x, af, &c__1, w, &c__1, &
00305 info);
00306 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00307 infoc_1.ok);
00308 infoc_1.infot = 10;
00309 dormlq_("L", "N", &c__2, &c__1, &c__0, a, &c__2, x, af, &c__1, w, &c__1, &
00310 info);
00311 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00312 infoc_1.ok);
00313 infoc_1.infot = 12;
00314 dormlq_("L", "N", &c__1, &c__2, &c__0, a, &c__1, x, af, &c__1, w, &c__1, &
00315 info);
00316 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00317 infoc_1.ok);
00318 infoc_1.infot = 12;
00319 dormlq_("R", "N", &c__2, &c__1, &c__0, a, &c__1, x, af, &c__2, w, &c__1, &
00320 info);
00321 chkxer_("DORMLQ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00322 infoc_1.ok);
00323
00324
00325
00326 s_copy(srnamc_1.srnamt, "DORML2", (ftnlen)32, (ftnlen)6);
00327 infoc_1.infot = 1;
00328 dorml2_("/", "N", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &info);
00329 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00330 infoc_1.ok);
00331 infoc_1.infot = 2;
00332 dorml2_("L", "/", &c__0, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &info);
00333 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00334 infoc_1.ok);
00335 infoc_1.infot = 3;
00336 dorml2_("L", "N", &c_n1, &c__0, &c__0, a, &c__1, x, af, &c__1, w, &info);
00337 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00338 infoc_1.ok);
00339 infoc_1.infot = 4;
00340 dorml2_("L", "N", &c__0, &c_n1, &c__0, a, &c__1, x, af, &c__1, w, &info);
00341 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00342 infoc_1.ok);
00343 infoc_1.infot = 5;
00344 dorml2_("L", "N", &c__0, &c__0, &c_n1, a, &c__1, x, af, &c__1, w, &info);
00345 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00346 infoc_1.ok);
00347 infoc_1.infot = 5;
00348 dorml2_("L", "N", &c__0, &c__1, &c__1, a, &c__1, x, af, &c__1, w, &info);
00349 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00350 infoc_1.ok);
00351 infoc_1.infot = 5;
00352 dorml2_("R", "N", &c__1, &c__0, &c__1, a, &c__1, x, af, &c__1, w, &info);
00353 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00354 infoc_1.ok);
00355 infoc_1.infot = 7;
00356 dorml2_("L", "N", &c__2, &c__1, &c__2, a, &c__1, x, af, &c__2, w, &info);
00357 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00358 infoc_1.ok);
00359 infoc_1.infot = 7;
00360 dorml2_("R", "N", &c__1, &c__2, &c__2, a, &c__1, x, af, &c__1, w, &info);
00361 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00362 infoc_1.ok);
00363 infoc_1.infot = 10;
00364 dorml2_("L", "N", &c__2, &c__1, &c__0, a, &c__2, x, af, &c__1, w, &info);
00365 chkxer_("DORML2", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00366 infoc_1.ok);
00367
00368
00369
00370 alaesm_(path, &infoc_1.ok, &infoc_1.nout);
00371
00372 return 0;
00373
00374
00375
00376 }