Télécharger konv_resi_dem3D_stationaryshock_21.dgibi
* fichier : konv_resi_dem3D_stationaryshock_21.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 **** **** **** **** Stationary shock (phase 1 '-' vs phase 2) **** **** **** **** Methodes: VLH, SS **** **** **** **** A. BECCANTINI DM2S/SFME/LTMF DECEMBRE 2010 **** *********************************************************** * *** 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) * * * **** 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 * * **** 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. * 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. * 1.00797E-3 ; PGAS . 'O2 ' . 'W' = 2. * 15.9994E-3 ; PGAS . 'H2O ' . 'W' = (PGAS . 'H2 ' . 'W' ) '+' (0.5 * (PGAS . 'O2 ' . 'W' )) ; PGAS . 'N2 ' . 'W' = 2 * 14.0067E-3 ; * **** Polynomial coefficients * -2.37281455E-07 1.84701105E-11 ; -1.82753232E-08 2.44485692E-12 ; 8.78233606E-09 -3.05514485E-13 ; 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) ; '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'; MDOM1 = TDOM1 . 'QUAF' ; MDOM2 = TDOM2 . 'QUAF' ; MDOMTOT = TDOMTOT . 'QUAF' ; 'SI' GRAPH; 'FINSI' ; * EPS = 1.0D-16 ; K0 = 45.2 ; * ******************************************* *** 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 * epsv = 0.0 ; tg1 = 327.0 ; td1 = 327.0 ; pg1 = 139000.0 ; pd1 = 139000.0 ; ung1 = -45.2 '-' epsv ; und1 = -45.2 '-' epsv ; utg1 = 0.0 ; utd1 = 0.0 ; uvg1 = 0.0 ; uvd1 = 0.0 ; * utg1 = 0.0 ; * utd1 = 0.0 ; tg2 = 2518.582685186033 ; td2 = 2518.582685186033 ; pg2 = 125279.9833247705 ; pd2 = 125279.9833247705 ; ung2 = -329.121088555842 '-' epsv ; und2 = -329.121088555842 '-' epsv ; utg2 = 0.0 ; utd2 = 0.0 ; uvg2 = 0.0 ; uvd2 = 0.0 ; * * * 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 ; 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' ; YFINPH1 = YFINPH1 '-' YPH1 ; YFINPH2 = YFINPH2 '-' YPH2 ; 'FIN' BLESP ; 'LISTE' PRYPH1 ; 'LISTE' PRYPH2 ; * * 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) * 'REPETER' BLPO ((PGAS . 'NORD') '+' 1) ; 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 ; 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 ; 'LISTE' rgas1 ; 'LISTE' rgas2 ; * * 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 ; ((ung1 * ung1) '+' (utg1 * utg1) '+' (uvg1 * uvg1)) ((und1 * und1) '+' (utd1 * utd1) '+' (uvd1 * uvd1)) ); ((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 rhog1 = 'MAXIMUM' RN1 ; fA11gd = ung1 '*' rhog1 ; fA12gd = (fA11gd '*' ung1) '+' pg1 ; fA13gd = fA11gd '*' utg1 ; fA14gd = ung1 '*' (retg1 '+' pg1); * * State 2 rhog2 = 'MAXIMUM' RN2 ; fA21gd = ung2 '*' rhog2 ; fA22gd = (fA21gd '*' ung2) '+' pg2 ; fA23gd = fA21gd '*' utg2 ; fA24gd = ung2 '*' (retg2 '+' pg2); * **************************************************** **************************************************** ******** 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'; MDOM1 = TDOM1 . 'QUAF' ; MDOM2 = TDOM2 . 'QUAF' ; MDOMTOT = TDOMTOT . 'QUAF' ; * * **** Redefinition de P1FAC dans $DOMTOT 'FACE' * 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' ; P1FAC ; AA = 'CHANGER' GEOPC 'POI1' ; * 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; 'TITRE' 'Domaine et FACEL'; 'FINSI' ; *********************** **** Les CHPOINTs **** *********************** 'UY' uyg1 'UZ' uzg1) '+' 'UY' uyd1 'UZ' uzd1) ; 'UY' uyg2 'UZ' uzg2) '+' 'UY' uyd2 'UZ' uzd2) ; CHGN1 = CHRN1 '*' CHVN1 ; CHGN2 = CHRN2 '*' CHVN2 ; 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 ; 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0 ; 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0 ; 'P1' 0.0 ; 'P1' 0.0 ; 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0; 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0; 'P1' 0.0 ; 'P1' 0.0 ; '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 ; '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 ; 'P1' 0.0 'P2' 0.0 'P3' 0.0 ; 'P1' 0.0 'P2' 0.0 'P3' 0.0 ; 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0; 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0; 'P1' 0.0 ; '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 ; 'LISTE' CHFRO1 ; 'LISTE' CHFV1 ; 'LISTE' CHFP1 ; 'LISTE' CHFRO2 ; 'LISTE' CHFV2 ; 'LISTE' CHFP2 ; '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) ; 'ALF2' 'RN2' 'RUX2' 'RUY2' 'RUZ2' 'RET2') ; SI ('EGA' METO 'AUSMPUP') ; $DOMTOT PGAS LISTINC1 CHAL1 CHAL2 CHFAL1 CHFAL2 CHFRN1 CHFRN2 CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS MAILIM VINF VINF ; 'SINON' ; $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 ; * * We verify that the residum contribution of P1FAC is the one * of a reactive stationary shock. * RA13N = (RA13X '*' NX) '+' (RA13Y * NY) '+' (RA13Z * NZ) ; RA13T = (RA13X '*' TX) '+' (RA13Y * TY) '+' (RA13Z * TZ) ; RA13V = (RA13X '*' VX) '+' (RA13Y * VY) '+' (RA13Z * VZ) ; * RA23N = (RA23X '*' NX) '+' (RA23Y * NY) '+' (RA23Z * NZ) ; RA23T = (RA23X '*' TX) '+' (RA23Y * TY) '+' (RA23Z * TZ) ; RA23V = (RA23X '*' VX) '+' (RA23Y * VY) '+' (RA23Z * VZ) ; * ERRO = 1D-7 ; HORROR = 'MAXIMUM' RA11 'ABS' ; LOGI1 = HORROR < ERRO ; 'SI' ('NON' LOGI1) ; 'MESSAGE' ('CHAINE' 'Erreur alpha ' HORROR ' > ' ERRO); 'FINSI' ; HORROR = 'MAXIMUM' RA21 'ABS' ; LOGI2 = HORROR < ERRO ; 'SI' ('NON' LOGI2) ; 'MESSAGE' ('CHAINE' 'Erreur alpha ' HORROR ' > ' ERRO); 'FINSI' ; LOGI1 = LOGI1 'ET' LOGI2; * dRA12 = ('EXTRAIRE' RA12 'SCAL' PCD) '*' XVOLD ; gRA12 = ('EXTRAIRE' RA12 'SCAL' PCG) '*' XVOLG ; dRA22 = ('EXTRAIRE' RA22 'SCAL' PCD) '*' XVOLD ; gRA22 = ('EXTRAIRE' RA22 'SCAL' PCG) '*' XVOLG ; ERRO = 1.0D-8 * fA11gd 'ABS' ; (gRA22 '+' fA21gd) dRA22) 'ABS') ; LOGI2 = HORROR < ERRO ; 'SI' ('NON' LOGI2) ; 'MESSAGE' ('CHAINE' 'Erreur density ' HORROR ' > ' ERRO); 'FINSI' ; LOGI1 = LOGI1 'ET' LOGI2; * dRA13N = ('EXTRAIRE' RA13N 'SCAL' PCD) '*' XVOLD ; gRA13N = ('EXTRAIRE' RA13N 'SCAL' PCG) '*' XVOLG ; dRA23N = ('EXTRAIRE' RA23N 'SCAL' PCD) '*' XVOLD ; gRA23N = ('EXTRAIRE' RA23N 'SCAL' PCG) '*' XVOLG ; ERRO = 1.0D-8 * fA12gd 'ABS' ; (gRA23N '+' fA22gd) dRA23N) 'ABS') ; LOGI2 = HORROR < ERRO ; 'SI' ('NON' LOGI2) ; 'MESSAGE' ('CHAINE' 'Erreur qdm_n ' HORROR ' > ' ERRO); 'FINSI' ; LOGI1 = LOGI1 'ET' LOGI2; * dRA13T = ('EXTRAIRE' RA13T 'SCAL' PCD) '*' XVOLD ; gRA13T = ('EXTRAIRE' RA13T 'SCAL' PCG) '*' XVOLG ; dRA23T = ('EXTRAIRE' RA23T 'SCAL' PCD) '*' XVOLD ; gRA23T = ('EXTRAIRE' RA23T 'SCAL' PCG) '*' XVOLG ; dRA23T gRA23T) 'ABS') ; ERRO = 1.0D-8 * fA12gd 'ABS' ; LOGI2 = HORROR < ERRO ; 'SI' ('NON' LOGI2) ; 'MESSAGE' ('CHAINE' 'Erreur qdm_t ' HORROR ' > ' ERRO); 'FINSI' ; LOGI1 = LOGI1 'ET' LOGI2; * dRA14 = ('EXTRAIRE' RA14 'SCAL' PCD) '*' XVOLD ; gRA14 = ('EXTRAIRE' RA14 'SCAL' PCG) '*' XVOLG ; dRA24 = ('EXTRAIRE' RA24 'SCAL' PCD) '*' XVOLD ; gRA24 = ('EXTRAIRE' RA24 'SCAL' PCG) '*' XVOLG ; ERRO = 1.0D-7 * fA14gd 'ABS' ; (gRA24 '+' fA24gd) dRA24) 'ABS') ; LOGI2 = HORROR < ERRO ; 'SI' ('NON' LOGI2) ; 'MESSAGE' ('CHAINE' 'Erreur energy ' HORROR ' > ' ERRO); 'FINSI' ; LOGI1 = LOGI1 'ET' LOGI2; * 'SI' ('NON' LOGI1); 'MESSAGE' ; 'MESSAGE' 'OPERATEUR KONV'; 'MESSAGE' ('CHAINE' METO); 'MESSAGE' ; 'ERREUR' ; 'FINSI' ; 'FIN' BLMETO ; **************************************************** **************************************************** ******** Fin boucle sur les angles ********* **************************************************** **************************************************** 'FIN' BLOC; 'FIN' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales