alaerh.c
Go to the documentation of this file.
00001 /* alaerh.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 #include "string.h"
00016 
00017 /* Table of constant values */
00018 
00019 static integer c__3 = 3;
00020 static integer c__2 = 2;
00021 static integer c__1 = 1;
00022 static integer c__5 = 5;
00023 
00024 /* Subroutine */ int alaerh_(char *path, char *subnam, integer *info, integer 
00025         *infoe, char *opts, integer *m, integer *n, integer *kl, integer *ku, 
00026         integer *n5, integer *imat, integer *nfail, integer *nerrs, integer *
00027         nout)
00028 {
00029     /* Format strings */
00030     static char fmt_9988[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00031             ",i5,\002 instead of \002,i2,/\002 ==> M =\002,i5,\002, N =\002,i"
00032             "5,\002, NB =\002,i4,\002, type \002,i2)";
00033     static char fmt_9975[] = "(\002 *** Error code from \002,a,\002=\002,i5"
00034             ",\002 for M=\002,i5,\002, N=\002,i5,\002, NB=\002,i4,\002, type"
00035             " \002,i2)";
00036     static char fmt_9949[] = "(\002 ==> Doing only the condition estimate fo"
00037             "r this case\002)";
00038     static char fmt_9984[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00039             ",i5,\002 instead of \002,i2,/\002 ==> N =\002,i5,\002, NRHS ="
00040             "\002,i4,\002, type \002,i2)";
00041     static char fmt_9970[] = "(\002 *** Error code from \002,a,\002 =\002,"
00042             "i5,\002 for N =\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)";
00043     static char fmt_9992[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00044             ",i5,\002 instead of \002,i2,/\002 ==> FACT='\002,a1,\002', TRANS"
00045             "='\002,a1,\002', N =\002,i5,\002, NRHS =\002,i4,\002, type \002,"
00046             "i2)";
00047     static char fmt_9997[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00048             ",/\002 ==> FACT='\002,a1,\002', TRANS='\002,a1,\002', N =\002,i5,"
00049             "\002, NRHS =\002,i4,\002, type \002,i2)";
00050     static char fmt_9971[] = "(\002 *** Error code from \002,a,\002=\002,i5"
00051             ",\002 for N=\002,i5,\002, NB=\002,i4,\002, type \002,i2)";
00052     static char fmt_9978[] = "(\002 *** Error code from \002,a,\002 =\002,"
00053             "i5,\002 for M =\002,i5,\002, N =\002,i5,\002, type \002,i2)";
00054     static char fmt_9969[] = "(\002 *** Error code from \002,a,\002 =\002,"
00055             "i5,\002 for NORM = '\002,a1,\002', N =\002,i5,\002, type \002,i2)"
00056             ;
00057     static char fmt_9965[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00058             ",/\002 ==> TRANS = '\002,a1,\002', M =\002,i5,\002, N =\002,i5"
00059             ",\002, NRHS =\002,i4,\002, NB =\002,i4,\002, type \002,i2)";
00060     static char fmt_9974[] = "(\002 *** Error code from \002,a,\002=\002,i"
00061             "5,/\002 ==> M =\002,i5,\002, N =\002,i5,\002, NRHS =\002,i4,\002"
00062             ", NB =\002,i4,\002, type \002,i2)";
00063     static char fmt_9963[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00064             ",/\002 ==> TRANS = '\002,a1,\002', N =\002,i5,\002, NRHS =\002,i"
00065             "4,\002, type \002,i2)";
00066     static char fmt_9989[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00067             ",i5,\002 instead of \002,i2,/\002 ==> M = \002,i5,\002, N =\002,"
00068             "i5,\002, KL =\002,i5,\002, KU =\002,i5,\002, NB =\002,i4,\002, t"
00069             "ype \002,i2)";
00070     static char fmt_9976[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00071             ",/\002 ==> M = \002,i5,\002, N =\002,i5,\002, KL =\002,i5,\002, "
00072             "KU =\002,i5,\002, NB =\002,i4,\002, type \002,i2)";
00073     static char fmt_9986[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00074             ",i5,\002 instead of \002,i2,/\002 ==> N =\002,i5,\002, KL =\002,"
00075             "i5,\002, KU =\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)";
00076     static char fmt_9972[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00077             ",/\002 ==> N =\002,i5,\002, KL =\002,i5,\002, KU =\002,i5,\002, "
00078             "NRHS =\002,i4,\002, type \002,i2)";
00079     static char fmt_9993[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00080             ",i5,\002 instead of \002,i2,/\002 ==> FACT='\002,a1,\002', TRANS"
00081             "='\002,a1,\002', N=\002,i5,\002, KL=\002,i5,\002, KU=\002,i5,"
00082             "\002, NRHS=\002,i4,\002, type \002,i1)";
00083     static char fmt_9998[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00084             ",/\002 ==> FACT='\002,a1,\002', TRANS='\002,a1,\002', N=\002,i5"
00085             ",\002, KL=\002,i5,\002, KU=\002,i5,\002, NRHS=\002,i4,\002, type "
00086             "\002,i1)";
00087     static char fmt_9977[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00088             ",/\002 ==> M = \002,i5,\002, N =\002,i5,\002, KL =\002,i5,\002, "
00089             "KU =\002,i5,\002, type \002,i2)";
00090     static char fmt_9968[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00091             ",/\002 ==> NORM ='\002,a1,\002', N =\002,i5,\002, KL =\002,i5"
00092             ",\002, KU =\002,i5,\002, type \002,i2)";
00093     static char fmt_9964[] = "(\002 *** Error code from \002,a,\002=\002,i"
00094             "5,/\002 ==> TRANS='\002,a1,\002', N =\002,i5,\002, KL =\002,i5"
00095             ",\002, KU =\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)";
00096     static char fmt_9987[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00097             ",i5,\002 instead of \002,i2,\002 for N=\002,i5,\002, type \002,i"
00098             "2)";
00099     static char fmt_9973[] = "(\002 *** Error code from \002,a,\002 =\002,"
00100             "i5,\002 for N =\002,i5,\002, type \002,i2)";
00101     static char fmt_9980[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00102             ",i5,\002 instead of \002,i2,/\002 ==> UPLO = '\002,a1,\002', N "
00103             "=\002,i5,\002, NB =\002,i4,\002, type \002,i2)";
00104     static char fmt_9956[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00105             ",/\002 ==> UPLO = '\002,a1,\002', N =\002,i5,\002, NB =\002,i4"
00106             ",\002, type \002,i2)";
00107     static char fmt_9979[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00108             ",i5,\002 instead of \002,i2,/\002 ==> UPLO = '\002,a1,\002', N "
00109             "=\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)";
00110     static char fmt_9955[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00111             ",/\002 ==> UPLO = '\002,a1,\002', N =\002,i5,\002, NRHS =\002,i4,"
00112             "\002, type \002,i2)";
00113     static char fmt_9990[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00114             ",i5,\002 instead of \002,i2,/\002 ==> FACT='\002,a1,\002', UPLO='"
00115             "\002,a1,\002', N =\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)"
00116             ;
00117     static char fmt_9995[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00118             ",/\002 ==> FACT='\002,a1,\002', UPLO='\002,a1,\002', N =\002,i5"
00119             ",\002, NRHS =\002,i4,\002, type \002,i2)";
00120     static char fmt_9960[] = "(\002 *** Error code from \002,a,\002 =\002,"
00121             "i5,\002 for UPLO = '\002,a1,\002', N =\002,i5,\002, type \002,i2)"
00122             ;
00123     static char fmt_9983[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00124             ",i5,\002 instead of \002,i2,/\002 ==> UPLO = '\002,a1,\002', N "
00125             "=\002,i5,\002, type \002,i2)";
00126     static char fmt_9982[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00127             ",i5,\002 instead of \002,i2,/\002 ==> UPLO = '\002,a1,\002', N "
00128             "=\002,i5,\002, KD =\002,i5,\002, NB =\002,i4,\002, type \002,i2)";
00129     static char fmt_9958[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00130             ",/\002 ==> UPLO = '\002,a1,\002', N =\002,i5,\002, KD =\002,i5"
00131             ",\002, NB =\002,i4,\002, type \002,i2)";
00132     static char fmt_9981[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00133             ",i5,\002 instead of \002,i2,/\002 ==> UPLO='\002,a1,\002', N "
00134             "=\002,i5,\002, KD =\002,i5,\002, NRHS =\002,i4,\002, type \002,i"
00135             "2)";
00136     static char fmt_9957[] = "(\002 *** Error code from \002,a,\002=\002,i"
00137             "5,/\002 ==> UPLO = '\002,a1,\002', N =\002,i5,\002, KD =\002,i5"
00138             ",\002, NRHS =\002,i4,\002, type \002,i2)";
00139     static char fmt_9991[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00140             ",i5,\002 instead of \002,i2,/\002 ==> FACT='\002,a1,\002', UPLO='"
00141             "\002,a1,\002', N=\002,i5,\002, KD=\002,i5,\002, NRHS=\002,i4,"
00142             "\002, type \002,i2)";
00143     static char fmt_9996[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00144             ",/\002 ==> FACT='\002,a1,\002', UPLO='\002,a1,\002', N=\002,i5"
00145             ",\002, KD=\002,i5,\002, NRHS=\002,i4,\002, type \002,i2)";
00146     static char fmt_9959[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00147             ",/\002 ==> UPLO = '\002,a1,\002', N =\002,i5,\002, KD =\002,i5"
00148             ",\002, type \002,i2)";
00149     static char fmt_9994[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00150             ",i5,\002 instead of \002,i2,/\002 ==> FACT='\002,a1,\002', N "
00151             "=\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)";
00152     static char fmt_9999[] = "(\002 *** Error code from \002,a,\002=\002,i5"
00153             ",\002, FACT='\002,a1,\002', N=\002,i5,\002, NRHS=\002,i4,\002, t"
00154             "ype \002,i2)";
00155     static char fmt_9961[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00156             ",/\002 ==> UPLO='\002,a1,\002', DIAG ='\002,a1,\002', N =\002,i5,"
00157             "\002, NB =\002,i4,\002, type \002,i2)";
00158     static char fmt_9967[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00159             ",/\002 ==> NORM='\002,a1,\002', UPLO ='\002,a1,\002', DIAG='\002"
00160             ",a1,\002', N =\002,i5,\002, type \002,i2)";
00161     static char fmt_9952[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00162             ",/\002 ==> UPLO='\002,a1,\002', TRANS='\002,a1,\002', DIAG='\002"
00163             ",a1,\002', NORMIN='\002,a1,\002', N =\002,i5,\002, type \002,i2)";
00164     static char fmt_9953[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00165             ",/\002 ==> UPLO='\002,a1,\002', TRANS='\002,a1,\002', DIAG='\002"
00166             ",a1,\002', N =\002,i5,\002, NRHS =\002,i4,\002, type \002,i2)";
00167     static char fmt_9962[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00168             ",/\002 ==> UPLO='\002,a1,\002', DIAG ='\002,a1,\002', N =\002,i5,"
00169             "\002, type \002,i2)";
00170     static char fmt_9966[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00171             ",/\002 ==> NORM='\002,a1,\002', UPLO ='\002,a1,\002', DIAG='\002"
00172             ",a1,\002', N=\002,i5,\002, KD=\002,i5,\002, type \002,i2)";
00173     static char fmt_9951[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00174             ",/\002 ==> UPLO='\002,a1,\002', TRANS='\002,a1,\002', DIAG='\002"
00175             ",a1,\002', NORMIN='\002,a1,\002', N=\002,i5,\002, KD=\002,i5,"
00176             "\002, type \002,i2)";
00177     static char fmt_9954[] = "(\002 *** Error code from \002,a,\002 =\002,i5"
00178             ",/\002 ==> UPLO='\002,a1,\002', TRANS='\002,a1,\002', DIAG='\002"
00179             ",a1,\002', N=\002,i5,\002, KD=\002,i5,\002, NRHS=\002,i4,\002, t"
00180             "ype \002,i2)";
00181     static char fmt_9985[] = "(\002 *** \002,a,\002 returned with INFO =\002"
00182             ",i5,\002 instead of \002,i2,/\002 ==> N =\002,i5,\002, NB =\002,"
00183             "i4,\002, type \002,i2)";
00184     static char fmt_9950[] = "(\002 *** Error code from \002,a,\002 =\002,i5)"
00185             ;
00186 
00187     /* Builtin functions */
00188     /* Subroutine */ int s_copy(char *, char *, ftnlen, ftnlen);
00189     integer s_wsfe(cilist *), i_len_trim(char *, ftnlen), do_fio(integer *, 
00190             char *, ftnlen), e_wsfe(void);
00191 
00192     /* Local variables */
00193     char c3[3], p2[2], uplo[1];
00194     extern /* Subroutine */ int alahd_(integer *, char *);
00195     extern logical lsame_(char *, char *);
00196     extern /* Subroutine */ int aladhd_(integer *, char *);
00197     extern logical lsamen_(integer *, char *, char *);
00198 
00199     /* Fortran I/O blocks */
00200     static cilist io___3 = { 0, 0, 0, fmt_9988, 0 };
00201     static cilist io___4 = { 0, 0, 0, fmt_9975, 0 };
00202     static cilist io___5 = { 0, 0, 0, fmt_9949, 0 };
00203     static cilist io___6 = { 0, 0, 0, fmt_9984, 0 };
00204     static cilist io___7 = { 0, 0, 0, fmt_9970, 0 };
00205     static cilist io___8 = { 0, 0, 0, fmt_9992, 0 };
00206     static cilist io___9 = { 0, 0, 0, fmt_9997, 0 };
00207     static cilist io___10 = { 0, 0, 0, fmt_9971, 0 };
00208     static cilist io___11 = { 0, 0, 0, fmt_9978, 0 };
00209     static cilist io___12 = { 0, 0, 0, fmt_9969, 0 };
00210     static cilist io___13 = { 0, 0, 0, fmt_9965, 0 };
00211     static cilist io___14 = { 0, 0, 0, fmt_9974, 0 };
00212     static cilist io___15 = { 0, 0, 0, fmt_9963, 0 };
00213     static cilist io___16 = { 0, 0, 0, fmt_9989, 0 };
00214     static cilist io___17 = { 0, 0, 0, fmt_9976, 0 };
00215     static cilist io___18 = { 0, 0, 0, fmt_9949, 0 };
00216     static cilist io___19 = { 0, 0, 0, fmt_9986, 0 };
00217     static cilist io___20 = { 0, 0, 0, fmt_9972, 0 };
00218     static cilist io___21 = { 0, 0, 0, fmt_9993, 0 };
00219     static cilist io___22 = { 0, 0, 0, fmt_9998, 0 };
00220     static cilist io___23 = { 0, 0, 0, fmt_9977, 0 };
00221     static cilist io___24 = { 0, 0, 0, fmt_9968, 0 };
00222     static cilist io___25 = { 0, 0, 0, fmt_9964, 0 };
00223     static cilist io___26 = { 0, 0, 0, fmt_9987, 0 };
00224     static cilist io___27 = { 0, 0, 0, fmt_9973, 0 };
00225     static cilist io___28 = { 0, 0, 0, fmt_9949, 0 };
00226     static cilist io___29 = { 0, 0, 0, fmt_9984, 0 };
00227     static cilist io___30 = { 0, 0, 0, fmt_9970, 0 };
00228     static cilist io___31 = { 0, 0, 0, fmt_9992, 0 };
00229     static cilist io___32 = { 0, 0, 0, fmt_9997, 0 };
00230     static cilist io___33 = { 0, 0, 0, fmt_9969, 0 };
00231     static cilist io___34 = { 0, 0, 0, fmt_9963, 0 };
00232     static cilist io___36 = { 0, 0, 0, fmt_9980, 0 };
00233     static cilist io___37 = { 0, 0, 0, fmt_9956, 0 };
00234     static cilist io___38 = { 0, 0, 0, fmt_9949, 0 };
00235     static cilist io___39 = { 0, 0, 0, fmt_9979, 0 };
00236     static cilist io___40 = { 0, 0, 0, fmt_9955, 0 };
00237     static cilist io___41 = { 0, 0, 0, fmt_9990, 0 };
00238     static cilist io___42 = { 0, 0, 0, fmt_9995, 0 };
00239     static cilist io___43 = { 0, 0, 0, fmt_9956, 0 };
00240     static cilist io___44 = { 0, 0, 0, fmt_9960, 0 };
00241     static cilist io___45 = { 0, 0, 0, fmt_9955, 0 };
00242     static cilist io___46 = { 0, 0, 0, fmt_9980, 0 };
00243     static cilist io___47 = { 0, 0, 0, fmt_9956, 0 };
00244     static cilist io___48 = { 0, 0, 0, fmt_9949, 0 };
00245     static cilist io___49 = { 0, 0, 0, fmt_9979, 0 };
00246     static cilist io___50 = { 0, 0, 0, fmt_9955, 0 };
00247     static cilist io___51 = { 0, 0, 0, fmt_9990, 0 };
00248     static cilist io___52 = { 0, 0, 0, fmt_9995, 0 };
00249     static cilist io___53 = { 0, 0, 0, fmt_9956, 0 };
00250     static cilist io___54 = { 0, 0, 0, fmt_9960, 0 };
00251     static cilist io___55 = { 0, 0, 0, fmt_9955, 0 };
00252     static cilist io___56 = { 0, 0, 0, fmt_9980, 0 };
00253     static cilist io___57 = { 0, 0, 0, fmt_9956, 0 };
00254     static cilist io___58 = { 0, 0, 0, fmt_9949, 0 };
00255     static cilist io___59 = { 0, 0, 0, fmt_9979, 0 };
00256     static cilist io___60 = { 0, 0, 0, fmt_9955, 0 };
00257     static cilist io___61 = { 0, 0, 0, fmt_9990, 0 };
00258     static cilist io___62 = { 0, 0, 0, fmt_9995, 0 };
00259     static cilist io___63 = { 0, 0, 0, fmt_9960, 0 };
00260     static cilist io___64 = { 0, 0, 0, fmt_9955, 0 };
00261     static cilist io___65 = { 0, 0, 0, fmt_9983, 0 };
00262     static cilist io___66 = { 0, 0, 0, fmt_9960, 0 };
00263     static cilist io___67 = { 0, 0, 0, fmt_9949, 0 };
00264     static cilist io___68 = { 0, 0, 0, fmt_9979, 0 };
00265     static cilist io___69 = { 0, 0, 0, fmt_9955, 0 };
00266     static cilist io___70 = { 0, 0, 0, fmt_9990, 0 };
00267     static cilist io___71 = { 0, 0, 0, fmt_9995, 0 };
00268     static cilist io___72 = { 0, 0, 0, fmt_9960, 0 };
00269     static cilist io___73 = { 0, 0, 0, fmt_9955, 0 };
00270     static cilist io___74 = { 0, 0, 0, fmt_9982, 0 };
00271     static cilist io___75 = { 0, 0, 0, fmt_9958, 0 };
00272     static cilist io___76 = { 0, 0, 0, fmt_9949, 0 };
00273     static cilist io___77 = { 0, 0, 0, fmt_9981, 0 };
00274     static cilist io___78 = { 0, 0, 0, fmt_9957, 0 };
00275     static cilist io___79 = { 0, 0, 0, fmt_9991, 0 };
00276     static cilist io___80 = { 0, 0, 0, fmt_9996, 0 };
00277     static cilist io___81 = { 0, 0, 0, fmt_9959, 0 };
00278     static cilist io___82 = { 0, 0, 0, fmt_9957, 0 };
00279     static cilist io___83 = { 0, 0, 0, fmt_9987, 0 };
00280     static cilist io___84 = { 0, 0, 0, fmt_9973, 0 };
00281     static cilist io___85 = { 0, 0, 0, fmt_9949, 0 };
00282     static cilist io___86 = { 0, 0, 0, fmt_9984, 0 };
00283     static cilist io___87 = { 0, 0, 0, fmt_9970, 0 };
00284     static cilist io___88 = { 0, 0, 0, fmt_9994, 0 };
00285     static cilist io___89 = { 0, 0, 0, fmt_9999, 0 };
00286     static cilist io___90 = { 0, 0, 0, fmt_9973, 0 };
00287     static cilist io___91 = { 0, 0, 0, fmt_9969, 0 };
00288     static cilist io___92 = { 0, 0, 0, fmt_9963, 0 };
00289     static cilist io___93 = { 0, 0, 0, fmt_9961, 0 };
00290     static cilist io___94 = { 0, 0, 0, fmt_9967, 0 };
00291     static cilist io___95 = { 0, 0, 0, fmt_9952, 0 };
00292     static cilist io___96 = { 0, 0, 0, fmt_9953, 0 };
00293     static cilist io___97 = { 0, 0, 0, fmt_9962, 0 };
00294     static cilist io___98 = { 0, 0, 0, fmt_9967, 0 };
00295     static cilist io___99 = { 0, 0, 0, fmt_9952, 0 };
00296     static cilist io___100 = { 0, 0, 0, fmt_9953, 0 };
00297     static cilist io___101 = { 0, 0, 0, fmt_9966, 0 };
00298     static cilist io___102 = { 0, 0, 0, fmt_9951, 0 };
00299     static cilist io___103 = { 0, 0, 0, fmt_9954, 0 };
00300     static cilist io___104 = { 0, 0, 0, fmt_9974, 0 };
00301     static cilist io___105 = { 0, 0, 0, fmt_9978, 0 };
00302     static cilist io___106 = { 0, 0, 0, fmt_9974, 0 };
00303     static cilist io___107 = { 0, 0, 0, fmt_9978, 0 };
00304     static cilist io___108 = { 0, 0, 0, fmt_9974, 0 };
00305     static cilist io___109 = { 0, 0, 0, fmt_9978, 0 };
00306     static cilist io___110 = { 0, 0, 0, fmt_9974, 0 };
00307     static cilist io___111 = { 0, 0, 0, fmt_9978, 0 };
00308     static cilist io___112 = { 0, 0, 0, fmt_9988, 0 };
00309     static cilist io___113 = { 0, 0, 0, fmt_9975, 0 };
00310     static cilist io___114 = { 0, 0, 0, fmt_9985, 0 };
00311     static cilist io___115 = { 0, 0, 0, fmt_9971, 0 };
00312     static cilist io___116 = { 0, 0, 0, fmt_9950, 0 };
00313 
00314         int subnam_len;
00315 
00316         subnam_len = strlen(subnam);
00317 
00318 
00319 /*  -- LAPACK auxiliary test routine (version 3.1) -- */
00320 /*     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
00321 /*     November 2006 */
00322 
00323 /*     .. Scalar Arguments .. */
00324 /*     .. */
00325 
00326 /*  Purpose */
00327 /*  ======= */
00328 
00329 /*  ALAERH is an error handler for the LAPACK routines.  It prints the */
00330 /*  header if this is the first error message and prints the error code */
00331 /*  and form of recovery, if any.  The character evaluations in this */
00332 /*  routine may make it slow, but it should not be called once the LAPACK */
00333 /*  routines are fully debugged. */
00334 
00335 /*  Arguments */
00336 /*  ========= */
00337 
00338 /*  PATH    (input) CHARACTER*3 */
00339 /*          The LAPACK path name of subroutine SUBNAM. */
00340 
00341 /*  SUBNAM  (input) CHARACTER*(*) */
00342 /*          The name of the subroutine that returned an error code. */
00343 
00344 /*  INFO    (input) INTEGER */
00345 /*          The error code returned from routine SUBNAM. */
00346 
00347 /*  INFOE   (input) INTEGER */
00348 /*          The expected error code from routine SUBNAM, if SUBNAM were */
00349 /*          error-free.  If INFOE = 0, an error message is printed, but */
00350 /*          if INFOE.NE.0, we assume only the return code INFO is wrong. */
00351 
00352 /*  OPTS    (input) CHARACTER*(*) */
00353 /*          The character options to the subroutine SUBNAM, concatenated */
00354 /*          into a single character string.  For example, UPLO = 'U', */
00355 /*          TRANS = 'T', and DIAG = 'N' for a triangular routine would */
00356 /*          be specified as OPTS = 'UTN'. */
00357 
00358 /*  M       (input) INTEGER */
00359 /*          The matrix row dimension. */
00360 
00361 /*  N       (input) INTEGER */
00362 /*          The matrix column dimension.  Accessed only if PATH = xGE or */
00363 /*          xGB. */
00364 
00365 /*  KL      (input) INTEGER */
00366 /*          The number of sub-diagonals of the matrix.  Accessed only if */
00367 /*          PATH = xGB, xPB, or xTB.  Also used for NRHS for PATH = xLS. */
00368 
00369 /*  KU      (input) INTEGER */
00370 /*          The number of super-diagonals of the matrix.  Accessed only */
00371 /*          if PATH = xGB. */
00372 
00373 /*  N5      (input) INTEGER */
00374 /*          A fifth integer parameter, may be the blocksize NB or the */
00375 /*          number of right hand sides NRHS. */
00376 
00377 /*  IMAT    (input) INTEGER */
00378 /*          The matrix type. */
00379 
00380 /*  NFAIL   (input) INTEGER */
00381 /*          The number of prior tests that did not pass the threshold; */
00382 /*          used to determine if the header should be printed. */
00383 
00384 /*  NERRS   (input/output) INTEGER */
00385 /*          On entry, the number of errors already detected; used to */
00386 /*          determine if the header should be printed. */
00387 /*          On exit, NERRS is increased by 1. */
00388 
00389 /*  NOUT    (input) INTEGER */
00390 /*          The unit number on which results are to be printed. */
00391 
00392 /*  ===================================================================== */
00393 
00394 /*     .. Local Scalars .. */
00395 /*     .. */
00396 /*     .. External Functions .. */
00397 /*     .. */
00398 /*     .. Intrinsic Functions .. */
00399 /*     .. */
00400 /*     .. External Subroutines .. */
00401 /*     .. */
00402 /*     .. Executable Statements .. */
00403 
00404     if (*info == 0) {
00405         return 0;
00406     }
00407     s_copy(p2, path + 1, (ftnlen)2, (ftnlen)2);
00408     s_copy(c3, subnam + 3, (ftnlen)3, (ftnlen)3);
00409 
00410 /*     Print the header if this is the first error message. */
00411 
00412     if (*nfail == 0 && *nerrs == 0) {
00413         if (lsamen_(&c__3, c3, "SV ") || lsamen_(&c__3, 
00414                 c3, "SVX")) {
00415             aladhd_(nout, path);
00416         } else {
00417             alahd_(nout, path);
00418         }
00419     }
00420     ++(*nerrs);
00421 
00422 /*     Print the message detailing the error and form of recovery, */
00423 /*     if any. */
00424 
00425     if (lsamen_(&c__2, p2, "GE")) {
00426 
00427 /*        xGE:  General matrices */
00428 
00429         if (lsamen_(&c__3, c3, "TRF")) {
00430             if (*info != *infoe && *infoe != 0) {
00431                 io___3.ciunit = *nout;
00432                 s_wsfe(&io___3);
00433                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00434                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00435                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00436                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00437                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00438                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00439                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00440                 e_wsfe();
00441             } else {
00442                 io___4.ciunit = *nout;
00443                 s_wsfe(&io___4);
00444                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00445                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00446                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00447                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00448                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00449                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00450                 e_wsfe();
00451             }
00452             if (*info != 0) {
00453                 io___5.ciunit = *nout;
00454                 s_wsfe(&io___5);
00455                 e_wsfe();
00456             }
00457 
00458         } else if (lsamen_(&c__3, c3, "SV ")) {
00459 
00460             if (*info != *infoe && *infoe != 0) {
00461                 io___6.ciunit = *nout;
00462                 s_wsfe(&io___6);
00463                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00464                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00465                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00466                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00467                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00468                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00469                 e_wsfe();
00470             } else {
00471                 io___7.ciunit = *nout;
00472                 s_wsfe(&io___7);
00473                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00474                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00475                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00476                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00477                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00478                 e_wsfe();
00479             }
00480 
00481         } else if (lsamen_(&c__3, c3, "SVX")) {
00482 
00483             if (*info != *infoe && *infoe != 0) {
00484                 io___8.ciunit = *nout;
00485                 s_wsfe(&io___8);
00486                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00487                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00488                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00489                 do_fio(&c__1, opts, (ftnlen)1);
00490                 do_fio(&c__1, opts + 1, (ftnlen)1);
00491                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00492                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00493                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00494                 e_wsfe();
00495             } else {
00496                 io___9.ciunit = *nout;
00497                 s_wsfe(&io___9);
00498                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00499                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00500                 do_fio(&c__1, opts, (ftnlen)1);
00501                 do_fio(&c__1, opts + 1, (ftnlen)1);
00502                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00503                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00504                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00505                 e_wsfe();
00506             }
00507 
00508         } else if (lsamen_(&c__3, c3, "TRI")) {
00509 
00510             io___10.ciunit = *nout;
00511             s_wsfe(&io___10);
00512             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00513             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00514             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00515             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00516             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00517             e_wsfe();
00518 
00519         } else if (lsamen_(&c__5, subnam + 1, "LATMS")) 
00520                 {
00521 
00522             io___11.ciunit = *nout;
00523             s_wsfe(&io___11);
00524             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00525             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00526             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00527             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00528             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00529             e_wsfe();
00530 
00531         } else if (lsamen_(&c__3, c3, "CON")) {
00532 
00533             io___12.ciunit = *nout;
00534             s_wsfe(&io___12);
00535             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00536             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00537             do_fio(&c__1, opts, (ftnlen)1);
00538             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00539             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00540             e_wsfe();
00541 
00542         } else if (lsamen_(&c__3, c3, "LS ")) {
00543 
00544             io___13.ciunit = *nout;
00545             s_wsfe(&io___13);
00546             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00547             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00548             do_fio(&c__1, opts, (ftnlen)1);
00549             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00550             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00551             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00552             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00553             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00554             e_wsfe();
00555 
00556         } else if (lsamen_(&c__3, c3, "LSX") || lsamen_(
00557                 &c__3, c3, "LSS")) {
00558 
00559             io___14.ciunit = *nout;
00560             s_wsfe(&io___14);
00561             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00562             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00563             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00564             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00565             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00566             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00567             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00568             e_wsfe();
00569 
00570         } else {
00571 
00572             io___15.ciunit = *nout;
00573             s_wsfe(&io___15);
00574             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00575             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00576             do_fio(&c__1, opts, (ftnlen)1);
00577             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00578             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00579             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00580             e_wsfe();
00581         }
00582 
00583     } else if (lsamen_(&c__2, p2, "GB")) {
00584 
00585 /*        xGB:  General band matrices */
00586 
00587         if (lsamen_(&c__3, c3, "TRF")) {
00588             if (*info != *infoe && *infoe != 0) {
00589                 io___16.ciunit = *nout;
00590                 s_wsfe(&io___16);
00591                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00592                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00593                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00594                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00595                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00596                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00597                 do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00598                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00599                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00600                 e_wsfe();
00601             } else {
00602                 io___17.ciunit = *nout;
00603                 s_wsfe(&io___17);
00604                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00605                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00606                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00607                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00608                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00609                 do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00610                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00611                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00612                 e_wsfe();
00613             }
00614             if (*info != 0) {
00615                 io___18.ciunit = *nout;
00616                 s_wsfe(&io___18);
00617                 e_wsfe();
00618             }
00619 
00620         } else if (lsamen_(&c__3, c3, "SV ")) {
00621 
00622             if (*info != *infoe && *infoe != 0) {
00623                 io___19.ciunit = *nout;
00624                 s_wsfe(&io___19);
00625                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00626                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00627                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00628                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00629                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00630                 do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00631                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00632                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00633                 e_wsfe();
00634             } else {
00635                 io___20.ciunit = *nout;
00636                 s_wsfe(&io___20);
00637                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00638                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00639                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00640                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00641                 do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00642                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00643                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00644                 e_wsfe();
00645             }
00646 
00647         } else if (lsamen_(&c__3, c3, "SVX")) {
00648 
00649             if (*info != *infoe && *infoe != 0) {
00650                 io___21.ciunit = *nout;
00651                 s_wsfe(&io___21);
00652                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00653                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00654                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00655                 do_fio(&c__1, opts, (ftnlen)1);
00656                 do_fio(&c__1, opts + 1, (ftnlen)1);
00657                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00658                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00659                 do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00660                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00661                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00662                 e_wsfe();
00663             } else {
00664                 io___22.ciunit = *nout;
00665                 s_wsfe(&io___22);
00666                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00667                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00668                 do_fio(&c__1, opts, (ftnlen)1);
00669                 do_fio(&c__1, opts + 1, (ftnlen)1);
00670                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00671                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00672                 do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00673                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00674                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00675                 e_wsfe();
00676             }
00677 
00678         } else if (lsamen_(&c__5, subnam + 1, "LATMS")) 
00679                 {
00680 
00681             io___23.ciunit = *nout;
00682             s_wsfe(&io___23);
00683             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00684             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00685             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00686             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00687             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00688             do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00689             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00690             e_wsfe();
00691 
00692         } else if (lsamen_(&c__3, c3, "CON")) {
00693 
00694             io___24.ciunit = *nout;
00695             s_wsfe(&io___24);
00696             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00697             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00698             do_fio(&c__1, opts, (ftnlen)1);
00699             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00700             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00701             do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00702             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00703             e_wsfe();
00704 
00705         } else {
00706 
00707             io___25.ciunit = *nout;
00708             s_wsfe(&io___25);
00709             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00710             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00711             do_fio(&c__1, opts, (ftnlen)1);
00712             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00713             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
00714             do_fio(&c__1, (char *)&(*ku), (ftnlen)sizeof(integer));
00715             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00716             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00717             e_wsfe();
00718         }
00719 
00720     } else if (lsamen_(&c__2, p2, "GT")) {
00721 
00722 /*        xGT:  General tridiagonal matrices */
00723 
00724         if (lsamen_(&c__3, c3, "TRF")) {
00725             if (*info != *infoe && *infoe != 0) {
00726                 io___26.ciunit = *nout;
00727                 s_wsfe(&io___26);
00728                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00729                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00730                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00731                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00732                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00733                 e_wsfe();
00734             } else {
00735                 io___27.ciunit = *nout;
00736                 s_wsfe(&io___27);
00737                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00738                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00739                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00740                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00741                 e_wsfe();
00742             }
00743             if (*info != 0) {
00744                 io___28.ciunit = *nout;
00745                 s_wsfe(&io___28);
00746                 e_wsfe();
00747             }
00748 
00749         } else if (lsamen_(&c__3, c3, "SV ")) {
00750 
00751             if (*info != *infoe && *infoe != 0) {
00752                 io___29.ciunit = *nout;
00753                 s_wsfe(&io___29);
00754                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00755                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00756                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00757                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00758                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00759                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00760                 e_wsfe();
00761             } else {
00762                 io___30.ciunit = *nout;
00763                 s_wsfe(&io___30);
00764                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00765                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00766                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00767                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00768                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00769                 e_wsfe();
00770             }
00771 
00772         } else if (lsamen_(&c__3, c3, "SVX")) {
00773 
00774             if (*info != *infoe && *infoe != 0) {
00775                 io___31.ciunit = *nout;
00776                 s_wsfe(&io___31);
00777                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00778                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00779                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00780                 do_fio(&c__1, opts, (ftnlen)1);
00781                 do_fio(&c__1, opts + 1, (ftnlen)1);
00782                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00783                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00784                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00785                 e_wsfe();
00786             } else {
00787                 io___32.ciunit = *nout;
00788                 s_wsfe(&io___32);
00789                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00790                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00791                 do_fio(&c__1, opts, (ftnlen)1);
00792                 do_fio(&c__1, opts + 1, (ftnlen)1);
00793                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00794                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00795                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00796                 e_wsfe();
00797             }
00798 
00799         } else if (lsamen_(&c__3, c3, "CON")) {
00800 
00801             io___33.ciunit = *nout;
00802             s_wsfe(&io___33);
00803             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00804             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00805             do_fio(&c__1, opts, (ftnlen)1);
00806             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00807             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00808             e_wsfe();
00809 
00810         } else {
00811 
00812             io___34.ciunit = *nout;
00813             s_wsfe(&io___34);
00814             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00815             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00816             do_fio(&c__1, opts, (ftnlen)1);
00817             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00818             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00819             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00820             e_wsfe();
00821         }
00822 
00823     } else if (lsamen_(&c__2, p2, "PO")) {
00824 
00825 /*        xPO:  Symmetric or Hermitian positive definite matrices */
00826 
00827         *(unsigned char *)uplo = *(unsigned char *)opts;
00828         if (lsamen_(&c__3, c3, "TRF")) {
00829             if (*info != *infoe && *infoe != 0) {
00830                 io___36.ciunit = *nout;
00831                 s_wsfe(&io___36);
00832                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00833                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00834                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00835                 do_fio(&c__1, uplo, (ftnlen)1);
00836                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00837                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00838                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00839                 e_wsfe();
00840             } else {
00841                 io___37.ciunit = *nout;
00842                 s_wsfe(&io___37);
00843                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00844                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00845                 do_fio(&c__1, uplo, (ftnlen)1);
00846                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00847                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00848                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00849                 e_wsfe();
00850             }
00851             if (*info != 0) {
00852                 io___38.ciunit = *nout;
00853                 s_wsfe(&io___38);
00854                 e_wsfe();
00855             }
00856 
00857         } else if (lsamen_(&c__3, c3, "SV ")) {
00858 
00859             if (*info != *infoe && *infoe != 0) {
00860                 io___39.ciunit = *nout;
00861                 s_wsfe(&io___39);
00862                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00863                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00864                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00865                 do_fio(&c__1, uplo, (ftnlen)1);
00866                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00867                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00868                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00869                 e_wsfe();
00870             } else {
00871                 io___40.ciunit = *nout;
00872                 s_wsfe(&io___40);
00873                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00874                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00875                 do_fio(&c__1, uplo, (ftnlen)1);
00876                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00877                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00878                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00879                 e_wsfe();
00880             }
00881 
00882         } else if (lsamen_(&c__3, c3, "SVX")) {
00883 
00884             if (*info != *infoe && *infoe != 0) {
00885                 io___41.ciunit = *nout;
00886                 s_wsfe(&io___41);
00887                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00888                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00889                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00890                 do_fio(&c__1, opts, (ftnlen)1);
00891                 do_fio(&c__1, opts + 1, (ftnlen)1);
00892                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00893                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00894                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00895                 e_wsfe();
00896             } else {
00897                 io___42.ciunit = *nout;
00898                 s_wsfe(&io___42);
00899                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00900                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00901                 do_fio(&c__1, opts, (ftnlen)1);
00902                 do_fio(&c__1, opts + 1, (ftnlen)1);
00903                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00904                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00905                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00906                 e_wsfe();
00907             }
00908 
00909         } else if (lsamen_(&c__3, c3, "TRI")) {
00910 
00911             io___43.ciunit = *nout;
00912             s_wsfe(&io___43);
00913             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00914             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00915             do_fio(&c__1, uplo, (ftnlen)1);
00916             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00917             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00918             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00919             e_wsfe();
00920 
00921         } else if (lsamen_(&c__5, subnam + 1, "LATMS") 
00922                 || lsamen_(&c__3, c3, "CON")) {
00923 
00924             io___44.ciunit = *nout;
00925             s_wsfe(&io___44);
00926             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00927             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00928             do_fio(&c__1, uplo, (ftnlen)1);
00929             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00930             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00931             e_wsfe();
00932 
00933         } else {
00934 
00935             io___45.ciunit = *nout;
00936             s_wsfe(&io___45);
00937             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
00938             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00939             do_fio(&c__1, uplo, (ftnlen)1);
00940             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00941             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00942             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00943             e_wsfe();
00944         }
00945 
00946     } else if (lsamen_(&c__2, p2, "PS")) {
00947 
00948 /*        xPS:  Symmetric or Hermitian positive semi-definite matrices */
00949 
00950         *(unsigned char *)uplo = *(unsigned char *)opts;
00951         if (lsamen_(&c__3, c3, "TRF")) {
00952             if (*info != *infoe && *infoe != 0) {
00953                 io___46.ciunit = *nout;
00954                 s_wsfe(&io___46);
00955                 do_fio(&c__1, subnam, subnam_len);
00956                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00957                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00958                 do_fio(&c__1, uplo, (ftnlen)1);
00959                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00960                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00961                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00962                 e_wsfe();
00963             } else {
00964                 io___47.ciunit = *nout;
00965                 s_wsfe(&io___47);
00966                 do_fio(&c__1, subnam, subnam_len);
00967                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00968                 do_fio(&c__1, uplo, (ftnlen)1);
00969                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
00970                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00971                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00972                 e_wsfe();
00973             }
00974             if (*info != 0) {
00975                 io___48.ciunit = *nout;
00976                 s_wsfe(&io___48);
00977                 e_wsfe();
00978             }
00979 
00980         } else if (lsamen_(&c__3, c3, "SV ")) {
00981 
00982             if (*info != *infoe && *infoe != 0) {
00983                 io___49.ciunit = *nout;
00984                 s_wsfe(&io___49);
00985                 do_fio(&c__1, subnam, subnam_len);
00986                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00987                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
00988                 do_fio(&c__1, uplo, (ftnlen)1);
00989                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
00990                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
00991                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
00992                 e_wsfe();
00993             } else {
00994                 io___50.ciunit = *nout;
00995                 s_wsfe(&io___50);
00996                 do_fio(&c__1, subnam, subnam_len);
00997                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
00998                 do_fio(&c__1, uplo, (ftnlen)1);
00999                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01000                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01001                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01002                 e_wsfe();
01003             }
01004 
01005         } else if (lsamen_(&c__3, c3, "SVX")) {
01006 
01007             if (*info != *infoe && *infoe != 0) {
01008                 io___51.ciunit = *nout;
01009                 s_wsfe(&io___51);
01010                 do_fio(&c__1, subnam, subnam_len);
01011                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01012                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01013                 do_fio(&c__1, opts, (ftnlen)1);
01014                 do_fio(&c__1, opts + 1, (ftnlen)1);
01015                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01016                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01017                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01018                 e_wsfe();
01019             } else {
01020                 io___52.ciunit = *nout;
01021                 s_wsfe(&io___52);
01022                 do_fio(&c__1, subnam, subnam_len);
01023                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01024                 do_fio(&c__1, opts, (ftnlen)1);
01025                 do_fio(&c__1, opts + 1, (ftnlen)1);
01026                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01027                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01028                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01029                 e_wsfe();
01030             }
01031 
01032         } else if (lsamen_(&c__3, c3, "TRI")) {
01033 
01034             io___53.ciunit = *nout;
01035             s_wsfe(&io___53);
01036             do_fio(&c__1, subnam, subnam_len);
01037             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01038             do_fio(&c__1, uplo, (ftnlen)1);
01039             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01040             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01041             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01042             e_wsfe();
01043 
01044         } else if (lsamen_(&c__5, subnam + 1, "LATMT") 
01045                 || lsamen_(&c__3, c3, "CON")) {
01046 
01047             io___54.ciunit = *nout;
01048             s_wsfe(&io___54);
01049             do_fio(&c__1, subnam, subnam_len);
01050             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01051             do_fio(&c__1, uplo, (ftnlen)1);
01052             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01053             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01054             e_wsfe();
01055 
01056         } else {
01057 
01058             io___55.ciunit = *nout;
01059             s_wsfe(&io___55);
01060             do_fio(&c__1, subnam, subnam_len);
01061             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01062             do_fio(&c__1, uplo, (ftnlen)1);
01063             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01064             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01065             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01066             e_wsfe();
01067         }
01068 
01069     } else if (lsamen_(&c__2, p2, "SY") || lsamen_(&
01070             c__2, p2, "HE")) {
01071 
01072 /*        xHE, or xSY:  Symmetric or Hermitian indefinite matrices */
01073 
01074         *(unsigned char *)uplo = *(unsigned char *)opts;
01075         if (lsamen_(&c__3, c3, "TRF")) {
01076             if (*info != *infoe && *infoe != 0) {
01077                 io___56.ciunit = *nout;
01078                 s_wsfe(&io___56);
01079                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01080                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01081                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01082                 do_fio(&c__1, uplo, (ftnlen)1);
01083                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01084                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01085                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01086                 e_wsfe();
01087             } else {
01088                 io___57.ciunit = *nout;
01089                 s_wsfe(&io___57);
01090                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01091                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01092                 do_fio(&c__1, uplo, (ftnlen)1);
01093                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01094                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01095                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01096                 e_wsfe();
01097             }
01098             if (*info != 0) {
01099                 io___58.ciunit = *nout;
01100                 s_wsfe(&io___58);
01101                 e_wsfe();
01102             }
01103 
01104         } else if (lsamen_(&c__3, c3, "SV ")) {
01105 
01106             if (*info != *infoe && *infoe != 0) {
01107                 io___59.ciunit = *nout;
01108                 s_wsfe(&io___59);
01109                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01110                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01111                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01112                 do_fio(&c__1, uplo, (ftnlen)1);
01113                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01114                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01115                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01116                 e_wsfe();
01117             } else {
01118                 io___60.ciunit = *nout;
01119                 s_wsfe(&io___60);
01120                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01121                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01122                 do_fio(&c__1, uplo, (ftnlen)1);
01123                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01124                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01125                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01126                 e_wsfe();
01127             }
01128 
01129         } else if (lsamen_(&c__3, c3, "SVX")) {
01130 
01131             if (*info != *infoe && *infoe != 0) {
01132                 io___61.ciunit = *nout;
01133                 s_wsfe(&io___61);
01134                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01135                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01136                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01137                 do_fio(&c__1, opts, (ftnlen)1);
01138                 do_fio(&c__1, opts + 1, (ftnlen)1);
01139                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01140                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01141                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01142                 e_wsfe();
01143             } else {
01144                 io___62.ciunit = *nout;
01145                 s_wsfe(&io___62);
01146                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01147                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01148                 do_fio(&c__1, opts, (ftnlen)1);
01149                 do_fio(&c__1, opts + 1, (ftnlen)1);
01150                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01151                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01152                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01153                 e_wsfe();
01154             }
01155 
01156         } else if (lsamen_(&c__5, subnam + 1, "LATMS") 
01157                 || lsamen_(&c__3, c3, "TRI") || lsamen_(
01158                 &c__3, c3, "CON")) {
01159 
01160             io___63.ciunit = *nout;
01161             s_wsfe(&io___63);
01162             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01163             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01164             do_fio(&c__1, uplo, (ftnlen)1);
01165             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01166             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01167             e_wsfe();
01168 
01169         } else {
01170 
01171             io___64.ciunit = *nout;
01172             s_wsfe(&io___64);
01173             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01174             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01175             do_fio(&c__1, uplo, (ftnlen)1);
01176             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01177             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01178             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01179             e_wsfe();
01180         }
01181 
01182     } else if (lsamen_(&c__2, p2, "PP") || lsamen_(&
01183             c__2, p2, "SP") || lsamen_(&c__2, p2, "HP")) {
01184 
01185 /*        xPP, xHP, or xSP:  Symmetric or Hermitian packed matrices */
01186 
01187         *(unsigned char *)uplo = *(unsigned char *)opts;
01188         if (lsamen_(&c__3, c3, "TRF")) {
01189             if (*info != *infoe && *infoe != 0) {
01190                 io___65.ciunit = *nout;
01191                 s_wsfe(&io___65);
01192                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01193                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01194                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01195                 do_fio(&c__1, uplo, (ftnlen)1);
01196                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01197                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01198                 e_wsfe();
01199             } else {
01200                 io___66.ciunit = *nout;
01201                 s_wsfe(&io___66);
01202                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01203                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01204                 do_fio(&c__1, uplo, (ftnlen)1);
01205                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01206                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01207                 e_wsfe();
01208             }
01209             if (*info != 0) {
01210                 io___67.ciunit = *nout;
01211                 s_wsfe(&io___67);
01212                 e_wsfe();
01213             }
01214 
01215         } else if (lsamen_(&c__3, c3, "SV ")) {
01216 
01217             if (*info != *infoe && *infoe != 0) {
01218                 io___68.ciunit = *nout;
01219                 s_wsfe(&io___68);
01220                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01221                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01222                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01223                 do_fio(&c__1, uplo, (ftnlen)1);
01224                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01225                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01226                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01227                 e_wsfe();
01228             } else {
01229                 io___69.ciunit = *nout;
01230                 s_wsfe(&io___69);
01231                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01232                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01233                 do_fio(&c__1, uplo, (ftnlen)1);
01234                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01235                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01236                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01237                 e_wsfe();
01238             }
01239 
01240         } else if (lsamen_(&c__3, c3, "SVX")) {
01241 
01242             if (*info != *infoe && *infoe != 0) {
01243                 io___70.ciunit = *nout;
01244                 s_wsfe(&io___70);
01245                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01246                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01247                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01248                 do_fio(&c__1, opts, (ftnlen)1);
01249                 do_fio(&c__1, opts + 1, (ftnlen)1);
01250                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01251                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01252                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01253                 e_wsfe();
01254             } else {
01255                 io___71.ciunit = *nout;
01256                 s_wsfe(&io___71);
01257                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01258                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01259                 do_fio(&c__1, opts, (ftnlen)1);
01260                 do_fio(&c__1, opts + 1, (ftnlen)1);
01261                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01262                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01263                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01264                 e_wsfe();
01265             }
01266 
01267         } else if (lsamen_(&c__5, subnam + 1, "LATMS") 
01268                 || lsamen_(&c__3, c3, "TRI") || lsamen_(
01269                 &c__3, c3, "CON")) {
01270 
01271             io___72.ciunit = *nout;
01272             s_wsfe(&io___72);
01273             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01274             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01275             do_fio(&c__1, uplo, (ftnlen)1);
01276             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01277             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01278             e_wsfe();
01279 
01280         } else {
01281 
01282             io___73.ciunit = *nout;
01283             s_wsfe(&io___73);
01284             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01285             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01286             do_fio(&c__1, uplo, (ftnlen)1);
01287             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01288             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01289             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01290             e_wsfe();
01291         }
01292 
01293     } else if (lsamen_(&c__2, p2, "PB")) {
01294 
01295 /*        xPB:  Symmetric (Hermitian) positive definite band matrix */
01296 
01297         *(unsigned char *)uplo = *(unsigned char *)opts;
01298         if (lsamen_(&c__3, c3, "TRF")) {
01299             if (*info != *infoe && *infoe != 0) {
01300                 io___74.ciunit = *nout;
01301                 s_wsfe(&io___74);
01302                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01303                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01304                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01305                 do_fio(&c__1, uplo, (ftnlen)1);
01306                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01307                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01308                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01309                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01310                 e_wsfe();
01311             } else {
01312                 io___75.ciunit = *nout;
01313                 s_wsfe(&io___75);
01314                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01315                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01316                 do_fio(&c__1, uplo, (ftnlen)1);
01317                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01318                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01319                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01320                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01321                 e_wsfe();
01322             }
01323             if (*info != 0) {
01324                 io___76.ciunit = *nout;
01325                 s_wsfe(&io___76);
01326                 e_wsfe();
01327             }
01328 
01329         } else if (lsamen_(&c__3, c3, "SV ")) {
01330 
01331             if (*info != *infoe && *infoe != 0) {
01332                 io___77.ciunit = *nout;
01333                 s_wsfe(&io___77);
01334                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01335                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01336                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01337                 do_fio(&c__1, uplo, (ftnlen)1);
01338                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01339                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01340                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01341                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01342                 e_wsfe();
01343             } else {
01344                 io___78.ciunit = *nout;
01345                 s_wsfe(&io___78);
01346                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01347                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01348                 do_fio(&c__1, uplo, (ftnlen)1);
01349                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01350                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01351                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01352                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01353                 e_wsfe();
01354             }
01355 
01356         } else if (lsamen_(&c__3, c3, "SVX")) {
01357 
01358             if (*info != *infoe && *infoe != 0) {
01359                 io___79.ciunit = *nout;
01360                 s_wsfe(&io___79);
01361                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01362                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01363                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01364                 do_fio(&c__1, opts, (ftnlen)1);
01365                 do_fio(&c__1, opts + 1, (ftnlen)1);
01366                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01367                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01368                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01369                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01370                 e_wsfe();
01371             } else {
01372                 io___80.ciunit = *nout;
01373                 s_wsfe(&io___80);
01374                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01375                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01376                 do_fio(&c__1, opts, (ftnlen)1);
01377                 do_fio(&c__1, opts + 1, (ftnlen)1);
01378                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01379                 do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01380                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01381                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01382                 e_wsfe();
01383             }
01384 
01385         } else if (lsamen_(&c__5, subnam + 1, "LATMS") 
01386                 || lsamen_(&c__3, c3, "CON")) {
01387 
01388             io___81.ciunit = *nout;
01389             s_wsfe(&io___81);
01390             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01391             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01392             do_fio(&c__1, uplo, (ftnlen)1);
01393             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01394             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01395             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01396             e_wsfe();
01397 
01398         } else {
01399 
01400             io___82.ciunit = *nout;
01401             s_wsfe(&io___82);
01402             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01403             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01404             do_fio(&c__1, uplo, (ftnlen)1);
01405             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01406             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01407             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01408             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01409             e_wsfe();
01410         }
01411 
01412     } else if (lsamen_(&c__2, p2, "PT")) {
01413 
01414 /*        xPT:  Positive definite tridiagonal matrices */
01415 
01416         if (lsamen_(&c__3, c3, "TRF")) {
01417             if (*info != *infoe && *infoe != 0) {
01418                 io___83.ciunit = *nout;
01419                 s_wsfe(&io___83);
01420                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01421                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01422                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01423                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01424                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01425                 e_wsfe();
01426             } else {
01427                 io___84.ciunit = *nout;
01428                 s_wsfe(&io___84);
01429                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01430                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01431                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01432                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01433                 e_wsfe();
01434             }
01435             if (*info != 0) {
01436                 io___85.ciunit = *nout;
01437                 s_wsfe(&io___85);
01438                 e_wsfe();
01439             }
01440 
01441         } else if (lsamen_(&c__3, c3, "SV ")) {
01442 
01443             if (*info != *infoe && *infoe != 0) {
01444                 io___86.ciunit = *nout;
01445                 s_wsfe(&io___86);
01446                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01447                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01448                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01449                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01450                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01451                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01452                 e_wsfe();
01453             } else {
01454                 io___87.ciunit = *nout;
01455                 s_wsfe(&io___87);
01456                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01457                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01458                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01459                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01460                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01461                 e_wsfe();
01462             }
01463 
01464         } else if (lsamen_(&c__3, c3, "SVX")) {
01465 
01466             if (*info != *infoe && *infoe != 0) {
01467                 io___88.ciunit = *nout;
01468                 s_wsfe(&io___88);
01469                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01470                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01471                 do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01472                 do_fio(&c__1, opts, (ftnlen)1);
01473                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01474                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01475                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01476                 e_wsfe();
01477             } else {
01478                 io___89.ciunit = *nout;
01479                 s_wsfe(&io___89);
01480                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01481                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01482                 do_fio(&c__1, opts, (ftnlen)1);
01483                 do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01484                 do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01485                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01486                 e_wsfe();
01487             }
01488 
01489         } else if (lsamen_(&c__3, c3, "CON")) {
01490 
01491             if (lsame_(subnam, "S") || lsame_(subnam, 
01492                     "D")) {
01493                 io___90.ciunit = *nout;
01494                 s_wsfe(&io___90);
01495                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01496                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01497                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01498                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01499                 e_wsfe();
01500             } else {
01501                 io___91.ciunit = *nout;
01502                 s_wsfe(&io___91);
01503                 do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01504                 do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01505                 do_fio(&c__1, opts, (ftnlen)1);
01506                 do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01507                 do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01508                 e_wsfe();
01509             }
01510 
01511         } else {
01512 
01513             io___92.ciunit = *nout;
01514             s_wsfe(&io___92);
01515             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01516             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01517             do_fio(&c__1, opts, (ftnlen)1);
01518             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01519             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01520             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01521             e_wsfe();
01522         }
01523 
01524     } else if (lsamen_(&c__2, p2, "TR")) {
01525 
01526 /*        xTR:  Triangular matrix */
01527 
01528         if (lsamen_(&c__3, c3, "TRI")) {
01529             io___93.ciunit = *nout;
01530             s_wsfe(&io___93);
01531             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01532             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01533             do_fio(&c__1, opts, (ftnlen)1);
01534             do_fio(&c__1, opts + 1, (ftnlen)1);
01535             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01536             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01537             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01538             e_wsfe();
01539         } else if (lsamen_(&c__3, c3, "CON")) {
01540             io___94.ciunit = *nout;
01541             s_wsfe(&io___94);
01542             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01543             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01544             do_fio(&c__1, opts, (ftnlen)1);
01545             do_fio(&c__1, opts + 1, (ftnlen)1);
01546             do_fio(&c__1, opts + 2, (ftnlen)1);
01547             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01548             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01549             e_wsfe();
01550         } else if (lsamen_(&c__5, subnam + 1, "LATRS")) 
01551                 {
01552             io___95.ciunit = *nout;
01553             s_wsfe(&io___95);
01554             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01555             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01556             do_fio(&c__1, opts, (ftnlen)1);
01557             do_fio(&c__1, opts + 1, (ftnlen)1);
01558             do_fio(&c__1, opts + 2, (ftnlen)1);
01559             do_fio(&c__1, opts + 3, (ftnlen)1);
01560             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01561             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01562             e_wsfe();
01563         } else {
01564             io___96.ciunit = *nout;
01565             s_wsfe(&io___96);
01566             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01567             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01568             do_fio(&c__1, opts, (ftnlen)1);
01569             do_fio(&c__1, opts + 1, (ftnlen)1);
01570             do_fio(&c__1, opts + 2, (ftnlen)1);
01571             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01572             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01573             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01574             e_wsfe();
01575         }
01576 
01577     } else if (lsamen_(&c__2, p2, "TP")) {
01578 
01579 /*        xTP:  Triangular packed matrix */
01580 
01581         if (lsamen_(&c__3, c3, "TRI")) {
01582             io___97.ciunit = *nout;
01583             s_wsfe(&io___97);
01584             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01585             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01586             do_fio(&c__1, opts, (ftnlen)1);
01587             do_fio(&c__1, opts + 1, (ftnlen)1);
01588             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01589             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01590             e_wsfe();
01591         } else if (lsamen_(&c__3, c3, "CON")) {
01592             io___98.ciunit = *nout;
01593             s_wsfe(&io___98);
01594             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01595             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01596             do_fio(&c__1, opts, (ftnlen)1);
01597             do_fio(&c__1, opts + 1, (ftnlen)1);
01598             do_fio(&c__1, opts + 2, (ftnlen)1);
01599             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01600             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01601             e_wsfe();
01602         } else if (lsamen_(&c__5, subnam + 1, "LATPS")) 
01603                 {
01604             io___99.ciunit = *nout;
01605             s_wsfe(&io___99);
01606             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01607             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01608             do_fio(&c__1, opts, (ftnlen)1);
01609             do_fio(&c__1, opts + 1, (ftnlen)1);
01610             do_fio(&c__1, opts + 2, (ftnlen)1);
01611             do_fio(&c__1, opts + 3, (ftnlen)1);
01612             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01613             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01614             e_wsfe();
01615         } else {
01616             io___100.ciunit = *nout;
01617             s_wsfe(&io___100);
01618             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01619             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01620             do_fio(&c__1, opts, (ftnlen)1);
01621             do_fio(&c__1, opts + 1, (ftnlen)1);
01622             do_fio(&c__1, opts + 2, (ftnlen)1);
01623             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01624             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01625             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01626             e_wsfe();
01627         }
01628 
01629     } else if (lsamen_(&c__2, p2, "TB")) {
01630 
01631 /*        xTB:  Triangular band matrix */
01632 
01633         if (lsamen_(&c__3, c3, "CON")) {
01634             io___101.ciunit = *nout;
01635             s_wsfe(&io___101);
01636             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01637             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01638             do_fio(&c__1, opts, (ftnlen)1);
01639             do_fio(&c__1, opts + 1, (ftnlen)1);
01640             do_fio(&c__1, opts + 2, (ftnlen)1);
01641             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01642             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01643             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01644             e_wsfe();
01645         } else if (lsamen_(&c__5, subnam + 1, "LATBS")) 
01646                 {
01647             io___102.ciunit = *nout;
01648             s_wsfe(&io___102);
01649             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01650             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01651             do_fio(&c__1, opts, (ftnlen)1);
01652             do_fio(&c__1, opts + 1, (ftnlen)1);
01653             do_fio(&c__1, opts + 2, (ftnlen)1);
01654             do_fio(&c__1, opts + 3, (ftnlen)1);
01655             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01656             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01657             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01658             e_wsfe();
01659         } else {
01660             io___103.ciunit = *nout;
01661             s_wsfe(&io___103);
01662             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01663             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01664             do_fio(&c__1, opts, (ftnlen)1);
01665             do_fio(&c__1, opts + 1, (ftnlen)1);
01666             do_fio(&c__1, opts + 2, (ftnlen)1);
01667             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01668             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01669             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01670             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01671             e_wsfe();
01672         }
01673 
01674     } else if (lsamen_(&c__2, p2, "QR")) {
01675 
01676 /*        xQR:  QR factorization */
01677 
01678         if (lsamen_(&c__3, c3, "QRS")) {
01679             io___104.ciunit = *nout;
01680             s_wsfe(&io___104);
01681             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01682             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01683             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01684             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01685             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01686             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01687             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01688             e_wsfe();
01689         } else if (lsamen_(&c__5, subnam + 1, "LATMS")) 
01690                 {
01691             io___105.ciunit = *nout;
01692             s_wsfe(&io___105);
01693             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01694             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01695             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01696             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01697             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01698             e_wsfe();
01699         }
01700 
01701     } else if (lsamen_(&c__2, p2, "LQ")) {
01702 
01703 /*        xLQ:  LQ factorization */
01704 
01705         if (lsamen_(&c__3, c3, "LQS")) {
01706             io___106.ciunit = *nout;
01707             s_wsfe(&io___106);
01708             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01709             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01710             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01711             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01712             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01713             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01714             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01715             e_wsfe();
01716         } else if (lsamen_(&c__5, subnam + 1, "LATMS")) 
01717                 {
01718             io___107.ciunit = *nout;
01719             s_wsfe(&io___107);
01720             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01721             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01722             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01723             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01724             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01725             e_wsfe();
01726         }
01727 
01728     } else if (lsamen_(&c__2, p2, "QL")) {
01729 
01730 /*        xQL:  QL factorization */
01731 
01732         if (lsamen_(&c__3, c3, "QLS")) {
01733             io___108.ciunit = *nout;
01734             s_wsfe(&io___108);
01735             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01736             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01737             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01738             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01739             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01740             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01741             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01742             e_wsfe();
01743         } else if (lsamen_(&c__5, subnam + 1, "LATMS")) 
01744                 {
01745             io___109.ciunit = *nout;
01746             s_wsfe(&io___109);
01747             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01748             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01749             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01750             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01751             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01752             e_wsfe();
01753         }
01754 
01755     } else if (lsamen_(&c__2, p2, "RQ")) {
01756 
01757 /*        xRQ:  RQ factorization */
01758 
01759         if (lsamen_(&c__3, c3, "RQS")) {
01760             io___110.ciunit = *nout;
01761             s_wsfe(&io___110);
01762             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01763             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01764             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01765             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01766             do_fio(&c__1, (char *)&(*kl), (ftnlen)sizeof(integer));
01767             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01768             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01769             e_wsfe();
01770         } else if (lsamen_(&c__5, subnam + 1, "LATMS")) 
01771                 {
01772             io___111.ciunit = *nout;
01773             s_wsfe(&io___111);
01774             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01775             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01776             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01777             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01778             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01779             e_wsfe();
01780         }
01781 
01782     } else if (lsamen_(&c__2, p2, "LU")) {
01783 
01784         if (*info != *infoe && *infoe != 0) {
01785             io___112.ciunit = *nout;
01786             s_wsfe(&io___112);
01787             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01788             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01789             do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01790             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01791             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01792             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01793             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01794             e_wsfe();
01795         } else {
01796             io___113.ciunit = *nout;
01797             s_wsfe(&io___113);
01798             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01799             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01800             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01801             do_fio(&c__1, (char *)&(*n), (ftnlen)sizeof(integer));
01802             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01803             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01804             e_wsfe();
01805         }
01806 
01807     } else if (lsamen_(&c__2, p2, "CH")) {
01808 
01809         if (*info != *infoe && *infoe != 0) {
01810             io___114.ciunit = *nout;
01811             s_wsfe(&io___114);
01812             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01813             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01814             do_fio(&c__1, (char *)&(*infoe), (ftnlen)sizeof(integer));
01815             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01816             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01817             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01818             e_wsfe();
01819         } else {
01820             io___115.ciunit = *nout;
01821             s_wsfe(&io___115);
01822             do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01823             do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01824             do_fio(&c__1, (char *)&(*m), (ftnlen)sizeof(integer));
01825             do_fio(&c__1, (char *)&(*n5), (ftnlen)sizeof(integer));
01826             do_fio(&c__1, (char *)&(*imat), (ftnlen)sizeof(integer));
01827             e_wsfe();
01828         }
01829 
01830     } else {
01831 
01832 /*        Print a generic message if the path is unknown. */
01833 
01834         io___116.ciunit = *nout;
01835         s_wsfe(&io___116);
01836         do_fio(&c__1, subnam, i_len_trim(subnam, subnam_len));
01837         do_fio(&c__1, (char *)&(*info), (ftnlen)sizeof(integer));
01838         e_wsfe();
01839     }
01840 
01841 /*     Description of error message (alphabetical, left to right) */
01842 
01843 /*     SUBNAM, INFO, FACT, N, NRHS, IMAT */
01844 
01845 
01846 /*     SUBNAM, INFO, FACT, TRANS, N, KL, KU, NRHS, IMAT */
01847 
01848 
01849 /*     SUBNAM, INFO, FACT, TRANS, N, NRHS, IMAT */
01850 
01851 
01852 /*     SUBNAM, INFO, FACT, UPLO, N, KD, NRHS, IMAT */
01853 
01854 
01855 /*     SUBNAM, INFO, FACT, UPLO, N, NRHS, IMAT */
01856 
01857 
01858 /*     SUBNAM, INFO, INFOE, FACT, N, NRHS, IMAT */
01859 
01860 
01861 /*     SUBNAM, INFO, INFOE, FACT, TRANS, N, KL, KU, NRHS, IMAT */
01862 
01863 
01864 /*     SUBNAM, INFO, INFOE, FACT, TRANS, N, NRHS, IMAT */
01865 
01866 
01867 /*     SUBNAM, INFO, INFOE, FACT, UPLO, N, KD, NRHS, IMAT */
01868 
01869 
01870 /*     SUBNAM, INFO, INFOE, FACT, UPLO, N, NRHS, IMAT */
01871 
01872 
01873 /*     SUBNAM, INFO, INFOE, M, N, KL, KU, NB, IMAT */
01874 
01875 
01876 /*     SUBNAM, INFO, INFOE, M, N, NB, IMAT */
01877 
01878 
01879 /*     SUBNAM, INFO, INFOE, N, IMAT */
01880 
01881 
01882 /*     SUBNAM, INFO, INFOE, N, KL, KU, NRHS, IMAT */
01883 
01884 
01885 /*     SUBNAM, INFO, INFOE, N, NB, IMAT */
01886 
01887 
01888 /*     SUBNAM, INFO, INFOE, N, NRHS, IMAT */
01889 
01890 
01891 /*     SUBNAM, INFO, INFOE, UPLO, N, IMAT */
01892 
01893 
01894 /*     SUBNAM, INFO, INFOE, UPLO, N, KD, NB, IMAT */
01895 
01896 
01897 /*     SUBNAM, INFO, INFOE, UPLO, N, KD, NRHS, IMAT */
01898 
01899 
01900 /*     SUBNAM, INFO, INFOE, UPLO, N, NB, IMAT */
01901 
01902 
01903 /*     SUBNAM, INFO, INFOE, UPLO, N, NRHS, IMAT */
01904 
01905 
01906 /*     SUBNAM, INFO, M, N, IMAT */
01907 
01908 
01909 /*     SUBNAM, INFO, M, N, KL, KU, IMAT */
01910 
01911 
01912 /*     SUBNAM, INFO, M, N, KL, KU, NB, IMAT */
01913 
01914 
01915 /*     SUBNAM, INFO, M, N, NB, IMAT */
01916 
01917 
01918 /*     SUBNAM, INFO, M, N, NRHS, NB, IMAT */
01919 
01920 
01921 /*     SUBNAM, INFO, N, IMAT */
01922 
01923 
01924 /*     SUBNAM, INFO, N, KL, KU, NRHS, IMAT */
01925 
01926 
01927 /*     SUBNAM, INFO, N, NB, IMAT */
01928 
01929 
01930 /*     SUBNAM, INFO, N, NRHS, IMAT */
01931 
01932 
01933 /*     SUBNAM, INFO, NORM, N, IMAT */
01934 
01935 
01936 /*     SUBNAM, INFO, NORM, N, KL, KU, IMAT */
01937 
01938 
01939 /*     SUBNAM, INFO, NORM, UPLO, DIAG, N, IMAT */
01940 
01941 
01942 /*     SUBNAM, INFO, NORM, UPLO, DIAG, N, KD, IMAT */
01943 
01944 
01945 /*     SUBNAM, INFO, TRANS, M, N, NRHS, NB, IMAT */
01946 
01947 
01948 /*     SUBNAM, INFO, TRANS, N, KL, KU, NRHS, IMAT */
01949 
01950 
01951 /*     SUBNAM, INFO, TRANS, N, NRHS, IMAT */
01952 
01953 
01954 /*     SUBNAM, INFO, UPLO, DIAG, N, IMAT */
01955 
01956 
01957 /*     SUBNAM, INFO, UPLO, DIAG, N, NB, IMAT */
01958 
01959 
01960 /*     SUBNAM, INFO, UPLO, N, IMAT */
01961 
01962 
01963 /*     SUBNAM, INFO, UPLO, N, KD, IMAT */
01964 
01965 
01966 /*     SUBNAM, INFO, UPLO, N, KD, NB, IMAT */
01967 
01968 
01969 /*     SUBNAM, INFO, UPLO, N, KD, NRHS, IMAT */
01970 
01971 
01972 /*     SUBNAM, INFO, UPLO, N, NB, IMAT */
01973 
01974 
01975 /*     SUBNAM, INFO, UPLO, N, NRHS, IMAT */
01976 
01977 
01978 /*     SUBNAM, INFO, UPLO, TRANS, DIAG, N, KD, NRHS, IMAT */
01979 
01980 
01981 /*     SUBNAM, INFO, UPLO, TRANS, DIAG, N, NRHS, IMAT */
01982 
01983 
01984 /*     SUBNAM, INFO, UPLO, TRANS, DIAG, NORMIN, N, IMAT */
01985 
01986 
01987 /*     SUBNAM, INFO, UPLO, TRANS, DIAG, NORMIN, N, KD, IMAT */
01988 
01989 
01990 /*     Unknown type */
01991 
01992 
01993 /*     What we do next */
01994 
01995 
01996     return 0;
01997 
01998 /*     End of ALAERH */
01999 
02000 } /* alaerh_ */


swiftnav
Author(s):
autogenerated on Sat Jun 8 2019 18:55:14