c@a
c@versb
C-----------------------------------------------------------------------
C
CVERS                  Code_Saturne version 1.3
C                      ------------------------
C
C     This file is part of the Code_Saturne Kernel, element of the
C     Code_Saturne CFD tool.
C 
C     Copyright (C) 1998-2007 EDF S.A., France
C
C     contact: saturne-support@edf.fr
C 
C     The Code_Saturne Kernel is free software; you can redistribute it
C     and/or modify it under the terms of the GNU General Public License
C     as published by the Free Software Foundation; either version 2 of
C     the License, or (at your option) any later version.
C 
C     The Code_Saturne Kernel is distributed in the hope that it will be
C     useful, but WITHOUT ANY WARRANTY; without even the implied warranty
C     of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
C     GNU General Public License for more details.
C 
C     You should have received a copy of the GNU General Public License
C     along with the Code_Saturne Kernel; if not, write to the
C     Free Software Foundation, Inc.,
C     51 Franklin St, Fifth Floor,
C     Boston, MA  02110-1301  USA
C
C-----------------------------------------------------------------------
c@verse
C                              optcal.h
C***********************************************************************
C
C DEFINITION DES EQUATIONS
C   ISTAT
C     = 1 PRISE EN COMPTE DU TERME INSTATIONNAIRE
C     = 0 PRISE EN COMPTE DU TERME INSTATIONNAIRE
C   ICONV
C     = 1 PRISE EN COMPTE DE LA CONVECTION
C     = 0 NON PRISE EN COMPTE DE LA CONVECTION
C   IDIFF
C     = 1 PRISE EN COMPTE DE LA DIFFUSION (MOLECULAIRE ET TURBULENTE)
C     = 0 NON PRISE EN COMPTE DE LA DIFFUSION (MOLECULAIRE ET TURBULENTE)
C   IDIFFT : SI IDIFF = 1
C     = 1 PRISE EN COMPTE DE LA DIFFUSION TURBULENTE
C     = 0 NON PRISE EN COMPTE DE LA DIFFUSION TURBULENTE
C
      INTEGER           ISTAT (NVARMX),ICONV (NVARMX),IDIFF (NVARMX),
     &                  IDIFFT(NVARMX)
      COMMON / IEQUAT / ISTAT         ,ICONV         ,IDIFF         ,
     &                  IDIFFT
C
C
C PROPRIETES PHYSIQUES RHO ET VISCL CONSTANTES OU VARIABLES
C    =1 VARIABLE, =0 CONSTANT
C     SERT LORS DES LECTURES DE FICHIER SUITE POUR EVITER D'ECRASER
C     LA VALEUR FOURNIE PAR LA VALEUR DE L'ANCIEN CALCUL.
      INTEGER           IROVAR(NPHSMX),IVIVAR(NPHSMX)
      COMMON / IPHVAR / IROVAR        ,IVIVAR
C
C SCHEMA EN TEMPS
C
C  ISCHTP : INDICATEUR DE SCHEMA EN TEMPS
C     = 2 : ORDRE 2
C     = 1 : STANDARD
C  ISTMPF : INDICATEUR DE SCHEMA FLUX DE MASSE
C     = 2 THETA SCHEMA avec THETA > 0 (= 0.5 : ordre 2)
C     = 0 THETA SCHEMA avec THETA = 0 (explicite)
C     = 1 SCHEMA STANDARD V1.0
C  NTERUP : Nombre d'iteration sur navier-stokes pour couplage vitesse/
C           pression
C  ISNO2T : INDICATEUR D'EXTRAPOLATION DE TERMES SOURCES NAVIER STOKES
C           POUR LE SCHEMA EN TEMPS
C  ISTO2T : INDICATEUR D'EXTRAPOLATION DE TERMES SOURCES DES GRANDEURS
C           TURBULENTES POUR LE SCHEMA EN TEMPS
C  ISSO2T : INDICATEUR D'EXTRAPOLATION DE TERMES SOURCES DES SCALAIRES
C           POUR LE THETA SCHEMA EN TEMPS
C  IROEXT : INDICATEUR D'EXTRAPOLATION DE LA MASSE VOLUMIQUE
C           POUR LE SCHEMA EN TEMPS
C  IVIEXT : INDICATEUR D'EXTRAPOLATION DE LA VISCOSITE TOTALE
C           POUR LE SCHEMA EN TEMPS
C  IVSEXT : INDICATEUR D'EXTRAPOLATION DE LA DIFFUSIVITE SCALAIRE
C
C  INITVI : =1 SI VISCOSITE TOTALE RELUE DANS UN SUITE
C
C  INITRO : =1 SI MASSE VOLUMIQUE RELUE DANS UN SUITE
C
C  ICPEXT : INDICATEUR D'EXTRAPOLATION DE LA MASSE VOLUMIQUE
C           POUR LE SCHEMA EN TEMPS
C
C  INITCP : =1 SI  CHALEUR SPECIFIQUE RELUE DANS UN SUITE
C  INITVS : =1 SI  DIFFUSIVITE SCALAIRE RELUE DANS UN SUITE
C
C  THETAV : PONDERATION ENTRE LES PAS DE TEMPS N ET N+1 POUR LES
C           VARIABLE PRINCIPALES
C     = 1 : SCHEMA EULER IMPLICITE
C     =1/2: SCHEMA CENTRE EN TEMPS
C
C  THETSN : SCHEMA EN TEMPS POUR LES TERMES SOURCES DE NAVIER STOKES
C     = 0 : VISCOSITE SECONDAIRE EXPLICITE
C     =1/2: VISCOSITE SECONDAIRE EXTRAPOLEE EN N+1/2
C     = 1 : VISCOSITE SECONDAIRE EXTRAPOLEE EN N+1
C  THETST : SCHEMA EN TEMPS POUR LES TERMES SOURCES DES GRANDEURS TURBULENTES
C     = 0 : VISCOSITE SECONDAIRE EXPLICITE
C     =1/2: VISCOSITE SECONDAIRE EXTRAPOLEE EN N+1/2
C     = 1 : VISCOSITE SECONDAIRE EXTRAPOLEE EN N+1
C  THETSS : SCHEMA EN TEMPS POUR LES TERMES SOURCES DES SCALAIRES
C     = 0 : VISCOSITE SECONDAIRE EXPLICITE
C     =1/2: VISCOSITE SECONDAIRE EXTRAPOLEE EN N+1/2
C     = 1 : VISCOSITE SECONDAIRE EXTRAPOLEE EN N+1
C  THETFL : SCHEMA EN TEMPS POUR LE FLUX DE MASSE
C     = 0 : FLUX DE MASSE EXPLICITE
C     =1/2: FLUX DE MASSE EXTRAPOLE EN N+1/2
C     = 1 : FLUX DE MASSE EXTRAPOLE EN N+1
C  THETVI : SCHEMA EN TEMPS POUR LA VISCOSITE TOTALE
C     = 0 : VISCOSITE TOTALE EXPLICITE
C     =1/2: VISCOSITE TOTALE EXTRAPOLEE EN N+1/2
C     = 1 : VISCOSITE TOTALE EXTRAPOLEE EN N+1
C  THETRO : SCHEMA EN TEMPS POUR LA MASSE VOLUMIQUE
C     = 0 : MASSE VOLUMIQUE TOTALE EXPLICITE
C     =1/2: MASSE VOLUMIQUE TOTALE EXTRAPOLEE EN N+1/2
C     = 1 : MASSE VOLUMIQUE EXTRAPOLEE EN N+1
C  THETCP : SCHEMA EN TEMPS POUR LA MASSE VOLUMIQUE
C     = 0 : CHALEUR SPECIFIQUE TOTALE EXPLICITE
C     =1/2: CHALEUR SPECIFIQUE TOTALE EXTRAPOLEE EN N+1/2
C     = 1 : CHALEUR SPECIFIQUE EXTRAPOLEE EN N+1
C  EPSUP  : TESTS DE CONVERGENCE DU SYSTEME VITESSE/PRESSION QUAND CE
C           DERNIER EST RESOLU PAR SOUS-ITERATIONS (POINT FIXE)
C  XNRMU  : NORME DE U(k+1) - U(k)
C  XNRMU0 : NORME DE U(0)
C
      INTEGER           NTERUP,
     &                  ISCHTP(NPHSMX), ISTMPF(NPHSMX),
     &                  ISNO2T(NPHSMX), ISTO2T(NPHSMX), ISSO2T(NSCAMX),
     &                  IROEXT(NPHSMX),
     &                  IVIEXT(NPHSMX), ICPEXT(NPHSMX), IVSEXT(NSCAMX),
     &                  INITRO(NPHSMX), INITVI(NPHSMX),
     &                  INITCP(NPHSMX), INITVS(NSCAMX)
      COMMON / IEVTMP / NTERUP,
     &                  ISCHTP        , ISTMPF        ,
     &                  ISNO2T        , ISTO2T        , ISSO2T        ,
     &                  IROEXT        ,
     &                  IVIEXT        , ICPEXT        , IVSEXT        ,
     &                  INITRO        , INITVI        ,
     &                  INITCP        , INITVS
      DOUBLE PRECISION  THETAV(NVARMX), THETSN(NPHSMX), THETST(NPHSMX),
     &                  THETSS(NSCAMX),
     &                  THETFL(NPHSMX), THETRO(NPHSMX), THETVI(NPHSMX),
     &                  THETCP(NPHSMX), THETVS(NSCAMX), EPSUP (NPHSMX),
     &                  XNRMU0(NPHSMX), XNRMU (NPHSMX)
      COMMON / REVTMP / THETAV        , THETSN        , THETST        ,
     &                  THETSS        ,
     &                  THETFL        , THETRO        , THETVI        ,
     &                  THETCP        , THETVS        , EPSUP         ,
     &                  XNRMU0        , XNRMU
C
C SCHEMA CONVECTIF
C
C  BLENCV : 100*(1-BLENCV) EST LE POURCENTAGE D'UPWIND
C     = 1 : PAS D'UPWIND EN DEHORS DU TEST DE PENTE
C     = 0 : UPWIND
C  ISCHCV : SCHEMA CONVECTIF CENTRE OU SECOND ORDER
C     = 1 : CENTRE
C     = 0 : SECOND ORDER
C  ISSTPC : INDICATEUR SANS OU AVEC TEST DE PENTE
C     = 1 : SANS TEST DE PENTE
C     = 0 : AVEC TEST DE PENTE
C
      INTEGER           ISCHCV(NVARMX), ISSTPC(NVARMX)
      COMMON / ICNVSC / ISCHCV        , ISSTPC
      DOUBLE PRECISION                  BLENCV(NVARMX)
      COMMON / RCNVSC /                 BLENCV
C
C
C RECONSTRUCTION DES GRADIENTS ET DES SECONDS MEMBRES
C   IMRGRA : METHODE DE RECONTRUCTION DES GRADIENTS
C     = 0  : RECONTRUCTION 97
C     = 1  : MOINDRES CARRES 99
C     = 2  : MOINDRES CARRES SUPPORT ETENDU COMPLET
C     = 3  : MOINDRES CARRES AVEC SELECTION DU SUPPORT ETENDU
C     = 4  : RECONSTRUCTION 97 AVEC INITIALISATION MOINDRES CARRES
C   ANOMAX : ANGLE DE NON ORTHOGONALITE DES FACES EN RADIAN AU DELA DUQUEL
C            ON RETIENT DANS LE SUPPORT ETENDU DES CELLULES VOISINES
C            DE LA FACE LES CELLULES DONT UN NOEUD EST SUR LA FACE
C   NSWRGR : NOMBRE DE SWEEPS DE RECONSTRUCTION DES GRADIENTS 97
C   NSWRSM : NOMBRE DE SWEEPS DE RECONSTRUCTION DES SECONDS MEMBRES
C   EPSRGR : PRECISION POUR LA   RECONSTRUCTION DES GRADIENTS 97
C   IMLIGR : LIMITATION DES GRADIENTS
C     < 0  : PAS DE LIMITATION DES GRADIENTS
C     = 0  : PREMIER ORDRE
C     = 1  : SECOND ORDRE
C   CLIMGR : FACTEUR DE LIMITATION (>=1, =1 : FORTE LIMITATION)
C   IRCFLU : RECONSTRUCTION DES FLUX AUX FACES
C     = 0  : NON
C     = 1  : OUI
C   EXTRAG : EXTRAPOLATION DES GRADIENTS AU BORD (0 <= EXTRAG <= 1)
C     = 0  : NON
C     = 1  : OUI
C
      INTEGER           IMRGRA, NSWRGR(NVARMX), NSWRSM(NVARMX),
     &                  IMLIGR(NVARMX)        , IRCFLU(NVARMX)
      COMMON / IRECGR / IMRGRA, NSWRGR        , NSWRSM        ,
     &                  IMLIGR                , IRCFLU
C
      DOUBLE PRECISION  ANOMAX ,
     &                  EPSRGR(NVARMX), CLIMGR(NVARMX), EXTRAG(NVARMX)
      COMMON / RRECGR / ANOMAX ,
     &                  EPSRGR        , CLIMGR        , EXTRAG
C
C
C SOLVEURS ITERATIFS
C   NITMAX : NOMBRE D'ITERATIONS MAX
C   EPSILO : PRECISION RELATIVE CHERCHEE
C   IRESOL
C     =-1 : CALCULE AUTOMATIQUEMENT (0 SI ICONV=0, 1 SINON)
C     = 0 : GRADIENT CONJUGUE
C     = 1 : JACOBI
C     = 2 : BI-CGSTAB
C    et ON AJOUTE IPOL*1000 OU IPOL EST LE DEGRE DU POLYNOME DE
C       PRECONDITIONNEMENT DE NEUMANN
C     En pratique, il semble que ce preconditonnement ne soit pas efficace
C        on gagne 10% CPU sur un cas, on perd 3% sur un autre avec IPOL=1
C        on perd avec IPOL=2
C        Ces valeurs ont ete obtenues sur de petits cas.
C   IDIRCL : DECALAGE DE LA DIAGONALE DE LA MATRICE S'IL N'Y A PAS DE DIRICHLET
C     = 0 : NON
C     = 1 : OUI
C     Le code calcule automatiquement pour chaque variable NDIRCL, nombre de
C        CL de Dirichlet, et en deduit s'il doit decaler ou pas la diagonale
C
      INTEGER           NITMAX(NVARMX),IRESOL(NVARMX),IDIRCL(NVARMX),
     &                  NDIRCL(NVARMX)
      COMMON / INIVCV / NITMAX        ,IRESOL        ,IDIRCL        ,
     &                  NDIRCL
C
      DOUBLE PRECISION                 EPSILO(NVARMX)
      COMMON / RNIVCV /                EPSILO
C
C
C MULTIGRILLE (VOIR AUSSI multdrd.h)
C   IMGR
C     = 0 PAS DE MULTIGRILLE
C     = 1        MULTIGRILLE ALGEBRIQUE
C   NCYMAX : NOMBRE MAX DE CYCLES
C   NITMGF : NOMBRE D'ITER SUR MAILLAGE FIN
C
      INTEGER           IMGR(NVARMX),NCYMAX(NVARMX),NITMGF(NVARMX)
      COMMON / IMULTG / IMGR        ,NCYMAX        ,NITMGF
C
C
C
C GESTION DU CALCUL
C   ISUITE : SUITE DE CALCUL
C     = 0 POUR SFS
C     = 1 POUR SUITE DE CALCUL
C   ISCOLD : correspondance nouveaux-anciens scalaires
C   IECAUX : ecriture du suite auxiliaire
C   ILEAUX : lecture  du suite auxiliaire
C   ISUIT1 : suite du module thermique 1d en paroi
C   ISUIVO : suite de la methode des vortex
C
      INTEGER           ISUITE , ILEAUX, IECAUX, ISCOLD(NSCAMX),
     &                  ISUIT1 , ISUIVO
      COMMON / ISTART / ISUITE , ILEAUX, IECAUX, ISCOLD, ISUIT1, ISUIVO
C
C
C GESTION DES PAS DE TEMPS
C   NTPABS : PAS DE TEMPS PRECEDENT ABSOLU
C   NTCABS : PAS DE TEMPS COURANT   ABSOLU
C   NTMABS : PAS DE TEMPS MAX       ABSOLU
C   TTPABS :        TEMPS PRECEDENT ABSOLU
C   TTCABS :        TEMPS COURANT   ABSOLU
C   TTMABS :        TEMPS MAX       ABSOLU
C   INPDT0 : INDICATEUR "ZERO PAS DE TEMPS"
C
C   NTMABS = numero absolu du dernier pas de temps desire
C            Si on a deja fait 10 pas de temps
C              et qu'on veut en faire 10 autres,
C              il faut affecter 10 + 10 = 20 a NTMABS
C   NTPABS = numero relu dans le fichier suite
C   NTCABS = incremente au debut du pas de temps
C              et donc initialise a NTPABS
C   INPDT0 = 1 pour ne faire aucun pas de temps (0 sinon)
C              Pour les calculs non suite :
C                on saute uniquement les resolutions (navier-stokes,
C                  turbulence, scalaires...)
C              Pour les calculs suite :
C                on saute les resolutions (navier-stokes,
C                  turbulence, scalaires...) et le calcul des proprietes
C                  physiques, les conditions aux limites (les grandeurs
C                  sont lues dans le fichier suite)
C
      INTEGER           NTPABS, NTCABS, NTMABS, INPDT0
      COMMON / ITEMPS / NTPABS, NTCABS, NTMABS, INPDT0
C
      DOUBLE PRECISION  TTPABS, TTCABS
      COMMON / RTEMPS / TTPABS, TTCABS
C
C
C OPTION PAS DE TEMPS
C   IDTVAR : PAS DE TEMPS VARIABLE
C     = 0 : PAS DE TEMPS CONSTANT
C     = 1 : PAS DE TEMPS UNIFORME EN ESPACE ET VARIABLE EN TEMPS
C     = 2 : PAS DE TEMPS VARIABLE EN ESPACE ET VARIABLE EN TEMPS
C   IPTLRO : LIMITATION DU PAS DE TEMPS LIEE AUX EFFETS DE DENSITE
C     = 0 : NON
C     = 1 : OUI
C   COUMAX : NOMBRE DE COURANT         MAXIMUM        (IDTVAR NON NUL)
C   FOUMAX : NOMBRE DE         FOURIER MAXIMUM        (IDTVAR NON NUL)
C   VARRDT : VARIATION RELATIVE PERMISE DE DT         (IDTVAR NON NUL)
C   DTMIN, DTMAX : VALEUR LIMITE MIN ET MAX DE DT     (IDTVAR NON NUL)
C       PRENDRE POUR DTMAX = MAX (Ld/Ud, SQRT(Lt/(gDelta rho/rho)), ...)
C   CDTVAR : COEF MULTIPLICATIF POUR LE PAS DE TEMPS DE CHAQUE VARIABLE
C         POUR U,V,W,P IL EST INUTILISE
C         POUR K,E    ON PREND LA MEME VALEUR : CELLE DE K
C         POUR RIJ, E ON PREND LA MEME VALEUR : CELLE DE R11
C
      INTEGER           IDTVAR,IPTLRO
      COMMON / IPTVAR / IDTVAR,IPTLRO
C
      DOUBLE PRECISION  DTREF,COUMAX,FOUMAX,
     &                  DTMIN,DTMAX ,VARRDT,CDTVAR(NVARMX)
      COMMON / RPTVAR / DTREF,COUMAX,FOUMAX,
     &                  DTMIN,DTMAX ,VARRDT,CDTVAR
C
C
C TURBULENCE
C  ITURB
C    = 0  PAS DE TURBULENCE
C    = 10 LONGUEUR DE MELANGE
C    = 20, 21 K-EPSILON
C         * 20 MODELE STANDARD
C         * 21 MODELE A PRODUCTION LINEAIRE
C    = 30, 31 RIJ-EPSILON
C         * 30 MODELE STANDARD (LRR)
C         * 31 MODELE SSG
C    = 40, 41, 42 LES
C         * 40 MODELE DE SMAGORINSKY CONSTANT
C         * 41 MODELE DE SMAGORINSKY DYNAMIQUE "CLASSIQUE"
C         * 42 MODELE DE SMAGORINSKY DYNAMIQUE DE "PIOMELLI ET LIU"
C    = 50 v2f phi-model
C    = 60 K-OMEGA SST
C  ITYTUR
C    = INT(ITURB/10) POUR DISTINGUER RAPIDEMENT LES CLASSES DE MODELES
C  IDEUCH
C    = 0 UNE ECHELLE       (DEUX ECHELLES = FAUX)
C    = 1 DEUX ECHELLES     (DEUX ECHELLES = VRAI)
C    = 2 DEUX ECHELLES LIMITATION DE YPLUS A YPLULI (SCALABLE WALL FUNCTION)
C  ILOGPO
C    = 0 UNE ECHELLE  AVEC LOI EN PUISSANCE
C    = 1 UNE ECHELLES AVEC LOI LOG
C  ICLKEP
C    = 0 CLIPPING EN VALEUR ABSOLUE DE K ET EPSILON
C    = 1 CLIPPING COUPLE K-EPSILON BASE SUR DES RELATIONS PHYSIQUES
C  IGRHOK
C    = 1     PRISE EN COMPTE DE 2/3 RHO GRAD K DANS NAVIER STOKES
C    = 0 NON PRISE EN COMPTE DE 2/3 RHO GRAD K DANS NAVIER STOKES
C  IGRAKE
C    = 1 GRAVITE DANS K-EPSILON
C    = 0 SINON
C  IGRARI
C    = 1 GRAVITE DANS RIJ-EPSILON
C    = 0 SINON
C  ISCALT NUMERO DU SCALAIRE QUI TIENT LIEU DE TEMPERATURE
C    DONC VARIABLE ISCA(ISCALT)
C  IKECOU
C    = 1 K-EPSILON COUPLE EN INCREMENTS
C    = 0 SINON
C  IRIJNU
C         = 1 VISCOSITE DANS LA MATRICE EN INCREMENTS DE VITESSE (RIJ)
C         = 0 SINON
C  IRIJRB
C         = 1 TRAITEMENT PRECIS DE RIJ AU BORD, VOIR CONDLI      (RIJ)
C         = 0 SINON
C  IDIFRE
C         = 1 TRAITEMENT COMPLET DE LA DIAGONALE DU TENSEUR DE
C             DIFFUSION DE RIJ ET EPSILON (RIJ)
C         = 0 TRAITEMENT SIMPLIFIE
C  ICLSYR
C         = 1 IMPLICITATION PARTIELLE DE RIJ DANS LES CL DE SYMETRIE
C         = 0 PAS D'IMPLICITATION
C  ICLPTR
C         = 1 IMPLICITATION PARTIELLE DE RIJ ET EPSILON DANS LES CL
C             DE PAROI TURBULENTE
C         = 0 PAS D'IMPLICITATION
C  IDRIES : AMORTISSEMENT DE TYPE VAN DRIEST A LA PAROI
C         = 0 SANS AMORTISSEMENT
C         = 1 AVEC AMORTISSEMENT
C  IVRTEX : UTILISATION DE LA METHODE DES VORTEX
C         = 0 SANS METHODE DES VORTEX
C         = 1 AVEC METHODE DES VORTEX
C
      INTEGER           ITURB(NPHSMX) , ITYTUR(NPHSMX),
     &                  IDEUCH(NPHSMX), ILOGPO(NPHSMX), ICLKEP(NPHSMX),
     &                  IGRHOK(NPHSMX), IGRAKE(NPHSMX),
     &                  ISCALT(NPHSMX), IKECOU(NPHSMX),
     &                  IRIJNU(NPHSMX), IRIJRB(NPHSMX), IRIJEC(NPHSMX),
     &                  IGRARI(NPHSMX), IDIFRE(NPHSMX), ICLSYR(NPHSMX),
     &                  ICLPTR(NPHSMX), IDRIES(NPHSMX), IVRTEX
      COMMON / ITURBU / ITURB         , ITYTUR        ,
     &                  IDEUCH        , ILOGPO        , ICLKEP        ,
     &                  IGRHOK        , IGRAKE        ,
     &                  ISCALT        , IKECOU        ,
     &                  IRIJNU        , IRIJRB        , IRIJEC        ,
     &                  IGRARI        , IDIFRE        , ICLSYR        ,
     &                  ICLPTR        , IDRIES        , IVRTEX
C
C
C
C   IVISSE PRISE EN COMPTE DE -2/3 GRAD(MU DIV(U)) + DIV(MU (GRAD_T(U)))
C
      INTEGER           IVISSE(NPHSMX)
      COMMON / IVISC2 / IVISSE
C
C STOKES
C   IREVMC
C     = 2 POUR RECONSTRUCTION DES VITESSES DE TYPE RT0
C     = 1 POUR RECONSTRUCTION DES VITESSES AVEC GRADIENT DE L'INCREMENT
C           DE PRESSION PAR MOINDRES CARRES
C     = 0 SINON
C   IPRCO
C     = 0 POUR CALCUL SANS PRESSION CONTINUITE
C     = 1 POUR CALCUL AVEC PRESSION CONTINUITE
C   ARAK PROPORTION D'ARAKAWA (1 POUR ARAKAWA COMPLET)
C   RELAXP RELAXATION DANS REACTUALISATION PRESSION (1 PAS DE RELAX)
C   RELAXK RELAXATION DANS DE K ET EPS QD IKECOU=0 (1 PAS DE RELAX)
C   RNORMP NORMALISATION POUR LA CONVERGENCE DE RESOLP
C
      INTEGER           IREVMC(NPHSMX), IPRCO , IRNPNW
      COMMON / ISTOKE / IREVMC        , IPRCO , IRNPNW
C
      DOUBLE PRECISION  RNORMP(NPHSMX), ARAK(NPHSMX)  , RELAXP(NPHSMX),
     &     RELAXK(NPHSMX)
      COMMON / RSTOKE / RNORMP        , ARAK          , RELAXP        ,
     &     RELAXK
C
C
C   IPUCOU ALGORITHME COUPLAGE INSTATIONNAIRE VITESSE/PRESSION
C
      INTEGER           IPUCOU
      COMMON / COUPUP / IPUCOU
C
C
C   ICCVFG CALCUL A CHAMP DE VITESSE FIGE
C
      INTEGER           ICCVFG
      COMMON / ICFIGE / ICCVFG
C
C CALCUL DE LA VISCOSITE
C
      INTEGER           IMVISF
      COMMON / RVSCFA / IMVISF
C
C  TYPE DES CONDITIONS LIMITES ET INDEX MIN ET MAX
C                  DES SOUS LISTES DEFACES DE BORD
C
      INTEGER           IDEBTY(NTYPMX,NPHSMX), IFINTY(NTYPMX,NPHSMX)
      COMMON / ITYCLI / IDEBTY        , IFINTY
C
C
C  ITRBRB = 1 TRAITEMENT PRECIS DE LA TEMPERATURE AU BORD, VOIR CONDLI
C             (UTILISE POUR COUPLAGE SYRTHES)
C         = 0 SINON
C  ICPSYR = 1 SI SCALAIRE COUPLE A SYRTHES
C    DONC POUR LE MOMENT VAUT 1 POUR ISCALT UNIQUEMENT
C
      INTEGER           ITBRRB, ICPSYR(NSCAMX)
      COMMON / COUPLB / ITBRRB, ICPSYR
C
C   PRISE EN COMPTE DE l'EQUILIBRE ENTRE LE GRADIENT DE PRESSION
C        ET LES TERMES SOURCES DE GRAVITE ET DE PERTE DE CHARGE
C
C     IPHYDR = 0 ALGORITHME SANS PRISE EN COMPTE DE L'EQUILIBRE
C            = 1 ALGORITHME AVEC PRISE EN COMPTE DE L'EQUILIBRE
C     ICALHY = 0 PAS DE CALCUL DE LA PRESSION HYDROSTATIQUE POUR LES
C                DIRICHLETS DE PRESSION EN SORTIE
C            = 1        CALCUL DE LA PRESSION HYDROSTATIQUE POUR LES
C                DIRICHLETS DE PRESSION EN SORTIE
C
      INTEGER           IPHYDR, ICALHY
      COMMON / IPREHY / IPHYDR, ICALHY
C
C
C   CALCUL DES ESTIMATEURS
C
      INTEGER           IESCAL(NESTMX,NPHSMX)
      COMMON / ICAEST / IESCAL
C
C
C   CALCUL DES MOYENNES TEMPORELLES (CALCUL DES MOMENTS)
C
C  NBMOMT : NOMBRE DE MOYENNES DEMANDEES
C  NBDTCM : NOMBRE DE TABLEAUX NCEL POUR LE TEMPS CUMULE
C  NTDMOM : NUMERO DU PAS DE TEMPS INITIAL POUR LE CALCUL DU MOMENT
C  IMOOLD : NUMERO DE L'ANCIEN MOMENT CORRESPONDANT EN CAS DE SUITE
C  ICMOME : POINTEUR POUR LES MOMENTS (donne un numero de propriete)
C           s'utilise ainsi PROPCE(IEL,IPPROC(ICMOME(IMOM)))
C  IDTMOM : NUMERO DU TEMPS CUMULE ASSOCIE AUX MOMENTS
C           ce numero va de 1 a n pour les temps cumules non uniformes
C                     et de -1 a -p pour les temps cumules uniformes
C           s'utilise ainsi :
C              si IDTMOM(IMOM) > 0 PROPCE(IEL,IPROPC(ICDTMO(IDTMOM(IMOM))))
C              si IDTMOM(IMOM) < 0 DTCMOM(-IDTMOM(IMOM))
C  IDFMOM : NUMERO DES VARIABLES COMPOSANT LE MOMENT IDFMOM(JJ,IMOM)
C  IDGMOM : DEGRE DU MOMENT
C  ICDTMO : NUMERO DE PROPRIETE DU TEMPS CUMULE (voir IDTMOM)
C  IPPMOM : REPERE POUR LE POST SI ON DOIT DIVISER LA VARIABLE
C           PAR UN TEMPS CUMULE (voir memtri et useevo)
C  DTCMOM : VALEUR DU PAS DE TEMPS CUMULE QUAND IL EST UNIFORME (voir IDTMOM).
C
      INTEGER           NBMOMT, NBDTCM,
     &                  NTDMOM(NBMOMX), IMOOLD(NBMOMX),
     &                  ICMOME(NBMOMX), IDTMOM(NBMOMX),
     &                  IDFMOM(NDGMOX,NBMOMX),          IDGMOM(NBMOMX),
     &                  ICDTMO(NBMOMX), IPPMOM(NVPPMX)
      COMMON / IMOMEN / NBMOMT, NBDTCM,
     &                  NTDMOM        , IMOOLD        ,
     &                  ICMOME        , IDTMOM        ,
     &                  IDFMOM                        , IDGMOM        ,
     &                  ICDTMO        , IPPMOM
      DOUBLE PRECISION  DTCMOM(NBMOMX)
      COMMON / RMOMEN / DTCMOM
C
C
C   INDICATEUR PERTES DE CHARGE GLOBAL (IE SOMME SUR LES PROCESSEURS
C       DE NCEPDC)
C
      INTEGER           NCPDCT(NPHSMX)
      COMMON / ICPDCT / NCPDCT
C
C   INDICATEUR MODULE THERMIQUE 1D GLOBAL (IE SOMME SUR LES PROCESSEURS
C       DE NFPT1D)
C
      INTEGER           NFPT1T
      COMMON / ICT1DT / NFPT1T
C
C   INDICATEUR TERMES SOURCES DE MASSE GLOBAL (IE SOMME SUR LES PROCESSEURS
C       DE NCETSM)
C
      INTEGER           NCTSMT(NPHSMX)
      COMMON / ICTSMT / NCTSMT
C
C   INDICATEUR DE PASSAGE DANS L'INITIALISATION DES
C                         VARIABLES PAR L'UTILISATEUR
C          IUSINI = 1 PASSAGE DANS USINIV OU PPINIV
C                   0 PAS DE PASSAGE (NI IUSINI NI PPINIV)
C
      INTEGER           IUSINI
      COMMON / IUSSPG / IUSINI
C
C PARAMETRES NUMERIQUES POUR LE CALCUL DE LA DISTANCE A LA PAROI
C
C INEEDY : = 1 DISTANCE A LA PAROI EST NECESSAIRE POUR LE CALCUL
C          = 0 DISTANCE A LA PAROI N'EST PAS NECESSAIRE
C IMAJDY : = 1 DISTANCE A LA PAROI A ETE MISE A JOUR
C          = 0 DISTANCE A LA PAROI N'A PAS ETE MISE A JOUR
C ICDPAR : = 1 CALCUL STANDARD (ET RELECTURE EN SUITE DE CALCUL)
C          = 2 CALCUL ANCIEN   (ET RELECTURE EN SUITE DE CALCUL)
C          =-1 FORCER LE RECALCUL EN SUITE (PAR CALCUL STANDARD)
C          =-2 FORCER LE RECALCUL EN SUITE (PAR CALCUL ANCIEN)
C NITMAY : NOMBRE MAX D'ITERATIONS POUR LES RESOLUTIONS ITERATIVES
C NSWRSY : NOMBRE DE SWEEP POUR RECONSTRUCTION DES S.M.
C NSWRGY : NOMBRE DE SWEEP POUR RECONSTRUCTION DES GRADIENTS
C IMLIGY : METHODE DE LIMITATION DU GRADIENT
C IRCFLY : INDICATEUR POUR RECONSTRUCTION DES FLUX
C ISCHCY : INDICATEUR DU SCHEMA EN ESPACE
C ISSTPY : INDICATEUR POUR TEST DE PENTE
C IMGRPY : MULTIGRILLE
C IWARNY : NIVEAU D'IMPRESSION
C NTCMXY : NOMBRE MAX D'ITERATION POUR LA CONVECTION DE Y
C
      INTEGER           INEEDY       , IMAJDY        , ICDPAR      ,
     &                  NITMAY       , NSWRSY        , NSWRGY      ,
     &                  IMLIGY       , IRCFLY        , ISCHCY      ,
     &                  ISSTPY       , IMGRPY        , IWARNY      ,
     &                  NTCMXY
      COMMON / IDPOPT / INEEDY       , IMAJDY        , ICDPAR      ,
     &                  NITMAY       , NSWRSY        , NSWRGY      ,
     &                  IMLIGY       , IRCFLY        , ISCHCY      ,
     &                  ISSTPY       , IMGRPY        , IWARNY      ,
     &                  NTCMXY
C
C BLENCY : 1 - PROPORTION D'UPWIND
C EPSILY : PRECISION POUR RESOLUTION ITERATIVE
C EPSRGY : PRECISION POUR LA RECONSTRUCTION DES GRADIENTS
C CLIMGY : COEF GRADIENT*DISTANCE/ECART
C EXTRAY : COEF D'EXTRAPOLATION DES GRADIENTS
C COUMXY : VALEUR MAX   DU COURANT POUR EQUATION CONVECTION
C EPSCVY : PRECISION POUR CONVERGENCE EQUATION CONVECTION STATIONNAIRE
C YPLMXY : VALEUR MAX   DE YPLUS AU DESSUS DE LAQUELLE L'AMORTISSEMENT DE
C          VAN DRIEST EST SANS EFFET ET DONC POUR LAQUELLE UN CALCUL DE
C          YPLUS MOINS PRECIS EST SUFFISANT
C
      DOUBLE PRECISION  BLENCY      , EPSILY         , EPSRGY     ,
     &                  CLIMGY      , EXTRAY         , COUMXY     ,
     &                  EPSCVY      , YPLMXY
      COMMON / RDPOPT / BLENCY      , EPSILY         , EPSRGY     ,
     &                  CLIMGY      , EXTRAY         , COUMXY     ,
     &                  EPSCVY      , YPLMXY
C
C
C PARAMETRES NUMERIQUES POUR LE CALCUL DES EFFORTS AUX BORDS
C
C INEEDF : = 1 ON CALCULE LES EFFORTS AUX PAROIS
C          = 0 ON NE CALCULE PAS LES EFFORTS AUX PAROIS
      INTEGER INEEDF
      COMMON / IFORBR / INEEDF
C
C FIN
C
c@z


syntax highlighted by Code2HTML, v. 0.9.1