root/src/CalculiX.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*     CALCULIX - A 3-dimensional finite element program                 */
   2 /*              Copyright (C) 1998-2015 Guido Dhondt                     */
   3 
   4 /*     This program is free software; you can redistribute it and/or     */
   5 /*     modify it under the terms of the GNU General Public License as    */
   6 /*     published by the Free Software Foundation; either version 2 of    */
   7 /*     the License, or (at your option) any later version.               */
   8 
   9 /*     This program is distributed in the hope that it will be useful,   */
  10 /*     but WITHOUT ANY WARRANTY; without even the implied warranty of    */ 
  11 /*     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the      */
  12 /*     GNU General Public License for more details.                      */
  13 
  14 /*     You should have received a copy of the GNU General Public License */
  15 /*     along with this program; if not, write to the Free Software       */
  16 /*     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.         */
  17 
  18 #define Linux 1
  19 #define IRIX 2
  20 #define IRIX64 3
  21 #define HP 4
  22 
  23 #if ARCH == Linux
  24 #define FORTRAN(A,B) A##_  B
  25 #elif ARCH == IRIX || ARCH == IRIX64
  26 #define FORTRAN(A,B) A##_##B
  27 #elif ARCH == HP
  28 #define FORTRAN(A,B) A##B
  29 #endif
  30 
  31 #if ARCH == Linux
  32 #define CEE(A,B) A##_  B
  33 #elif ARCH == IRIX || ARCH == IRIX64
  34 #define CEE(A,B) A##_##B
  35 #elif ARCH == HP
  36 #define CEE(A,B) A##B
  37 #endif
  38 
  39 #define NNEW(a,b,c) a=(b *)u_calloc((c),sizeof(b),__FILE__,__LINE__,#a)
  40 #define RENEW(a,b,c) a=(b *)u_realloc((b *)(a),(c)*sizeof(b),__FILE__,__LINE__,#a)
  41 #define SFREE(a) u_free(a,__FILE__,__LINE__,#a)
  42 
  43 // #define RENEW(a,b,c) a=(b *) realloc((b *)(a),(c)*sizeof(b))
  44 
  45 #define DMEMSET(a,b,c,d) for(im=b;im<c;im++)a[im]=d
  46 
  47 #ifdef LONGLONG
  48 #define ITG long long
  49 #define ITGFORMAT "lld"
  50 #else
  51 #define ITG int
  52 #define ITGFORMAT "d"
  53 #endif
  54 
  55 void FORTRAN(addimdnodecload,(ITG *nodeforc,ITG *i,ITG *imdnode, 
  56              ITG *nmdnode,double *xforc,ITG *ikmpc,ITG *ilmpc,
  57              ITG *ipompc,ITG *nodempc,ITG *nmpc,ITG *imddof,ITG *nmddof,
  58              ITG *nactdof,ITG *mi,ITG *imdmpc,ITG *nmdmpc,ITG *imdboun,
  59              ITG *nmdboun,ITG *ikboun,ITG *nboun,ITG *ilboun,ITG *ithermal));
  60 
  61 void FORTRAN(addimdnodedload,(ITG *nelemload,char *sideload,ITG *ipkon,
  62              ITG *kon,char *lakon,ITG *i,ITG *imdnode,ITG *nmdnode,
  63              ITG *ikmpc,ITG *ilmpc,
  64              ITG *ipompc,ITG *nodempc,ITG *nmpc,ITG *imddof,ITG *nmddof,
  65              ITG *nactdof,ITG *mi,ITG *imdmpc,ITG *nmdmpc,ITG *imdboun,
  66              ITG *nmdboun,ITG *ikboun,ITG *nboun,ITG *ilboun,ITG *ithermal));
  67 
  68 void FORTRAN(addizdofcload,(ITG *nodeforc,ITG *ndirforc,ITG *nactdof,
  69              ITG *mi,ITG *izdof,ITG *nzdof,ITG *i,ITG *iznode,ITG *nznode,
  70              ITG *nk,ITG *imdnode,ITG *nmdnode,double *xforc));
  71 
  72 void FORTRAN(addizdofdload,(ITG *nelemload,char *sideload,ITG *ipkon,
  73              ITG *kon,char *lakon,ITG *nactdof,ITG *izdof,ITG *nzdof,
  74              ITG *mi,ITG *i,ITG *iznode,ITG *nznode,ITG *nk,
  75              ITG *imdnode,ITG *nmdnode));
  76 
  77 void FORTRAN(adjustcontactnodes,(char *tieset,ITG *ntie,ITG *itietri,double *cg,
  78              double *straight,double *co,double *vold,double *xo,double *yo,
  79              double *zo,double *x,double *y,double *z,ITG *nx,ITG *ny,
  80              ITG *nz,ITG *istep,ITG *iinc,ITG *iit,ITG *mi,ITG *imastop,
  81              ITG *nslavnode,ITG *islavnode,char *set,ITG *nset,ITG *istartset,
  82              ITG *iendset,ITG *ialset,double *tietol,double *clearini,
  83              double *clearslavnode,ITG *itiefac,ITG *ipkon,ITG *kon,
  84              char *lakon,ITG *islavsurf));
  85 
  86 void FORTRAN(allocation,(ITG *nload_,ITG *nforc_,ITG *nboun_,
  87              ITG *nk_,ITG *ne_,ITG *nmpc_,ITG *nset_,ITG *nalset_,
  88              ITG *nmat_,ITG *ntmat_,ITG *npmat_,ITG *norien_,ITG *nam_,
  89              ITG *nprint_,ITG *mi,ITG *ntrans_,
  90              char *set,ITG *meminset,
  91              ITG *rmeminset,ITG *ncs_,ITG *namtot_,ITG *ncmat_,
  92              ITG *memmpc_,ITG *ne1d,ITG *ne2d,ITG *nflow,
  93              char *jobnamec,ITG *irstrt,ITG *ithermal,ITG *nener,
  94              ITG *nstate_,ITG *istep,char *inpc,
  95              ITG *ipoinp,ITG *inp,ITG *ntie_,ITG *nbody_,
  96              ITG *nprop_,ITG *ipoinpc,ITG *nevdamp,ITG *npt_,
  97              ITG *nslavsm,ITG *nkon_,ITG *mcs,ITG *mortar,ITG *ifacecount,
  98              ITG *nintpoint,ITG *infree,ITG *nheading_));
  99 
 100 void FORTRAN(allocont,(ITG *ncont,ITG *ntie,char *tieset,ITG *nset,
 101              char *set,ITG *istartset,ITG *iendset,ITG *ialset,
 102              char *lakon,ITG *ncone,double *tietol,ITG *ismallsliding,
 103              char *kind1,char *kind2,ITG *mortar,ITG *istep));
 104 
 105 void FORTRAN(applyboun,(ITG *ifaext,ITG *nfaext,ITG *ielfa,ITG *ikboun,
 106              ITG *ilboun,ITG *nboun,char *typeboun,ITG *nelemload,
 107              ITG *nload,char *sideload,ITG *isolidsurf,ITG *nsolidsurf,
 108              ITG *ifabou,ITG *nfabou,ITG *nface,ITG *nodeboun,ITG *ndirboun,
 109              ITG *ikmpc,ITG *ilmpc,char *labmpc,ITG *nmpc,ITG *nactdohinv));
 110 
 111 void FORTRAN(applympc,(ITG *nface,ITG *ielfa,ITG *is,ITG *ie,ITG *ifabou,
 112                        ITG *ipompc,double *vfa,double *coefmpc,ITG *nodempc,
 113                        ITG *ipnei,ITG *neifa,char *labmpc,double *xbounact,
 114                        ITG *nactdoh));
 115 
 116 void arpack(double *co,ITG *nk,ITG **konp,ITG **ipkonp,char **lakonp,
 117              ITG *ne, 
 118              ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
 119              ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,
 120              ITG *nmpc, 
 121              ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
 122              ITG *nelemload,char *sideload,double *xload,
 123              ITG *nload, 
 124              ITG *nactdof, 
 125              ITG *icol,ITG *jq,ITG **irowp,ITG *neq,ITG *nzl, 
 126              ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
 127              ITG *ilboun, 
 128              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
 129              double *shcon,ITG *nshcon,double *cocon,ITG *ncocon,
 130              double *alcon,ITG *nalcon,double *alzero,ITG **ielmatp,
 131              ITG **ielorienp,ITG *norien,double *orab,ITG *ntmat_,
 132              double *t0,double *t1,double *t1old,
 133              ITG *ithermal,double *prestr,ITG *iprestr, 
 134              double *vold,ITG *iperturb,double *sti,ITG *nzs,   
 135              ITG *kode,ITG *mei,double *fei,
 136              char *filab,double *eme,
 137              ITG *iexpl,double *plicon,ITG *nplicon,double *plkcon,
 138              ITG *nplkcon,
 139              double **xstatep,ITG *npmat_,char *matname,ITG *mi,
 140              ITG *ncmat_,ITG *nstate_,double **enerp,char *jobnamec,
 141              char *output,char *set,ITG *nset,ITG *istartset,
 142              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
 143              char *prset,ITG *nener,ITG *isolver,double *trab, 
 144              ITG *inotr,ITG *ntrans,double *ttime,double *fmpc,
 145              char *cbody,ITG *ibody,double *xbody,ITG *nbody,double *thicke,
 146              ITG *nslavs,double *tietol,ITG *nkon,ITG *mpcinfo,ITG *ntie,
 147              ITG *istep,ITG *mcs,ITG *ics,char *tieset,
 148              double *cs,ITG *nintpoint,ITG *mortar,ITG *ifacecount,
 149              ITG **islavsurfp,double **pslavsurfp,double **clearinip,
 150              ITG *nmat,char *typeboun,ITG *ielprop,double *prop);
 151 
 152 void arpackbu(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
 153              ITG *ne, 
 154              ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
 155              ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,
 156              ITG *nmpc, 
 157              ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
 158              ITG *nelemload,char *sideload,double *xload,
 159              ITG *nload, 
 160              ITG *nactdof, 
 161              ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
 162              ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
 163              ITG *ilboun, 
 164              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
 165              double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
 166              ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
 167              double *t0,double *t1,double *t1old, 
 168              ITG *ithermal,double *prestr,ITG *iprestr, 
 169              double *vold,ITG *iperturb,double *sti,ITG *nzs, 
 170              ITG *kode,ITG *mei,double *fei,
 171              char *filab,double *eme,
 172              ITG *iexpl,double *plicon,ITG *nplicon,double *plkcon,
 173              ITG *nplkcon,
 174              double *xstate,ITG *npmat_,char *matname,ITG *mi,
 175              ITG *ncmat_,ITG *nstate_,double *ener,char *output, 
 176              char *set,ITG *nset,ITG *istartset,
 177              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
 178              char *prset,ITG *nener,ITG *isolver,double *trab, 
 179              ITG *inotr,ITG *ntrans,double *ttime,double *fmpc,
 180              char *cbody,ITG *ibody,double *xbody,ITG *nbody,
 181              double *thicke,char *jobnamec,ITG *nmat,ITG *ielprop,
 182              double *prop);
 183 
 184 void arpackcs(double *co,ITG *nk,ITG **konp,ITG **ipkonp,char **lakonp,
 185              ITG *ne, 
 186              ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
 187              ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,
 188              ITG *nmpc, 
 189              ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
 190              ITG *nelemload,char *sideload,double *xload,
 191              ITG *nload, ITG *nactdof, 
 192              ITG *icol,ITG *jq,ITG **irowp,ITG *neq,ITG *nzl, 
 193              ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
 194              ITG *ilboun, 
 195              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
 196              double *alcon,ITG *nalcon,double *alzero,ITG **ielmatp,
 197              ITG **ielorienp,ITG *norien,double *orab,ITG *ntmat_,
 198              double *t0,double *t1,double *t1old,
 199              ITG *ithermal,double *prestr,ITG *iprestr, 
 200              double *vold,ITG *iperturb,double *sti,ITG *nzs,  
 201              ITG *kode,ITG *mei,double *fei,
 202              char *filab,double *eme,
 203              ITG *iexpl,double *plicon,ITG *nplicon,double *plkcon,
 204              ITG *nplkcon,
 205              double **xstatep,ITG *npmat_,char *matname,ITG *mi,
 206              ITG *ics,double *cs,ITG *mpcend,ITG *ncmat_,ITG *nstate_,
 207              ITG *mcs,ITG *nkon,double **enerp,char *jobnamec,
 208              char *output,char *set,ITG *nset,ITG *istartset,
 209              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
 210              char *prset,ITG *nener,ITG *isolver,double *trab, 
 211              ITG *inotr,ITG *ntrans,double *ttime,double *fmpc,
 212              char *cbody,ITG *ibody,double *xbody,ITG *nbody, 
 213              ITG *nevtot,double *thicke, ITG *nslavs, double *tietol, 
 214              ITG *mpcinfo,ITG *ntie,ITG *istep,
 215              char *tieset,ITG *nintpoint,ITG *mortar,ITG *ifacecount,
 216              ITG **islavsurfp,double **pslavsurfp,double **clearinip,
 217              ITG *nmat,char *typeboun,ITG *ielprop,double *prop);
 218 
 219 void FORTRAN(assigndomtonodes,(ITG *ne,char *lakon,ITG *ipkon,ITG *kon,
 220              ITG *ielmat,ITG *inomat,double *elcon,ITG *ncmat_,ITG *ntmat_,
 221              ITG *mi,ITG *ne2));
 222 
 223 void FORTRAN(basis,(double *x,double *y,double *z,double *xo,double *yo,
 224                     double *zo,ITG *nx,ITG *ny,ITG *nz,double *planfa,
 225                     ITG *ifatet,ITG *nktet,ITG *netet,double *field,
 226                     ITG *nfield,double *cotet,ITG *kontyp,ITG *ipkon,
 227                     ITG *kon,ITG *iparent,double *xp,double *yp,double *zp,
 228                     double *value,double *ratio,ITG *iselect,ITG *nselect,
 229                     ITG *istartset,ITG *iendset,ITG *ialset,ITG *imastset,
 230                     ITG *ielemnr,ITG *nterms,ITG *konl));
 231 
 232 void biosav(ITG *ipkon,ITG *kon,char *lakon,ITG *ne,double *co,
 233             double *qfx,double *h0,ITG *mi,ITG *inomat,ITG *nk);
 234 
 235 void FORTRAN(biotsavart,(ITG *ipkon,ITG *kon,char *lakon,ITG *ne,double *co,
 236                          double *qfx,double *h0,ITG *mi,ITG *nka,ITG *nkb));
 237 
 238 void *biotsavartmt(ITG *i);
 239 
 240 void FORTRAN(bodyforce,(char *cbody,ITG *ibody,ITG *ipobody,ITG *nbody,
 241              char *set,ITG *istartset,ITG *iendset,ITG *ialset,
 242              ITG *inewton,ITG *nset,ITG *ifreebody,ITG *k));
 243 
 244 void FORTRAN(calcbody,(ITG *nef,double *body,ITG *ipobody,ITG *ibody,
 245                        double *xbody,double *coel,double *vel,char *lakon,
 246                        ITG *nactdohinv));
 247 
 248 void FORTRAN(calcguesstincf,(ITG *nface,double *dmin,double *vfa,
 249                              double *umfa,double *tincfguess));
 250 
 251 void FORTRAN(calccpel,(ITG *nef,double *vel,double *shcon,
 252                        ITG *nshcon,ITG *ielmat,ITG *ntmat_,
 253                        ITG *mi,double *cpel,double *physcon));
 254 
 255 void FORTRAN(calccpfa,(ITG *nface,double *vfa,double *shcon,
 256                         ITG *nshcon,ITG *ielmat,ITG *ntmat_,
 257                        ITG *mi,ITG *ielfa,double *cpfa,double *physcon));
 258 
 259 void FORTRAN(calcgamma,(ITG *nface,ITG *ielfa,double *vel,double *gradvfa,
 260                         double *gamma,double *xlet,double *xxn,double *xxj,
 261                         ITG *ipnei,double *betam,ITG *nef));
 262 
 263 void FORTRAN(calcgammat,(ITG *nface,ITG *ielfa,double *vel,double *gradtfa,
 264                         double *gammat,double *xlet,double *xxn,double *xxj,
 265                         ITG *ipnei,double *betam,ITG *nef));
 266 
 267 void FORTRAN(calcgradpel,(ITG *ne,char *lakon,ITG *ipnei,double *vfa,
 268                           double *area,double *xxn,double *gradpel,ITG *neifa,
 269                           double *volume));
 270 
 271 void FORTRAN(calcgradtel,(ITG *ne,char *lakon,ITG *ipnei,double *vfa,
 272                           double *area,double *xxn,double *gradtel,ITG *neifa,
 273                           double *volume));
 274 
 275 void FORTRAN(calcgradvel,(ITG *ne,char *lakon,ITG *ipnei,double *vfa,
 276                         double *area,double *xxn,double *gradv,ITG *neifa,
 277                         double *volume));
 278 
 279 void FORTRAN(calchcfa,(ITG *nface,double *vfa,double *cocon,
 280                         ITG *ncocon,ITG *ielmat,ITG *ntmat_,
 281                         ITG *mi,ITG *ielfa,double *hcfa));
 282 
 283 void FORTRAN(calch0interface,(ITG *nmpc,ITG *ipompc,ITG *nodempc,
 284                               double *coefmpc,double *h0));
 285                       
 286 void FORTRAN(calcmac,(ITG *neq,double *z,double *zz,ITG *nev,double *mac,
 287                       double* maccpx,ITG *istartnmd,ITG *iendnmd,ITG *nmd,
 288                       ITG *cyclicsymmetry,ITG *neqact,double *bett,
 289                       double *betm));
 290 
 291 void FORTRAN(calcmass,(ITG *ipkon,char *lakon,ITG *kon,double *co,ITG *mi,
 292              ITG *nelem,ITG *ne,double *thicke,ITG *ielmat,
 293              ITG *nope,double *t0,double *t1,double *rhcon,
 294              ITG *nrhcon,ITG *ntmat_,ITG *ithermal,double *csmass));
 295 
 296 void calcresidual(ITG *nmethod,ITG *neq,double *b,double *fext,double *f,
 297         ITG *iexpl,ITG *nactdof,double *aux2,double *vold,
 298         double *vini,double *dtime,double *accold,ITG *nk,double *adb,
 299         double *aub,ITG *icol,ITG *irow,ITG *nzl,double *alpha,
 300         double *fextini,double *fini,ITG *islavnode,ITG *nslavnode,
 301         ITG *mortar,ITG *ntie,
 302         double *f_cm,double *f_cs,ITG *mi,ITG *nzs,ITG *nasym,
 303         ITG *idamping,double *veold,double *adc,double *auc,double *cvini,
 304         double *cv);
 305 
 306 void calcresidual_em(ITG *nmethod,ITG *neq,double *b,double *fext,double *f,
 307         ITG *iexpl,ITG *nactdof,double *aux1,double *aux2,double *vold,
 308         double *vini,double *dtime,double *accold,ITG *nk,double *adb,
 309         double *aub,ITG *icol,ITG *irow,ITG *nzl,double *alpha,
 310         double *fextini,double *fini,ITG *islavnode,ITG *nslavnode,
 311         ITG *mortar,ITG *ntie,
 312         double *f_cm,double *f_cs,ITG *mi,ITG *nzs,ITG *nasym,ITG *ithermal);
 313 
 314 void FORTRAN(calcpel,(ITG *ne,ITG *nactdoh,double *vel,double *b,ITG *nef));
 315 
 316 void FORTRAN(calcrhoel,(ITG *nef,double *vel,double *rhcon,
 317                         ITG *nrhcon,ITG *ielmat,ITG *ntmat_,ITG *ithermal,
 318                         ITG *mi));
 319 
 320 void FORTRAN(calcrhofa,(ITG *nface,double *vfa,double *rhcon,
 321                         ITG *nrhcon,ITG *ielmat,ITG *ntmat_,ITG *ithermal,
 322                         ITG *mi,ITG *ielfa));
 323 
 324 void FORTRAN(calctel,(ITG *ne,ITG *nactdoh,double *vel,double *b,ITG *nef));
 325 
 326 void FORTRAN(calcumel,(ITG *nef,double *vel,double *shcon,
 327                        ITG *nshcon,ITG *ielmat,ITG *ntmat_,ITG *ithermal,
 328                        ITG *mi,double *umel));
 329 
 330 void FORTRAN(calcumfa,(ITG *nface,double *vfa,double *shcon,
 331                         ITG *nshcon,ITG *ielmat,ITG *ntmat_,ITG *ithermal,
 332                         ITG *mi,ITG *ielfa,double *umfa));
 333 
 334 void FORTRAN(calcvel,(ITG *ne,ITG *nactdoh,double *vel,double *b,
 335                       ITG *neq,ITG *nef));
 336 
 337 void FORTRAN(calcview,(char *sideload,double *vold,double *co,
 338              double *pmid,double *e1,double *e2,double *e3,
 339              ITG *kontri,ITG *nloadtr,double *adview,double *auview,
 340              double *dist,ITG *idist,double *area,ITG *ntrit,ITG *mi,ITG *jqrad,
 341              ITG *irowrad,ITG *nzsrad,double *sidemean,ITG *ntria, 
 342              ITG *ntrib));
 343 
 344 void *calcviewmt(ITG *i);
 345 
 346 void FORTRAN(calinput,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
 347                ITG *nkon,ITG *ne,
 348                ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun,
 349                ITG *ipompc,ITG *nodempc,double *coefmpc,ITG *nmpc,
 350                ITG *nmpc_,ITG *nodeforc,ITG *ndirforc,double *xforc,
 351                ITG *nforc,ITG *nforc_,ITG *nelemload,char *sideload,
 352                double *xload,ITG *nload,ITG *nload_,
 353                ITG *nprint,char *prlab,char *prset,ITG *mpcfree,ITG *nboun_,
 354                ITG *mei,char *set,ITG *istartset, 
 355                ITG *iendset,ITG *ialset,ITG *nset,ITG *nalset,
 356                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
 357                double *alcon,ITG *nalcon,double *alzero,double *t0,
 358                double *t1,char *matname,
 359                ITG *ielmat,char *orname,double *orab,ITG *ielorien,
 360                char *amname,double *amta,ITG *namta,ITG *nam,
 361                ITG *nmethod,ITG *iamforc,ITG *iamload,
 362                ITG *iamt1,ITG *ithermal,ITG *iperturb, 
 363                ITG *istat,ITG *istep,ITG *nmat,
 364                ITG *ntmat_,ITG *norien,double *prestr,ITG *iprestr,
 365                ITG *isolver,double *fei,double *veold,double *timepar,
 366                double *xmodal,char *filab,ITG *jout,ITG *nlabel,
 367                ITG *idrct,ITG *jmax,ITG *iexpl,double *alpha,ITG *iamboun,
 368                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
 369                ITG *iplas,ITG *npmat_,ITG *mi,ITG *nk_,
 370                double *trab,ITG *inotr,ITG *ntrans,ITG *ikboun,
 371                ITG *ilboun,ITG *ikmpc,ITG *ilmpc,ITG *ics,
 372                double *dcs,ITG *ncs_,ITG *namtot_,double *cs,
 373                ITG *nstate_,ITG *ncmat_,ITG *iumat,ITG *mcs,
 374                char *labmpc,ITG *iponor,double *xnor,ITG *knor,
 375                double *thickn,double *thicke,ITG *ikforc,ITG *ilforc,
 376                double *offset,ITG *iponoel,ITG *inoel,ITG *rig,
 377                ITG *infree,ITG *nshcon,double *shcon,double *cocon,
 378                ITG *ncocon,double *physcon,ITG *nflow,double *ctrl,
 379                ITG *maxlenmpc,ITG *ne1d,ITG *ne2d,ITG *nener, 
 380                double *vold,ITG *nodebounold,
 381                ITG *ndirbounold,double *xbounold,double *xforcold,
 382                double *xloadold,double *t1old,double *eme,
 383                double *sti,double *ener,
 384                double *xstate,char *jobnamec,ITG *irstrt,
 385                double *ttime,double *qaold,
 386                char *output,char *typeboun,char *inpc,
 387                ITG *ipoinp,ITG *inp,char *tieset,double *tietol, 
 388                ITG *ntie,double *fmpc,char *cbody,ITG *ibody,double *xbody,
 389                ITG *nbody,ITG *nbody_,double *xbodyold,ITG *nam_,
 390                ITG *ielprop,ITG *nprop,ITG *nprop_,double *prop,
 391                ITG *itpamp,ITG *iviewfile,ITG *ipoinpc,ITG *cfd,
 392                ITG *nslavs,double *t0g,double *t1g,ITG *network,
 393                ITG *cyclicsymmetry,ITG *idefforc,ITG *idefload,
 394                ITG *idefbody,ITG *mortar,ITG *ifacecount,ITG *islavsurf,
 395                double *pslavsurf,double *clearini,char *heading,
 396                ITG *iaxial));    
 397 
 398 void cascade(ITG *ipompc,double **coefmpcp,ITG **nodempcp,ITG *nmpc,
 399    ITG *mpcfree,ITG *nodeboun,ITG *ndirboun,ITG*nboun,ITG*ikmpc,
 400    ITG *ilmpc,ITG *ikboun,ITG *ilboun,ITG *mpcend,ITG *mpcmult,
 401    char *labmpc,ITG *nk,ITG *memmpc_,ITG *icascade,ITG *maxlenmpc,
 402    ITG *callfrommain,ITG *iperturb,ITG *ithermal);
 403 
 404 void FORTRAN(cataloguenodes,(ITG *iponofa,ITG *inofa,ITG *ifreefa,ITG *ielfa,
 405              ITG *ifaboun,ITG *ipkon,ITG *kon,char *lakon,ITG *nface,ITG *ne));
 406 
 407 ITG cgsolver(double *A,double *x,double *b,ITG neq,ITG len,ITG *ia,ITG *iz, 
 408                                 double *eps,ITG *niter,ITG precFlg);
 409 
 410 void checkconvergence(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
 411           ITG *ne,double *stn,ITG *nmethod, 
 412           ITG *kode,char *filab,double *een,double *t1act,
 413           double *time,double *epn,ITG *ielmat,char *matname,
 414           double *enern,double *xstaten,ITG *nstate_,ITG *istep,
 415           ITG *iinc,ITG *iperturb,double *ener,ITG *mi,char *output,
 416           ITG *ithermal,double *qfn,ITG *mode,ITG *noddiam,double *trab,
 417           ITG *inotr,ITG *ntrans,double *orab,ITG *ielorien,ITG *norien,
 418           char *description,double *sti,
 419           ITG *icutb,ITG *iit,double *dtime,double *qa,double *vold,
 420           double *qam,double *ram1,double *ram2,double *ram,
 421           double *cam,double *uam,ITG *ntg,double *ttime,
 422           ITG *icntrl,double *theta,double *dtheta,double *veold,
 423           double *vini,ITG *idrct,double *tper,ITG *istab,double *tmax, 
 424           ITG *nactdof,double *b,double *tmin,double *ctrl,double *amta,
 425           ITG *namta,ITG *itpamp,ITG *inext,double *dthetaref,ITG *itp,
 426           ITG *jprint,ITG *jout,ITG *uncoupled,double *t1,ITG *iitterm,
 427           ITG *nelemload,ITG *nload,ITG *nodeboun,ITG *nboun,ITG *itg,
 428           ITG *ndirboun,double *deltmx,ITG *iflagact,char *set,ITG *nset,
 429           ITG *istartset,ITG *iendset,ITG *ialset,double *emn,double *thicke,
 430           char *jobnamec,ITG *mortar,ITG *nmat,ITG *ielprop,double *prop);
 431 
 432 void checkconvnet(ITG *icutb,ITG *iin,
 433                   double *qamt,double *qamf,double *qamp, 
 434                   double *ram1t,double *ram1f,double *ram1p,
 435                   double *ram2t,double *ram2f,double *ram2p,
 436                   double *ramt,double *ramf,double *ramp,
 437                   ITG *icntrl,double *dtheta,double *ctrl,
 438                   double *uama,double *ram1a,double *ram2a,double *rama,
 439                   double *vamt,double *vamf,double *vamp,double *vama);
 440 
 441 void checkinclength(double *time,double *ttime,double *theta,double *dtheta,
 442           ITG *idrct,double *tper,double *tmax,double *tmin,double *ctrl, 
 443           double *amta,ITG *namta,ITG *itpamp,ITG *inext,double *dthetaref, 
 444           ITG *itp,ITG *jprint,ITG *jout);
 445 
 446 void FORTRAN(checktime,(ITG *itpamp,ITG *namta,double *tinc,double *ttime,
 447              double *amta,double *tmin,ITG *inext,ITG *itp,ITG *istep));
 448 
 449 void FORTRAN(checktruecontact,(ITG *ntie,char *tieset,double *tietol,
 450              double *elcon,ITG *itruecontact,ITG *ncmat_,ITG *ntmat_));
 451 
 452 void FORTRAN(closefile,());
 453 
 454 void FORTRAN(closefilefluid,());
 455 
 456 void compfluid(double **cop,ITG *nk,ITG **ipkonp,ITG **konp,char **lakonp,
 457     char **sideface,ITG *ifreestream, 
 458     ITG *nfreestream,ITG *isolidsurf,ITG *neighsolidsurf,
 459     ITG *nsolidsurf,ITG **iponoel,ITG **inoel,ITG *nshcon,double *shcon,
 460     ITG *nrhcon,double *rhcon,double **voldp,ITG *ntmat_,ITG *nodeboun, 
 461     ITG *ndirboun,ITG *nboun,ITG **ipompcp,ITG **nodempcp,ITG *nmpc,
 462     ITG **ikmpcp,ITG **ilmpcp,ITG *ithermal,ITG *ikboun,ITG *ilboun,
 463     ITG *turbulent,ITG *isolver,ITG *iexpl,double *vcontu,double *ttime,
 464     double *time,double *dtime,ITG *nodeforc,ITG *ndirforc,double *xforc,
 465     ITG *nforc,ITG *nelemload,char *sideload,double *xload,ITG *nload,
 466     double *xbody,ITG *ipobody,ITG *nbody,ITG *ielmat,char *matname,
 467     ITG *mi,ITG *ncmat_,double *physcon,ITG *istep,ITG *iinc,
 468     ITG *ibody,double *xloadold,double *xboun,
 469     double **coefmpcp,ITG *nmethod,double *xforcold,double *xforcact,
 470     ITG *iamforc,ITG *iamload,double *xbodyold,double *xbodyact,
 471     double *t1old,double *t1,double *t1act,ITG *iamt1,double *amta,
 472     ITG *namta,ITG *nam,double *ampli,double *xbounold,double *xbounact,
 473     ITG *iamboun,ITG *itg,ITG *ntg,char *amname,double *t0,ITG **nelemface,
 474     ITG *nface,double *cocon,ITG *ncocon,double *xloadact,double *tper,
 475     ITG *jmax,ITG *jout,char *set,ITG *nset,ITG *istartset,
 476     ITG *iendset,ITG *ialset,char *prset,char *prlab,ITG *nprint,
 477     double *trab,ITG *inotr,ITG *ntrans,char *filab,char **labmpcp,
 478     double *sti,ITG *norien,double *orab,char *jobnamef,char *tieset,
 479     ITG *ntie,ITG *mcs,ITG *ics,double *cs,ITG *nkon,ITG *mpcfree,
 480     ITG *memmpc_,double **fmpcp,ITG *nef,ITG **inomat,double *qfx,
 481     ITG *neifa,ITG *neiel,ITG *ielfa,ITG *ifaext,double *vfa,double *vel,
 482     ITG *ipnei,ITG *nflnei,ITG *nfaext,char *typeboun,ITG *neij,
 483     double *tincf,ITG *nactdoh,ITG *nactdohinv,ITG *ielorien);
 484 
 485 void FORTRAN(complete_hel,(ITG *neq,double *b,double *hel,double *ad,
 486              double *au,ITG *jq,ITG *irow,ITG *nzs));
 487 
 488 void complexfreq(double **cop,ITG *nk,ITG **konp,ITG **ipkonp,char **lakonp,ITG *ne, 
 489                ITG **nodebounp,ITG **ndirbounp,double **xbounp,ITG *nboun,
 490                ITG **ipompcp,ITG **nodempcp,double **coefmpcp,char **labmpcp,
 491                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,double *xforc, 
 492                ITG *nforc,ITG *nelemload,char *sideload,double *xload,
 493                ITG *nload, 
 494                ITG **nactdofp,ITG *neq,ITG *nzl,ITG *icol,ITG *irow, 
 495                ITG *nmethod,ITG **ikmpcp,ITG **ilmpcp,ITG **ikbounp, 
 496                ITG **ilbounp,double *elcon,ITG *nelcon,double *rhcon, 
 497                ITG *nrhcon,double *cocon,ITG *ncocon,
 498                double *alcon,ITG *nalcon,double *alzero, 
 499                ITG **ielmatp,ITG **ielorienp,ITG *norien,double *orab, 
 500                ITG *ntmat_,double **t0p, 
 501                double **t1p,ITG *ithermal,double *prestr,ITG *iprestr, 
 502                double **voldp,ITG *iperturb,double **stip,ITG *nzs, 
 503                double *timepar,double *xmodal,
 504                double **veoldp,char *amname,double *amta,
 505                ITG *namta,ITG *nam,ITG *iamforc,ITG *iamload,
 506                ITG **iamt1p,ITG *jout,
 507                ITG *kode,char *filab,double **emep,double *xforcold, 
 508                double *xloadold,
 509                double **t1oldp,ITG **iambounp,double **xbounoldp,ITG *iexpl,
 510                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
 511                double *xstate,ITG *npmat_,char *matname,ITG *mi,
 512                ITG *ncmat_,ITG *nstate_,double **enerp,char *jobnamec,
 513                double *ttime,char *set,ITG *nset,ITG *istartset,
 514                ITG *iendset,ITG **ialsetp,ITG *nprint,char *prlab,
 515                char *prset,ITG *nener,double *trab, 
 516                ITG **inotrp,ITG *ntrans,double **fmpcp,char *cbody,ITG *ibody,
 517                double *xbody,ITG *nbody,double *xbodyold,ITG *istep,
 518                ITG *isolver,ITG *jq,char *output,ITG *mcs,ITG *nkon,
 519                ITG *mpcend,ITG *ics,double *cs,ITG *ntie,char *tieset,
 520                ITG *idrct,ITG *jmax,
 521                double *ctrl,ITG *itpamp,double *tietol,ITG *nalset,
 522                ITG *ikforc,ITG *ilforc,double *thicke,
 523                char *jobnamef,ITG *mei,ITG *nmat,ITG *ielprop,double *prop);
 524 
 525 void contact(ITG *ncont,ITG *ntie,char *tieset,ITG *nset,char *set,
 526              ITG *istartset,ITG *iendset,ITG *ialset,ITG *itietri,
 527              char *lakon,ITG *ipkon,ITG *kon,ITG *koncont,ITG *ne,
 528              double *cg,double *straight,ITG *ifree,double *co,
 529              double *vold,ITG *ielmat,double *cs,double *elcon,
 530              ITG *istep,ITG *iinc,ITG *iit,ITG *ncmat_,ITG *ntmat_,
 531              ITG *ne0,double *vini,
 532              ITG *nmethod,ITG *nmpc,ITG *mpcfree,ITG *memmpc_,
 533              ITG **ipompcp,char **labmpcp,ITG **ikmpcp,ITG **ilmpcp,
 534              double **fmpcp,ITG **nodempcp,double **coefmpcp,
 535              ITG *iperturb,ITG *ikboun,ITG *nboun,ITG *mi,ITG *imastop,
 536              ITG *nslavnode,ITG *islavnode,ITG *islavsurf,ITG *itiefac,
 537              double *areaslav,ITG *iponoels,ITG *inoels,double *springarea,
 538              double *tietol,double *reltime,ITG *imastnode,ITG *nmastnode,
 539              double *xmastnor,char *filab,ITG *mcs,
 540              ITG *ics,ITG *nasym,double *xnoels,ITG *mortar,
 541              double *pslavsurf,double *pmastsurf,double *clearini,
 542              double *theta);
 543 
 544 void FORTRAN(convert2slapcol,(double *au,double *ad,ITG *irow,ITG *ia,
 545                               ITG *jq,ITG *ja,ITG *nzs,ITG *neq,double *aua));
 546     
 547 void FORTRAN(coriolissolve,(double *cc,ITG *nev,double *aa,double *bb,
 548              double *xx,double *eiga,double *eigb,double *eigxx,
 549              ITG *iter,double *d,double *temp));
 550 
 551 void FORTRAN(correctvel,(double *hel,double *adv,double *vfa,ITG *ipnei,
 552                          double *area,double *bv,double *xxn,ITG *neifa,
 553                          char *lakon,ITG *ne,ITG *neq));
 554 
 555 void FORTRAN(correctvfa,(ITG *nface,ITG *ielfa,double *area,double *vfa,
 556                        double *ap,double *bp,
 557                        double *xxn,ITG *ifabou,ITG *ipnei,
 558                        ITG *nef,ITG *neifa,double *hfa,double *vel,
 559                        double *xboun));
 560 
 561 void FORTRAN(createinterfacempcs,(ITG *imastnode,double *xmastnor,
 562              ITG *nmastnode,ITG *ikmpc,ITG *ilmpc,ITG *nmpc,ITG *ipompc,
 563              ITG *nodempc,double *coefmpc,char *labmpc,ITG *mpcfree,
 564              ITG *ikboun,ITG *nboun));
 565 
 566 void FORTRAN(createinum,(ITG *ipkon,ITG *inum,ITG *kon,char *lakon,ITG *nk,
 567              ITG *ne,char *cflag,ITG *nelemload,ITG *nload,ITG *nodeboun,
 568              ITG *nboun,ITG *ndirboun,ITG *ithermal,double *co,
 569              double *vold,ITG *mi,ITG *ielmat));
 570 
 571 void FORTRAN(createmddof,(ITG *imddof,ITG *nmddof,ITG *istartset,
 572        ITG *iendset,ITG *ialset,ITG *nactdof,ITG *ithermal,ITG *mi,
 573        ITG *imdnode,ITG *nmdnode,ITG *ikmpc,ITG *ilmpc,ITG *ipompc,
 574        ITG *nodempc,ITG *nmpc,ITG *imdmpc,
 575        ITG *nmdmpc,ITG *imdboun,ITG *nmdboun,ITG *ikboun,ITG *nboun,
 576        ITG *nset,ITG *ntie,char *tieset,char *set,char *lakon,ITG *kon,
 577        ITG *ipkon,char *labmpc,ITG *ilboun,char *filab,char *prlab,
 578        char *prset,ITG *nprint,ITG *ne,ITG *cyclicsymmetry));
 579 
 580 void FORTRAN(createmdelem,(ITG *imdnode,ITG *nmdnode,double *xforc,
 581              ITG *ikmpc,ITG *ilmpc,ITG *ipompc,ITG *nodempc,ITG *nmpc,
 582              ITG *imddof,ITG *nmddof,ITG *nactdof,ITG *mi,ITG *imdmpc,
 583              ITG *nmdmpc,ITG *imdboun,ITG *nmdboun,ITG *ikboun,ITG *nboun,
 584              ITG *ilboun,ITG *ithermal,ITG *imdelem,ITG *nmdelem,
 585              ITG *iponoel,ITG *inoel,char *prlab,char *prset,ITG *nprint,
 586              char *lakon,char *set,ITG *nset,ITG *ialset,ITG *ipkon,
 587              ITG *kon,ITG *istartset,ITG *iendset,ITG *nforc,
 588              ITG *ikforc,ITG *ilforc));
 589 
 590 void FORTRAN(createtiedsurfs,(ITG *nodface,ITG *ipoface,char *set,
 591              ITG *istartset,ITG *iendset,ITG *ialset,char *tieset,
 592              ITG *inomat,ITG *ne,ITG *ipkon,char *lakon,ITG *kon,
 593              ITG *ntie,double *tietol,ITG *nalset,ITG *nk,ITG *nset,
 594              ITG *iactive));
 595 
 596 void FORTRAN(dattime,(char *date,char *clock));
 597 
 598 void CEE(ddotc,(ITG *n,double *dx,ITG *incx,double *dy,ITG *incy,
 599                 double *funcddot));
 600 
 601 void *ddotc1mt(ITG *i);
 602 
 603 void dfdbj(double *bcont,double **dbcontp,ITG *neq,ITG *nope,
 604            ITG *konl,ITG *nactdof,double *s,double *z,ITG *ikmpc,
 605            ITG *ilmpc,ITG *ipompc,ITG *nodempc,ITG *nmpc,
 606            double *coefmpc,double *fnl,ITG *nev,
 607            ITG **ikactcontp,ITG **ilactcontp,ITG *nactcont,ITG *nactcont_,
 608            ITG *mi,ITG *cyclicsymmetry,ITG *izdof,ITG *nzdof);
 609       
 610 void FORTRAN(dgesv, (ITG *nteq,ITG *nhrs,double *ac,ITG *lda,ITG *ipiv,
 611                      double *bc,ITG *ldb,ITG *info)); 
 612 
 613 void FORTRAN(dgetrs, (char *trans,ITG *nteq,ITG *nrhs,double *ac,ITG *lda,
 614                       ITG *ipiv,double *bc,ITG *ldb,ITG *info));
 615 
 616 void FORTRAN(drfftf,(ITG *ndata,double *r,double *wsave,ITG *isave));
 617 
 618 void FORTRAN(drffti,(ITG *ndata,double *wsave,ITG *isave));
 619 
 620 void FORTRAN(dnaupd,(ITG *ido,char *bmat,ITG *n,char *which,ITG *nev,
 621              double *tol,double *resid,ITG *ncv,double *z,ITG *ldz,
 622              ITG *iparam,ITG *ipntr,double *workd,double *workl,
 623              ITG *lworkl,ITG *info));
 624 
 625 void FORTRAN(dsaupd,(ITG *ido,char *bmat,ITG *n,char *which,ITG *nev,
 626              double *tol,double *resid,ITG *ncv,double *z,ITG *ldz,
 627              ITG *iparam,ITG *ipntr,double *workd,double *workl,
 628              ITG *lworkl,ITG *info));
 629 
 630 void FORTRAN(dneupd,(ITG *rvec,char *howmny,ITG *select,double *d,
 631              double *di,double *z,ITG *ldz,double *sigma,double *sigmai,
 632              double *workev,char *bmat,ITG *neq,char *which, 
 633              ITG *nev,double *tol,double *resid,ITG *ncv,double *v,
 634              ITG *ldv,ITG *iparam,ITG *ipntr,double *workd,
 635              double *workl,ITG *lworkl,ITG *info));
 636 
 637 void FORTRAN(dseupd,(ITG *rvec,char *howmny,ITG *select,double *d,double *z,
 638              ITG *ldz,double *sigma,char *bmat,ITG *neq,char *which, 
 639              ITG *nev,double *tol,double *resid,ITG *ncv,double *v,
 640              ITG *ldv,ITG *iparam,ITG *ipntr,double *workd,
 641              double *workl,ITG *lworkl,ITG *info));
 642 
 643 void FORTRAN(dsort,(double *dx,ITG *iy,ITG *n,ITG *kflag));
 644 
 645 void dyna(double **cop,ITG *nk,ITG **konp,ITG **ipkonp,char **lakonp,ITG *ne, 
 646                ITG **nodebounp,ITG **ndirbounp,double **xbounp,ITG *nboun,
 647                ITG **ipompcp,ITG **nodempcp,double **coefmpcp,char **labmpcp,
 648                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,double *xforc, 
 649                ITG *nforc,ITG *nelemload,char *sideload,double *xload,
 650                ITG *nload, 
 651                ITG **nactdofp,ITG *neq,ITG *nzl,ITG *icol,ITG *irow, 
 652                ITG *nmethod,ITG **ikmpcp,ITG **ilmpcp,ITG **ikbounp, 
 653                ITG **ilbounp,double *elcon,ITG *nelcon,double *rhcon, 
 654                ITG *nrhcon,double *cocon,ITG *ncocon,
 655                double *alcon,ITG *nalcon,double *alzero, 
 656                ITG **ielmatp,ITG **ielorienp,ITG *norien,double *orab, 
 657                ITG *ntmat_,double **t0p, 
 658                double **t1p,ITG *ithermal,double *prestr,ITG *iprestr, 
 659                double **voldp,ITG *iperturb,double **stip,ITG *nzs, 
 660                double *timepar,double *xmodal,
 661                double **veoldp,char *amname,double *amta,
 662                ITG *namta,ITG *nam,ITG *iamforc,ITG *iamload,
 663                ITG **iamt1p,ITG *jout,
 664                ITG *kode,char *filab,double **emep,double *xforcold, 
 665                double *xloadold,
 666                double **t1oldp,ITG **iambounp,double **xbounoldp,ITG *iexpl,
 667                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
 668                double **xstatep,ITG *npmat_,char *matname,ITG *mi,
 669                ITG *ncmat_,ITG *nstate_,double **enerp,char *jobnamec,
 670                double *ttime,char *set,ITG *nset,ITG *istartset,
 671                ITG *iendset,ITG **ialsetp,ITG *nprint,char *prlab,
 672                char *prset,ITG *nener,double *trab, 
 673                ITG **inotrp,ITG *ntrans,double **fmpcp,char *cbody,ITG *ibody,
 674                double *xbody,ITG *nbody,double *xbodyold,ITG *istep,
 675                ITG *isolver,ITG *jq,char *output,ITG *mcs,ITG *nkon,
 676                ITG *mpcend,ITG *ics,double *cs,ITG *ntie,char *tieset,
 677                ITG *idrct,ITG *jmax,
 678                double *ctrl,ITG *itpamp,double *tietol,ITG *nalset,
 679                ITG *ikforc,ITG *ilforc,double *thicke,
 680                ITG *nslavs,ITG *nmat,char *typeboun,ITG *ielprop,double *prop);
 681 
 682 void dynacont(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,ITG *ne, 
 683               ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun,
 684               ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,
 685               ITG *nmpc,ITG *nodeforc,ITG *ndirforc,double *xforc, 
 686               ITG *nforc,ITG *nelemload,char *sideload,double *xload,
 687               ITG *nload, 
 688               ITG *nactdof,ITG *neq,ITG *nzl,ITG *icol,ITG *irow, 
 689               ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
 690               ITG *ilboun,double *elcon,ITG *nelcon,double *rhcon, 
 691               ITG *nrhcon,double *cocon,ITG *ncocon,
 692               double *alcon,ITG *nalcon,double *alzero, 
 693               ITG *ielmat,ITG *ielorien,ITG *norien,double *orab, 
 694               ITG *ntmat_,double *t0, 
 695               double *t1,ITG *ithermal,double *prestr,ITG *iprestr, 
 696               double *vold,ITG *iperturb,double *sti,ITG *nzs, 
 697               double *tinc,double *tper,double *xmodal,
 698               double *veold,char *amname,double *amta,
 699               ITG *namta,ITG *nam,ITG *iamforc,ITG *iamload,
 700               ITG *iamt1,ITG *jout,char *filab,double *eme,double *xforcold, 
 701               double *xloadold,
 702               double *t1old,ITG *iamboun,double *xbounold,ITG *iexpl,
 703               double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
 704               double *xstate,ITG *npmat_,char *matname,ITG *mi,
 705               ITG *ncmat_,ITG *nstate_,double *ener,char *jobnamec,
 706               double *ttime,char *set,ITG *nset,ITG *istartset,
 707               ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
 708               char *prset,ITG *nener,double *trab, 
 709               ITG *inotr,ITG *ntrans,double *fmpc,char *cbody,ITG *ibody,
 710               double *xbody,ITG *nbody,double *xbodyold,ITG *istep,
 711               ITG *isolver,ITG *jq,char *output,ITG *mcs,ITG *nkon,
 712               ITG *mpcend,ITG *ics,double *cs,ITG *ntie,char *tieset,
 713               ITG *idrct,ITG *jmax,double *tmin,double *tmax,
 714               double *ctrl,ITG *itpamp,double *tietol,ITG *iit,
 715               ITG *ncont,ITG *ne0,double *reltime,double *dtime,
 716               double *bcontini,double *bj,double *aux,ITG *iaux,
 717               double *bcont,ITG *nev,double *v,
 718               ITG *nkon0,double *deltmx,double *dtheta,double *theta,
 719               ITG *iprescribedboundary,ITG *mpcfree,ITG *memmpc_,
 720               ITG *itietri,ITG *koncont,double *cg,double *straight,
 721               ITG *iinc,double *vini,
 722               double *aa,double *bb,double *aanew,double *d,double *z, 
 723               double *zeta,double *b,double *time0,double *time1, 
 724               ITG *ipobody,
 725               double *xforcact,double *xloadact,double *t1act, 
 726               double *xbounact,double *xbodyact,double *cd,double *cv,
 727               double *ampli,double *dthetaref,double *bjp,double *bp,
 728               double *cstr,ITG *imddof,
 729               ITG *nmddof,ITG **ikactcontp,ITG *nactcont,ITG *nactcont_,
 730               double *aamech,double *bprev,ITG *iprev,ITG *inonlinmpc,
 731               ITG **ikactmechp,ITG *nactmech,ITG *imdnode,ITG *nmdnode,
 732               ITG *imdboun,ITG *nmdboun,ITG *imdmpc,ITG *nmdmpc,
 733               ITG *itp,ITG *inext,
 734               ITG *imastop,ITG *nslavnode,ITG *islavnode,
 735               ITG *islavsurf,
 736               ITG *itiefac,double *areaslav,ITG *iponoels,ITG *inoels,
 737               double *springarea,ITG *izdof,ITG *nzdof,double *fn,
 738               ITG *imastnode,ITG *nmastnode,double *xmastnor,
 739               double *xstateini,ITG *nslavs,
 740               ITG *cyclicsymmetry,double *xnoels,ITG *ielas,ITG *ielprop,
 741               double *prop);
 742  
 743 void dynboun(double *amta,ITG *namta,ITG *nam,double *ampli,double *time,
 744              double *ttime,double *dtime,double *xbounold,double *xboun,
 745              double *xbounact,ITG *iamboun,ITG *nboun,ITG *nodeboun,
 746              ITG *ndirboun,double *ad,double *au,double *adb,
 747              double *aub,ITG *icol,ITG *irow,ITG *neq,ITG *nzs,
 748              double *sigma,double *b,ITG *isolver,
 749              double *alpham,double *betam,ITG *nzl,
 750              ITG *init,double *bact,double *bmin,ITG *jq,char *amname,
 751              double *bv,double *bprev,double *bdiff,
 752              ITG *nactmech,ITG *icorrect,ITG *iprev);
 753 
 754 void FORTRAN(dynresults,(ITG *nk,double *v,ITG *ithermal,ITG *nactdof,
 755              double *vold,ITG *nodeboun,ITG *ndirboun,double *xboun,
 756              ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc,
 757              char *labmpc,ITG *nmpc,double *b,double *bp,double *veold,
 758              double *dtime,ITG *mi,ITG *imdnode,ITG *nmdnode,ITG *imdboun,
 759              ITG *nmdboun,ITG *imdmpc,ITG *nmdmpc,ITG *nmethod,double *time));
 760 
 761 void FORTRAN(effectivemodalmass,(ITG *neq,ITG *nactdof,ITG *mi,double *adb,
 762                         double *aub,ITG *jq,ITG *irow,ITG *nev,double *z,
 763                         double *co,ITG *nk));
 764 
 765 void electromagnetics(double **co,ITG *nk,ITG **konp,ITG **ipkonp,char **lakonp,
 766              ITG *ne, ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
 767              ITG **ipompcp,ITG **nodempcp,double **coefmpcp,char **labmpcp,
 768              ITG *nmpc, ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
 769              ITG **nelemloadp,char **sideloadp,double *xload,
 770              ITG *nload, ITG *nactdof, ITG **icolp,ITG *jq,ITG **irowp,
 771              ITG *neq,ITG *nzl, ITG *nmethod,ITG **ikmpcp,ITG **ilmpcp,
 772              ITG *ikboun, ITG *ilboun,double *elcon,ITG *nelcon,
 773              double *rhcon,ITG *nrhcon,double *alcon,ITG *nalcon,
 774              double *alzero,ITG **ielmatp,ITG **ielorienp,ITG *norien,
 775              double *orab,ITG *ntmat_,double *t0,double *t1,double *t1old, 
 776              ITG *ithermal,double *prestr,ITG *iprestr, double **vold,
 777              ITG *iperturb,double *sti,ITG *nzs,ITG *kode, char *filab,
 778              ITG *idrct,ITG *jmax,ITG *jout,double *timepar,double *eme,
 779              double *xbounold,double *xforcold,double *xloadold,
 780              double *veold,double *accold,char *amname,double *amta,
 781              ITG *namta,ITG *nam,ITG *iamforc,ITG **iamloadp,ITG *iamt1,
 782              double *alpha,ITG *iexpl,ITG *iamboun,double *plicon,
 783              ITG *nplicon,double *plkcon,ITG *nplkcon,
 784              double **xstatep,ITG *npmat_,ITG *istep,double *ttime,
 785              char *matname,double *qaold,ITG *mi,
 786              ITG *isolver,ITG *ncmat_,ITG *nstate_,ITG *iumat,
 787              double *cs,ITG *mcs,ITG *nkon,double **ener,ITG *mpcinfo,
 788              char *output,double *shcon,ITG *nshcon,double *cocon,ITG *ncocon,
 789              double *physcon,ITG *nflow,double *ctrl, 
 790              char **setp,ITG *nset,ITG **istartsetp,
 791              ITG **iendsetp,ITG **ialsetp,ITG *nprint,char *prlab,
 792              char *prset,ITG *nener,ITG *ikforc,ITG *ilforc,double *trab, 
 793              ITG *inotr,ITG *ntrans,double **fmpcp,char *cbody,
 794              ITG *ibody,double *xbody,ITG *nbody,double *xbodyold,
 795              ITG *ielprop,double *prop,ITG *ntie,char **tiesetp,
 796              ITG *itpamp,ITG *iviewfile,char *jobnamec,double **tietolp,
 797              ITG *nslavs,double *thicke,ITG *ics,ITG *nalset,ITG *nmpc_,
 798              ITG *nmat,char *typeboun,ITG *iaxial,ITG **idefloadp,ITG *nload_);
 799 
 800 void FORTRAN(elementpernode,(ITG *iponoel,ITG *inoel,char *lakon,ITG *ipkon,
 801               ITG *kon,ITG *ne));
 802 
 803 void FORTRAN(envtemp,(ITG *itg,ITG *ieg,ITG *ntg,ITG *ntr,char *sideload,
 804                       ITG *nelemload,ITG *ipkon,ITG *kon,char *lakon,
 805                       ITG *ielmat,ITG *ne,ITG *nload,
 806                       ITG *kontri,ITG *ntri,ITG *nloadtr,
 807                       ITG *nflow,ITG *ndirboun,ITG *nactdog,
 808                       ITG *nodeboun,ITG *nacteq,
 809                       ITG *nboun,ITG *ielprop,double *prop,ITG *nteq,
 810                       double *v,ITG *network,double *physcon,
 811                       double *shcon,ITG *ntmat_,double *co,
 812                       double *vold,char *set,ITG *nshcon,
 813                       double *rhcon,ITG *nrhcon,ITG *mi,ITG *nmpc,
 814                       ITG *nodempc,ITG *ipompc,char *labmpc,ITG *ikboun,
 815                       ITG *nasym,ITG *iaxial));
 816 
 817 void FORTRAN(equationcheck,(double *ac,ITG *nteq,ITG *nactdog,
 818                             ITG *itg,ITG *ntg,ITG *nacteq,ITG *network));
 819 
 820 void FORTRAN(errorestimator,(double *yi,double *yn,ITG *ipkon,ITG *inum,
 821              ITG *kon,char *lakon,ITG *nk,ITG *ne,ITG *mi,ITG *ielmat,
 822              double *thicke,ITG *nterms));
 823 
 824 void expand(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
 825              ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
 826              ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,
 827              ITG *nmpc,ITG *nodeforc,ITG *ndirforc,double *xforc, 
 828              ITG *nforc,ITG *nelemload,char *sideload,double *xload,
 829              ITG *nload,ITG *nactdof,ITG *neq, 
 830              ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun,ITG *ilboun,
 831              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
 832              double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
 833              ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
 834              double *t0,ITG *ithermal,double *prestr,ITG *iprestr, 
 835              double *vold,ITG *iperturb,double *sti,ITG *nzs,  
 836              double *adb,double *aub,char *filab,double *eme,
 837              double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
 838              double *xstate,ITG *npmat_,char *matname,ITG *mi,
 839              ITG *ics,double *cs,ITG *mpcend,ITG *ncmat_,
 840              ITG *nstate_,ITG *mcs,ITG *nkon,double *ener,
 841              char *jobnamec,char *output,char *set,ITG *nset,ITG *istartset,
 842              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
 843              char *prset,ITG *nener,double *trab, 
 844              ITG *inotr,ITG *ntrans,double *ttime,double *fmpc,
 845              ITG *nev,double **z,ITG *iamboun,double *xbounold,
 846              ITG *nsectors,ITG *nm,ITG *icol,ITG *irow,ITG *nzl,ITG *nam,
 847              ITG *ipompcold,ITG *nodempcold,double *coefmpcold,
 848              char *labmpcold,ITG *nmpcold,double *xloadold,ITG *iamload,
 849              double *t1old,double *t1,ITG *iamt1,double *xstiff,ITG **icolep,
 850              ITG **jqep,ITG **irowep,ITG *isolver,
 851              ITG *nzse,double **adbep,double **aubep,ITG *iexpl,ITG *ibody,
 852              double *xbody,ITG *nbody,double *cocon,ITG *ncocon,
 853              char* tieset,ITG* ntie,ITG *imddof,ITG *nmddof,
 854              ITG *imdnode,ITG *nmdnode,ITG *imdboun,ITG *nmdboun,
 855              ITG *imdmpc,ITG *nmdmpc,ITG **izdofp,ITG *nzdof,ITG *nherm,
 856              double *xmr,double *xmi,char *typeboun,ITG *ielprop,double *prop);
 857 
 858 void FORTRAN(extrapolate,(double *sti,double *stn,ITG *ipkon,ITG *inum,
 859              ITG *kon,char *lakon,ITG *nfield,ITG *nk,ITG *ne,ITG *mi,
 860              ITG *ndim,double *orab,ITG *ielorien,double *co,ITG *iorienglob,
 861              char *cflag,ITG *nelemload,ITG *nload,ITG *nodeboun,ITG *nboun,
 862              ITG *ndirboun,double *vold,ITG *ithermal,ITG *force,
 863              ITG *cfd,ITG *ielmat,double *thicke,char *filab));
 864 
 865 void FORTRAN(extrapolate_ad_h,(ITG *nface,ITG *ielfa,double *xrlfa,
 866                                double *ad,double *adfa,
 867                                double *hel,double *hfa));
 868 
 869 void FORTRAN(extrapolatefluid,(ITG *nk,ITG *iponofa,ITG *inofa,ITG *inum,
 870                      double *vfa,double *v,ITG *ielfa,ITG *ithermal));
 871 
 872 void FORTRAN(extrapolate_gradtel,(ITG *nface,ITG *ielfa,double *xrlfa,
 873                     double *gradvel,double *gradvfa));
 874 
 875 void FORTRAN(extrapolate_gradvel,(ITG *nface,ITG *ielfa,double *xrlfa,
 876                                double *gradv,double *gradvfa));
 877 
 878 void FORTRAN(extrapolate_pel,(ITG *nface,ITG *ielfa,double *xrlfa,
 879                               double *vel,double *vfa,ITG *ifabou,
 880                               double *xboun,ITG *nef));
 881 
 882 void FORTRAN(extrapolate_tel,(ITG *nface,ITG *ielfa,double *xrlfa,double *vel,
 883                               double *vfa,ITG *ifabou,double *xboun,ITG *ipnei,
 884                               ITG *nef));
 885 
 886 void FORTRAN(extrapolate_vel,(ITG *nface,ITG *ielfa,double *xrlfa,double *vel,
 887                               double *vfa,ITG *ifabou,double *xboun,ITG *ipnei,
 888                               ITG *nef));
 889 
 890 void FORTRAN(fcrit,(double *time,double *tend,double *aai,double *bbi,
 891                       double *zetaj,double *dj,double *ddj,
 892                       double *h1,double *h2,double *h3,double *h4,
 893                       double *func,double *funcp));
 894 
 895 void FORTRAN(findsurface,(ITG *ipoface,ITG *nodface,ITG *ne,ITG *ipkon,ITG *kon,
 896                      char *lakon,ITG *ntie,char *tieset));
 897 
 898 void FORTRAN (flowoutput,(ITG *itg,ITG *ieg,ITG *ntg,ITG *nteq,
 899                           double *bc,char *lakon,
 900                           ITG *ntmat_,double *v,double *shcon,ITG *nshcon,
 901                           ITG *ipkon,ITG *kon,double *co,ITG *nflow,
 902                           double *dtime,double *ttime,double *time,
 903                           ITG *ielmat,double *prop,
 904                           ITG *ielprop,ITG *nactdog,ITG *nacteq,ITG *iin,
 905                           double *physcon,double *camt,double *camf,double *camp,
 906                           double *uamt,double *uamf,double *uamp,
 907                           double *rhcon,ITG *nrhcon,
 908                           double *vold,char *jobnamef,char *set,ITG *istartset,
 909                           ITG *iendset,ITG *ialset,ITG *nset,ITG *mi));
 910 
 911 void FORTRAN(flowresult,(ITG *ntg,ITG *itg,double *cam,double *vold,
 912               double *v,
 913               ITG *nload,char *sideload,ITG *nelemload,
 914               double *xloadact,ITG *nactdog,ITG *network,ITG *mi,
 915               ITG *ne,ITG *ipkon,char *lakon,ITG *kon));
 916 
 917 void FORTRAN(forcesolve,(double *zc,ITG *nev,double *aa,double *bb,
 918              double *xx,double *eiga,double *eigb,double *eigxx,
 919              ITG *iter,double *d,ITG *neq,double *z,ITG *istartnmd,
 920              ITG *iendnmd,ITG *nmd,ITG *cyclicsymmetry,ITG *neqact,
 921              ITG *igeneralizedforce));
 922 
 923 void frd(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,ITG *ne0,
 924          double *v,double *stn,ITG *inum,ITG *nmethod,ITG *kode,
 925          char *filab,double *een,double *t1,double *fn,double *time,
 926          double *epn,ITG *ielmat,char *matname,double *enern,
 927          double *xstaten,ITG *nstate_,ITG *istep,ITG *iinc,
 928          ITG *ithermal,double *qfn,ITG *mode,ITG *noddiam,
 929          double *trab,ITG *inotr,ITG *ntrans,double *orab,
 930          ITG *ielorien,ITG *norien,char *description,ITG *ipneigh,
 931          ITG *neigh,ITG *mi,double *stx,double *vr,double *vi,
 932          double *stnr,double *stni,double *vmax,double *stnmax,
 933          ITG *ngraph,double *veold,double *ener,ITG *ne,double *cs,
 934          char *set,ITG *nset,ITG *istartset,ITG *iendset,ITG *ialset,
 935          double *eenmax,double *fnr,double *fni,double *emn,
 936          double *thicke,char *jobnamec, char *output,double *qfx,
 937          double *cdn,ITG *mortar,double *cdnr,double *cdni,ITG *nmat);
 938 
 939 void frdcyc(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,ITG *ne,double *v,
 940             double *stn,ITG *inum,ITG *nmethod,ITG *kode,char *filab,
 941             double *een,double *t1,double *fn,double *time,double *epn,
 942             ITG *ielmat,char *matname,double *cs,ITG *mcs,ITG *nkon,
 943             double *enern,double *xstaten,ITG *nstate_,ITG *istep,
 944             ITG *iinc,ITG *iperturb,double *ener,ITG *mi,char *output,
 945             ITG *ithermal,double *qfn,ITG *ialset,ITG *istartset,
 946             ITG *iendset,double *trab,ITG *inotr,ITG *ntrans,double *orab,
 947             ITG *ielorien,ITG *norien,double *sti,double *veold,ITG *noddiam,
 948             char *set,ITG *nset,double *emn, double *thicke,char *jobnamec,
 949             ITG *ne0,double *cdn,ITG *mortar,ITG *nmat);
 950 
 951 void FORTRAN(frdfluid,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
 952              ITG *ne,double *v,ITG *kode,double *time,
 953              ITG *ielmat,char *matname,char *filab,
 954              ITG *inum,ITG *ntrans,ITG *inotr,double *trab,ITG *mi,
 955              ITG *istep,double *stn,double *qfn,ITG *nactdofinv));
 956 
 957 void frdheader(ITG *icounter,double *oner,double *time,double *pi,
 958                ITG *noddiam,double *cs,ITG *null,ITG *mode,
 959                ITG *noutloc,char *description,ITG *kode,ITG *nmethod,
 960                FILE *f1,char *output,ITG *istep,ITG *iinc);
 961 
 962 void FORTRAN(frditeration,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
 963              ITG *ne,double *v,double *time,ITG *ielmat,char *matname,
 964              ITG *mi,ITG *istep,ITG *iinc,ITG *ithermal));
 965 
 966 void frdselect(double *field1,double *field2,ITG *iset,ITG *nkcoords,ITG *inum,
 967      char *m1,ITG *istartset,ITG *iendset,ITG *ialset,ITG *ngraph,ITG *ncomp,
 968      ITG *ifield,ITG *icomp,ITG *nfield,ITG *iselect,char *m2,FILE *f1,
 969      char *output, char *m3);
 970 
 971 void frdset(char *filabl,char *set,ITG *iset,ITG *istartset,ITG *iendset,
 972             ITG *ialset,ITG *inum,ITG *noutloc,ITG *nout,ITG *nset,
 973             ITG *noutmin,ITG *noutplus,ITG *iselect,ITG *ngraph);
 974 
 975 void frdvector(double *v,ITG *iset,ITG *ntrans,char * filabl,ITG *nkcoords,
 976                ITG *inum,char *m1,ITG *inotr,double *trab,double *co,
 977                ITG *istartset,ITG *iendset,ITG *ialset,ITG *mi,ITG *ngraph,
 978                FILE *f1,char *output,char *m3);
 979 
 980 void FORTRAN(fsub,(double *time,double *tend,double *aai,double *bbi,
 981                    double *ddj,double *h1,double *h2,double *h3,double *h4,
 982                    double *func,double *funcp));
 983 
 984 void FORTRAN(fsuper,(double *time,double *tend,double *aai,double *bbi,
 985                        double *h1,double *h2,double *h3,double *h4,
 986                        double *h5,double *h6,double *func,double *funcp));
 987 
 988 void FORTRAN(gasmechbc,(double *vold,ITG *nload,char *sideload,
 989                         ITG *nelemload,double *xload,ITG *mi));
 990 
 991 void FORTRAN(genadvecelem,(ITG *inodesd,ITG *ipkon,ITG *ne,char *lakon,
 992              ITG *kon,ITG *nload,char *sideload,ITG *nelemload,ITG *nkon));
 993 
 994 void FORTRAN(gencontelem_f2f,(char *tieset,ITG *ntie,ITG *itietri,ITG *ne,
 995              ITG *ipkon,ITG *kon,char *lakon,double *cg,double *straight,
 996              ITG *ifree,ITG *koncont,double *co,double *vold,double *xo,
 997              double *yo,double *zo,double *x,double *y,double *z,ITG *nx,
 998              ITG *ny,ITG *nz,ITG *ielmat,double *elcon,ITG *istep,ITG *iinc,
 999              ITG *iit,ITG *ncmat_,ITG *ntmat_,ITG *mi,ITG *imastop,
1000              ITG *islavsurf,ITG *itiefac,double *springarea,double *tietol,
1001              double *reltime,char *filab,ITG *nasym,
1002              double *pslavsurf,double *pmastsurf,double *clearini,
1003              double *theta));
1004 
1005 void FORTRAN(gencontelem_n2f,(char *tieset,ITG *ntie,ITG *itietri,ITG *ne,
1006      ITG *ipkon,ITG *kon,char *lakon,
1007      double *cg,double *straight,ITG *ifree,ITG *koncont,
1008      double *co,double *vold,double *xo,double *yo,double *zo,
1009      double *x,double *y,double *z,ITG *nx,ITG *ny,ITG *nz,
1010      ITG *ielmat,double *elcon,ITG *istep,ITG *iinc,ITG *iit,
1011      ITG *ncmat_,ITG *ntmat_,
1012      ITG *nmethod,ITG *mi,ITG *imastop,ITG *nslavnode,
1013      ITG *islavnode,ITG *islavsurf,ITG *itiefac,double *areaslav,
1014      ITG *iponoels,ITG *inoels,double *springarea,
1015      char *set,ITG *nset,ITG *istartset,ITG *iendset,ITG *ialset,
1016      double *tietol,double *reltime,
1017      ITG *imastnode,ITG *nmastnode,char* filab,ITG *nasym,double *xnoels));
1018 
1019 void FORTRAN(generateeminterfaces,(ITG *istartset,ITG *iendset,
1020              ITG *ialset,ITG *iactive,ITG *ipkon,char *lakon,ITG *kon,
1021              ITG *ikmpc,ITG *nmpc,ITG *nafaces));
1022 
1023 void FORTRAN(generatetet,(ITG *kontet,ITG *ifatet,ITG *netet,
1024              ITG *inodfa,ITG *ifreefa,double *planfa,ITG *ipofa,
1025              ITG *nodes,double *cotet));
1026 
1027 void  FORTRAN(gennactdofinv,(ITG *nactdof,ITG *nactdofinv,ITG *nk,
1028        ITG *mi,ITG *nodorig,ITG *ipkon,char *lakon,ITG *kon,ITG *ne));
1029 
1030 void FORTRAN(gentiedmpc,(char *tieset,ITG *ntie,ITG *itietri,
1031           ITG *ipkon,ITG *kon,char *lakon,char *set,ITG *istartset,
1032           ITG *iendset,ITG *ialset,double *cg,double *straight,
1033           ITG *koncont,double *co,double *xo,double *yo,double *zo,
1034           double *x,double *y,double *z,ITG *nx,ITG *ny,ITG *nz,ITG *nset,
1035           ITG *ifaceslave,ITG *istartfield,ITG *iendfield,ITG *ifield,
1036           ITG *ipompc,ITG *nodempc,double *coefmpc,ITG *nmpc,ITG *nmpc_,
1037           ITG *mpcfree,ITG *ikmpc,ITG *ilmpc,char *labmpc,ITG *ithermal,
1038           double *tietol,ITG *icfd,ITG *ncont,ITG *imastop,ITG *ikboun,
1039           ITG *nboun,char *kind));
1040 
1041 void FORTRAN(geomview,(double *vold,double *co,double *pmid,double *e1,
1042              double *e2,double *e3,ITG *kontri,double *area,double *cs,
1043              ITG *mcs,ITG *inocs,ITG *ntrit,ITG *nk,ITG *mi,double *sidemean));
1044 
1045 void getglobalresults (char *jobnamec,ITG **integerglobp,double **doubleglobp,
1046                        ITG *nboun,ITG *iamboun,double *xboun, ITG *nload,
1047                        char *sideload,ITG *iamload,ITG *iglob,ITG *nforc,
1048                        ITG *iamforc,double *xforc,ITG *ithermal,ITG *nk,
1049                        double *t1,ITG *iamt1);
1050 
1051 ITG getSystemCPUs();;
1052 
1053 void FORTRAN(identamta,(double *amta,double *reftime,ITG *istart,ITG *iend,
1054                ITG *id));
1055 
1056 void FORTRAN(identifytiedface,(char *tieset,ITG *ntie,char *set,ITG *nset,
1057                                ITG *faceslave,char *kind));
1058 
1059 void FORTRAN(includefilename,(char *buff,char *includefn,ITG *lincludefn));
1060 
1061 void FORTRAN(inicalcbody,(ITG *nef,double *body,ITG *ipobody,ITG *ibody,
1062                           double *xbody,double *coel,double *vel,char *lakon,
1063                           ITG *nactdohinv,ITG *icent));
1064 
1065 void inicont(ITG* nk,ITG *ncont,ITG *ntie,char *tieset,ITG *nset,char *set,
1066              ITG *istartset,ITG *iendset,ITG *ialset,ITG **itietrip,
1067              char *lakon,ITG *ipkon,ITG *kon,ITG **koncontp,
1068              ITG *ncone,double *tietol,ITG *ismallsliding,ITG **itiefacp,
1069              ITG **islavsurfp,ITG **islavnodep,ITG **imastnodep,
1070              ITG **nslavnodep,ITG **nmastnodep,ITG *mortar,
1071              ITG **imastopp,ITG *nkon,ITG **iponoels,ITG **inoelsp,
1072              ITG **ipep,ITG **imep,ITG *ne,ITG *ifacecount,
1073              ITG *nmpc,ITG *mpcfree,ITG *memmpc_,
1074              ITG **ipompcp,char **labmpcp,ITG **ikmpcp,ITG **ilmpcp,
1075              double **fmpcp,ITG **nodempcp,double **coefmpcp,
1076              ITG *iperturb,ITG *ikboun,ITG *nboun,double *co,ITG *istep,
1077              double **xnoelsp);
1078 
1079 void FORTRAN(init,(ITG *nktet,ITG *inodfa,ITG *ipofa,ITG *netet_));
1080 
1081 void FORTRAN(initialcfd,(ITG *ne,ITG *ipkon,ITG *kon,char *lakon,
1082              double *co,double *coel,double *cofa,ITG *nface,ITG *ielfa,
1083              double *area,ITG *ipnei,ITG *neiel,double *xxn,double *xxi,
1084              double *xle,double *xlen,double *xlet,double *xrlfa,double *cosa,
1085              double *volume,ITG *neifa,double *xxj,double *cosb,double *vel,
1086              double *dmin));
1087 
1088 void FORTRAN(initialchannel,(ITG *itg,ITG *ieg,ITG *ntg,double *ac,double *bc,
1089                          char *lakon,double *v,ITG * ipkon,ITG *kon,
1090                          ITG *nflow,ITG *ikboun,ITG *nboun,double *prop,
1091                          ITG *ielprop,ITG *nactdog,ITG *ndirboun,
1092                          ITG *nodeboun,double *xbounact,ITG *ielmat,
1093                          ITG *ntmat_,double *shcon,ITG *nshcon,
1094                          double *physcon,ITG *ipiv,ITG *nteq,
1095                          double *rhcon,ITG *nrhcon,ITG *ipobody,ITG *ibody,
1096                          double *xbody,double *co,ITG *nbody,ITG *network,
1097                          ITG *iin_abs,double *vold,char *set,ITG *istep,
1098                          ITG *iit,ITG *mi,ITG *ineighe,ITG *ilboun));
1099 
1100 void FORTRAN(initialnet,(ITG *itg,ITG *ieg,ITG *ntg,double *ac,double *bc,
1101                          char *lakon,double *v,ITG * ipkon,ITG *kon,
1102                          ITG *nflow,ITG *ikboun,ITG *nboun,double *prop,
1103                          ITG *ielprop,ITG *nactdog,ITG *ndirboun,
1104                          ITG *nodeboun,double *xbounact,ITG *ielmat,
1105                          ITG *ntmat_,double *shcon,ITG *nshcon,
1106                          double *physcon,ITG *ipiv,ITG *nteq,
1107                          double *rhcon,ITG *nrhcon,ITG *ipobody,ITG *ibody,
1108                          double *xbody,double *co,ITG *nbody,ITG *network,
1109                          ITG *iin_abs,double *vold,char *set,ITG *istep,
1110                          ITG *iit,ITG *mi,ITG *ineighe,ITG *ilboun,
1111                          ITG *channel,ITG *iaxial));
1112 
1113 void insert(ITG *ipointer,ITG **mast1p,ITG **mast2p,ITG *i1,
1114             ITG *i2,ITG *ifree,ITG *nzs_);
1115 
1116 void insertrad(ITG *ipointer,ITG **mast1p,ITG **mast2p,ITG *i1,
1117             ITG *i2,ITG *ifree,ITG *nzs_);
1118 
1119 void FORTRAN(integral_boundary,(double *sumfix,double *sumfree,ITG *ifaext,
1120                                 ITG *nfaext,ITG *ielfa,ITG *ifabou,double *vfa,ITG *ipnei,
1121                                 double *xxn));
1122 
1123 void FORTRAN(interpolatestate,(ITG *ne,ITG *ipkon,ITG *kon,char *lakon,
1124              ITG *ne0,ITG *mi,double *xstate,
1125              double *pslavsurf,ITG *nstate_,double *xstateini,
1126              ITG *islavsurf,ITG *islavsurfold,
1127              double *pslavsurfold));
1128 
1129 void FORTRAN(islavactive,(char *tieset,ITG *ntie,ITG *itietri,double *cg,
1130               double *straight,double *co,double *vold,double *xo,
1131               double *yo,double *zo,double *x,double *y,double *z,
1132               ITG *nx,ITG *ny,ITG *nz,ITG *mi,ITG *imastop,ITG *nslavnode,
1133               ITG *islavnode,ITG *islavact));
1134 
1135 void FORTRAN(isortid,(ITG *ix,double *dy,ITG *n,ITG *kflag));
1136 
1137 void FORTRAN(isortii,(ITG *ix,ITG *iy,ITG *n,ITG *kflag));
1138 
1139 void FORTRAN(isortiid,(ITG *ix,ITG *iy,double *dy,ITG *n,ITG *kflag));
1140 
1141 void FORTRAN(isortiddc,(ITG *ix,double *dy1,double *dy2,char *cy,ITG *n, 
1142                          ITG *kflag));
1143 
1144 void FORTRAN(isortiiddc,(ITG *ix1,ITG *ix2,double *dy1,double *dy2, 
1145                          char *cy,ITG *n,ITG *kflag));
1146 
1147 void FORTRAN(jouleheating,(ITG *ipkon,char *lakon,ITG *kon,double *co,
1148              double *elcon,ITG *nelcon,ITG *mi,ITG *ne,double *sti,
1149              ITG *ielmat,ITG *nelemload,char *sideload,double *xload,
1150              ITG *nload,ITG *nload_,ITG *iamload,ITG *nam,ITG *idefload,
1151              ITG *ncmat_,ITG *ntmat_,double *alcon,ITG *nalcon,ITG *ithermal,
1152              double *vold,double *t1));
1153 
1154 void FORTRAN(keystart,(ITG *ifreeinp,ITG *ipoinp,ITG *inp,char *name,
1155            ITG *iline,ITG *ikey));
1156   
1157 void linstatic(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1158              ITG *ne, 
1159              ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
1160              ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,
1161              ITG *nmpc, 
1162              ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
1163              ITG *nelemload,char *sideload,double *xload,
1164              ITG *nload, ITG *nactdof, 
1165              ITG **icolp,ITG *jq,ITG **irowp,ITG *neq,ITG *nzl, 
1166              ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1167              ITG *ilboun,
1168              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1169              double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1170              ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1171              double *t0,double *t1,double *t1old, 
1172              ITG *ithermal,double *prestr,ITG *iprestr, 
1173              double *vold,ITG *iperturb,double *sti,ITG *nzs, 
1174              ITG *kode,char *filab,double *eme,
1175              ITG *iexpl,double *plicon,ITG *nplicon,double *plkcon,
1176              ITG *nplkcon,
1177              double *xstate,ITG *npmat_,char *matname,ITG *isolver,
1178              ITG *mi,ITG *ncmat_,ITG *nstate_,double *cs,ITG *mcs,
1179              ITG *nkon,double *ener,double *xbounold,
1180              double *xforcold,double *xloadold,
1181              char *amname,double *amta,ITG *namta,
1182              ITG *nam,ITG *iamforc,ITG *iamload,
1183              ITG *iamt1,ITG *iamboun,double *ttime,char *output, 
1184              char *set,ITG *nset,ITG *istartset,
1185              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
1186              char *prset,ITG *nener,double *trab, 
1187              ITG *inotr,ITG *ntrans,double *fmpc,char *cbody,ITG *ibody,
1188              double *xbody,ITG *nbody,double *xbodyold,double *timepar, 
1189              double *thicke, char *jobnamec,char *tieset,ITG *ntie,
1190              ITG *istep,ITG *nmat,ITG *ielprop,double *prop,char *typeboun);
1191 
1192 void FORTRAN(mafillcorio,(double *co,ITG *nk,ITG *kon,ITG *ipkon, 
1193                char *lakon,
1194                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1195                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1196                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1197                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1198                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1199                ITG *nbody,double *cgr,
1200                double *ad,double *au,ITG *nactdof, 
1201                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1202                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1203                ITG *ilboun,
1204                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1205                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1206                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1207                double *t0,double *t1,ITG *ithermal,
1208                double *prestr,ITG *iprestr,double *vold,
1209                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1210                double *adb,double *aub,ITG *iexpl,
1211                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
1212                double *xstiff, 
1213                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1214                ITG *ncmat_,double *ttime,double *time,
1215                ITG *istep,ITG *kinc,ITG *ibody));
1216 
1217 void FORTRAN(mafilldm,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1218                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1219                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1220                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1221                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1222                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1223                ITG *nbody,double *cgr,
1224                double *ad,double *au,ITG *nactdof, 
1225                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1226                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1227                ITG *ilboun,
1228                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1229                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1230                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1231                double *t0,double *t1,ITG *ithermal,
1232                double *prestr,ITG *iprestr,double *vold,
1233                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1234                double *adb,double *aub,ITG *iexpl,
1235                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
1236                double *xstiff, 
1237                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1238                ITG *ncmat_,double *ttime,double *time,
1239                ITG *istep,ITG *kinc,ITG *ibody,double *clearini,
1240                ITG *mortar,double *springarea,double *pslavsurf,
1241                double *pmastsurf,double *reltime,ITG *nasym));
1242 
1243 void FORTRAN(mafillem,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1244                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1245                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1246                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1247                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1248                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1249                ITG *nbody,double *cgr,
1250                double *ad,double *au,double *bb,ITG *nactdof, 
1251                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1252                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1253                ITG *ilboun,
1254                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1255                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1256                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1257                double *t0,double *t1,ITG *ithermal,
1258                double *prestr,ITG *iprestr,double *vold,
1259                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1260                double *adb,double *aub,ITG *iexpl,
1261                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
1262                double *xstiff, 
1263                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1264                ITG *ncmat_,ITG *mass,ITG *stiffness,ITG *buckling,ITG *rhs,
1265                ITG *intscheme,double *physcon,double *shcon,ITG *nshcon,
1266                double *cocon,ITG *ncocon,double *ttime,double *time,
1267                ITG *istep,ITG *kinc,ITG *coriolis,ITG *ibody,
1268                double *xloadold,double *reltime,double *veold,
1269                double *springarea,ITG *nstate_,double *xstateini,
1270                double *xstate,double *thicke,
1271                ITG *integerglob,double *doubleglob,char *tieset,
1272                ITG *istartset,ITG *iendset,ITG *ialset,ITG *ntie,
1273                ITG *nasym,ITG *iactive,double *h0,double *pslavsurf,
1274                double *pmastsurf,ITG *mortar,double *clearini,
1275                ITG *ielprop,double *prop));
1276 
1277 void FORTRAN(mafillnet,(ITG *itg,ITG *ieg,ITG *ntg,
1278                         double *ac,ITG *nload,char *sideload,
1279                         ITG *nelemload,double *xloadact,char *lakon,
1280                         ITG *ntmat_,double *v,double *shcon,ITG *nshcon,
1281                         ITG *ipkon,ITG *kon,double *co,ITG *nflow,
1282                         ITG *iinc,ITG *istep,
1283                         double *dtime,double *ttime,double *time,
1284                         ITG *ielmat,ITG *nteq,double *prop,
1285                         ITG *ielprop,ITG *nactdog,ITG *nacteq,
1286                         double *physcon,double *rhcon,ITG *nrhcon,
1287                         ITG *ipobody,ITG *ibody,double *xbody,ITG *nbody,
1288                         double *vold,double *xloadold,double *reltime,
1289                         ITG *nmethod,char *set,ITG *mi,ITG *nmpc,
1290                         ITG *nodempc,ITG *ipompc,double *coefmpc,
1291                         char *labmpc,ITG *iaxial));
1292 
1293 void FORTRAN(mafillp,(ITG *ne,char *lakon,ITG *ipnei,
1294              ITG *neifa,ITG *neiel,double *vfa,double *area,double *adfa,
1295              double *xlet,double *cosa,double *volume,double *au,double *ad,
1296              ITG *jq,ITG *irow,double *ap,ITG *ielfa,ITG *ifabou,
1297              double *xle,double *b,double *xxn,ITG *compressible,
1298              ITG *neq,ITG *nzs,double *hfa,double *gradpel,
1299              double *bp,double *xxi,ITG *neij,double *xlen,double *cosb));
1300 
1301 void FORTRAN(mafillsm,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1302                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1303                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1304                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1305                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1306                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1307                ITG *nbody,double *cgr,
1308                double *ad,double *au,double *bb,ITG *nactdof, 
1309                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1310                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1311                ITG *ilboun,
1312                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1313                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1314                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1315                double *t0,double *t1,ITG *ithermal,
1316                double *prestr,ITG *iprestr,double *vold,
1317                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1318                double *adb,double *aub,ITG *iexpl,
1319                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
1320                double *xstiff, 
1321                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1322                ITG *ncmat_,ITG *mass,ITG *stiffness,ITG *buckling,ITG *rhs,
1323                ITG *intscheme,double *physcon,double *shcon,ITG *nshcon,
1324                double *cocon,ITG *ncocon,double *ttime,double *time,
1325                ITG *istep,ITG *kinc,ITG *coriolis,ITG *ibody,
1326                double *xloadold,double *reltime,double *veold,
1327                double *springarea,ITG *nstate_,double *xstateini,
1328                double *xstate,double *thicke,
1329                ITG *integerglob,double *doubleglob,char *tieset,
1330                ITG *istartset,ITG *iendset,ITG *ialset,ITG *ntie,
1331                ITG *nasym,double *pslavsurf,double *pmastsurf,ITG *mortar,
1332                double *clearini,ITG *ielprop,double *prop));
1333 
1334 void FORTRAN(mafillsmas,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1335                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1336                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1337                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1338                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1339                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1340                ITG *nbody,double *cgr,
1341                double *ad,double *au,double *bb,ITG *nactdof, 
1342                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1343                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1344                ITG *ilboun,
1345                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1346                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1347                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1348                double *t0,double *t1,ITG *ithermal,
1349                double *prestr,ITG *iprestr,double *vold,
1350                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1351                double *adb,double *aub,ITG *iexpl,
1352                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
1353                double *xstiff, 
1354                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1355                ITG *ncmat_,ITG *mass,ITG *stiffness,ITG *buckling,ITG *rhs,
1356                ITG *intscheme,double *physcon,double *shcon,ITG *nshcon,
1357                double *cocon,ITG *ncocon,double *ttime,double *time,
1358                ITG *istep,ITG *kinc,ITG *coriolis,ITG *ibody,
1359                double *xloadold,double *reltime,double *veold,
1360                double *springarea,ITG *nstate_,double *xstateini,
1361                double *xstate,double *thicke,
1362                ITG *integerglob,double *doubleglob,char *tieset,
1363                ITG *istartset,ITG *iendset,ITG *ialset,ITG *ntie,
1364                ITG *nasym,double *pslavsurf,double *pmastsurf,ITG *mortar,
1365                double *clearini,ITG *ielprop,double *prop));
1366 
1367 void FORTRAN(mafillsmcs,(double *co,ITG *nk,ITG *kon,ITG *ipkon, 
1368                char *lakon,
1369                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1370                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1371                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1372                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1373                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1374                ITG *nbody,double *cgr, 
1375                double *ad,double *au,double *bb,ITG *nactdof, 
1376                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1377                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1378                ITG *ilboun,
1379                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1380                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1381                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1382                double *t0,double *t1,ITG *ithermal,
1383                double *prestr,ITG *iprestr,double *vold,
1384                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1385                double *adb,double *aub,ITG *iexpl,double *plicon,
1386                ITG *nplicon,double *plkcon,ITG *nplkcon,double *xstiff, 
1387                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1388                ITG *ics,double *cs,ITG *nm,ITG *ncmat_,char *labmpc,
1389                ITG *mass,ITG *stiffness,ITG *buckling,ITG *rhs,
1390                ITG *intscheme,ITG *mcs,ITG *coriolis,ITG *ibody,
1391                double *xloadold,double *reltime,ITG *ielcs,double *veold,
1392                double *springarea,double *thicke,
1393                ITG *integerglob,double *doubleglob,char *tieset,
1394                ITG *istartset,ITG *iendset,ITG *ialset,ITG *ntie,
1395                ITG *nasym,double *pslavsurf,double *pmastsurf,ITG *mortar,
1396                double *clearini,ITG *ielprop,double *prop));
1397 
1398 void FORTRAN(mafillsmcsas,(double *co,ITG *nk,ITG *kon,ITG *ipkon, 
1399                char *lakon,
1400                ITG *ne,ITG *nodeboun,ITG *ndirboun,double *xboun, 
1401                ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1402                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
1403                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
1404                double *xload,ITG *nload,double *xbody,ITG *ipobody,
1405                ITG *nbody,double *cgr, 
1406                double *ad,double *au,double *bb,ITG *nactdof, 
1407                ITG *icol,ITG *jq,ITG *irow,ITG *neq,ITG *nzl, 
1408                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,ITG *ikboun, 
1409                ITG *ilboun,
1410                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1411                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1412                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1413                double *t0,double *t1,ITG *ithermal,
1414                double *prestr,ITG *iprestr,double *vold,
1415                ITG *iperturb,double *sti,ITG *nzs,double *stx,
1416                double *adb,double *aub,ITG *iexpl,double *plicon,
1417                ITG *nplicon,double *plkcon,ITG *nplkcon,double *xstiff, 
1418                ITG *npmat_,double *dtime,char *matname,ITG *mi,
1419                ITG *ics,double *cs,ITG *nm,ITG *ncmat_,char *labmpc,
1420                ITG *mass,ITG *stiffness,ITG *buckling,ITG *rhs,
1421                ITG *intscheme,ITG *mcs,ITG *coriolis,ITG *ibody,
1422                double *xloadold,double *reltime,ITG *ielcs,double *veold,
1423                double *springarea,double *thicke,
1424                ITG *integerglob,double *doubleglob,char *tieset,
1425                ITG *istartset,ITG *iendset,ITG *ialset,ITG *ntie,
1426                ITG *nasym,ITG *nstate_,double *xstateini,double *xstate,
1427                double *pslavsurf,double *pmastsurf,ITG *mortar,
1428                double *clearini,ITG *ielprop,double *prop));
1429 
1430 void FORTRAN(mafillt,(ITG *nef,ITG *ipnei,ITG *neifa,
1431                ITG *neiel,double *vfa,double *xxn,double *area,
1432                double *au,double *ad,ITG *jq,ITG *irow,ITG *nzs,
1433                double *b,double *vel,double *umel,double *xlet,
1434                double *xle,double *gradtfa,double *xxi,double *body,
1435                double *volume,ITG *compressible,ITG *ielfa,char *lakon,
1436                ITG *ifabou,ITG *nbody,ITG *neq,double *dtimef,double *velo,
1437                double *veloo,double *cpfa,double *hcfa,double *cpel,
1438                double *gradvel,double *xload,double *gammat,double *xrlfa,
1439                double *xxj,ITG *nactdohinv,double *a1,double *a2,double *a3));
1440 
1441 void FORTRAN(mafillv,(ITG *nef,ITG *ipnei,ITG *neifa,ITG *neiel,
1442              double *vfa,double *xxn,double *area,double *au,double *ad,
1443              ITG *jq,ITG *irow,ITG *nzs,double *b,double *vel,double *cosa,
1444              double *umfa,double *xlet,double *xle,double *gradvfa,
1445              double *xxi,double *body,double *volume,ITG *compressible,
1446              ITG *ielfa,char *lakon,ITG *ifabou,ITG *nbody,ITG *neq,
1447              double *dtimef,double *velo,double *veloo,
1448              double *sel,double *xrlfa,double *gamma,double *xxj,
1449              ITG *nactdohinv,double *a1,double *a2,double *a3));
1450 
1451 void mastruct(ITG *nk,ITG *kon,ITG *ipkon,char*lakon,ITG *ne,
1452               ITG *nodeboun,ITG *ndirboun,ITG *nboun,ITG *ipompc,
1453               ITG *nodempc,ITG *nmpc,ITG *nactdof,ITG *icol,
1454               ITG *jq,ITG **mast1p,ITG **irowp,ITG *isolver,ITG *neq,
1455               ITG *ikmpc,ITG *ilmpc,ITG *ipointer,ITG *nzs,ITG *nmethod,
1456               ITG *ithermal,ITG *ikboun,ITG *ilboun,ITG *iperturb,
1457               ITG *mi,ITG *mortar,char *typeboun,char *labmpc);
1458 
1459 void mastructcs(ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1460                ITG *ne,ITG *nodeboun,
1461                ITG *ndirboun,ITG *nboun,ITG *ipompc,ITG *nodempc,
1462                ITG *nmpc,ITG *nactdof,ITG *icol,ITG *jq,ITG **mast1p,
1463                ITG **irowp,ITG *isolver,ITG *neq,
1464                ITG *ikmpc,ITG *ilmpc,ITG *ipointer,
1465                ITG *nzs,ITG *nmethod,ITG *ics,double *cs,
1466                char *labmpc,ITG *mcs,ITG *mi,ITG *mortar);
1467 
1468 void mastructem(ITG *nk, ITG *kon, ITG *ipkon, char *lakon, ITG *ne,
1469               ITG *nodeboun, ITG *ndirboun, ITG *nboun, ITG *ipompc,
1470               ITG *nodempc, ITG *nmpc, ITG *nactdof, ITG *icol,
1471               ITG *jq, ITG **mast1p, ITG **irowp, ITG *isolver, ITG *neq,
1472               ITG *ikmpc, ITG *ilmpc,ITG *ipointer, ITG *nzs, 
1473               ITG *ithermal,ITG *mi,ITG *ielmat, double *elcon, ITG *ncmat_, 
1474               ITG *ntmat_,ITG *inomat);
1475 
1476 void mastructf(ITG *nk,ITG *kon,ITG *ipkon,char *lakon,ITG *ne,
1477                ITG *icol,ITG *jq, ITG **mast1p, ITG **irowp,
1478                ITG *isolver, ITG *neq,ITG *ipointer, ITG *nzs,
1479                ITG *ipnei,ITG *ineiel,ITG *mi);
1480 
1481 void mastructrad(ITG *ntr,ITG *nloadtr,char *sideload,ITG *ipointerrad,
1482               ITG **mast1radp,ITG **irowradp,ITG *nzsrad,
1483               ITG *jqrad,ITG *icolrad);
1484 
1485 void FORTRAN(meannode,(ITG *nk,ITG *inum,double *v));
1486 
1487 void FORTRAN(mpcrem,(ITG *i,ITG *mpcfree,ITG *nodempc,ITG *nmpc,ITG *ikmpc,
1488                      ITG *ilmpc,char *labmpc,double *coefmpc,ITG *ipompc));
1489 
1490 void FORTRAN(mult,(double *matrix,double *trans,ITG *n));
1491 
1492 void FORTRAN(negativepressure,(ITG *ne0,ITG *ne,ITG *mi,double *stx,
1493                                double *pressureratio));
1494 
1495 void FORTRAN(networkinum,(ITG *ipkon,ITG *inum,ITG *kon,char *lakon,
1496        ITG *ne,ITG *itg,ITG *ntg));
1497 
1498 void FORTRAN(nident,(ITG *x,ITG *px,ITG *n,ITG *id));
1499 
1500 void FORTRAN(nidentll,(long long *x,long long *px,ITG *n,ITG *id));
1501 
1502 void FORTRAN(nodestiedface,(char *tieset,ITG *ntie,ITG *ipkon,ITG *kon,
1503        char *lakon,char *set,ITG *istartset,ITG *iendset,ITG *ialset,
1504        ITG *nset,ITG *faceslave,ITG *istartfield,ITG *iendfield,
1505        ITG *ifield,ITG *nconf,ITG *ncone,char *kind));
1506 
1507 void nonlingeo(double **co,ITG *nk,ITG **konp,ITG **ipkonp,char **lakonp,
1508              ITG *ne, 
1509              ITG *nodeboun,ITG *ndirboun,double *xboun,ITG *nboun, 
1510              ITG **ipompcp,ITG **nodempcp,double **coefmpcp,char **labmpcp,
1511              ITG *nmpc, 
1512              ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
1513              ITG *nelemload,char *sideload,double *xload,
1514              ITG *nload,ITG *nactdof, 
1515              ITG **icolp,ITG *jq,ITG **irowp,ITG *neq,ITG *nzl, 
1516              ITG *nmethod,ITG **ikmpcp,ITG **ilmpcp,ITG *ikboun, 
1517              ITG *ilboun,
1518              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1519              double *alcon,ITG *nalcon,double *alzero,ITG **ielmatp,
1520              ITG **ielorienp,ITG *norien,double *orab,ITG *ntmat_,
1521              double *t0,double *t1,double *t1old, 
1522              ITG *ithermal,double *prestr,ITG *iprestr, 
1523              double **vold,ITG *iperturb,double *sti,ITG *nzs,  
1524              ITG *kode,char *filab,ITG *idrct,
1525              ITG *jmax,ITG *jout,double *timepar,
1526              double *eme,double *xbounold,
1527              double *xforcold,double *xloadold,
1528              double *veold,double *accold,
1529              char *amname,double *amta,ITG *namta,ITG *nam,
1530              ITG *iamforc,ITG *iamload,
1531              ITG *iamt1,double *alpha,ITG *iexpl,
1532              ITG *iamboun,double *plicon,ITG *nplicon,double *plkcon,
1533              ITG *nplkcon,
1534              double **xstatep,ITG *npmat_,ITG *istep,double *ttime,
1535              char *matname,double *qaold,ITG *mi,
1536              ITG *isolver,ITG *ncmat_,ITG *nstate_,ITG *iumat,
1537              double *cs,ITG *mcs,ITG *nkon,double **ener,ITG *mpcinfo,
1538              char *output,
1539              double *shcon,ITG *nshcon,double *cocon,ITG *ncocon,
1540              double *physcon,ITG *nflow,double *ctrl, 
1541              char *set,ITG *nset,ITG *istartset,
1542              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
1543              char *prset,ITG *nener,ITG *ikforc,ITG *ilforc,double *trab, 
1544              ITG *inotr,ITG *ntrans,double **fmpcp,char *cbody,
1545              ITG *ibody,double *xbody,ITG *nbody,double *xbodyold,
1546              ITG *ielprop,double *prop,ITG *ntie,char *tieset,
1547              ITG *itpamp,ITG *iviewfile,char *jobnamec,double *tietol,
1548              ITG *nslavs,double *thicke,ITG *ics,
1549              ITG *nintpoint,ITG *mortar,ITG *ifacecount,char *typeboun,
1550              ITG **islavsurfp,double **pslavsurfp,double **clearinip,
1551              ITG *nmat,double *xmodal,ITG *iaxial,ITG *inext);
1552 
1553 void FORTRAN(nonlinmpc,(double *co,double *vold,ITG *ipompc,ITG *nodempc,
1554                    double *coefmpc,char *labmpc,ITG *nmpc,ITG *ikboun,
1555                    ITG *ilboun,ITG *nboun,double *xbounact,double *aux,
1556                    ITG *iaux,ITG *maxlenmpc,ITG *ikmpc,ITG *ilmpc,
1557                    ITG *icascade,ITG *kon,ITG *ipkon,char *lakon,
1558                    ITG *ne,double *reltime,ITG *newstep,double *xboun,
1559                    double *fmpc,ITG *newinc,ITG *idiscon,ITG *ncont,
1560                    double *trab,ITG *ntrans,ITG *ithermal,ITG *mi));
1561 
1562 void FORTRAN(normalsoninterface,(ITG *istartset,ITG *iendset,
1563              ITG *ialset,ITG *imast,ITG *ipkon,ITG *kon,char *lakon,
1564              ITG *imastnode,ITG *nmastnode,double *xmastnor,double *co));
1565 
1566 void FORTRAN(op,(ITG *n,double *x,double *y,double *ad,double *au,ITG *jq,ITG *irow));
1567 
1568 void FORTRAN(opas,(ITG *n,double *x,double *y,double *ad,double *au,ITG *jq,
1569                    ITG *irow,ITG *nzs));
1570 
1571 void FORTRAN(op_corio,(ITG *n,double *x,double *y,double *ad,double *au,
1572                        ITG *jq,ITG *irow));
1573 
1574 void FORTRAN(openfile,(char *jobname,char *output));
1575 
1576 void FORTRAN(openfilefluid,(char *jobname));
1577 
1578 void FORTRAN(postview,(ITG *ntr,char *sideload,ITG *nelemload,ITG *kontri,
1579              ITG *ntri,ITG *nloadtr,double *tenv,double *adview,double *auview,
1580              double *area,double *fenv,ITG *jqrad,ITG *irowrad,ITG *nzsrad));
1581 
1582 void FORTRAN(precfd,(ITG *ne,ITG *ipkon,ITG *kon,char *lakon,ITG *ipnei,
1583                      ITG *neifa,ITG *neiel,ITG *ipoface,ITG *nodface,
1584                      ITG *ielfa,ITG *nkonnei,ITG *nface,ITG *ifaext,
1585                      ITG *nfaext,ITG *isolidsurf,ITG *nsolidsurf,char *set,
1586                      ITG *nset,ITG *istartset,ITG *iendset,ITG *ialset,
1587                      double *vel,double *vold,ITG *mi,ITG *neij,ITG *nef,
1588                      ITG *nactdoh,ITG *ipkonf,char *lakonf,ITG *ielmatf,
1589                      ITG *ielmat,ITG *ielorienf,ITG *ielorien,ITG *norien));
1590 
1591 void precontact(ITG *ncont, ITG *ntie, char *tieset, ITG *nset, char *set,
1592         ITG *istartset, ITG *iendset, ITG *ialset, ITG *itietri,
1593         char *lakon, ITG *ipkon, ITG *kon, ITG *koncont, ITG *ne,
1594         double *cg, double *straight, double *co,double *vold,
1595         ITG *istep,ITG *iinc,ITG *iit,ITG *itiefac,
1596         ITG *islavsurf, ITG *islavnode, ITG *imastnode,
1597         ITG *nslavnode, ITG *nmastnode,ITG *imastop,ITG *mi,
1598         ITG *ipe, ITG *ime,double *tietol,ITG *iflagact,
1599         ITG *nintpoint,double **pslavsurfp,double *xmastnor,double *cs,
1600         ITG *mcs,ITG *ics,double *clearini,ITG *nslavs);
1601 
1602 void prediction(double *uam,ITG *nmethod,double *bet,double *gam,double *dtime,
1603                ITG *ithermal,ITG *nk,double *veold,double *accold,double *v,
1604                ITG *iinc,ITG *idiscon,double *vold,ITG *nactdof,ITG *mi);
1605 
1606 void prediction_em(double *uam,ITG *nmethod,double *bet,double *gam,double *dtime,
1607                ITG *ithermal,ITG *nk,double *veold,double *v,
1608                ITG *iinc,ITG *idiscon,double *vold,ITG *nactdof,ITG *mi);
1609 
1610 void preiter(double *ad,double **aup,double *b,ITG **icolp,ITG **irowp, 
1611              ITG *neq,ITG *nzs,ITG *isolver,ITG *iperturb);
1612 
1613 void FORTRAN(printout,(char *set,ITG *nset,ITG *istartset,ITG *iendset,
1614              ITG *ialset,ITG *nprint,char *prlab,char *prset,
1615              double *v,double *t1,double *fn,ITG *ipkon,
1616              char *lakon,double *stx,double *eei,double *xstate,
1617              double *ener,ITG *mi,ITG *nstate_,ITG *ithermal,
1618              double *co,ITG *kon,double *qfx,double *ttime,double *trab,
1619              ITG *inotr,ITG *ntrans,double *orab,ITG *ielorien,
1620              ITG *norien,ITG *nk,ITG *ne,ITG *inum,char *filab,double *vold,
1621              ITG *ikin,ITG *ielmat,double *thicke,double *eme,ITG *islavsurf,
1622              ITG *mortar));
1623 
1624 void FORTRAN(printoutfluid,(char *set,ITG *nset,ITG *istartset,ITG *iendset,
1625              ITG *ialset,ITG *nprint,char *prlab,char *prset,
1626              double *v,double *t1,double *fn,ITG *ipkon,
1627              char *lakon,double *stx,double *eei,double *xstate,
1628              double *ener,ITG *mi,ITG *nstate_,ITG *ithermal,
1629              double *co,ITG *kon,double *qfx,double *ttime,double *trab,
1630              ITG *inotr,ITG *ntrans,double *orab,ITG *ielorien,
1631              ITG *norien,ITG *nk,ITG *ne,ITG *inum,char *filab,double *vold,
1632              ITG *ielmat,double *thicke,double *eme,double *vcontu,
1633              double *physcon,ITG *nactdoh,ITG *ielpropf,double *prop));
1634 
1635 void FORTRAN(printoutface,(double *co,double *rhcon,ITG *nrhcon,ITG *ntmat_,
1636             double *vold,double *shcon,ITG *nshcon,double *cocon,
1637             ITG *ncocon,ITG *icompressible,ITG *istartset,ITG *iendset,
1638             ITG *ipkon,char *lakon,ITG *kon,ITG *ialset,char *prset,
1639             double *timef,ITG *nset,char *set,ITG *nprint,char *prlab,
1640             ITG *ielmat,ITG *mi));
1641 
1642 int pthread_create (pthread_t *thread_id, const pthread_attr_t *attributes,
1643                     void *(*thread_function)(void *), void *arguments);
1644 
1645 int pthread_join (pthread_t thread, void **status_ptr);
1646 
1647 void radcyc(ITG *nk,ITG *kon,ITG *ipkon,char *lakon,ITG *ne,
1648             double *cs,ITG *mcs,ITG *nkon,ITG *ialset,ITG *istartset,
1649             ITG *iendset,ITG **kontrip,ITG *ntri,
1650             double **cop,double **voldp,ITG *ntrit,ITG *inocs,ITG *mi);
1651 
1652 void radflowload(ITG *itg,ITG *ieg,ITG *ntg,ITG *ntr,double *adrad,
1653        double *aurad,
1654        double *bcr,ITG *ipivr,double *ac,double *bc,ITG *nload,
1655        char *sideload,ITG *nelemload,double *xloadact,char *lakon,ITG *ipiv,
1656        ITG *ntmat_,double *vold,double *shcon,ITG *nshcon,ITG *ipkon,
1657        ITG *kon,double *co,ITG *kontri,ITG *ntri,
1658        ITG *nloadtr,double *tarea,double *tenv,double *physcon,double *erad,
1659        double **adviewp,double **auviewp,
1660        ITG *nflow,ITG *ikboun,double *xboun,ITG *nboun,ITG *ithermal,
1661        ITG *iinc,ITG *iit,double *cs,ITG *mcs,ITG *inocs,ITG *ntrit,
1662        ITG *nk,double *fenv,ITG *istep,double *dtime,double *ttime,
1663        double *time,ITG *ilboun,ITG *ikforc,ITG *ilforc,double *xforc,
1664        ITG *nforc,double *cam,ITG *ielmat,ITG *nteq,double *prop,
1665        ITG *ielprop,ITG *nactdog,ITG *nacteq,ITG *nodeboun,ITG *ndirboun,
1666        ITG *network,double *rhcon,ITG *nrhcon,
1667        ITG *ipobody,ITG *ibody,double *xbody,ITG *nbody,ITG *iviewfile,
1668        char *jobnamef,double *ctrl,double *xloadold,double *reltime,
1669        ITG *nmethod,char *set,ITG *mi,ITG * istartset,ITG* iendset,
1670        ITG *ialset,ITG *nset,ITG *ineighe,ITG *nmpc,ITG *nodempc,
1671        ITG *ipompc,double *coefmpc,char *labmpc,ITG *iemchange,ITG *nam,
1672        ITG *iamload,ITG *jqrad,ITG *irowrad,ITG *nzsrad,ITG *icolrad,
1673        ITG *ne,ITG *iaxial);
1674 
1675 void FORTRAN (radmatrix,(ITG *ntr,double *adrad,double *aurad,double *bcr,
1676        char *sideload,ITG *nelemload,double *xloadact,char *lakon,
1677        double *vold,ITG *ipkon,ITG *kon,double *co,ITG *nloadtr,
1678        double *tarea,double *tenv,double *physcon,double *erad,
1679        double *adview,double *auview,ITG *ithermal,ITG *iinc,
1680        ITG *iit,double *fenv,ITG *istep,
1681        double *dtime,double *ttime,double *time,ITG *iviewfile,
1682        double *xloadold,double *reltime,ITG *nmethod,
1683        ITG *mi,ITG *iemchange,ITG *nam,ITG *iamload,ITG *jqrad,
1684        ITG *irowrad,ITG *nzsrad));
1685 
1686 void FORTRAN (radresult,(ITG *ntr,double *xloadact,double *bcr,
1687        ITG *nloadtr,double *tarea,double * tenv,double *physcon,double *erad,
1688        double *auview,double *fenv,ITG *irowrad,ITG *jqrad, 
1689        ITG *nzsrad,double *q));
1690 
1691 void FORTRAN(readforce,(double *zc,ITG *neq,ITG *nev,ITG *nactdof,
1692              ITG *ikmpc,ITG *nmpc,ITG *ipompc,ITG *nodempc,ITG *mi, 
1693              double *coefmpc,char *jobnamec,double *aa,
1694              ITG *igeneralizedforce));
1695 
1696 void readinput(char *jobnamec,char **inpcp,ITG *nline,ITG *nset,ITG *ipoinp,
1697         ITG **inpp,ITG **ipoinpcp,ITG *ithermal); 
1698 
1699 void FORTRAN(readview,(ITG *ntr,double *adview,double *auview,double *fenv,
1700              ITG *nzsrad,ITG *ithermal,char *jobnamef));
1701 
1702 void FORTRAN(rearrange,(double *au,ITG *irow,ITG *icol,ITG *ndim,ITG *neq));
1703 
1704 void FORTRAN(rectcyl,(double *co,double *v,double *fn,double *stn,
1705                       double *qfn,double *een,double *cs,ITG *nk, 
1706                       ITG *icntrl,double *t,char *filab,ITG *imag, 
1707                       ITG *mi,double *emn));
1708 
1709 void FORTRAN(rectcylexp,(double *co,double *v,double *fn,double *stn,
1710                       double *qfn,double *een,double *cs,ITG *nkt, 
1711                       ITG *icntrl,double *t,char *filab,ITG *imag,ITG *mi,
1712                       ITG *iznode,ITG *nznode,ITG *nsectors,ITG *nk,
1713                       double *emn));
1714 
1715 void FORTRAN(rectcyltrfm,(ITG *node,double *co,double *cs,ITG *cntrl,
1716              double *fin,double *fout));
1717 
1718 void FORTRAN(rectcylvi,(double *co,double *v,double *fn,double *stn,
1719                       double *qfn,double *een,double *cs,ITG *nk, 
1720                       ITG *icntrl,double *t,char *filab,ITG *imag,ITG *mi,
1721                       double *emn));
1722 
1723 void remastruct(ITG *ipompc,double **coefmpcp,ITG **nodempcp,ITG *nmpc,
1724               ITG *mpcfree,ITG *nodeboun,ITG *ndirboun,ITG *nboun,
1725               ITG *ikmpc,ITG *ilmpc,ITG *ikboun,ITG *ilboun,
1726               char *labmpc,ITG *nk,
1727               ITG *memmpc_,ITG *icascade,ITG *maxlenmpc,
1728               ITG *kon,ITG *ipkon,char *lakon,ITG *ne,
1729               ITG *nactdof,ITG *icol,ITG *jq,ITG **irowp,ITG *isolver,
1730               ITG *neq,ITG *nzs,ITG *nmethod,double **fp,
1731               double **fextp,double **bp,double **aux2p,double **finip,
1732               double **fextinip,double **adbp,double **aubp,ITG *ithermal,
1733               ITG *iperturb,ITG *mass,ITG *mi,ITG *iexpl,ITG *mortar,
1734               char *typeboun,double **cvp,double **cvinip,ITG *iit);
1735 
1736 void remastructar(ITG *ipompc,double **coefmpcp,ITG **nodempcp,ITG *nmpc,
1737               ITG *mpcfree,ITG *nodeboun,ITG *ndirboun,ITG *nboun,
1738               ITG *ikmpc,ITG *ilmpc,ITG *ikboun,ITG *ilboun,
1739               char *labmpc,ITG *nk,
1740               ITG *memmpc_,ITG *icascade,ITG *maxlenmpc,
1741               ITG *kon,ITG *ipkon,char *lakon,ITG *ne,
1742               ITG *nactdof,ITG *icol,ITG *jq,ITG **irowp,ITG *isolver,
1743               ITG *neq,ITG *nzs,ITG *nmethod,ITG *ithermal,
1744               ITG *iperturb,ITG *mass,ITG *mi,ITG *ics,double *cs,
1745               ITG *mcs,ITG *mortar,char *typeboun);
1746 
1747 void remastructem(ITG *ipompc,double **coefmpcp,ITG **nodempcp,ITG *nmpc,
1748               ITG *mpcfree,ITG *nodeboun,ITG *ndirboun,ITG *nboun,
1749               ITG *ikmpc,ITG *ilmpc,ITG *ikboun,ITG *ilboun,
1750               char *labmpc,ITG *nk,
1751               ITG *memmpc_,ITG *icascade,ITG *maxlenmpc,
1752               ITG *kon,ITG *ipkon,char *lakon,ITG *ne,
1753               ITG *nactdof,ITG *icol,ITG *jq,ITG **irowp,ITG *isolver,
1754               ITG *neq,ITG *nzs,ITG *nmethod,double **fp,
1755               double **fextp,double **bp,double **aux2p,double **finip,
1756               double **fextinip,double **adbp,double **aubp,ITG *ithermal,
1757               ITG *iperturb,ITG *mass,ITG *mi,ITG *ielmat,double *elcon,
1758               ITG *ncmat_,ITG *ntmat_,ITG *inomat);
1759 
1760 void FORTRAN(restartshort,(ITG *nset,ITG *nload,ITG *nbody,ITG *nforc,
1761     ITG *nboun,
1762     ITG *nk,ITG *ne,ITG *nmpc,ITG *nalset,ITG *nmat,ITG *ntmat,ITG *npmat,
1763     ITG *norien,ITG *nam,ITG *nprint,ITG *mint,ITG *ntrans,ITG *ncs,
1764     ITG *namtot,ITG *ncmat,ITG *memmpc,ITG *ne1d,ITG *ne2d,ITG *nflow,
1765     char *set,ITG *meminset,ITG *rmeminset,char *jobnamec,ITG *irestartstep,
1766     ITG *icntrl,ITG *ithermal,ITG *nener,ITG *nstate_,ITG *ntie,ITG *nslavs,
1767     ITG *nkon,ITG *mcs,ITG *nprop,ITG *mortar,ITG *ifacecount,ITG *nintpoint,
1768     ITG *infree));
1769 
1770 void FORTRAN(restartwrite,(ITG *istep,ITG *nset,ITG*nload,ITG *nforc, 
1771   ITG * nboun,ITG *nk,ITG *ne,ITG *nmpc,ITG *nalset,ITG *nmat,ITG *ntmat_, 
1772   ITG *npmat_,ITG *norien,ITG *nam,ITG *nprint,ITG *mi, 
1773   ITG *ntrans,ITG *ncs_,ITG *namtot_,ITG *ncmat_,ITG *mpcend, 
1774   ITG *maxlenmpc,ITG *ne1d, 
1775   ITG *ne2d,ITG *nflow,ITG *nlabel,ITG *iplas,ITG *nkon,ITG *ithermal, 
1776   ITG *nmethod,ITG *iperturb,ITG *nstate_,ITG *nener,char *set, 
1777   ITG *istartset,ITG *iendset,ITG *ialset,double *co,ITG *kon,ITG *ipkon, 
1778   char *lakon,ITG *nodeboun,ITG *ndirboun,ITG *iamboun,double *xboun, 
1779   ITG *ikboun,ITG *ilboun,ITG *ipompc,ITG *nodempc,double *coefmpc, 
1780   char *labmpc,ITG *ikmpc,ITG *ilmpc,ITG *nodeforc,ITG *ndirforc, 
1781   ITG *iamforc,double *xforc,ITG *ikforc,ITG *ilforc,ITG *nelemload, 
1782   ITG *iamload,char *sideload,double *xload,  
1783   double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,double *alcon, 
1784   ITG *nalcon,double *alzero,double *plicon,ITG *nplicon,double *plkcon, 
1785   ITG *nplkcon,char *orname,double *orab,ITG *ielorien,double *trab, 
1786   ITG *inotr,char *amname,double *amta,ITG *namta,double *t0,double *t1, 
1787   ITG *iamt1,double *veold,ITG *ielmat,char *matname, 
1788   char *prlab,char *prset,char *filab,double *vold, 
1789   ITG *nodebounold,ITG *ndirbounold,double *xbounold,double *xforcold, 
1790   double *xloadold,double *t1old,double *eme,ITG *iponor, 
1791   double *xnor,ITG *knor,double *thicke,double *offset, 
1792   ITG *iponoel,ITG *inoel,ITG *rig, 
1793   double *shcon,ITG *nshcon,double *cocon,ITG *ncocon, 
1794   ITG *ics,double *sti,double *ener,double *xstate, 
1795   char *jobnamec,ITG *infree,double *prestr,ITG *iprestr,
1796   char *cbody,ITG *ibody,double *xbody,ITG *nbody,double *xbodyold,
1797   double *ttime,double *qaold,double *cs,
1798   ITG *mcs,char *output,double *physcon,double *ctrl,char *typeboun,
1799   double *fmpc,char *tieset,ITG *ntie,double *tietol,ITG *nslavs,
1800   double *t0g,double *t1g,ITG *nprop,ITG *ielprop,double *prop,ITG *mortar,
1801   ITG *nintpoint,ITG *ifacecount,ITG *islavsurf,double *pslavsurf,
1802   double *clearini));
1803 
1804 void FORTRAN(resultnet,(ITG *itg,ITG *ieg,ITG *ntg,
1805                         double *bc,ITG *nload,char *sideload,
1806                         ITG *nelemload,double *xloadact,char *lakon,
1807                         ITG *ntmat_,double *v,double *shcon,ITG *nshcon,
1808                         ITG *ipkon,ITG *kon,double *co,ITG *nflow,
1809                         ITG *iinc,ITG *istep,
1810                         double *dtime,double *ttime,double *time,
1811                         ITG *ikforc,ITG *ilforc,
1812                         double *xforcact,ITG *nforc,
1813                         ITG *ielmat,ITG *nteq,double *prop,
1814                         ITG *ielprop,ITG *nactdog,ITG *nacteq,ITG *iin,
1815                         double *physcon,double *camt,double *camf,
1816                         double *camp,double *rhcon,ITG *nrhcon,
1817                         ITG *ipobody,ITG *ibody,double *xbody,ITG *nbody,
1818                         double *dtheta,double *vold,double *xloadold,
1819                         double *reltime,ITG *nmethod,char *set,ITG *mi,
1820                         ITG *ineighe,double *cama,double *vamt,
1821                         double *vamf,double *vamp,double *vama,
1822                         ITG *nmpc,ITG *nodempc,ITG *ipompc,double *coefmpc,
1823                         char *labmpc,ITG *iaxial));
1824 
1825 void results(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1826              ITG *ne,double *v,double *stn,ITG *inum, 
1827              double *stx,
1828              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1829              double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1830              ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1831              double *t0,double *t1,ITG *ithermal,double *prestr, 
1832              ITG *iprestr,char *filab,double *eme,double *emn,
1833              double *een,ITG *iperturb,double *f,double *fn,ITG *nactdof,
1834              ITG *iout,double *qa,
1835              double *vold,double *b,ITG *nodeboun,ITG *ndirboun,
1836              double *xboun,ITG *nboun,ITG *ipompc,ITG *nodempc,
1837              double *coefmpc,char *labmpc,ITG *nmpc,ITG *nmethod, 
1838              double *vmax,ITG *neq,double *veold,double *accold,
1839              double *beta,double *gamma,double *dtime,double *time,
1840              double *ttime,double *plicon,
1841              ITG *nplicon,double *plkcon,ITG *nplkcon,
1842              double *xstateini,double *xstiff,double *xstate,ITG *npmat_,
1843              double *epl,char *matname,ITG *mi,ITG *ielas,
1844              ITG *icmd,ITG *ncmat_,ITG *nstate_,double *stiini,
1845              double *vini,ITG *ikboun,ITG *ilboun,double *ener,
1846              double *enern,double *emeini,double *xstaten,double *eei,
1847              double *enerini,double *cocon,ITG *ncocon,char *set, 
1848              ITG *nset,ITG *istartset,
1849              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
1850              char *prset,double *qfx,double *qfn,double *trab,
1851              ITG *inotr,ITG *ntrans,double *fmpc,ITG *nelemload,
1852              ITG *nload,ITG *ikmpc,ITG *ilmpc,ITG *istep,ITG *iinc,
1853              double *springarea,double *reltime,ITG *ne0,double *xforc,
1854              ITG *nforc,double *thicke,
1855              double *shcon,ITG *nshcon,char *sideload,double *xload,
1856              double *xloadold,ITG *icfd,ITG *inomat,double *pslavsurf,
1857              double *pmastsurf,ITG *mortar,ITG *islavact,double *cdn,
1858              ITG *islavnode,ITG *nslavnode,ITG *ntie,double *clearini,
1859              ITG *islavsurf,ITG *ielprop,double *prop);
1860 
1861 void FORTRAN(resultsem,(double *co,ITG *kon,ITG *ipkon,char *lakon,
1862              double *v,double *elcon,ITG *nelcon,ITG *ielmat,ITG *ntmat_,
1863              double *vold,double *dtime,char *matname,ITG *mi,ITG *ncmat_,
1864              ITG *nea,ITG *neb,double *sti,double *alcon,
1865              ITG *nalcon,double *h0,ITG *istartset,ITG *iendset,ITG *ialset,
1866              ITG *iactive,double *fn));
1867 
1868 void *resultsemmt(ITG *i);
1869 
1870 void  FORTRAN(resultsforc,(ITG *nk,double *f,double *fn,ITG *nactdof,
1871        ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,ITG *nmpc,
1872        ITG *mi,double *fmpc,ITG *calcul_fn,
1873        ITG *calcul_f));
1874 
1875 void  FORTRAN(resultsforc_em,(ITG *nk,double *f,double *fn,ITG *nactdof,
1876        ITG *ipompc,ITG *nodempc,double *coefmpc,char *labmpc,ITG *nmpc,
1877        ITG *mi,double *fmpc,ITG *calcul_fn,ITG *calcul_f,ITG *inomat));
1878 
1879 void FORTRAN(resultsini,(ITG *nk,double *v,ITG *ithermal,char *filab,
1880        ITG *iperturb,double *f,double *fn,ITG *nactdof,ITG *iout,
1881        double *qa,double *vold,double *b,ITG *nodeboun,ITG *ndirboun,
1882        double *xboun,ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc,
1883        char *labmpc,ITG *nmpc,ITG *nmethod,double *cam,ITG *neq,
1884        double *veold,double *accold,double *bet,double *gam,double *dtime,
1885        ITG *mi,double *vini,ITG *nprint,char *prlab,ITG *intpointvar,
1886        ITG *calcul_fn,ITG *calcul_f,ITG *calcul_qa,ITG *calcul_cauchy,
1887        ITG *iener,ITG *ikin,ITG *intpointvart,double *xforc,ITG *nforc));
1888 
1889 void FORTRAN(resultsini_em,(ITG *nk,double *v,ITG *ithermal,char *filab,
1890        ITG *iperturb,double *f,double *fn,ITG *nactdof,ITG *iout,
1891        double *qa,double *b,ITG *nodeboun,ITG *ndirboun,
1892        double *xboun,ITG *nboun,ITG *ipompc,ITG *nodempc,double *coefmpc,
1893        char *labmpc,ITG *nmpc,ITG *nmethod,double *cam,ITG *neq,
1894        double *veold,double *dtime,
1895        ITG *mi,double *vini,ITG *nprint,char *prlab,ITG *intpointvar,
1896        ITG *calcul_fn,ITG *calcul_f,ITG *calcul_qa,ITG *calcul_cauchy,
1897        ITG *iener,ITG *ikin,ITG *intpointvart,double *xforc,ITG *nforc));
1898 
1899 void FORTRAN(resultsmech,(double *co,ITG *kon,ITG *ipkon,char *lakon,ITG *ne,
1900           double *v,double *stx,double *elcon,ITG *nelcon,double *rhcon,
1901           ITG *nrhcon,double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1902           ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,double *t0,
1903           double *t1,ITG *ithermal,double *prestr,ITG *iprestr,double *eme,
1904           ITG *iperturb,double *fn,ITG *iout,double *qa,double *vold,
1905           ITG *nmethod,double *veold,double *dtime,double *time,
1906           double *ttime,double *plicon,ITG *nplicon,double *plkcon,
1907           ITG *nplkcon,double *xstateini,double *xstiff,double *xstate,
1908           ITG *npmat_,char *matname,ITG *mi,ITG *ielas,ITG *icmd,ITG *ncmat_,
1909           ITG *nstate_,double *stiini,double *vini,double *ener,double *eei,
1910           double *enerini,ITG *istep,ITG *iinc,double *springarea,
1911           double *reltime,ITG *calcul_fn,ITG *calcul_qa,ITG *calcul_cauchy,
1912           ITG *iener,ITG *ikin,ITG *nal,ITG *ne0,double *thicke,
1913           double *emeini,double *pslavsurf,double *pmastsurf,ITG *mortar,
1914           double *clearini,ITG *nea,ITG *neb,ITG *ielprop,double *prop));
1915 
1916 void *resultsmechmt(ITG *i);
1917 
1918 void  FORTRAN(resultsprint,(double *co,ITG *nk,ITG *kon,ITG *ipkon,
1919        char *lakon,ITG *ne,double *v,double *stn,ITG *inum,double *stx,
1920        ITG *ielorien,ITG *norien,double *orab,double *t1,ITG *ithermal,
1921        char *filab,double *een,ITG *iperturb,double *fn,ITG *nactdof,
1922        ITG *iout,double *vold,ITG *nodeboun,ITG *ndirboun,ITG *nboun,
1923        ITG *nmethod,double *ttime,double *xstate,double *epn,ITG *mi,
1924        ITG *nstate_,double *ener,double *enern,double *xstaten,double *eei,
1925        char *set,ITG *nset,ITG *istartset,ITG *iendset,ITG *ialset,ITG *nprint,
1926        char *prlab,char *prset,double *qfx,double *qfn,double *trab,ITG *inotr,
1927        ITG *ntrans,ITG *nelemload,ITG *nload,ITG *ikin,ITG *ielmat,
1928        double *thicke,double *eme,double *emn,double *rhcon,ITG *nrhcon,
1929        double *shcon,ITG *nshcon,double *cocon,ITG *ncocon,ITG *ntmat_,
1930        char *sideload,ITG *icfd,ITG *inomat,double *pslavsurf,
1931        ITG *islavact,double *cdn,ITG *mortar,ITG *islavnode,ITG *nslavnode,
1932        ITG *ntie,ITG *islavsurf,double *time,ITG *ielprop,double *prop,
1933        double *veold));
1934 
1935 void FORTRAN(resultstherm,(double *co,ITG *kon,ITG *ipkon,
1936        char *lakon,double *v,
1937        double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,ITG *ielmat,
1938        ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,double *t0,
1939        ITG *iperturb,double *fn,double *shcon,ITG *nshcon,ITG *iout,
1940        double *qa,double *vold,ITG *ipompc,ITG *nodempc,
1941        double *coefmpc,ITG *nmpc,double *dtime,
1942        double *time,double *ttime,double *plkcon,ITG *nplkcon,double *xstateini,
1943        double *xstiff,double *xstate,ITG *npmat_,char *matname,
1944        ITG *mi,ITG *ncmat_,ITG *nstate_,double *cocon,ITG *ncocon,
1945        double *qfx,ITG *ikmpc,ITG *ilmpc,ITG *istep,
1946        ITG *iinc,double *springarea,ITG *calcul_fn,ITG *calcul_qa,ITG *nal,
1947        ITG *nea,ITG *neb,ITG *ithermal,ITG *nelemload,ITG *nload,
1948        ITG *nmethod,double *reltime,char *sideload,double *xload,
1949        double *xloadold,double *pslavsurf,double *pmastsurf,ITG *mortar,
1950        double *clearini,double *plicon,ITG *nplicon,ITG *ielprop,double *prop));
1951 
1952 void *resultsthermemmt(ITG *i);
1953 
1954 void *resultsthermmt(ITG *i);
1955 
1956 void resultsinduction(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
1957              ITG *ne,double *v,double *stn,ITG *inum, 
1958              double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
1959              double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
1960              ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
1961              double *t0,double *t1,ITG *ithermal,double *prestr, 
1962              ITG *iprestr,char *filab,double *eme,double *emn,
1963              double *een,ITG *iperturb,double *f,double *fn,ITG *nactdof,
1964              ITG *iout,double *qa,
1965              double *vold,double *b,ITG *nodeboun,ITG *ndirboun,
1966              double *xboun,ITG *nboun,ITG *ipompc,ITG *nodempc,
1967              double *coefmpc,char *labmpc,ITG *nmpc,ITG *nmethod, 
1968              double *vmax,ITG *neq,double *veold,double *accold,
1969              double *beta,double *gamma,double *dtime,double *time,
1970              double *ttime,double *plicon,
1971              ITG *nplicon,double *plkcon,ITG *nplkcon,
1972              double *xstateini,double *xstiff,double *xstate,ITG *npmat_,
1973              double *epl,char *matname,ITG *mi,ITG *ielas,
1974              ITG *icmd,ITG *ncmat_,ITG *nstate_,double *sti,
1975              double *vini,ITG *ikboun,ITG *ilboun,double *ener,
1976              double *enern,double *emeini,double *xstaten,double *eei,
1977              double *enerini,double *cocon,ITG *ncocon,char *set, 
1978              ITG *nset,ITG *istartset,
1979              ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
1980              char *prset,double *qfx,double *qfn,double *trab,
1981              ITG *inotr,ITG *ntrans,double *fmpc,ITG *nelemload,
1982              ITG *nload,ITG *ikmpc,ITG *ilmpc,ITG *istep,ITG *iinc,
1983              double *springarea,double *reltime,ITG *ne0,double *xforc,
1984              ITG *nforc,double *thicke,
1985              double *shcon,ITG *nshcon,char *sideload,double *xload,
1986              double *xloadold,ITG *icfd,ITG *inomat,double *h0,
1987              ITG *islavnode,ITG *nslavnode,ITG *ntie,ITG *ielprop,
1988              double *prop,ITG *iactive);
1989 
1990 void FORTRAN(rhsp,(ITG *ne,char *lakon,ITG *nactdoh,ITG *ipnei,
1991              ITG *neifa,ITG *neiel,double *vfa,double *area,double *adfa,
1992              double *xlet,double *cosa,double *volume,double *au,double *ad,
1993              ITG *jq,ITG *irow,double *ap,ITG *ielfa,ITG *ifabou,
1994              double *xle,double *b,double *xxn,ITG *compressible,
1995              ITG *neq,ITG *nzs,double *hfa,double *bp,
1996              ITG *neij,double *xxi,double *gradpel,double *xlen));
1997 
1998 void FORTRAN(shape3tri,(double *xi,double *et,double *xl,double *xsj,
1999                       double *xs,double *shp,ITG *iflag));
2000 
2001 void FORTRAN(shape4q,(double *xi,double *et,double *xl,double *xsj,
2002                       double *xs,double *shp,ITG *iflag));
2003 
2004 void FORTRAN(shape4tet,(double *xi,double *et,double *ze,double *xl,
2005              double *xsj,double *shp,ITG *iflag));
2006 
2007 void FORTRAN(shape6tri,(double *xi,double *et,double *xl,double *xsj,
2008                       double *xs,double *shp,ITG *iflag));
2009 
2010 void FORTRAN(shape6w,(double *xi,double *et,double *ze,double *xl,
2011              double *xsj,double *shp,ITG *iflag));
2012 
2013 void FORTRAN(shape8h,(double *xi,double *et,double *ze,double *xl,
2014              double *xsj,double *shp,ITG *iflag));
2015 
2016 void FORTRAN(shape8q,(double *xi,double *et,double *xl,double *xsj,
2017                       double *xs,double *shp,ITG *iflag));
2018 
2019 void FORTRAN(shape10tet,(double *xi,double *et,double *ze,double *xl,
2020              double *xsj,double *shp,ITG *iflag));
2021 
2022 void FORTRAN(shape15w,(double *xi,double *et,double *ze,double *xl,
2023              double *xsj,double *shp,ITG *iflag));
2024 
2025 void FORTRAN(shape20h,(double *xi,double *et,double *ze,double *xl,
2026              double *xsj,double *shp,ITG *iflag));
2027 
2028 void FORTRAN(rhs,(double *co,ITG *nk,ITG *kon,ITG *ipkon,char *lakon,
2029                ITG *ne,ITG *ipompc,ITG *nodempc,double *coefmpc, 
2030                ITG *nmpc,ITG *nodeforc,ITG *ndirforc,
2031                double *xforc,ITG *nforc,ITG *nelemload,char *sideload,
2032                double *xload,ITG *nload,double *xbody,ITG *ipobody,
2033                ITG *nbody,double *cgr,double *bb,ITG *nactdof,ITG *neq, 
2034                ITG *nmethod,ITG *ikmpc,ITG *ilmpc,
2035                double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
2036                double *alcon,ITG *nalcon,double *alzero,ITG *ielmat,
2037                ITG *ielorien,ITG *norien,double *orab,ITG *ntmat_,
2038                double *t0,double *t1,ITG *ithermal, 
2039                ITG *iprestr,double *vold,ITG *iperturb,ITG *iexpl,
2040                double *plicon,ITG *nplicon,double *plkcon,ITG *nplkcon,
2041                ITG *npmat_,double *ttime,double *time,ITG *istep,
2042                ITG *iinc,double *dtime,double *physcon,ITG *ibody,
2043                double *xbodyold,double *reltime,double *veold,
2044                char *matname,ITG *mi,ITG *ikactmech,ITG *nactmech,
2045                ITG *ielprop,double *prop));
2046        
2047 void FORTRAN(slavintpoints,(ITG *ntie,ITG *itietri,ITG *ipkon,
2048         ITG *kon,char *lakon,double *straight,
2049         ITG *nintpoint,ITG *koncont,double *co,double *vold,double *xo,
2050         double *yo,double *zo,double *x,double *y,double *z,ITG *nx,
2051         ITG *ny,ITG *nz,ITG *islavsurf,
2052         ITG *islavnode,ITG *nslavnode,ITG *imastop,
2053         ITG *mi,ITG *ncont,ITG *ipe,ITG *ime,double *pslavsurf,
2054         ITG *i,ITG *l,ITG *ntri));
2055 
2056 void FORTRAN(sortev,(ITG *nev,ITG *nmd,double *eigxx,ITG *cyclicsymmetry,
2057                      double *xx,double *eigxr,ITG *pev,
2058                      ITG *istartnmd,ITG *iendnmd,double *aa,double *bb));
2059 
2060 void FORTRAN(spcmatch,(double *xboun,ITG *nodeboun,ITG *ndirboun,ITG *nboun,
2061                double *xbounold,ITG *nodebounold,ITG *ndirbounold,
2062                ITG *nbounold,ITG *ikboun,ITG *ilboun,double *vold,
2063                double *reorder,ITG *nreorder,ITG *mi));
2064 
2065 void FORTRAN(splitline,(char *text,char *textpart,ITG *n));
2066 
2067 void spooles(double *ad,double *au,double *adb,double *aub,
2068              double *sigma,double *b,
2069              ITG *icol,ITG *irow,ITG *neq,ITG *nzs,ITG *symmtryflag,
2070              ITG *inputformat,ITG *nzs3);
2071 
2072 void FORTRAN(springforc_n2f,(double *xl,ITG *konl,double *vl,ITG *imat,
2073              double *elcon,ITG *nelcon,double *elas,double *fnl,ITG *ncmat_,
2074              ITG *ntmat_,ITG *nope,char *lakonl,double *t1l,ITG *kode,
2075              double *elconloc,double *plicon,ITG *nplicon,ITG *npmat_,
2076              double *senergy,ITG *iener,double *cstr,ITG *mi,
2077              double *springarea,ITG *nmethod,ITG *ne0,ITG *nstate_,
2078              double *xstateini,double *xstate,double *reltime,ITG *ielas));
2079 
2080 void FORTRAN(springstiff_n2f,(double *xl,double *elas,ITG *konl,double *voldl,
2081              double *s,ITG *imat,double *elcon,ITG *nelcon,ITG *ncmat_,
2082              ITG *ntmat_,ITG *nope,char *lakonl,double *t1l,ITG *kode,
2083              double *elconloc,double *plicon,ITG *nplicon,ITG *npmat_,
2084              ITG *iperturb,double *springarea,ITG *nmethod,ITG *mi,ITG *ne0,
2085              ITG *nstate_,double *xstateini,double *xstate,double *reltime,
2086              ITG *nasym));
2087 
2088 void steadystate(double **co,ITG *nk,ITG **kon,ITG **ipkon,char **lakon,ITG *ne, 
2089           ITG **nodeboun,ITG **ndirboun,double **xboun,ITG *nboun,
2090           ITG **ipompcp,ITG **nodempcp,double **coefmpcp,char **labmpcp,ITG *nmpc, 
2091           ITG *nodeforc,ITG *ndirforc,double *xforc,ITG *nforc, 
2092           ITG *nelemload,char *sideload,double *xload,
2093           ITG *nload, 
2094           ITG **nactdof,ITG *neq,ITG *nzl,ITG *icol,ITG *irow, 
2095           ITG *nmethod,ITG **ikmpcp,ITG **ilmpcp,ITG **ikboun, 
2096           ITG **ilboun,
2097           double *elcon,ITG *nelcon,double *rhcon,ITG *nrhcon,
2098           double *cocon,ITG *ncocon,
2099           double *alcon,ITG *nalcon,double *alzero,ITG **ielmat,
2100           ITG **ielorien,ITG *norien,double *orab,ITG *ntmat_,
2101           double **t0, 
2102           double **t1,ITG *ithermal,double *prestr,ITG *iprestr, 
2103           double **voldp,ITG *iperturb,double *sti,ITG *nzs, 
2104           double *timepar,double *xmodal,
2105           double **veoldp,char *amname,double *amta,
2106           ITG *namta,ITG *nam,ITG *iamforc,ITG *iamload,
2107           ITG **iamt1,ITG *jout,ITG *kode,char *filab,
2108           double **emep,double *xforcold,double *xloadold,
2109           double **t1old,ITG **iamboun,
2110           double **xbounold,ITG *iexpl,double *plicon,ITG *nplicon,
2111           double *plkcon,ITG *nplkcon,
2112           double *xstate,ITG *npmat_,char *matname,ITG *mi,
2113           ITG *ncmat_,ITG *nstate_,double **enerp,char *jobnamec,
2114           double *ttime,char *set,ITG *nset,ITG *istartset,
2115           ITG *iendset,ITG *ialset,ITG *nprint,char *prlab,
2116           char *prset,ITG *nener,double *trab, 
2117           ITG **inotr,ITG *ntrans,double **fmpcp,char *cbody,ITG *ibody,
2118           double *xbody,ITG *nbody,double *xbodyold,ITG *istep,
2119           ITG *isolver,ITG *jq,char *output,ITG *mcs,ITG *nkon,
2120           ITG *ics,double *cs,ITG *mpcend,double *ctrl,
2121           ITG *ikforc,ITG *ilforc,double *thicke,ITG *nmat,
2122           char *typeboun,ITG *ielprop,double *prop);
2123 
2124 void FORTRAN(stop,());
2125 
2126 void storecontactdof(ITG *nope,ITG *nactdof,ITG *mt,ITG *konl, 
2127           ITG **ikactcontp, 
2128           ITG *nactcont,ITG *nactcont_,double *bcont,double *fnl, 
2129           ITG *ikmpc,ITG *nmpc,ITG *ilmpc,ITG *ipompc,ITG *nodempc, 
2130           double *coefmpc);
2131 
2132 void FORTRAN(storeresidual,(ITG *nactdof,double *b,double *fn,char *filab,
2133              ITG *ithermal,