Numérotation des lignes :

* fichier :  konv_resi_dem3D_constant_state.dgibi*************************************************************************************************************************************************************************************************************** APPROCHE VF "Cell-Centred Formulation" pour la    ******** solution des                                      **** **** Equations d'Euler pour un gaz parfait             ******** Approche DEM pour la combustion                   ******** OPERATEURS PRET, KONV                             ******** 3D                                                ********                                                   ******** Consistency  (phase 1 and 2)                      ********                                                   ******** Methodes: VLH, SS, AUSMPUP                        ********                                                   ******** A. BECCANTINI DM2S/SFME/LTMF    DECEMBRE 2010     ***************************************************************  'OPTION'  'DIME' 3 'ELEM' 'CUB8' 'ECHO' 1 'TRAC' 'X' ; **** GRAPH*  GRAPH = FAUX ;* GRAPH = VRAI ; **** Cas homogene : la table proprieté de gaz ***************************************************** The table for the properties of the gas ****************************************************** PGAS = 'TABLE' ;***** Order of the polynomial order for cv = cv(T) *    For T > TMAX, cv(T) = cv(Tmax)*  PGAS . 'TMAX' = 6000.0 ; PGAS . 'NORD' = 4 ;***** Species involved in the mixture (before or after*    the chemical reaction)* PGAS . 'SPECIES' = 'MOTS' 'H2  ' 'O2  ' 'H2O ' 'N2  ' ;****** Coefficient of the chemical reaction.*    Note that for the first species this coefficient should be positive*    Normal, we take it equal to 1.**    H2 '+' 0.5 O2 ---> H2O* PGAS . 'CHEMCOEF' = 'PROG' 1.0 0.5 -1.0 0.0 ;* **** Mass fraction of the first species before and after the combustion*    Final mass fractions of the species with positive coefficients.*    Final mass fractions of the species with non-positive coefficient.*    The mass fraction of the last species is not given.* PGAS . 'MASSFRA' = 'PROG' 0.285219E-01  0.964039E-11  0.765104E-10                           0.127442E-10 ; PGAS . 'MASSFRA' = 'PROG' 0.285219E-01  0.964039E-11  0.765104E-10                           0.127442E-10 ;***** Coef with the gas properties* PGAS .  'H2  ' = 'TABLE'  ; PGAS .  'H2O ' = 'TABLE'  ; PGAS .  'N2  ' = 'TABLE'  ; PGAS .  'O2  ' = 'TABLE'  ;***** Runiv (J/mole/K)* PGAS . 'RUNIV' = 8.31441 ;***** W (kg/mole). Gas constant (J/kg/K = Runiv/W)* PGAS .  'H2  ' . 'W' = 2.016E-3 ; PGAS .  'O2  ' . 'W' = 31.999E-3 ; PGAS .  'H2O ' . 'W' = 18.0155E-3 ; PGAS .  'N2  ' . 'W' = 28.013E-3 ;***** Polynomial coefficients * PGAS .  'H2  ' . 'A' = 'PROG'  9834.91866 0.54273926 0.000862203836                               -2.37281455E-07 1.84701105E-11 ; PGAS .  'H2O ' . 'A' = 'PROG' 1155.95625 0.768331151 -5.73129958E-05                              -1.82753232E-08 2.44485692E-12 ; PGAS .  'N2  ' . 'A' = 'PROG' 652.940766 0.288239099 -7.80442298E-05                              8.78233606E-09 -3.05514485E-13 ; PGAS .  'O2  ' . 'A' = 'PROG' 575.012333  0.350522002 -0.000128294865                              2.33636971E-08 -1.53304905E-12;***** Formation enthalpies (energies) at 0K (J/Kg)* PGAS .  'H2  ' . 'H0K' = -4.195D6 ; PGAS .  'H2O ' . 'H0K' = -1.395D7 ; PGAS .  'N2  ' . 'H0K' = -2.953D5 ; PGAS .  'O2  ' . 'H0K' = -2.634D5 ;  *************************** ***** DOMAINE SPATIAL  *******************************  A1 = 0.0D0 0.0D0 0.0; A2 = 1.0D0 0.0D0 0.0; A3 = 2.0D0 0.0D0 0.0; A4 = 2.0D0 1.0D0 0.0; A5 = 1.0D0 1.0D0 0.0; A6 = 0.0D0 1.0D0 0.0;  L12 = A1 'DROIT' 1 A2; L23 = A2 'DROIT' 1 A3; L34 = A3 'DROIT' 1 A4; L45 = A4 'DROIT' 1 A5; L56 = A5 'DROIT' 1 A6; L61 = A6 'DROIT' 1 A1; L25 = A2 'DROIT' 1 A5;   BAS1 = 'DALL' L12 L25 L56 L61         'PLANE'; DOM1 = 'VOLUME' BAS1 'TRANSLATION' 1 (0.0 0.0 1.0) ; BAS2 = 'DALL' L23 L34 L45 ('INVERSE' L25)         'PLANE'; DOM2 = 'VOLUME' BAS2 'TRANSLATION' 1 (0.0 0.0 1.0) ;  DOM10 = DOM1 ; DOM20 = DOM2 ; DOMTOT = DOM1 'ET' DOM2 ; 'ELIMINATION' 0.0001 DOMTOT ; **** Point ou on controlle la consistence*  P10 = 1.0 0.5 0.5 ;  $DOMTOT = 'MODELISER' DOMTOT 'EULER';$DOM1 = 'MODELISER'  DOM1 'EULER'; $DOM2 = 'MODELISER' DOM2 'EULER'; TDOMTOT = 'DOMA'$DOMTOT 'VF'; TDOM1 = 'DOMA'  $DOM1 'VF'; TDOM2 = 'DOMA'$DOM2 'VF'; MDOM1 = TDOM1 . 'QUAF' ; MDOM2 = TDOM2 . 'QUAF' ; MDOMTOT = TDOMTOT . 'QUAF' ;  'ELIM' (MDOMTOT 'ET' MDOM1 'ET' MDOM2) 1.E-6 ;   'SI' GRAPH;    'TRACER' (('DOMA' $DOMTOT 'MAILLAGE') 'ET' ('DOMA'$DOMTOT 'FACEL') 'ET' P1) 'TITRE' 'Domaine et FACEL'; 'FINSI' ; * EPS = 1.0D-16 ; K0 = 10.0 ;* ********************************************** Etats gauche et droite ************************************************************* There are 3 fluxes to control :* 1 -> 2  can be checked by considering an exact reactive shock* 2 -> 1  can be checked by considering an exact reactive shock* 1 -> 1  can be checked via consistency (or via an exact non-reactive*         or by comparing the results with a non-reactive one)* 2 -> 2  can be checked via consistency (or via an exact non-reactive*         or by comparing the results with a non-reactive one)** Case 1 -> 1* Constant state* tg1 = 293.16 ; td1 = 293.16 ; pg1 = 1.023e5 ; pd1 = 1.023e5 ; ung1 = 122.0 ; und1 = 122.0 ; utg1 = 101.0 ; utd1 = 101.0 ; uvg1 = 107.; uvd1 = 107.; tg2 = 2800.15 ; td2 = 2800.15 ; pg2 = 1.023e5 ; pd2 = 1.023e5 ; ung2 = 150.0 ; und2 = 150.0 ; utg2 = 160.0 ; utd2 = 160.0 ; uvg2 = 113.0 ; uvd2 = 113.0 ;  TN1 = 'PROG' tg1 td1 ; TN2 = 'PROG' tg2 td2 ; ; PN1 = 'PROG' pg1 pd1 ; PN2 = 'PROG' pg2 pd2 ; UN1 = 'PROG' ung1 und1 ; UN2 = 'PROG' ung2 und2 ; UT1 = 'PROG' utg1 utd1 ; UT2 = 'PROG' utg2 utd2 ; UV1 = 'PROG' uvg1 uvd1 ; UV2 = 'PROG' uvg2 uvd2 ;  alph1 = 0.1 ; alph2 = 1.0 '-' alph1 ; ALPHA1 = 'PROG' alph1 alph1 ; ALPHA2 = 'PROG' alph2 alph2 ; ** ETHER = int_0^T cv(T') dT'           T <  TMAX*       = int_0^TMAX cv(T') dT' '+'*         cv(TMAX)                     T >= TMAX*  ESP1 = 'EXTRAIRE' (PGAS . 'SPECIES') 1 ;* DY1 = y_i - y_f for the species 1  DY1 = (('EXTRAIRE' (PGAS . 'MASSFRA') 1) '-'   ('EXTRAIRE' (PGAS . 'MASSFRA') 2)) ; COEF1 = ('EXTRAIRE' (PGAS . 'CHEMCOEF') 1) '*'    (PGAS . ESP1 . 'W') ; YFINPH1 = 1.0 ; YFINPH2 = 1.0 ; 'SI' (COEF1 > 0) ;    YPH2 = 'EXTRAIRE' (PGAS . 'MASSFRA') 2 ;    YPH1 = YPH2 '+' DY1 ; 'SINON' ;    YPH1 = 'EXTRAIRE' (PGAS . 'MASSFRA') 2 ;    YPH2 = YPH1 '-' DY1 ; 'FINSI' ; YFINPH1 = YFINPH1 '-' YPH1 ; YFINPH2 = YFINPH2 '-' YPH2 ; PRYPH1 = 'PROG' YPH1 ; PRYPH2 = 'PROG' YPH2 ; 'REPETER' BLESP (('DIME' (PGAS . 'SPECIES')) '-' 2) ;    ESP = 'EXTRAIRE' (PGAS . 'SPECIES') (&BLESP '+' 1)  ;    COEF = ('EXTRAIRE' (PGAS . 'CHEMCOEF') (&BLESP '+' 1))        '*' (PGAS . ESP . 'W') ;    DY = (DY1 * (COEF '/' COEF1)) ;    'SI' (COEF > 0) ;       YPH2 = 'EXTRAIRE' (PGAS . 'MASSFRA') (&BLESP '+' 2) ;       YPH1 = YPH2 '+' DY ;    'SINON' ;       YPH1 = 'EXTRAIRE' (PGAS . 'MASSFRA') (&BLESP '+' 2) ;       YPH2 = YPH1 '-' DY ;    'FINSI' ;    PRYPH1 = PRYPH1 'ET' ('PROG' YPH1) ;    PRYPH2 = PRYPH2 'ET' ('PROG' YPH2) ;    YFINPH1 = YFINPH1 '-' YPH1 ;    YFINPH2 = YFINPH2 '-' YPH2 ; 'FIN' BLESP ; PRYPH1 = PRYPH1 'ET' ('PROG' YFINPH1) ;  PRYPH2 = PRYPH2 'ET' ('PROG' YFINPH2) ; 'LISTE' PRYPH1 ; 'LISTE' PRYPH2 ; * TMAX = ('PROG' ('DIME' ALPHA1) '*' (PGAS . 'TMAX')) ;* TCAL1 = MIN TN1, TMAX  TCAL1 = 0.5D0 '*' ((TMAX '+' TN1) '-' ('ABS' (TN1 '-' TMAX))) ; DTN1 = TN1 '-' TCAL1 ;* TCAL1 = MIN TN1, TMAX  TCAL2 = 0.5D0 '*' ((TMAX '+' TN2) '-' ('ABS' (TN2 '-' TMAX))) ; DTN2 = TN2 '-' TCAL2 ;** Internal energy (J/kg in SI)* ETHER1 = ('PROG' ('DIME' ALPHA1) '*' 0.0) ; CV1 = ('PROG' ('DIME' ALPHA1) '*' 0.0) ; ETHER2 = ('PROG' ('DIME' ALPHA1) '*' 0.0) ; CV2 = ('PROG' ('DIME' ALPHA1) '*' 0.0) ; FUNTN1 = ('PROG' ('DIME' ALPHA1) '*' 1.0) ; FUNTN2 = ('PROG' ('DIME' ALPHA1) '*' 1.0) ; 'REPETER' BLPO ((PGAS . 'NORD') '+' 1) ;    'REPETER' BLESP ('DIME' (PGAS . 'SPECIES')) ;       ESP = 'EXTRAIRE' (PGAS . 'SPECIES') &BLESP ;       YCEL1 = 'EXTRAIRE' PRYPH1 &BLESP ;       YCEL2 = 'EXTRAIRE' PRYPH2 &BLESP ;       AA = 'EXTRAIRE' (PGAS . ESP . 'A') &BLPO ;       DCV1 = (AA * YCEL1 * FUNTN1) ;       DCV2 = (AA * YCEL2 * FUNTN2) ;       CV1 = CV1 '+' DCV1 ;       CV2 = CV2 '+' DCV2 ;       ETHER1 = ETHER1 '+' (DCV1 * TCAL1 '/' (&BLPO)) ;       ETHER2 = ETHER2 '+' (DCV2 * TCAL2 '/' (&BLPO)) ;    'FIN' BLESP ;    FUNTN1 = FUNTN1 '*' TCAL1 ;    FUNTN2 = FUNTN2 '*' TCAL2 ; 'FIN' BLPO ; ETHER1 = ETHER1 '+' (CV1 '*' DTN1) ; ETHER2 = ETHER2 '+' (CV2 '*' DTN2) ;** Formation energy/enthalpy (J/kg in SI) and gas constant (J/kg/K)* EFORM1 = 0.0 ; EFORM2 = 0.0 ; RGAS1 = 0.0 ; RGAS2 = 0.0 ; 'REPETER' BLESP ('DIME' (PGAS . 'SPECIES')) ;    ESP = 'EXTRAIRE' (PGAS . 'SPECIES') &BLESP ;    YCEL1 = 'EXTRAIRE' PRYPH1 &BLESP ;    YCEL2 = 'EXTRAIRE' PRYPH2 &BLESP ;    EFORM1 = EFORM1 '+' (YCEL1 * (PGAS . ESP . 'H0K')) ;    EFORM2 = EFORM2 '+' (YCEL2 * (PGAS . ESP . 'H0K')) ;    RGAS1 = RGAS1 '+' (YCEL1 *  (PGAS . 'RUNIV') '/'       (PGAS . ESP . 'W')) ;    RGAS2 = RGAS2 '+' (YCEL2 *  (PGAS . 'RUNIV') '/'       (PGAS . ESP . 'W')) ; 'FIN' BLESP ; EFORM1 = 'PROG' ('DIME' ETHER1) '*' EFORM1 ; EFORM2 = 'PROG' ('DIME' ETHER2) '*' EFORM2 ; ** Computation of the conservative variables* RN1 = PN1 '/' (RGAS1 '*' TN1) ; RN2 = PN2 '/' (RGAS2 '*' TN2) ; GNX1 = RN1 * UN1 ; GNY1 = RN1 * UT1 ; GNX2 = RN2 * UN2 ; GNY2 = RN2 * UT2 ; ECIN1 = 0.5D0 '*' ('PROG'    ((ung1 * ung1) '+' (utg1 * utg1) '+' (uvg1 * uvg1))    ((und1 * und1) '+' (utd1 * utd1) '+' (uvd1 * uvd1))    ); ECIN2 = 0.5D0 '*' ('PROG'    ((ung2 * ung2) '+' (utg2 * utg2) '+' (uvg2 * uvg2))    ((und2 * und2) '+' (utd2 * utd2) '+' (uvd2 * uvd2))); RETN1 = RN1 '*' (ETHER1 '+' ECIN1 '+' EFORM1) ;  RETN2 = RN2 '*' (ETHER2 '+' ECIN2 '+' EFORM2) ;** Computation of the resi contribution in (n,t)** State 1 retg1 = MAXI RETN1 ; rhog1 = 'MAXIMUM' RN1 ; f1dg1 = (ung1 '*' rhog1)  ; f2dg1 = ((f1dg1 '*' ung1) '+' pg1)  ; f3dg1 = (f1dg1 '*' utg1) ; f4dg1 = (f1dg1 '*' uvg1)  ; f5dg1 = (ung1 '*' (retg1 '+' pg1)) ;* f1dg1 = f1dg1 * alph1 ; f2dg1 = f2dg1 * alph1 ; f3dg1 = f3dg1 * alph1 ; f4dg1 = f4dg1 * alph1 ; f5dg1 = f5dg1 * alph1 ; * State 2  retg2 = MAXI RETN2 ; rhog2 = 'MAXIMUM' RN2 ; f1dg2 = (ung2 '*' rhog2)  ; f2dg2 = ((f1dg2 '*' ung2) '+' pg2)  ; f3dg2 = (f1dg2 '*' utg2) ; f4dg2 = (f1dg2 '*' uvg2)  ; f5dg2 = (ung2 '*' (retg2 '+' pg2)) ;* f1dg2 = f1dg2 * alph2 ; f2dg2 = f2dg2 * alph2 ; f3dg2 = f3dg2 * alph2 ; f4dg2 = f4dg2 * alph2 ; f5dg2 = f5dg2 * alph2 ; **************************************************************************************************************** Boucle sur les angles             *****************************************************************************************************************  DANGLE = 360 '/' 7.15; ANGLE = 0.0  ;  'REPETER' BLOC 8; **** Rotation*     ANGLE = ANGLE '+' DANGLE;    ORIG = 0.0D0 0.0D0 0.0 ;    P1   = 1.0 1.0 1.0 ;     'MESSAGE' ;    'MESSAGE'  (CHAIN 'Angle de rotation= ' ANGLE);    'MESSAGE' ;     DOM1   = DOM10   'TOURNER' ANGLE ORIG P1 ;    DOM2   = DOM20   'TOURNER' ANGLE ORIG P1 ;    P1FAC  = P10     'TOURNER' ANGLE ORIG P1 ;     DOMTOT = DOM1 ET DOM2;    'ELIMINATION' DOMTOT 1D-6;     $DOMTOT = 'MODELISER' DOMTOT 'EULER';$DOM1 = 'MODELISER'  DOM1 'EULER';    $DOM2 = 'MODELISER' DOM2 'EULER'; TDOMTOT = 'DOMA'$DOMTOT 'VF';    TDOM1 = 'DOMA'  $DOM1 'VF'; TDOM2 = 'DOMA'$DOM2 'VF';    MDOM1 = TDOM1 . 'QUAF' ;    MDOM2 = TDOM2 . 'QUAF' ;    MDOMTOT = TDOMTOT . 'QUAF' ;     'ELIM' (MDOMTOT 'ET' MDOM1 'ET' MDOM2) 1.E-6 ;    GRALP1 = 'NOMC' ('MOTS' 'UX' 'UY' 'UZ') (TDOMTOT . 'XXNORMAF')       ('MOTS' 'P1DX' 'P1DY' 'P1DZ') ; *    VINF = 'MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' 100. ;***** Redefinition de P1FAC dans $DOMTOT 'FACE'* P1FAC = ('DOMA'$DOMTOT 'FACE') 'POIN' 'PROC' P1FAC ;    XSURF = 'EXTRAIRE' ('DOMA' $DOMTOT 'XXSURFAC') P1FAC 'SCAL' ; NX = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'MX' ; NY = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'MY' ; NZ = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'MZ' ; TX = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'UX' ; TY = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'UY' ; TZ = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'UZ' ; VX = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'RX' ; VY = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'RY' ; VZ = 'EXTRAIRE' (TDOMTOT . 'MATROT') P1FAC 'RZ' ; GEOPC = ('DOMA'$DOMTOT 'FACEL') 'ELEM' 'APPUYE' 'LARGEMENT'        P1FAC ;    AA = 'CHANGER' GEOPC 'POI1' ;    PC1 = 'POIN' 1 AA ;    P2 = 'POIN' 1 ('DOMA' $DOMTOT 'CENTRE') ; PC2 = 'POIN' 3 AA ;* Si P3 n'existe pas, probleme en FACEL. 'SI' ('NEG' PC1 P2) ; ORIENT = -1 ; PCD = PC1 ; PCG = PC2 ; XVOLD = 'MAXIMUM' (TDOM1 . 'XXVOLUM') ; XVOLG = 'MAXIMUM' (TDOM2 . 'XXVOLUM') ; 'SINON' ; ORIENT = 1 ; PCD = PC2 ; PCG = PC1 ; XVOLG = 'MAXIMUM' (TDOM1 . 'XXVOLUM') ; XVOLD = 'MAXIMUM' (TDOM2 . 'XXVOLUM') ; 'FINSI' ; uxg1 = ((ung1 '*' NX) '+' (utg1 '*' TX) '+' (uvg1 '*' VX)) '*' ORIENT ; uyg1 = ((ung1 '*' NY) '+' (utg1 '*' TY) '+' (uvg1 '*' VY)) '*' ORIENT ; uzg1 = ((ung1 '*' NZ) '+' (utg1 '*' TZ) '+' (uvg1 '*' VZ)) '*' ORIENT ; uxg2 = ((ung2 '*' NX) '+' (utg2 '*' TX) '+' (uvg2 '*' VX)) '*' ORIENT ; uyg2 = ((ung2 '*' NY) '+' (utg2 '*' TY) '+' (uvg2 '*' VY)) '*' ORIENT ; uzg2 = ((ung2 '*' NZ) '+' (utg2 '*' TZ) '+' (uvg2 '*' VZ)) '*' ORIENT ; uxd1 = ((und1 '*' NX) '+' (utd1 '*' TX) '+' (uvd1 '*' VX)) '*' ORIENT ; uyd1 = ((und1 '*' NY) '+' (utd1 '*' TY) '+' (uvd1 '*' VY)) '*' ORIENT ; uzd1 = ((und1 '*' NZ) '+' (utd1 '*' TZ) '+' (uvd1 '*' VZ)) '*' ORIENT ; uxd2 = ((und2 '*' NX) '+' (utd2 '*' TX) '+' (uvd2 '*' VX)) '*' ORIENT ; uyd2 = ((und2 '*' NY) '+' (utd2 '*' TY) '+' (uvd2 '*' VY)) '*' ORIENT ; uzd2 = ((und2 '*' NZ) '+' (utd2 '*' TZ) '+' (uvd2 '*' VZ)) '*' ORIENT ;* 'OPTION' DONN 5 ; 'SI' GRAPH; 'TRACER' (('DOMA'$DOMTOT 'MAILLAGE') 'ET'            ('COULEUR' ('DOMA' $DOMTOT 'FACEL') 'ROUGE') 'ET' P1FAC) 'TITRE' 'Domaine et FACEL'; 'FINSI' ; MAILIM = 'DIFF' ('DOMA'$DOMTOT 'FACE') ('MANUEL' 'POI1' P1FAC) ; *************************** Les CHPOINTs  ***************************     CHRN1   = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' RN1) ;    CHRN2   = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' RN2) ;     CHVN1   = ('MANUEL' 'CHPO' (TDOM1 . 'CENTRE') 3 'UX' uxg1       'UY' uyg1 'UZ' uzg1) '+'               ('MANUEL' 'CHPO' (TDOM2 . 'CENTRE') 3 'UX' uxd1       'UY' uyd1 'UZ' uzd1) ;    CHVN2   = ('MANUEL' 'CHPO' (TDOM1 . 'CENTRE') 3 'UX' uxg2       'UY' uyg2 'UZ' uzg2) '+'               ('MANUEL' 'CHPO' (TDOM2 . 'CENTRE') 3 'UX' uxd2       'UY' uyd2 'UZ' uzd2) ;     CHGN1 = CHRN1 '*' CHVN1 ;    CHGN2 = CHRN2 '*' CHVN2 ;     CHRET1   = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' RETN1) ;    CHRET2   = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' RETN2) ;     CHTN1   = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' TN1) ;    CHTN2   = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' TN2) ;     CHAL1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' ALPHA1) ;    CHAL2 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' ALPHA2) ;     R1 R2 V1 V2 P1 P2 T1 T2 = 'PRIM' 'DEM' PGAS CHAL1 CHAL2      (CHAL1 * CHRN1) (CHAL2 * CHRN2) (CHAL1 * CHGN1)      (CHAL2 * CHGN2) (CHAL1 * CHRET1) (CHAL2 * CHRET2)       CHTN1 CHTN2 EPS ;     GRADAL1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0 ;    GRADAL2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0 ;    LIMAL1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1      'P1' 0.0 ;     LIMAL2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1      'P1' 0.0 ;     GRADR1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0;    GRADR2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0;    LIMR1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1      'P1' 0.0 ;     LIMR2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1      'P1' 0.0 ;     GRADV1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 9      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0      'P2DX' 0.0 'P2DY' 0.0 'P2DZ' 0.0      'P3DX' 0.0 'P3DY' 0.0 'P3DZ' 0.0 ;    GRADV2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 9      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0      'P2DX' 0.0 'P2DY' 0.0 'P2DZ' 0.0      'P3DX' 0.0 'P3DY' 0.0 'P3DZ' 0.0 ;    LIMV1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1' 0.0 'P2' 0.0 'P3' 0.0 ;     LIMV2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1' 0.0 'P2' 0.0 'P3' 0.0 ;     GRADP1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0;    GRADP2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 3      'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0;    LIMP1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1      'P1' 0.0 ;     LIMP2 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1      'P1' 0.0 ;  *****  L'operateur  'PRET'*     CHFAL1 CHFAL2 CHFRN1 CHFRN2 CHFVN1 CHFVN2 CHFPN1 CHFPN2 =     'PRET' 'DEM'  $DOMTOT CHAL1 (0.0 * GRADAL1) LIMAL1 CHAL2 (0.0 * GRADAL2) LIMAL2 R1 (0.0 * GRADR1) LIMR1 R2 (0.0 * GRADR2) LIMR2 V1 (0.0 * GRADV1) LIMV1 V2 (0.0 * GRADV2) LIMV2 P1 (0.0 * GRADP1) LIMP1 P2 (0.0 * GRADP2) LIMP2 ;* SI FAUX ; CHFRO1 = 'REDU' CHFRN1 geopc ; CHFV1 = 'REDU' CHFVN1 geopc ; CHFP1 = 'REDU' CHFPN1 geopc ; 'OPTION' donn 5 ; 'FINSI' ; ***** L'operateur 'KONV'* 'REPETER' BLMETO 3 ; 'SI' ('EGA' &BLMETO 1) ; METO = 'SS' ; 'FINSI' ; 'SI' ('EGA' &BLMETO 2) ; METO = 'VLH' ; 'FINSI' ; 'SI' ('EGA' &BLMETO 3) ; METO = 'AUSMPUP' ; 'FINSI' ; 'MESSAGE' ('CHAINE' 'METO = ' METO) ; LISTINC1 = ('MOTS' 'ALF1' 'RN1' 'RNX1' 'RUY1' 'RUZ1' 'RET1' 'ALF2' 'RN2' 'RUX2' 'RUY2' 'RUZ2' 'RET2') ; SI ('EGA' METO 'AUSMPUP') ; CHPRES DT SURF = 'KONV' 'VF' 'DEM' 'RESI' METO 'CONS'$DOMTOT PGAS LISTINC1 CHAL1 CHAL2 CHFAL1 CHFAL2 CHFRN1 CHFRN2          CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS MAILIM VINF VINF ;       'SINON' ;          CHPRES DT SURF = 'KONV' 'VF' 'DEM' 'RESI' METO 'CONS'          \$DOMTOT PGAS LISTINC1 CHAL1 CHAL2 CHFAL1 CHFAL2 CHFRN1 CHFRN2          CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS MAILIM ;       'FINSI' ; *       'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' ETHER1 1)) ;*       'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' ECIN1 1)) ;*       'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' EFORM1 1)) ;*       'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' (pg1)) ;*       'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' RN1 1)) ;*       'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' (ung1)) ;*       'OPTION' DONN 5 ;        R_1_1 = 'EXCO' ('EXTRAIRE' LISTINC1 2) CHPRES ;       R_1_2X = 'EXCO' ('EXTRAIRE' LISTINC1 3) CHPRES ;       R_1_2Y = 'EXCO' ('EXTRAIRE' LISTINC1 4) CHPRES ;       R_1_2Z = 'EXCO' ('EXTRAIRE' LISTINC1 5) CHPRES ;       R_1_3 = 'EXCO' ('EXTRAIRE' LISTINC1 6) CHPRES ;        R_1_2N = (R_1_2X '*' NX) '+' (R_1_2Y * NY) '+' (R_1_2Z * NZ);       R_1_2T = (R_1_2X '*' TX) '+' (R_1_2Y * TY) '+' (R_1_2Z * TZ);       R_1_2V = (R_1_2X '*' VX) '+' (R_1_2Y * VY) '+' (R_1_2Z * VZ);        LOGI1 = VRAI ;        f1 = 'EXTRAIRE' R_1_1 'SCAL' PCD ;       f1bis = 'EXTRAIRE' R_1_1 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f1dg1 'ABS' ;       ERRO1 = ('ABS' ((f1 * XVOLD) + (f1bis * XVOLG))) ;       ERRO2 = ('ABS' ((f1dg1 * XSURF) + (f1bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f2 = 'EXTRAIRE' R_1_2N 'SCAL' PCD ;       f2bis = 'EXTRAIRE' R_1_2N 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f2dg1 'ABS' ;       ERRO1 = ('ABS' ((f2 * XVOLD) + (f2bis * XVOLG))) ;       ERRO2 = ('ABS' ((f2dg1 * XSURF) + (f2bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f3 = 'EXTRAIRE' R_1_2T 'SCAL' PCD ;       f3bis = 'EXTRAIRE' R_1_2T 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f3dg1 'ABS' ;       ERRO1 = ('ABS' ((f3 * XVOLD) + (f3bis * XVOLG))) ;       ERRO2 = ('ABS' ((f3dg1 * XSURF) + (f3bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f4 = 'EXTRAIRE' R_1_2V 'SCAL' PCD ;       f4bis = 'EXTRAIRE' R_1_2V 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f4dg1 'ABS' ;       ERRO1 = ('ABS' ((f4 * XVOLD) + (f4bis * XVOLG))) ;       ERRO2 = ('ABS' ((f4dg1 * XSURF) + (f4bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f5 = 'EXTRAIRE' R_1_3 'SCAL' PCD ;       f5bis = 'EXTRAIRE' R_1_3 'SCAL' PCG ;       ERRTOL = 5D-7 '*' f5dg1 'ABS' ;       ERRO1 = ('ABS' ((f5 * XVOLD) + (f5bis * XVOLG))) ;       ERRO2 = ('ABS' ((f5dg1 * XSURF) + (f5bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        'SI' ('NON' LOGI1);          'MESSAGE' ;          'MESSAGE' 'OPERATEUR 'KONV', phase 1';          'MESSAGE' ('CHAINE' METO);          'MESSAGE' ;          'ERREUR' 5 ;       'FINSI' ; *      Phase 2        R_2_1 = 'EXCO'  ('EXTRAIRE' LISTINC1  8) CHPRES ;       R_2_2X = 'EXCO' ('EXTRAIRE' LISTINC1  9) CHPRES ;       R_2_2Y = 'EXCO' ('EXTRAIRE' LISTINC1 10) CHPRES ;       R_2_2Z = 'EXCO' ('EXTRAIRE' LISTINC1 11) CHPRES ;       R_2_3 = 'EXCO'  ('EXTRAIRE' LISTINC1 12) CHPRES ;        R_2_2N = (R_2_2X '*' NX) '+' (R_2_2Y * NY) '+' (R_2_2Z * NZ);       R_2_2T = (R_2_2X '*' TX) '+' (R_2_2Y * TY) '+' (R_2_2Z * TZ);       R_2_2V = (R_2_2X '*' VX) '+' (R_2_2Y * VY) '+' (R_2_2Z * VZ);        LOGI1 = VRAI ;        f1 = 'EXTRAIRE' R_2_1 'SCAL' PCD ;       f1bis = 'EXTRAIRE' R_2_1 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f1dg2 'ABS' ;       ERRO1 = ('ABS' ((f1 * XVOLD) + (f1bis * XVOLG))) ;       ERRO2 = ('ABS' ((f1dg2 * XSURF) + (f1bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f2 = 'EXTRAIRE' R_2_2N 'SCAL' PCD ;       f2bis = 'EXTRAIRE' R_2_2N 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f2dg2 'ABS' ;       ERRO1 = ('ABS' ((f2 * XVOLD) + (f2bis * XVOLG))) ;       ERRO2 = ('ABS' ((f2dg2 * XSURF) + (f2bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f3 = 'EXTRAIRE' R_2_2T 'SCAL' PCD ;       f3bis = 'EXTRAIRE' R_2_2T 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f3dg2 'ABS' ;       ERRO1 = ('ABS' ((f3 * XVOLD) + (f3bis * XVOLG))) ;       ERRO2 = ('ABS' ((f3dg2 * XSURF) + (f3bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f4 = 'EXTRAIRE' R_2_2V 'SCAL' PCD ;       f4bis = 'EXTRAIRE' R_2_2V 'SCAL' PCG ;       ERRTOL = 1D-8 '*' f4dg2 'ABS' ;       ERRO1 = ('ABS' ((f4 * XVOLD) + (f4bis * XVOLG))) ;       ERRO2 = ('ABS' ((f4dg2 * XSURF) + (f4bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        f5 = 'EXTRAIRE' R_2_3 'SCAL' PCD ;       f5bis = 'EXTRAIRE' R_2_3 'SCAL' PCG ;       ERRTOL = 5D-7 '*' f5dg2 'ABS' ;       ERRO1 = ('ABS' ((f5 * XVOLD) + (f5bis * XVOLG))) ;       ERRO2 = ('ABS' ((f5dg2 * XSURF) + (f5bis * XVOLG))) ;       LOGI2 = ERRO1 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       LOGI2 =  ERRO2 < ERRTOL ;       LOGI1 = LOGI1 'ET' LOGI2;       SI ('NON' LOGI1) ;         'MESSAGE' 'ERROR' ;         'MESSAGE' ('CHAINE' ERRO1 ' ' ERRO2) ;       'FINSI' ;        'SI' ('NON' LOGI1);          'MESSAGE' ;          'MESSAGE' 'OPERATEUR KONV';          'MESSAGE' ('CHAINE' METO);          'MESSAGE' ;          'ERREUR' 5 ;       'FINSI' ;      'FIN' BLMETO ;        **************************************************************************************************************** Fin boucle sur les angles         ***************************************************************************************************************** 'FIN' BLOC; 'FIN' ;

© Cast3M 2003 - Tous droits réservés.
Mentions légales