Download condens.dgibi

Back to the list

* fichier :  condens.dgibi

GRAPH = FAUX ;

************************************************************************
*   condens.dgibi : bas Mach + condensation en paroi                   *
************************************************************************
*                     MODELE MISTRA AVEC CONDENSEURS                   *
*                     ------------------------------                   *
* INJECTION DE VAPEUR DANS UNE ENCEINTE FERMEE CONTENANT DE L'AIR      *
* TEMPERATURE DE PAROI IMPOSEE (PAROI VERTICALE) NON CALCULEE          *
* MODELE DE CONDENSATION : CHILTON-COLBURN + ANALOGIE HMT              *
* ECHANGES PAR CONVECTION ET CONDENSATION                              *
* EQUATION D'ENERGIE EN TEMPERATURE                                    *
* ECOULEMENTS TURBULENTS                                               *
* MAILLAGE 2D AXI FORMULATION EF QUA8                                  *
* P. CORNET SEMT/TTMF 23 DECEMBRE 1998                                 *
************************************************************************
*
************************************************************************
* PROCEDURE FILTREKE                                                   *
* VERSION    non encore évoluée à ce jour                              *
************************************************************************
*
* 4 arguments : U0 L0 NU UN
*
* Filtre sur K et Epsilon
* - Echelle de vitesse (K**0.5) inférieure à une fraction (alfk)
*   de Uref (vitesse caractéristique) (alfk=1 pour l'instant)
*   Uref=max(UN,U0) 
*  - K > K0 
*  - Epsilon tel que l'echelle de longueur reste inférieure
*   à (L0/a) où L0 = diamètre enceinte et a=f(Re)
*   => Nut < Uref*L0/a

 DEBP FILTREKE ;
 ARGU RX*TABLE ;
 rv=rx.'EQEX' ;
 rvp=rv.'PRESSION' ;

 rv=rx.'EQEX' ;
 iarg=rx.'IARG' ;
 si( non ( ega iarg 4)) ;
 mess 'Procedure FILTREKE : nombre d arguments incorrect ' iarg ;
 quitter FILTREKE  ;
 finsi ;
 si ( ega ('TYPE' rx.'ARG1') 'MOT     ') ;
 U1=rv.'INCO'.(rx.'ARG1') ;
 sinon ;
 si ( ega ('TYPE' (rx.'ARG1')) 'FLOTTANT') ;
 U1=rx.'ARG1' ;
 sinon ;
 mess 'Procedure FILTREKE : type argument 1 invalide ' ;
 quitter FILTREKE ;
 finsi ;
 finsi ;

 si ( ega ('TYPE' rx.'ARG2') 'MOT     ') ;
 L0=rv.'INCO'.(rx.'ARG2') ;
 sinon ;
 si ( ega ('TYPE' (rx.'ARG2')) 'FLOTTANT') ;
 L0=rx.'ARG2' ;
 sinon ;
 mess 'Procedure FILTREKE : type argument 2 invalide ' ;
 quitter FILTREKE ;
 finsi ;
 finsi ;

 si ( ega ('TYPE' rx.'ARG3') 'MOT     ') ;
 NU=rv.'INCO'.(rx.'ARG3') ;
 sinon ;
 si ( ega ('TYPE' (rx.'ARG3')) 'FLOTTANT') ;
 NU=rx.'ARG3' ;
 sinon ;
 mess 'Procedure FILTREKE : type argument 3 invalide ' ;
 quitter FILTREKE ;
 finsi ;
 finsi ;

 si ( ega ('TYPE' rx.'ARG4') 'MOT     ') ;
 UN=rv.'INCO'.(rx.'ARG4') ;
 sinon ;
 si ( ega ('TYPE' (rx.'ARG4')) 'CHPOINT') ;
 UN=rx.'ARG4' ;
 sinon ;
 mess 'Procedure FILTREKE : type argument 4 invalide ' ;
 quitter FILTREKE ;
 finsi ;
 finsi ;

 nic=dime (rx.'LISTINCO') ;
 si( non ( ega nic 2)) ;
 mess 'Procedure FILTREKE : nombre d inconnues incorrect ' nic ;
 quitter FILTREKE ;
 finsi ;

 nomi1=extr 1 (rx.'LISTINCO');
 nomi2=extr 2 (rx.'LISTINCO');
 nom1= mot (text (chai nomi1)) ;
 nom2= mot (text (chai nomi2)) ;

 en=rv.'INCO'.nom2 ;
 kn=rv.'INCO'.nom1 ;

 Rec=100.;
 k0 = 1.e-10 ;
 cnu=0.09;

 mdu=kops un 'PSCA' un ;
 mdu=mdu ** 0.5 ;

 Re=kops (kops (kops mdu '*' L0) '/' nu) '+' (Rec / 10.) ;
 a= exp (kops Rec '/' Re ) ;

 mdu = kops mdu '|<' u1 ;
 mdu2= kops mdu '*' mdu ;

 kn=kops kn '|<' k0 ;
 kn=kops kn '>|' mdu2 ;

 E0= kops (kops kn '**' 1.5) '*' (a / L0) ;
 en=kops en '|<' E0 ;

 rv.'INCO'.nom2=en ;
 rv.'INCO'.nom1=kn ;

 finproc ;

************************************************************************
* PROCEDURE CALCUL1                                                    *
************************************************************************

DEBPROC CALCUL1 ;
ARGU RVX*'TABLE' ;
RV = RVX.'EQEX' ;
$MT = RV.'DOMAINE' ;

* on récupère le pas de temps (tn - tn-1)

DT = RV.PASDETPS.'DELTAT-1' ;
SI (RV.PASDETPS.'NUPASDT' EGA 1) ;
RV.PASDETPS.'DELTAT' = 1.0E-5 ;
DT = 0. ;
FINSI ;

* filtre sur la fraction massique de vapeur et calcul fraction air

YH2O = RV.INCO.'YH2O' ;
YH2O = KOPS YH2O '|<' 0. ;
YH2O = KOPS YH2O '>|' 1. ;
YAIR = KOPS 1.0 '-' YH2O ;
RV.INCO.'YAIR' = YAIR ;

* calcul de Cv, Cp et R du mélange

CV1 = kops YH2O '*' CVH2O ;
CV2 = kops YAIR '*' CVAIR ;
CV  = kops CV1  '+' CV2   ;

CP1 = kops YH2O '*' CPH2O ;
CP2 = kops YAIR '*' CPAIR ;
CP  = kops CP1  '+' CP2   ;

RR1 = kops YH2O '*' RH2O ;
RR2 = kops YAIR '*' RAIR ;
RR  = kops RR1  '+' RR2  ;

RV.INCO.'CV' = CV ;
RV.INCO.'CP' = CP ;
RV.INCO.'RN' = RR ;

* calcul de la densité totale moyenne 0D (kg/m3)

Q0  = RV.INCO.'DEBIT' ;
QC  = RV.INCO.'QC' ;
DRO = DT*(Q0+QC)/VOLT ;
ROT0D = RV.INCO.'ROT0D' + DRO ;
RV.INCO.'ROT0D' = ROT0D ;

* calcul de la densité de vapeur moyenne 0D (kg/m3)

QV = Q0*YH2Ojet ;
DROV = DT*(QV+QC)/VOLT ;
ROV0D = RV.INCO.'ROV0D' + DROV ;
RV.INCO.'ROV0D' = ROV0D ;

* calcul de l'énergie emmenée par la condensation (W)

TNP = KCHT $PCON  SCAL SOMMET  RV.INCO.'TN' ;
CVT = KOPS  CVH2O '*' TNP ;
ENC = KOPS  CVT '*' RV.INCO.'FCOND' ;
ENC = RV.'DI' '*' ENC ;
ENC = SOMT ENC ;

* calcul de l'énergie emmenée par la convection (W)

ROP = KCHT $PCON  SCAL SOMMET  RV.INCO.'RHO' ;
CPP = KCHT $PCON  SCAL SOMMET  CP ;
RCP = KOPS  ROP '*' CPP ;
DTP = KOPS  TNP '-' RV.INCO.'TC' ;
RCT = KOPS  RCP '*' DTP ;
EHI = NOEL $PCON  RCT ;
EHI = KOPS  EHI '*' RV.INCO.'H' ;
EHI = KOPS  EHI '*' SURFC ;
EHI = SOMT  EHI ;

* calcul de l'énergie moyenne 0D (J/m3)

DES = (Q0*EMjet) + Etran - ENC - EHI ;
DES = DES*DT/VOLT ;
ES0D = RV.INCO.'ES0D' + DES ;
RV.INCO.'ES0D' = ES0D ;

* Cp et Cv 0D du mélange

YV0D = ROV0D/ROT0D ;
YA0D = 1.0 - YV0D ;
CP0D = (YV0D*CPH2O) + (YA0D*CPAIR) ;
CV0D = (YV0D*CVH2O) + (YA0D*CVAIR) ;

* calcul de la pression moyenne 0D

GAM0D = CP0D/CV0D ;
RV.INCO.'PR0D' = (GAM0D - 1.0)*ES0D ;

* calcul de la masse volumique du melange

PSIN = KOPS (RV.INCO.'TN') '*' (RV.INCO.'RN') ;
RHO = KOPS (RV.INCO.'PM') '/' PSIN ;
ROM = KOPS  RV.'D0' '*' RHO ;
ROM = (somt ROM)/VOLT ;
DRO1 = RV.INCO.'ROT0D' - ROM ;
DRHO = KCHT $MT SCAL SOMMET DRO1 ;
RV.INCO.'RHO' = KOPS  RHO '+' DRHO ;
RV.INCO.'RHO1' =  RHO ;
RV.INCO.'RHOC' = NOEL $MT RV.INCO.'RHO' ;

* contrainte sur rhoh2o pour conservation 0D

ROVM = kops  YH2O '*' RHO ;
ROVM = kops  RV.'D0'  '*' ROVM ;
ROVM = (somt ROVM)/VOLT ;
DROV = RV.INCO.'ROV0D' - ROVM ;
DYV = DROV/ROM ;
DYH2O = kcht $mt SCAL SOMMET DYV ;
YH2OC = kops  YH2O '+' DYH2O ;
YH2OF = kops YH2OC '|<' 0. ;
YH2OF = kops YH2OF '>|' 1. ;
RV.INCO.'YH2O' = YH2OF ;

* contrainte sur l'énergie e=rho.Cv.T pour conservation 0D

RCV = KOPS  RHO '*' CV ;
ENM = KOPS  RV.INCO.'TN' '*' RCV ;
ENM = KOPS  RV.'D0'  '*' ENM ;
ENM = (SOMT ENM)/VOLT ;
DEN = RV.INCO.'ES0D' - ENM ;
RCVM = KOPS  RV.'D0'  '*' RCV ;
RCVM = (SOMT RCVM)/VOLT ;
DTN = DEN/RCVM ;
DTN = KCHT  $MT  SCAL SOMMET  DTN ;
RV.INCO.'TN' = KOPS  RV.INCO.'TN' '+' DTN ;

* calcul du terme (rho-rhom)*g de la QDM

DRHO = KOPS (RV.INCO.'RHOC') '-' (RV.INCO.'ROT0D') ;
rogx = KCHT (RV.'DOMAINE') SCAL CENTRE 0. ;
rogy = KCHT (RV.'DOMAINE') SCAL CENTRE (-9.81*DRHO) ;
rogx = nomc 'UX' rogx 'NATU' 'DISCRET' ;
rogy = nomc 'UY' rogy 'NATU' 'DISCRET' ;
RV.INCO.'ROG' = KCHT (RV.'DOMAINE') VECT CENTRE (rogx ET rogy) ;

* calcul la vitesse à partir de la qdm

GN = RV.INCO.'GN' ;
gnx= kcht (rv.'DOMAINE') scal sommet (exco 'UX' gn) ;
gny= kcht (rv.'DOMAINE') scal sommet (exco 'UY' gn) ;
unx = kops gnx '/' RV.INCO.'RHO' ;
uny = kops gny '/' RV.INCO.'RHO' ;
unx = nomc 'UX' unx 'NATU' 'DISCRET' ;
uny = nomc 'UY' uny 'NATU' 'DISCRET' ;
un = kcht (RV.'DOMAINE') vect sommet (unx et uny) ;
RV.INCO.'UN' = un ;

* calcul de nut et uet (pour FPT)

RV.INCO.'NUT' = KOPS (RV.INCO.'MUT') '/' (RV.INCO.'RHOC') ;
RV.INCO.'UTC' = KCHT $PCON SCAL CENTRE RV.INCO.'UET' ;

*-------------------------------------------------*
* calcul du flux condensé Jv par Chilton-Colburn  *
* et la corrélation de convection naturelle       *
*   Sh = kL/Dv = 0.13 (Gr Sc)**1/3                *
*   Jv = k ro (Yv - Yvsat)   en kg/m²s            *
*-------------------------------------------------*

* pression de saturation à l'interface

TC = KOPS (RV.INCO.'TC') '-' 273.15 ;
PSAT = KOPS  TC '/' 100. ;
PSAT = KOPS  PSAT '**' 4 ;
PSAT = KOPS  PSAT '*' 1.0E5 ;

* pression de vapeur pres de la paroi

YVP = KCHT  $PCON SCAL SOMMET RV.INCO.'YH2O' ;
RVT = KOPS  RH2O '*' TNP ;
ROV = KOPS  ROP '*' YVP ;
PV = KOPS  ROV '*' RVT ;

* masse volumique à l'interface

RVTI = KOPS  RH2O '*' RV.INCO.'TC' ;
ROVI = KOPS  PSAT '/' RVTI ;
RATI = KOPS  RAIR '*' RV.INCO.'TC' ;
PAIR = KOPS  RV.INCO.'PM' '-' PSAT ;
RAVI = KOPS  PAIR '/' RATI ;
ROI = KOPS  ROVI '+' RAVI ;

* fraction massique vapeur à l'interface

YVI = KOPS  ROVI '/' ROI ;
RV.INCO.'YVS' = YVI ;
RV.INCO.'YVI' = NOEL $PCON YVI ;

* coefficient de diffusion de la vapeur dans l'air (m2/s)

AA = 2.2 / RV.INCO.'PM' ;
TFP = KOPS TNP '/' 273. ;
DV = KOPS TFP '**' 1.75 ;
DV = KOPS DV '*' AA ;

* coefficient d'échange de masse k (m/s)

BB = 0.13 * (9.81 * RV.INCO.'ROT0D' / MU)**0.33333 ;
DRO = KOPS  ROP '-' ROI ;
DRO = ABS  DRO ;
DRO = KOPS  DRO '**' 0.33333 ;
KK = KOPS DV '**' 0.66667 ;
KK = KOPS KK '*' DRO ;
KK = KOPS KK '*' BB ;
RV.INCO.'K' = KK ;

* fonction indicatrice de la condensation

DPV = KOPS  PV '-' PSAT ;
IND = DPV  MASQUE  'EGSUP'  0. ;
IND = KCHT $PCON SCAL SOMMET IND ;

* coefficient d'échange pour yh2o (kg/m2s)

KRO = KOPS  KK '*' ROP ;
KRO = KOPS  KRO '*' IND ;
RV.INCO.'KS' = KRO ;
RV.INCO.'KY' = NOEL $PCON KRO ;

* calcul de la masse de vapeur condensée QC (kg/s)

DYV = KOPS  YVP '-' RV.INCO.'YVS' ;
FCOND = KOPS  DYV '*' RV.INCO.'KS' ;
QC  = RV.'DI' '*' FCOND ;
QC  = (SOMT QC)*(-1.)  ;
RV.INCO.'FCOND' = FCOND ;
RV.INCO.'QC' = QC ;

* suivi masse condensée

RV.INCO.'MCOND' = RV.INCO.'MCOND' + (QC*DT) ;

* suivi des inconnues OD et messages

DD = RV.PASDETPS.'NUPASDT' ;
NN = DD/NSAUV ;
LO = (DD-(NSAUV*NN)) EGA 0 ;
SI ( LO ) ;
MESSAGE '===============================================================
=====================================' ;

* suivi pression, masse vol tot, temperature, enthalpie OD, condensation

RV.INCO.'PT0D' = RV.INCO.'PT0D' et (prog RV.INCO.'PR0D') ;
R0D = (YV0D*RH2O) + (YA0D*RAIR) ;
PVAP = RV.INCO.'PR0D'*YV0D*RH2O/R0D ;
PAIR = RV.INCO.'PR0D'*YA0D*RAIR/R0D ;
RV.INCO.'PV0D' = RV.INCO.'PV0D' et (prog PVAP) ;
RV.INCO.'PA0D' = RV.INCO.'PA0D' et (prog PAIR) ;
RV.INCO.'RO0D' = RV.INCO.'RO0D' et (prog RV.INCO.'ROT0D') ;
T0D = ES0D/ROT0D/CV0D - 273.15 ;
RV.INCO.'T0D' = RV.INCO.'T0D' et (prog T0D) ;
H0D = GAM0D * ES0D / ROT0D + LAT ;
RV.INCO.'H0D' = RV.INCO.'H0D' et (prog H0D) ;
QC1 = -1.* QC ;
RV.INCO.'FCDST' = RV.INCO.'FCDST' et (prog QC1)  ;

ener = kops RV.INCO.'RHO' '*' RV.INCO.'CV' ;
ener = kops ener '*' RV.INCO.'TN' ;
ener = noel $mt ener ;
ener = kops ener '*' vol ;
ener = somt ener ;
RV.INCO.'ETOT' = RV.INCO.'ETOT' et (prog ener) ;
en2  = ES0D*VOLT ;
RV.INCO.'ET0D' = RV.INCO.'ET0D' et (prog en2) ;

FINSI ;

FINPROC ;

************************************************************************
* PROCEDURE CALCUL2                                                    *
************************************************************************

DEBPROC CALCUL2 ;
ARGU RVX*'TABLE' ;
RV = RVX.'EQEX' ;
$MT = RV.'DOMAINE' ;

* on récupère le pas de temps

Dt = RV.PASDETPS.'DELTAT' ;
Dt = Dt * RV.'ALFA' ;

* calcul de l'intégrale se trouvant dans le terme Dp/Dt.

RV.INCO.'PSIN' = KOPS (RV.INCO.'TN') '*' (RV.INCO.'RN') ;
ZT = KOPS (RV.INCO.'PSIN') '-' (RV.INCO.'PSI1') ;
ZT = KOPS ZT '/' Dt ;
ZT = KOPS ZT '/' (RV.INCO.'PSIN') ;
ZZ = KOPS ZT '*' RV.INCO.'RHO' ;
ZZ = NOEL $MT ZZ ;
ZZ = KCHT $MT 'SCAL' 'CENTRE' ZZ ;
ZZT = SOMT ( KOPS ZZ '*' VOL ) ;
RV.INCO.'PSI1' = KCHT $MT 'SCAL' 'SOMMET' (RV.INCO.'PSIN') ;

* calcul de dP/dt

* Q0 = 'DBIT' RV.INCO.'GN' $BAS ;
dPdt = ZZT + RV.INCO.'DEBIT' + RV.INCO.'QC' ;
dPdt = dPdt*(RV.INCO.'PM')/VOLT/RV.INCO.'ROT0D' ;

* terme source de l'équation d'énergie (terme en dP/dt)

CPC = NOEL $MT RV.INCO.'CP' ;
SE = KOPS dPdt '/' RV.INCO.'RHOC' ;
SE = KOPS SE   '/' CPC ;
RV.INCO.'SE' = KCHT $MT 'SCAL' 'CENTRE' SE ;

* terme source équation de Poisson

Z1 = dPdt/RV.INCO.'PM' ;
ZP = KOPS RV.INCO.'RHOC' '*' Z1 ;
ZS = KOPS ZP '-' ZZ ;
ZZS = KOPS ZS '*' VOL ;
ZZS = ZZS * (-1.0) ;
RV.INCO.'SP' = KCHT $MT 'SCAL' 'CENTRE' ZZS ;

* calcul de l'évolution de la pression 

RV.INCO.'PM' = RV.INCO.'PM' + (dPdt*dt) ;

* affichage informations toutes les NSAUV iterations
************************************************************************

DD = RV.PASDETPS.'NUPASDT' ;
NN = DD/NSAUV ;
LO = (DD-(NSAUV*NN)) EGA 0 ;
SI ( LO ) ;

  mess 'TEMPS (s) = ' RV.PASDETPS.'TPS'
       'PRESSION (Pa) =' RV.INCO.'PM' ;
PT = PROG RV.'PASDETPS'.'TPS' ;
PP = PROG RV.INCO.'PM' ;
PMas = MASINI + ( RV.INCO.'DEBIT' * RV.PASDETPS.'TPS')
              +  RV.INCO.'MCOND' ;
PMTH = PROG PMas ;
RHO  = RV.INCO.'RHO1' ;
RHO  = noel $mt RHO  ;
RHO  = kops  RHO '*' VOL ;
ROM  = somt  RHO  ;
PMTO = PROG  ROM  ;
 RV.INCO.'TEMPS' = RV.INCO.'TEMPS' ET PT ;
 RV.INCO.'PRESS' = RV.INCO.'PRESS' ET PP ;
 RV.INCO.'MTOTA' = RV.INCO.'MTOTA' ET PMTO ;
 RV.INCO.'MTHEO' = RV.INCO.'MTHEO' ET PMTH ;

RHOH2O = KOPS RV.INCO.'RHO' '*' RV.INCO.'YH2O' ;
RHOAIR = KOPS RV.INCO.'RHO' '*' RV.INCO.'YAIR' ;
RHOH2OC = NOEL $MT RHOH2O ;
RHOAIRC = NOEL $MT RHOAIR ;
MASH2O = SOMT (KOPS RHOH2OC '*' VOL) ;
MASAIR = SOMT (KOPS RHOAIRC '*' VOL) ;
  MESSAGE 'MASSES (kg): H2O =' MASH2O  'AIR =' MASAIR
               'TOTALE = ' (MASH2O + MASAIR) ;
PMH2O = PROG MASH2O ;
PMAIR = PROG MASAIR ;
PMAIRT = PROG (MAIRINI +
              (RV.INCO.'DEBIT' * RV.PASDETPS.'TPS'* YAIRJet)) ;
PMH2OT = PROG (MH2OINI +
                (RV.INCO.'DEBIT' * RV.PASDETPS.'TPS'* YH2OJet)  +
               RV.INCO.'MCOND');
RV.INCO.'PMH2O' = RV.INCO.'PMH2O' ET PMH2O ;
RV.INCO.'PMAIR' = RV.INCO.'PMAIR' ET PMAIR ;
RV.INCO.'PMH2OT' = RV.INCO.'PMH2OT' ET PMH2OT ;
RV.INCO.'PMAIRT' = RV.INCO.'PMAIRT' ET PMAIRT ;

FINSI ;

FINPROC ;

************************************************************************
*                       GENERATION DU MAILLAGE                         *
************************************************************************
*
* cuve cylindrique de rayon interieur RA
*                  de hauteur HA
*                  de rayon d'injection RJ.
*------------------------------------------

  'OPTION' 'DIME'  2 'ELEM' 'QUA8' ;
  'OPTION' 'ISOV'  'LIGN' ;
  'OPTION' 'MODE' 'AXIS' ;

* Dimensions de la cuve et de la zone d'injection

  HA = 6.2 ;
  RA = 1.9 ;
  RJ = 0.1 ;

* Nombre d'elements injection et cotés
*   en MACRO, N réel = n x 2

  nj  = 1  ;
  nr  = 10 ;
  nh  = 20 ;

* Definition des points utiles pour la creation du maillage
* ---------------------------------------------------------
*
*                   B0| BJ            B1
*                     .----------------|   
*                     |                |
*                     .                |   
*                     |                |   
*                     .                |   
*                     |                |   
*                     .                |   
*                     |                |   
*                     .                |
*                     |                |   
*                     .                |   
*                     |                |  
*                     .                |  
*                     |                |   
*                     .                |   
*                     |                |   
*                     .                |   
*                     |                |
*                     .----------------|
*                   A0| |AJ           A1
*
* ----------------------------------------------------------------------

  A0  = 0.    0.   ;
  AJ  = RJ    0.   ;
  A1  = RA    0.   ;
  
  B0  = 0.    HA   ;
  BJ  = RJ    HA   ;
  B1  = RA    HA   ;

* Définition des segments

  A0J = A0 'DROI' nj AJ ;
  AJ1 = AJ 'DROI' nr A1 ;

  B0J = B0 'DROI' nj BJ ;
  BJ1 = BJ 'DROI' nr B1 ;

  AB0 = A0 'DROI' nh B0 ;
  AB1 = A1 'DROI' nh B1 ;

  A01 = A0J ET AJ1 ;
  B01 = B0J ET BJ1 ;

* Maillage total

  MT = 'DALL' A01 AB1 B01 AB0 ;
  'ORIENTER' MT ;

* Lignes pour conditions aux limites et post-traitement

  AXE = AB0 ;
  BAS = A01 ;
  INJ = A0J ;
  BAS2 = AJ1 ;
  HAUT = B01 ;
  PCON = AB1 ;
  PTOT = AJ1 ET PCON ET ('INVE' HAUT) ;

* Définition des tables domaine

  $MT      = 'DOMA' MT   1.E-5    'MACRO' impr;
  $INJ     = 'DOMA' INJ           'MACRO' 'INCL' $MT 1.e-5 ;
  $AXE     = 'DOMA' AXE           'MACRO' 'INCL' $MT 1.e-5 ;
  $BAS     = 'DOMA' BAS           'MACRO' 'INCL' $MT 1.e-5 ;
  $PCON    = 'DOMA' PCON          'MACRO' 'INCL' $MT 1.e-5 ;
  $PTOT    = 'DOMA' PTOT          'MACRO' 'INCL' $MT 1.e-5 ;

* Maillage final

  MT = $MT.MAILLAGE ;

  CNT = CONT MT ;
  INJ = INJ COUL ROUG ;
  PCON = PCON COUL VERT ;
  AXE = AXE COUL JAUN ;

* TRAC (BAS ET AXE ET PCON ET HAUT) ;
* TRAC (MT ET INJ ET PCON ET AXE) ;
* TRAC (PTOT ET AXE) ;

* Volume, nbre d'éléments, surface condensante

  VOL = 'DOMA' $MT 'VOLUME' ;
  VOLT = 'SOMT' VOL ;
  NEMT = NBEL MT ;
  SURFC = 'DOMA' $PCON 'VOLUME' ;
  SURFT = 'SOMT' SURFC ;


************************************************************************
*                          DONNEES PHYSIQUES                           *
************************************************************************

*--------------------------------------
* masses molaires et constantes des gaz
*--------------------------------------

MH2O = 18.0E-3 ;
MAIR = 28.8E-3 ;

Rg = 8.313 ;

RH2O = Rg/MH2O ;
RAIR = Rg/MAIR ;

*------------------------------------------------
* fractions massiques des differents constituants
*------------------------------------------------

YAIR = 0.664; 

YH2O = 1-YAIR ;

*---------------------------------------------
* constante du gaz
*---------------------------------------------

R = (RH2O*YH2O)+(RAIR*YAIR) ;

*------------------------------------------------------------
* pression, temperature et densite du melange (loi d'etat GP)
*------------------------------------------------------------

Pbar = 1.5  ;
T°C  = 100. ;

P = Pbar /1.013 ;
P = P * 1.0E5 ;
T = T°C + 273.15 ;
PSI = R*T ;
RHO = P/PSI ;

*-------------------------------------------------------------
* Masse volumique des constituants
*-------------------------------------------------------------

RHOAIR= P*YAIR/(T*R);
RHOH2O= RHOAIR*YH2O/YAIR;

*---------------------
* pressions partielles
*---------------------

PH2O = RHOH2O*RH2O*T ;
PAIR = RHOAIR*RAIR*T ;

*----------------------------------------------------------
* fractions molaires des differents constituants du melange
*----------------------------------------------------------

XH2O = PH2O/P ;
XAIR = PAIR/P ;

*---------------------------------------------
* Masse molaire du mélange
*---------------------------------------------

M = (XH2O*MH2O) + (XAIR*MAIR) ;

*----------------------------------------------------
* Cp et Cv des différents constituants et du mélange
*----------------------------------------------------

CPH2O = 1715.632 + (0.552805*T) ;
CPN2 = 1006.15 + (0.1387166*T) ;
CPO2 = 907.580 + (0.1420522*T) ;
CPAIR = (0.2*CPO2) + (0.8*CPN2) ;
CVH2O = CPH2O - RH2O ;
CVAIR = CPAIR - RAIR ;

CP = (YH2O*CPH2O) + (YAIR*CPAIR) ;
CV = (YH2O*CVH2O) + (YAIR*CVAIR) ;

gamma = CP/(CP-R) ;

*------------------------
* Caractéristiques du jet
*   (Qjet en kg/s)
*------------------------

XH2OJet = 1.0 ;
XAIRJet = 1.0 - XH2OJet ;
YAIRJet = 0. ; 
YH2OJet = 1-YAIRJet;
MJet = (XH2OJet*MH2O) + (XAIRJet*MAIR) ;
RJet = Rg/MJet ;
CVJet = (YH2OJet*CVH2O) + (YAIRJet*CVAIR) ;

SJet = PI*RJ*RJ ;

*°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
*                                                                      °
*                        ATTENTION :                                   °
*                                                                      °
*          Pour que le débit effectif soit 'Q0' kg/s                   °
*                                                                      °
*             il faut que Qjet imposé soit < Q0                        °
*                                                                      °
*  ==> imposer un certain Qjet par tatonnement et vérifier ensuite     °
*      avec l'opérateur DBIT que l'on a bien le débit voulu            °
*                                                                      °
*°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
* nr = 10 , QJet = 0.069124 => Q0 effectif = 0.149999079999999979 kg/s
*

  TJ°C = 180.      ;
  QJet = 0.069124  ;
  GJet = QJet/SJet ;
* Q0 = QJet ;
  Q0 = 0.149999079999999979 ;

TJet = TJ°C + 273.15 ;
PSIJet = Rjet*Tjet ;
RhoJet = P/PSIJet ;
EMJet = CVJet*TJet ;
EJet = Q0*EMJet ;
UJet = GJet/RhoJet ;

* K et epsilon

  KJet = 4.3E-3*UJet*UJet ;
  EPJet = 4.3E-4*(UJet**3.)/RJ ;

* énergie de transvasement PUjSj

Etran = Q0*Rjet*Tjet ;

*-------------------------------------------------
* energie, enthalpie massique et masses du melange
*-------------------------------------------------

ESini = RHO*CV*T ;
ETini = ESini*VOLT ;
Pini = (gamma-1.)*ESini ;
LAT = 2.3E6 ;
MASINI = RHO*VOLT ;
Hini = gamma*ETini/MASINI + LAT ;

MH2OINI = MASINI*YH2O ;
MAIRINI = MASINI*YAIR ;

*--------------------------------------------------
* vitesses de référence (tracés, filtre, fct paroi)
*--------------------------------------------------

ampl = 0.25/Ujet ;
U0 = 1.0*UJet ;
L0 = 0.7 ;
UET0 = Ujet/10.0 ;
YP = 0.05 ;
YPT= 0.05 ;

*------------------------------------------------------------------------
* Prandtl, Schmidt, viscosité (loi de Sutherland), conductivité thermique
* coefficients de diffusion moléculaire, coeff. d'échange par convection
*------------------------------------------------------------------------

Pr = 0.7 ;
Prt = 1.0 ;
Sct = 1.0 ;

MUvap = 1.6E-5 ;
MU = 1.716E-5*((T/273.0)**1.5)*(273.0+110.5)/(T+110.5) ;
NU = MU/RHO ;
Lambda = Mu*CP/Pr ;
alpha = Lambda/RHO/CP ;

DH2O = 2.55E-5 ;
DH2 = 7.12E-5 ;
DO2 = 2.06E-5 ;

H1 = 10.0 ;
H2 = H1/CP/RHO ;

*-----------------------------------
* température initiale du condenseur
*-----------------------------------

TP°C =  40. ;

Tcond = TP°C + 273.15 ;

*-----------------------------------
* Reynolds et Richardson d'injection
*-----------------------------------

VD = Q0 / (RHOjet*Sjet) ;
RI0 = (RHO - RHOjet)*2.0*RJ*9.81 / (RHO*VD*VD) ;
RE0 = RHOjet*VD*2.0*RJ / MUvap ;

opti echo 0 ;
mess '______________________________________________________________';
mess ' ' ;
mess 'VOLUME FLUIDE (m3) =' VOLT  ;
mess 'NOMBRE D ELTS TOTAL =' nemt  ;
mess 'SURFACE DE CONDENSATION (m2) =' SURFT  ;
mess 'MASSE TOTALE ini ='  MASINI  'MAIRini =' MAIRINI
                                   'MH2Oini =' MH2OINI ;
mess 'YH2Oini =' YH2O  'YAIRini =' YAIR ;
mess 'RHOini =' RHO  'RHOH2Oini =' RHOH2O  'RHOAIRini =' RHOAIR ;
mess 'RTini =' PSI  'RTjet =' PSIJet  ;
mess 'ETOTini (J) =' ETini 'Ejet (J/s) =' Ejet ;
mess 'ESini (J/m3) =' ESini ;
mess 'Etransv (J/s) =' Etran  ;
mess 'CPAIR =' CPAIR  'CPH2O =' CPH2O  'CPini =' CP ;
mess 'CVAIR =' CVAIR  'CVH2O =' CVH2O  'CVini =' CV ;
mess 'GAMMA =' gamma  ;
mess 'RAIR =' RAIR  'RH2O =' RH2O  'Rini =' R ;
mess 'YH2OJet =' YH2OJet  'YAIRJet =' YAIRJet ;
mess 'RHOjet =' RhoJet 'Gjet =' GJet  'UJet =' UJet ;
mess 'NU =' nu  'MU =' MU  'alpha gaz =' alpha   ;
mess 'RICHARDSON =' RI0  'REYNOLDS =' RE0  ;
mess 'Pression en Pa =' P  'Pression en bar =' Pbar;
mess 'Vdéb =' VD ;
mess '______________________________________________________________';
opti echo 1 ;

* opti donn 5 ;

*=====================================================================*
* TABLE EQEX CONTENANT LES EQUATIONS A RESOUDRE :                     *
*  0) FILTRE K-E                                                      *
*  1) QUANTITE DE MOUVEMENT     --- OPERATEUR NSKE                    *
*  2) EQUATION DE L'ENERGIE     --- OPERATEUR TSCAL                   *
*  3) TRANSPORT DES ESPECES     --- OPERATEUR TSCAL                   *
* AINSI QUE 2 PROCEDURES (CALCUL1 ET CALCUL2) POUR L'ALGORITHME       *
* 'FAIBLE MACH'                                                       *
*  4) CONDITIONS AUX LIMITES                                          *
*=====================================================================*

RV = 'EQEX' $MT    'ITMA'   200       'ALFA' 0.9  'TFINAL' 2.5

 'ZONE' $MT    'OPER' 'CALCUL1'
 'ZONE' $MT    'OPER' 'FILTREKE' U0 L0 NU 'UN'  'INCO'      'KN' 'EN'
 'ZONE' $PTOT  'OPER' 'FPU'      NU  'UET' YP   'INCO' 'UN' 'KN' 'EN'
 'OPTI' 'CONS' 'SUPG'
 'ZONE' $MT    'OPER' 'NSKE'    'RHOC' MU 'MUT' 'UN' 'ROG'
                                                'INCO' 'GN' 'KN' 'EN' ;

RV = 'EQEX' RV
'ZONE' $PCON 'OPER' 'FPT' 1. NU 1. alpha 'UTC' YPT 'H' 'TP' 'INCO' 'TN'
 'OPTI' 'NOCONS' 'SUPG'
 'ZONE' $MT    'OPER' 'TSCAL' alpha 'UN' 'SE' 'NUT'  Prt  'INCO' 'TN'

 'ZONE' $PCON  'OPER' 'ECHI'     'KY'  'YVI'            'INCO' 'YH2O'
 'OPTI' 'NOCONS' 'SUPG'
 'ZONE' $MT    'OPER' 'TSCAL' DH2O 'UN'  0.  'NUT' SCT  'INCO' 'YH2O'
 'ZONE' $MT    'OPER' 'CALCUL2' ;


*===================== conditions aux limites ==========================

RV = 'EQEX' RV
 'CLIM' 'GN' 'UIMP' (AXE  et PCON)  0.
        'GN' 'VIMP' (BAS2 et HAUT)  0.
        'GN' 'UIMP'  INJ        0.
        'GN' 'VIMP'  INJ    GJet
        'KN' 'TIMP'  INJ    KJet
        'EN' 'TIMP'  INJ    EPJet ;
RV = 'EQEX' RV
 'CLIM' 'TN'   'TIMP' INJ    TJet
        'YH2O' 'TIMP' INJ    YH2OJet ;

*===========================================================
* TABLE EQPR POUR L'EQUATION DE POISSON (SOLVEUR ELLIPTIQUE) 
*===========================================================

RVP = 'EQPR' $MT    KTYPI 1
        'ZONE' $MT     'OPER' 'PRESSION' 'SP'
        'PIMP' 0.  ;


*==========================================================
* TABLE INCO CONTENANT LES INCONNUES ET DONNEES DU PROBLEME 
*==========================================================

  RV.'PRESSION' = RVP ;
  RV.'NOMVI' = 'GN' ;
  RV.'INCO' = 'TABLE' 'INCO' ;
  RVP.'INCO' = RV.'INCO' ;

  $FLUID = $MT ;
  $PAROI = $PTOT ;

* inconnues des équations différentielles

  RV.INCO.'GN' = kcht $FLUID VECT SOMMET (0. 0.) ;
  RV.INCO.'EN' = kcht $FLUID SCAL SOMMET   1.E-5 ;
  RV.INCO.'KN' = kcht $FLUID SCAL SOMMET   1.E-5 ;
  RV.INCO.'YH2O'= kcht $FLUID SCAL SOMMET  YH2O  ;
  RV.INCO.'TN'   = kcht $FLUID SCAL SOMMET  T    ;

* matrices masse pour calcul des moyennes aux noeuds

  RV.'D0' = DOMA $FLUID 'XXDIAGSI' ;
  RV.'DI' = DOMA $PCON  'XXDIAGSI' ;

* variables 0D : masse totale, masse vapeur, energie, pression

  RV.INCO.'ROT0D' = RHO    ;
  RV.INCO.'ROV0D' = RHOH2O ;
  RV.INCO.'ES0D' =  ESini ;
  RV.INCO.'PR0D' =  P    ;

* debit de masse injecté, masse condensée

  RV.INCO.'DEBIT' = Q0 ;
  RV.INCO.'MASCD' = 0. ;

* inconnues auxiliaires

  RV.INCO.'UN' = kcht $FLUID VECT SOMMET (0. 0.) ;
  RV.INCO.'PSIN' = kcht $FLUID SCAL SOMMET   PSI ;
  RV.INCO.'PSI1' = kcht $FLUID SCAL SOMMET   PSI ;

* variables modèle de turbulence

  RV.INCO.'UET' = kcht $PTOT  SCAL CENTRE  UET0 ;
  RV.INCO.'UTC' = kcht $PCON  SCAL CENTRE  UET0 ;
  RV.INCO.'MUT' = kcht $FLUID SCAL CENTRE  Mu ;
  RV.INCO.'NUT' = kcht $FLUID SCAL CENTRE  Nu ;

* masse volumique

  RV.INCO.'RHO' = kcht $FLUID SCAL SOMMET  RHO    ;
  RV.INCO.'RHO1'= kcht $FLUID SCAL SOMMET  RHO    ;
  RV.INCO.'RHOC'= kcht $FLUID SCAL CENTRE  RHO    ;

* fractions massiques

  RV.INCO.'YAIR' = kcht $FLUID SCAL SOMMET  YAIR   ;

* Cv, R, et Cp du mélange

  RV.INCO.'CV' = kcht $FLUID SCAL SOMMET CV ;
  RV.INCO.'RN' = kcht $FLUID SCAL SOMMET R  ;
  RV.INCO.'CP' = kcht $FLUID SCAL SOMMET CP ;

* à la paroi coef d'ech, frac vap, temp, flux de masse

  RV.INCO.'H'   = kcht $PCON SCAL CENTRE  H2  ;
  RV.INCO.'K'   = kcht $PCON SCAL CENTRE  0.  ;
  RV.INCO.'KY'  = kcht $PCON SCAL CENTRE  0.  ;
  RV.INCO.'KS'  = kcht $PCON SCAL SOMMET  0.  ;
  RV.INCO.'YVI' = kcht $PCON SCAL CENTRE  0.  ;
  RV.INCO.'YVS' = kcht $PCON SCAL SOMMET  0.  ;
  RV.INCO.'TC'  = kcht $PCON SCAL SOMMET  Tcond ;
  RV.INCO.'TP'  = kcht $PCON SCAL CENTRE  Tcond ;
  RV.INCO.'FCOND' = kcht $PCON SCAL SOMMET  0. ;
  RV.INCO.'QC'  = 0. ;
  RV.INCO.'MCOND' = 0. ;

* termes sources (Poisson/énergie/QDM)

  RV.INCO.'SP' = KCHT $FLUID SCAL CENTRE   0.    ;
  RV.INCO.'SE' = kcht $FLUID SCAL CENTRE   0.    ;
  RV.INCO.'ROG'= kcht $FLUID VECT CENTRE (0. 0.) ;

* pression

  RV.INCO.'PM' = P ;

* suivi des valeurs moyennes calculées en 2D

  RV.INCO.'TEMPS' = PROG 0. ;
  RV.INCO.'PRESS' = PROG P  ;
  RV.INCO.'MTOTA' = PROG MASINI ;
  RV.INCO.'MTHEO' = PROG MASINI ;
  RV.INCO.'ETOT'  = PROG ETini  ;
  RV.INCO.'PMH2O' = PROG MH2OINI ;
  RV.INCO.'PMAIR' = PROG MAIRINI ;
  RV.INCO.'PMH2OT' = PROG MH2OINI ;
  RV.INCO.'PMAIRT' = PROG MAIRINI ;
  RV.INCO.'FCDST'  = PROG 0. ;

* suivi des variables purement 0D

  RV.INCO.'MT0D' = prog MASINI  ;
  RV.INCO.'MV0D' = prog MH2OINI ;
  RV.INCO.'PT0D' = prog P       ;
  RV.INCO.'PV0D' = prog PH2O    ;
  RV.INCO.'PA0D' = prog PAIR    ;
  RV.INCO.'ET0D' = prog ETini   ;
  RV.INCO.'RO0D' = prog RHO     ;
  RV.INCO.'T0D'  = prog (T-273.15) ;
  RV.INCO.'H0D'  = prog Hini    ;

*===================================================================*
*                    EXECUTION ET SAUVEGARDE                        *
*===================================================================*

* on gardera une valeur tous les NSAUV pas de temps

NSAUV     =  20 ;
RV.'FIDT' = NSAUV ;

exec rv ;

*===================================================================*
*                         POST TRAITEMENT                           *
*===================================================================*
SI GRAPH ;

  opti isov lign ;

  TRAC MT 'TITR' 'MAILLAGE ' ;

  MFLUID = MT ;

  gn1 = 'VECT' (RV.'INCO'.'GN') ampl UX UY VERT ;
  'TRAC' gn1  mt cnt
  'TITR' ' CHAMP DE LA VITESSE MASSIQUE rho.u (Kg.m-².s-1)' ;

  un1 = 'VECT' (RV.'INCO'.'UN') ampl UX UY VERT ;
  'TRAC' un1  mt cnt
  'TITR' ' CHAMP DE VITESSES U (m/s)' ;

  Vy = EXCO UY RV.INCO.'UN' ;
  EVOLVP = evol CHPO Vy AXE ;
  DESS EVOLVP TITX 'AXE (m)' TITY 'Vitesse (m/s)'
            TITR 'VITESSE LE LONG DE L AXE (m/s)';

  EVOLVP = evol CHPO Vy PCON ;
  DESS EVOLVP TITX 'PAROI COND. (m)' TITY 'Vitesse (m/s)'
            TITR 'VITESSE LE LONG DE LA PAROI CONDENSANTE (m/s)';

  EVOLC  = evol CHPO RV.INCO.'FCOND' PCON ;
  DESS EVOLC TITX 'PAROI COND. (m)' TITY 'FLUX (kg/m2s)'
            TITR 'FLUX DE CONDENSATION SUR LA PAROI VERTICALE (kg/m2s)';

  'TRAC'      RV.'INCO'.'RHO' MFLUID cnt
  'TITR' 'CHAMP DE LA MASSE VOLUMIQUE: RHO (Kg.m-3)' ;

  'TRAC'      RV.'INCO'.'YH2O' MFLUID  cnt
  'TITR' 'CHAMP DE LA FRACTION MASSIQUE DE VAPEUR YH2O' ;


     TN = kops RV.'INCO'.'TN'  '-' 273.15 ;
  'TRAC'      TN  MFLUID  cnt
  'TITR' 'TEMPERATURE DU GAZ (en °C)' ;

    nut = RV.INCO.'NUT' ;
    nutnu = kops NUT '/' NU ;
    nutnu = elno $fluid nutnu ;
  'TRAC'      NUTNU   MFLUID  cnt
  'TITR' 'VISCOSITE TURBULENTE ADIMENSIONNEE: NUT/NU' ;



EVOLP1 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'PRESSION'
                RV.INCO.'PRESS' ;
EVOLP2 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'PRESSION'
                RV.INCO.'PT0D' ;
EVOLP3 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'PRESSION'
                RV.INCO.'PV0D' ;
EVOLP4 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'PRESSION'
                RV.INCO.'PA0D' ;
EVOLP1 = EVOLP1 coul vert ;
TAB1 = TABLE ;
TAB1.1 = 'REGU MARQ CROI ' ;
TAB1.2 = 'REGU MARQ PLUS ' ;
TAB1.3 = 'REGU MARQ CARR ' ;
TAB1.4 = 'REGU MARQ TRIA ' ;
TAB1 . 'TITRE' = TABLE ;
TAB1.'TITRE' . 1 = MOT 'PTOT MULTI-D' ;
TAB1.'TITRE' . 2 = MOT 'PTOT 0D' ;
TAB1.'TITRE' . 3 = MOT 'P VAPEUR 0D' ;
TAB1.'TITRE' . 4 = MOT 'P AIR 0D' ;
  DESS (EVOLP1 ET EVOLP2 ET EVOLP3 ET EVOLP4)
                      LEGE MIMA TAB1 TITR 'PRESSIONS MOYENNES (Pa)' ;
  DESS (EVOLP1 ET EVOLP2)
                      LEGE MIMA TAB1 TITR 'PRESSION TOTALE (Pa)' ;

EVOLR = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'RHO 0D'
                              RV.INCO.'RO0D' ;
  DESS  EVOLR MIMA TITR  'MASSE VOLUMIQUE MOYENNE (kg/m-3)' ;

EVOLT = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'TEMPERATURE'
                              RV.INCO.'T0D' ;
  DESS  EVOLT MIMA TITR  'TEMPERATURE MOYENNE (°C)' ;

EVOLH = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'ENTHALPIE'
                              RV.INCO.'H0D' ;
  DESS  EVOLH MIMA TITR  'ENTHALPIE MASSIQUE MOYENNE (J/kg)' ;

EVOLF = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'FLUX CONDENSE'
                              RV.INCO.'FCDST' ;
  DESS  EVOLF MIMA TITR  'FLUX DE MASSE CONDENSEE (kg/s)' ;


EVOLM1 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'MASSE [kg]'
                RV.INCO.'MTHEO' ;
EVOLM2 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'MASSE [kg]'
                RV.INCO.'MTOTA' ;
EVOLM1 = EVOLM1 COUL ROUG ;
EVOLM2 = EVOLM2 COUL VERT ;
TAB1 = TABLE ;
TAB1.1 = 'REGU MARQ CROI' ;
TAB1.2 = 'REGU MARQ PLUS' ;
TAB1 . 'TITRE' = TABLE ;
TAB1.'TITRE' . 1 = MOT 'THEORIQUE' ;
TAB1.'TITRE' . 2 = MOT 'BILAN MULTI-D' ;
DESS (EVOLM1 ET EVOLM2) LEGE MIMA TAB1 titr 'MASSE TOTALE (kg)' ;


EVOLM1 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'MASSE H2O kg'
                RV.INCO.'PMH2OT' ;
EVOLM2 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'MASSE H2O kg'
                RV.INCO.'PMH2O' ;
EVOLM1 = EVOLM1 COUL ROUG ;
EVOLM2 = EVOLM2 COUL VERT ;
TAB1 = TABLE ;
TAB1.1 = 'REGU MARQ CROI ' ;
TAB1.2 = 'REGU MARQ PLUS ' ;
TAB1 . 'TITRE' = TABLE ;
TAB1.'TITRE' . 1 = MOT 'THEORIQUE' ;
TAB1.'TITRE' . 2 = MOT 'BILAN MULTI-D' ;
DESS (EVOLM1 ET EVOLM2)  LEGE MIMA TAB1 titr 'MASSE H2O (kg)' ;


EVOLM1 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'MASSE AIR kg'
                RV.INCO.'PMAIRT' ;
EVOLM1 = EVOLM1 COUL ROUG ;
EVOLM2 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'MASSE AIR kg'
                RV.INCO.'PMAIR' ;
EVOLM2 = EVOLM2 COUL VERT ;
TAB1 = TABLE ;
TAB1.1 = 'REGU MARQ CROI ' ;
TAB1.2 = 'REGU MARQ PLUS ' ;
TAB1 . 'TITRE' = TABLE ;
TAB1.'TITRE' . 1 = MOT 'THEORIQUE' ;
TAB1.'TITRE' . 2 = MOT 'BILAN MULTI-D' ;
  DESS (EVOLM1 ET EVOLM2) LEGE TAB1 titr 'MASSE AIR (kg)' ;


EVOLE1 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'ENERGIE'
                RV.INCO.'ETOT' ;
EVOLE2 = EVOL MANU 'TEMPS [s]' RV.INCO.'TEMPS' 'ENERGIE'
                RV.INCO.'ET0D' ;
EVOLE1 = EVOLE1 coul vert ;
TAB1 = TABLE ;
TAB1.1 = 'REGU MARQ CROI ' ;
TAB1.2 = 'REGU MARQ CARR ' ;
TAB1 . 'TITRE' = TABLE ;
TAB1.'TITRE' . 1 = MOT 'MULTI-D' ;
TAB1.'TITRE' . 2 = MOT '0D' ;
DESS (EVOLE1 ET EVOLE2) LEGE MIMA TAB1 TITR 'ENERGIE TOTALE (J)' ;

FINSI ;

*===================================================================*
*            TESTS DE BON FONCTIONNEMENT (à 5 %)                    *
*===================================================================*

DELTAP = (P - RV.INCO.'PM' - 1673.)/1673. ;
MH2O = RV.INCO.'ROV0D' * VOLT ;
DELTAM = (MH2OINI - MH2O - 0.586)/0.586 ;

SI ( (ABS DELTAP) > 0.05 ) ;
   ERREUR 5 ;
FINSI ;

SI ( (ABS DELTAM) > 0.05 ) ;
   ERREUR 5 ;
FINSI ;

FIN ;

 

 

© Cast3M 2003 - All rights reserved.
Disclaimer