serred.c
Go to the documentation of this file.
00001 /* serred.f -- translated by f2c (version 20061008).
00002    You must link the resulting object file with libf2c:
00003         on Microsoft Windows system, link with libf2c.lib;
00004         on Linux or Unix systems, link with .../path/to/libf2c.a -lm
00005         or, if you install libf2c.a in a standard place, with -lf2c -lm
00006         -- in that order, at the end of the command line, as in
00007                 cc *.o -lf2c -lm
00008         Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
00009 
00010                 http://www.netlib.org/f2c/libf2c.zip
00011 */
00012 
00013 #include "f2c.h"
00014 #include "blaswrap.h"
00015 
00016 /* Common Block Declarations */
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 struct {
00032     integer selopt, seldim;
00033     logical selval[20];
00034     real selwr[20], selwi[20];
00035 } sslct_;
00036 
00037 #define sslct_1 sslct_
00038 
00039 /* Table of constant values */
00040 
00041 static integer c__2 = 2;
00042 static integer c__0 = 0;
00043 static integer c__1 = 1;
00044 static integer c_n1 = -1;
00045 static integer c__6 = 6;
00046 static integer c__8 = 8;
00047 static integer c__3 = 3;
00048 static integer c__5 = 5;
00049 
00050 /* Subroutine */ int serred_(char *path, integer *nunit)
00051 {
00052     /* Format strings */
00053     static char fmt_9999[] = "(1x,a3,\002 routines passed the tests of the e"
00054             "rror exits (\002,i3,\002 tests done)\002)";
00055     static char fmt_9998[] = "(\002 *** \002,a3,\002 routines failed the tes"
00056             "ts of the error ex\002,\002its ***\002)";
00057 
00058     /* Builtin functions */
00059     integer s_wsle(cilist *), e_wsle(void);
00060     /* Subroutine */ int s_copy(char *, char *, ftnlen, ftnlen);
00061     integer s_wsfe(cilist *), do_fio(integer *, char *, ftnlen), e_wsfe(void);
00062 
00063     /* Local variables */
00064     real a[16]  /* was [4][4] */;
00065     logical b[4];
00066     integer i__, j;
00067     real s[4], u[16]    /* was [4][4] */, w[16];
00068     char c2[2];
00069     real r1[4], r2[4];
00070     integer iw[8];
00071     real wi[4];
00072     integer nt;
00073     real vl[16] /* was [4][4] */, vr[16]        /* was [4][4] */, wr[4], vt[
00074             16] /* was [4][4] */;
00075     integer ihi, ilo, info, sdim;
00076     real abnrm;
00077     extern /* Subroutine */ int sgees_(char *, char *, L_fp, integer *, real *
00078 , integer *, integer *, real *, real *, real *, integer *, real *, 
00079              integer *, logical *, integer *), sgeev_(char *, 
00080             char *, integer *, real *, integer *, real *, real *, real *, 
00081             integer *, real *, integer *, real *, integer *, integer *), sgesdd_(char *, integer *, integer *, real *, 
00082             integer *, real *, real *, integer *, real *, integer *, real *, 
00083             integer *, integer *, integer *);
00084     extern logical lsamen_(integer *, char *, char *);
00085     extern /* Subroutine */ int chkxer_(char *, integer *, integer *, logical 
00086             *, logical *), sgesvd_(char *, char *, integer *, integer 
00087             *, real *, integer *, real *, real *, integer *, real *, integer *
00088 , real *, integer *, integer *);
00089     extern logical sslect_();
00090     extern /* Subroutine */ int sgeesx_(char *, char *, L_fp, char *, integer 
00091             *, real *, integer *, integer *, real *, real *, real *, integer *
00092 , real *, real *, real *, integer *, integer *, integer *, 
00093             logical *, integer *), sgeevx_(char *, 
00094             char *, char *, char *, integer *, real *, integer *, real *, 
00095             real *, real *, integer *, real *, integer *, integer *, integer *
00096 , real *, real *, real *, real *, real *, integer *, integer *, 
00097             integer *);
00098 
00099     /* Fortran I/O blocks */
00100     static cilist io___1 = { 0, 0, 0, 0, 0 };
00101     static cilist io___24 = { 0, 0, 0, fmt_9999, 0 };
00102     static cilist io___25 = { 0, 0, 0, fmt_9998, 0 };
00103 
00104 
00105 
00106 /*  -- LAPACK test routine (version 3.1) -- */
00107 /*     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
00108 /*     November 2006 */
00109 
00110 /*     .. Scalar Arguments .. */
00111 /*     .. */
00112 
00113 /*  Purpose */
00114 /*  ======= */
00115 
00116 /*  SERRED tests the error exits for the eigenvalue driver routines for */
00117 /*  REAL matrices: */
00118 
00119 /*  PATH  driver   description */
00120 /*  ----  ------   ----------- */
00121 /*  SEV   SGEEV    find eigenvalues/eigenvectors for nonsymmetric A */
00122 /*  SES   SGEES    find eigenvalues/Schur form for nonsymmetric A */
00123 /*  SVX   SGEEVX   SGEEV + balancing and condition estimation */
00124 /*  SSX   SGEESX   SGEES + balancing and condition estimation */
00125 /*  SBD   SGESVD   compute SVD of an M-by-N matrix A */
00126 /*        SGESDD   compute SVD of an M-by-N matrix A (by divide and */
00127 /*                 conquer) */
00128 
00129 /*  Arguments */
00130 /*  ========= */
00131 
00132 /*  PATH    (input) CHARACTER*3 */
00133 /*          The LAPACK path name for the routines to be tested. */
00134 
00135 /*  NUNIT   (input) INTEGER */
00136 /*          The unit number for output. */
00137 
00138 /*  ===================================================================== */
00139 
00140 /*     .. Parameters .. */
00141 /*     .. */
00142 /*     .. Local Scalars .. */
00143 /*     .. */
00144 /*     .. Local Arrays .. */
00145 /*     .. */
00146 /*     .. External Subroutines .. */
00147 /*     .. */
00148 /*     .. External Functions .. */
00149 /*     .. */
00150 /*     .. Arrays in Common .. */
00151 /*     .. */
00152 /*     .. Scalars in Common .. */
00153 /*     .. */
00154 /*     .. Common blocks .. */
00155 /*     .. */
00156 /*     .. Executable Statements .. */
00157 
00158     infoc_1.nout = *nunit;
00159     io___1.ciunit = infoc_1.nout;
00160     s_wsle(&io___1);
00161     e_wsle();
00162     s_copy(c2, path + 1, (ftnlen)2, (ftnlen)2);
00163 
00164 /*     Initialize A */
00165 
00166     for (j = 1; j <= 4; ++j) {
00167         for (i__ = 1; i__ <= 4; ++i__) {
00168             a[i__ + (j << 2) - 5] = 0.f;
00169 /* L10: */
00170         }
00171 /* L20: */
00172     }
00173     for (i__ = 1; i__ <= 4; ++i__) {
00174         a[i__ + (i__ << 2) - 5] = 1.f;
00175 /* L30: */
00176     }
00177     infoc_1.ok = TRUE_;
00178     nt = 0;
00179 
00180     if (lsamen_(&c__2, c2, "EV")) {
00181 
00182 /*        Test SGEEV */
00183 
00184         s_copy(srnamc_1.srnamt, "SGEEV ", (ftnlen)32, (ftnlen)6);
00185         infoc_1.infot = 1;
00186         sgeev_("X", "N", &c__0, a, &c__1, wr, wi, vl, &c__1, vr, &c__1, w, &
00187                 c__1, &info);
00188         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00189                 infoc_1.ok);
00190         infoc_1.infot = 2;
00191         sgeev_("N", "X", &c__0, a, &c__1, wr, wi, vl, &c__1, vr, &c__1, w, &
00192                 c__1, &info);
00193         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00194                 infoc_1.ok);
00195         infoc_1.infot = 3;
00196         sgeev_("N", "N", &c_n1, a, &c__1, wr, wi, vl, &c__1, vr, &c__1, w, &
00197                 c__1, &info);
00198         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00199                 infoc_1.ok);
00200         infoc_1.infot = 5;
00201         sgeev_("N", "N", &c__2, a, &c__1, wr, wi, vl, &c__1, vr, &c__1, w, &
00202                 c__6, &info);
00203         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00204                 infoc_1.ok);
00205         infoc_1.infot = 9;
00206         sgeev_("V", "N", &c__2, a, &c__2, wr, wi, vl, &c__1, vr, &c__1, w, &
00207                 c__8, &info);
00208         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00209                 infoc_1.ok);
00210         infoc_1.infot = 11;
00211         sgeev_("N", "V", &c__2, a, &c__2, wr, wi, vl, &c__1, vr, &c__1, w, &
00212                 c__8, &info);
00213         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00214                 infoc_1.ok);
00215         infoc_1.infot = 13;
00216         sgeev_("V", "V", &c__1, a, &c__1, wr, wi, vl, &c__1, vr, &c__1, w, &
00217                 c__3, &info);
00218         chkxer_("SGEEV ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00219                 infoc_1.ok);
00220         nt += 7;
00221 
00222     } else if (lsamen_(&c__2, c2, "ES")) {
00223 
00224 /*        Test SGEES */
00225 
00226         s_copy(srnamc_1.srnamt, "SGEES ", (ftnlen)32, (ftnlen)6);
00227         infoc_1.infot = 1;
00228         sgees_("X", "N", (L_fp)sslect_, &c__0, a, &c__1, &sdim, wr, wi, vl, &
00229                 c__1, w, &c__1, b, &info);
00230         chkxer_("SGEES ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00231                 infoc_1.ok);
00232         infoc_1.infot = 2;
00233         sgees_("N", "X", (L_fp)sslect_, &c__0, a, &c__1, &sdim, wr, wi, vl, &
00234                 c__1, w, &c__1, b, &info);
00235         chkxer_("SGEES ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00236                 infoc_1.ok);
00237         infoc_1.infot = 4;
00238         sgees_("N", "S", (L_fp)sslect_, &c_n1, a, &c__1, &sdim, wr, wi, vl, &
00239                 c__1, w, &c__1, b, &info);
00240         chkxer_("SGEES ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00241                 infoc_1.ok);
00242         infoc_1.infot = 6;
00243         sgees_("N", "S", (L_fp)sslect_, &c__2, a, &c__1, &sdim, wr, wi, vl, &
00244                 c__1, w, &c__6, b, &info);
00245         chkxer_("SGEES ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00246                 infoc_1.ok);
00247         infoc_1.infot = 11;
00248         sgees_("V", "S", (L_fp)sslect_, &c__2, a, &c__2, &sdim, wr, wi, vl, &
00249                 c__1, w, &c__6, b, &info);
00250         chkxer_("SGEES ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00251                 infoc_1.ok);
00252         infoc_1.infot = 13;
00253         sgees_("N", "S", (L_fp)sslect_, &c__1, a, &c__1, &sdim, wr, wi, vl, &
00254                 c__1, w, &c__2, b, &info);
00255         chkxer_("SGEES ", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00256                 infoc_1.ok);
00257         nt += 6;
00258 
00259     } else if (lsamen_(&c__2, c2, "VX")) {
00260 
00261 /*        Test SGEEVX */
00262 
00263         s_copy(srnamc_1.srnamt, "SGEEVX", (ftnlen)32, (ftnlen)6);
00264         infoc_1.infot = 1;
00265         sgeevx_("X", "N", "N", "N", &c__0, a, &c__1, wr, wi, vl, &c__1, vr, &
00266                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00267         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00268                 infoc_1.ok);
00269         infoc_1.infot = 2;
00270         sgeevx_("N", "X", "N", "N", &c__0, a, &c__1, wr, wi, vl, &c__1, vr, &
00271                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00272         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00273                 infoc_1.ok);
00274         infoc_1.infot = 3;
00275         sgeevx_("N", "N", "X", "N", &c__0, a, &c__1, wr, wi, vl, &c__1, vr, &
00276                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00277         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00278                 infoc_1.ok);
00279         infoc_1.infot = 4;
00280         sgeevx_("N", "N", "N", "X", &c__0, a, &c__1, wr, wi, vl, &c__1, vr, &
00281                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00282         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00283                 infoc_1.ok);
00284         infoc_1.infot = 5;
00285         sgeevx_("N", "N", "N", "N", &c_n1, a, &c__1, wr, wi, vl, &c__1, vr, &
00286                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00287         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00288                 infoc_1.ok);
00289         infoc_1.infot = 7;
00290         sgeevx_("N", "N", "N", "N", &c__2, a, &c__1, wr, wi, vl, &c__1, vr, &
00291                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00292         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00293                 infoc_1.ok);
00294         infoc_1.infot = 11;
00295         sgeevx_("N", "V", "N", "N", &c__2, a, &c__2, wr, wi, vl, &c__1, vr, &
00296                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__6, iw, &info);
00297         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00298                 infoc_1.ok);
00299         infoc_1.infot = 13;
00300         sgeevx_("N", "N", "V", "N", &c__2, a, &c__2, wr, wi, vl, &c__1, vr, &
00301                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__6, iw, &info);
00302         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00303                 infoc_1.ok);
00304         infoc_1.infot = 21;
00305         sgeevx_("N", "N", "N", "N", &c__1, a, &c__1, wr, wi, vl, &c__1, vr, &
00306                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__1, iw, &info);
00307         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00308                 infoc_1.ok);
00309         infoc_1.infot = 21;
00310         sgeevx_("N", "V", "N", "N", &c__1, a, &c__1, wr, wi, vl, &c__1, vr, &
00311                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__2, iw, &info);
00312         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00313                 infoc_1.ok);
00314         infoc_1.infot = 21;
00315         sgeevx_("N", "N", "V", "V", &c__1, a, &c__1, wr, wi, vl, &c__1, vr, &
00316                 c__1, &ilo, &ihi, s, &abnrm, r1, r2, w, &c__3, iw, &info);
00317         chkxer_("SGEEVX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00318                 infoc_1.ok);
00319         nt += 11;
00320 
00321     } else if (lsamen_(&c__2, c2, "SX")) {
00322 
00323 /*        Test SGEESX */
00324 
00325         s_copy(srnamc_1.srnamt, "SGEESX", (ftnlen)32, (ftnlen)6);
00326         infoc_1.infot = 1;
00327         sgeesx_("X", "N", (L_fp)sslect_, "N", &c__0, a, &c__1, &sdim, wr, wi, 
00328                 vl, &c__1, r1, r2, w, &c__1, iw, &c__1, b, &info);
00329         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00330                 infoc_1.ok);
00331         infoc_1.infot = 2;
00332         sgeesx_("N", "X", (L_fp)sslect_, "N", &c__0, a, &c__1, &sdim, wr, wi, 
00333                 vl, &c__1, r1, r2, w, &c__1, iw, &c__1, b, &info);
00334         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00335                 infoc_1.ok);
00336         infoc_1.infot = 4;
00337         sgeesx_("N", "N", (L_fp)sslect_, "X", &c__0, a, &c__1, &sdim, wr, wi, 
00338                 vl, &c__1, r1, r2, w, &c__1, iw, &c__1, b, &info);
00339         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00340                 infoc_1.ok);
00341         infoc_1.infot = 5;
00342         sgeesx_("N", "N", (L_fp)sslect_, "N", &c_n1, a, &c__1, &sdim, wr, wi, 
00343                 vl, &c__1, r1, r2, w, &c__1, iw, &c__1, b, &info);
00344         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00345                 infoc_1.ok);
00346         infoc_1.infot = 7;
00347         sgeesx_("N", "N", (L_fp)sslect_, "N", &c__2, a, &c__1, &sdim, wr, wi, 
00348                 vl, &c__1, r1, r2, w, &c__6, iw, &c__1, b, &info);
00349         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00350                 infoc_1.ok);
00351         infoc_1.infot = 12;
00352         sgeesx_("V", "N", (L_fp)sslect_, "N", &c__2, a, &c__2, &sdim, wr, wi, 
00353                 vl, &c__1, r1, r2, w, &c__6, iw, &c__1, b, &info);
00354         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00355                 infoc_1.ok);
00356         infoc_1.infot = 16;
00357         sgeesx_("N", "N", (L_fp)sslect_, "N", &c__1, a, &c__1, &sdim, wr, wi, 
00358                 vl, &c__1, r1, r2, w, &c__2, iw, &c__1, b, &info);
00359         chkxer_("SGEESX", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00360                 infoc_1.ok);
00361         nt += 7;
00362 
00363     } else if (lsamen_(&c__2, c2, "BD")) {
00364 
00365 /*        Test SGESVD */
00366 
00367         s_copy(srnamc_1.srnamt, "SGESVD", (ftnlen)32, (ftnlen)6);
00368         infoc_1.infot = 1;
00369         sgesvd_("X", "N", &c__0, &c__0, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00370                 c__1, &info);
00371         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00372                 infoc_1.ok);
00373         infoc_1.infot = 2;
00374         sgesvd_("N", "X", &c__0, &c__0, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00375                 c__1, &info);
00376         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00377                 infoc_1.ok);
00378         infoc_1.infot = 2;
00379         sgesvd_("O", "O", &c__0, &c__0, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00380                 c__1, &info);
00381         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00382                 infoc_1.ok);
00383         infoc_1.infot = 3;
00384         sgesvd_("N", "N", &c_n1, &c__0, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00385                 c__1, &info);
00386         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00387                 infoc_1.ok);
00388         infoc_1.infot = 4;
00389         sgesvd_("N", "N", &c__0, &c_n1, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00390                 c__1, &info);
00391         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00392                 infoc_1.ok);
00393         infoc_1.infot = 6;
00394         sgesvd_("N", "N", &c__2, &c__1, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00395                 c__5, &info);
00396         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00397                 infoc_1.ok);
00398         infoc_1.infot = 9;
00399         sgesvd_("A", "N", &c__2, &c__1, a, &c__2, s, u, &c__1, vt, &c__1, w, &
00400                 c__5, &info);
00401         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00402                 infoc_1.ok);
00403         infoc_1.infot = 11;
00404         sgesvd_("N", "A", &c__1, &c__2, a, &c__1, s, u, &c__1, vt, &c__1, w, &
00405                 c__5, &info);
00406         chkxer_("SGESVD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00407                 infoc_1.ok);
00408         nt += 8;
00409 
00410 /*        Test SGESDD */
00411 
00412         s_copy(srnamc_1.srnamt, "SGESDD", (ftnlen)32, (ftnlen)6);
00413         infoc_1.infot = 1;
00414         sgesdd_("X", &c__0, &c__0, a, &c__1, s, u, &c__1, vt, &c__1, w, &c__1, 
00415                  iw, &info);
00416         chkxer_("SGESDD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00417                 infoc_1.ok);
00418         infoc_1.infot = 2;
00419         sgesdd_("N", &c_n1, &c__0, a, &c__1, s, u, &c__1, vt, &c__1, w, &c__1, 
00420                  iw, &info);
00421         chkxer_("SGESDD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00422                 infoc_1.ok);
00423         infoc_1.infot = 3;
00424         sgesdd_("N", &c__0, &c_n1, a, &c__1, s, u, &c__1, vt, &c__1, w, &c__1, 
00425                  iw, &info);
00426         chkxer_("SGESDD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00427                 infoc_1.ok);
00428         infoc_1.infot = 5;
00429         sgesdd_("N", &c__2, &c__1, a, &c__1, s, u, &c__1, vt, &c__1, w, &c__5, 
00430                  iw, &info);
00431         chkxer_("SGESDD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00432                 infoc_1.ok);
00433         infoc_1.infot = 8;
00434         sgesdd_("A", &c__2, &c__1, a, &c__2, s, u, &c__1, vt, &c__1, w, &c__5, 
00435                  iw, &info);
00436         chkxer_("SGESDD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00437                 infoc_1.ok);
00438         infoc_1.infot = 10;
00439         sgesdd_("A", &c__1, &c__2, a, &c__1, s, u, &c__1, vt, &c__1, w, &c__5, 
00440                  iw, &info);
00441         chkxer_("SGESDD", &infoc_1.infot, &infoc_1.nout, &infoc_1.lerr, &
00442                 infoc_1.ok);
00443         nt += 6;
00444     }
00445 
00446 /*     Print a summary line. */
00447 
00448     if (! lsamen_(&c__2, c2, "BD")) {
00449         if (infoc_1.ok) {
00450             io___24.ciunit = infoc_1.nout;
00451             s_wsfe(&io___24);
00452             do_fio(&c__1, path, (ftnlen)3);
00453             do_fio(&c__1, (char *)&nt, (ftnlen)sizeof(integer));
00454             e_wsfe();
00455         } else {
00456             io___25.ciunit = infoc_1.nout;
00457             s_wsfe(&io___25);
00458             do_fio(&c__1, path, (ftnlen)3);
00459             e_wsfe();
00460         }
00461     }
00462 
00463     return 0;
00464 
00465 /*     End of SERRED */
00466 
00467 } /* serred_ */


swiftnav
Author(s):
autogenerated on Sat Jun 8 2019 18:56:02