Télécharger konv_resi_gfmp_consist.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : konv_resi_gfmp_constant_state_11.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. ***********************************************************
  5. **** APPROCHE VF "Cell-Centred Formulation" pour la ****
  6. **** solution des ****
  7. **** Equations d'Euler pour un gaz parfait ****
  8. **** Approche GFMP ****
  9. **** OPERATEURS 'PRIM', PRET, KONV ****
  10. **** ****
  11. **** Consistency ****
  12. **** ****
  13. **** Methodes: GODUNOV ****
  14. **** ****
  15. **** A. BECCANTINI DM2S/SFME/LTMF DECEMBRE 2010 ****
  16. ***********************************************************
  17.  
  18. 'OPTION' 'DIME' 2 ;
  19. 'OPTION' 'ELEM' QUA4 ;
  20. 'OPTION' 'ECHO' 1 ;
  21. 'OPTION' 'TRAC' 'X' ;
  22.  
  23. *
  24. *** GRAPH
  25. *
  26. GRAPH = FAUX ;
  27. * GRAPH = VRAI ;
  28.  
  29. ***************************
  30. ***** DOMAINE SPATIAL ****
  31. ***************************
  32.  
  33. A1 = 0.0D0 0.01D0;
  34. A2 = 1.011D0 0.21D0;
  35. A3 = 2.12D0 0.021D0;
  36. A4 = 2.11D0 1.09D0;
  37. A5 = 1.023D0 1.132D0;
  38. A6 = 0.098D0 1.199D0;
  39.  
  40. L12 = A1 'DROIT' 1 A2;
  41. L23 = A2 'DROIT' 1 A3;
  42. L34 = A3 'DROIT' 1 A4;
  43. L45 = A4 'DROIT' 1 A5;
  44. L56 = A5 'DROIT' 1 A6;
  45. L61 = A6 'DROIT' 1 A1;
  46. L25 = A2 'DROIT' 1 A5;
  47.  
  48. DOM10 = 'DALL' L12 L25 L56 L61
  49. 'PLANE';
  50.  
  51. DOM20 = 'DALL' L23 L34 L45 ('INVERSE' L25)
  52. 'PLANE';
  53.  
  54. *
  55. *** Point ou on controlle la consistence
  56. *
  57. P10 = 1.0 0.5;
  58.  
  59. *
  60. *******************************************
  61. *** Etats gauche et droite ****************
  62. *******************************************
  63. *
  64. * Case 1 -> 1
  65. * Constant state
  66. *
  67. phg1 = 0.77 ;
  68. phd1 = 1.56 ;
  69. yg1 = 0.11;
  70. yd1 = 0.13;
  71. yg2 = 0.11;
  72. yd2 = 0.13;
  73. ag1 = 0.45;
  74. ad1 = 0.27;
  75. ag2 = 0.45;
  76. ad2 = 0.27;
  77. gam = 1.2D0 ;
  78. pinf = 1.011d5 ;
  79. rhog1 = 1.17e0 ;
  80. rhod1 = 1.17e0 ;
  81. pg1 = 1.023e5 ;
  82. pd1 = 1.023e5 ;
  83. ung1 = 122.0 ;
  84. und1 = 122.0 ;
  85. utg1 = 101.0 ;
  86. utd1 = 101.0 ;
  87. * utg1 = 0.0 ;
  88. * utd1 = 0.0 ;
  89. eing1 = (1. '/' (gam '-' 1.0D0)) * (pg1 '+' (gam * pinf)) ;
  90. eing1 = eing1 '/' rhog1 ;
  91. eind1 = (1. '/' (gam '-' 1.0D0)) * (pd1 '+' (gam * pinf)) ;
  92. eind1 = eind1 '/' rhod1 ;
  93. etg1 = 0.0 ;
  94. utd1 = 0.0 ;
  95.  
  96. PN1 = 'PROG' pg1 pd1 ;
  97. RN1 = 'PROG' rhog1 rhod1 ;
  98. UN1 = 'PROG' ung1 und1 ;
  99. UT1 = 'PROG' utg1 utd1 ;
  100. EIN1 = 'PROG' eing1 eind1 ;
  101. PHI1 = 'PROG' phg1 phd1 ;
  102. Y1 = 'PROG' yg1 yd1 ;
  103. Y2 = 'PROG' yg2 yd2 ;
  104. ALPHA1 = 'PROG' ag1 ad1 ;
  105. ALPHA2 = 'PROG' ag2 ad2 ;
  106.  
  107. *
  108. * Computation of the conservative variables
  109. *
  110. GNX1 = RN1 * UN1 ;
  111. GNY1 = RN1 * UT1 ;
  112. ECIN1 = 0.5D0 '*' ('PROG' ((ung1 * ung1) '+' (utg1 * utg1))
  113. ((und1 * und1) '+' (utd1 * utd1)) );
  114. RETN1 = RN1 '*' (EIN1 '+' ECIN1) ;
  115.  
  116. *
  117. * Computation of the resi contribution in (n,t)
  118. *
  119. retg1 = MAXI RETN1 ;
  120. rhog1 = 'MAXIMUM' RN1 ;
  121. f0gd = ung1 * rhog1 * phg1 ;
  122. f1gd = ung1 '*' rhog1 ;
  123. f2gd = (f1gd '*' ung1) '+' pg1 ;
  124. f3gd = f1gd '*' utg1 ;
  125. f4gd = ung1 '*' (retg1 '+' pg1) ;
  126. f5gd = ung1 * rhog1 * yg1 ;
  127. f6g = 0.0 ;
  128. f6d = ung1 * (ag1 '-' ad1) ;
  129.  
  130. ****************************************************
  131. ****************************************************
  132. ******** Boucle sur les angles *********
  133. ****************************************************
  134. ****************************************************
  135.  
  136. DANGLE = 360 '/' 7.15;
  137. ANGLE = 11.3 ;
  138.  
  139. 'REPETER' BLOC 8;
  140.  
  141. *
  142. *** Rotation
  143. *
  144.  
  145. ANGLE = ANGLE '+' DANGLE;
  146. ORIG = 0.0D0 0.0D0;
  147.  
  148. 'MESSAGE' ;
  149. 'MESSAGE' (CHAIN 'Angle de rotation= ' ANGLE);
  150. 'MESSAGE' ;
  151.  
  152. DOM1 = DOM10 'TOURNER' ANGLE ORIG;
  153. DOM2 = DOM20 'TOURNER' ANGLE ORIG;
  154. P1FAC = P10 'TOURNER' ANGLE ORIG;
  155.  
  156. DOMTOT = DOM1 ET DOM2;
  157. 'ELIMINATION' DOMTOT 1D-6;
  158.  
  159. $DOMTOT = 'MODELISER' DOMTOT 'EULER';
  160. $DOM1 = 'MODELISER' DOM1 'EULER';
  161. $DOM2 = 'MODELISER' DOM2 'EULER';
  162. TDOMTOT = 'DOMA' $DOMTOT 'VF';
  163. TDOM1 = 'DOMA' $DOM1 'VF';
  164. TDOM2 = 'DOMA' $DOM2 'VF';
  165. MDOM1 = TDOM1 . 'QUAF' ;
  166. MDOM2 = TDOM2 . 'QUAF' ;
  167. MDOMTOT = TDOMTOT . 'QUAF' ;
  168. GRALP1 = 'NOMC' ('MOTS' 'UX' 'UY') ('DOMA' $DOMTOT 'XXNORMAF')
  169. ('MOTS' 'P1DX' 'P1DY') ;
  170.  
  171. 'ELIM' (MDOMTOT 'ET' MDOM1 'ET' MDOM2) 1.E-6 ;
  172.  
  173. *
  174. VINF = 'MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' 100. ;
  175. *
  176. **** Redefinition de P1FAC dans $DOMTOT 'FACE'
  177. *
  178.  
  179. P1FAC = ('DOMA' $DOMTOT 'FACE') 'POIN' 'PROC' P1FAC ;
  180. XSURF = 'EXTRAIRE' ('DOMA' $DOMTOT 'XXSURFAC') P1FAC 'SCAL' ;
  181. NX = 'EXTRAIRE' ('DOMA' $DOMTOT 'XXNORMAF') P1FAC 'UX' ;
  182. NY = 'EXTRAIRE' ('DOMA' $DOMTOT 'XXNORMAF') P1FAC 'UY' ;
  183. TX = -1 * NY ;
  184. TY = NX ;
  185.  
  186. GEOPC = ('DOMA' $DOMTOT 'FACEL') 'ELEM' 'APPUYE' 'LARGEMENT'
  187. P1FAC ;
  188. AA = 'CHANGER' GEOPC 'POI1' ;
  189. PC1 = 'POIN' 1 AA ;
  190. P2 = 'POIN' 1 ('DOMA' $DOMTOT 'CENTRE') ;
  191. PC2 = 'POIN' 3 AA ;
  192. * Si P3 n'existe pas, probleme en FACEL.
  193. 'SI' ('NEG' PC1 P2) ;
  194. ORIENT = -1 ;
  195. PCD = PC1 ;
  196. PCG = PC2 ;
  197. XVOLD = 'MAXIMUM' (TDOM1 . 'XXVOLUM') ;
  198. XVOLG = 'MAXIMUM' (TDOM2 . 'XXVOLUM') ;
  199. 'SINON' ;
  200. ORIENT = 1 ;
  201. PCD = PC2 ;
  202. PCG = PC1 ;
  203. XVOLG = 'MAXIMUM' (TDOM1 . 'XXVOLUM') ;
  204. XVOLD = 'MAXIMUM' (TDOM2 . 'XXVOLUM') ;
  205. 'FINSI' ;
  206.  
  207. uxg1 = ((ung1 '*' NX) '+' (utg1 '*' TX)) '*' ORIENT ;
  208. uyg1 = ((ung1 '*' NY) '+' (utg1 '*' TY)) '*' ORIENT ;
  209. uxd1 = ((und1 '*' NX) '+' (utd1 '*' TX)) '*' ORIENT ;
  210. uyd1 = ((und1 '*' NY) '+' (utd1 '*' TY)) '*' ORIENT ;
  211.  
  212. 'SI' GRAPH;
  213. 'TRACER' (('DOMA' $DOMTOT 'MAILLAGE') 'ET'
  214. ('COULEUR' ('DOMA' $DOMTOT 'FACEL') 'ROUGE') 'ET' P1FAC)
  215. 'TITRE' 'Domaine et FACEL';
  216. 'FINSI' ;
  217.  
  218. MAILIM = 'DIFF' ('DOMA' $DOMTOT 'FACE') ('MANUEL' 'POI1' P1FAC) ;
  219.  
  220. ***********************
  221. **** Les CHPOINTs ****
  222. ***********************
  223.  
  224. CHRN1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' RN1) ;
  225.  
  226. CHVN1 = ('MANUEL' 'CHPO' (TDOM1 . 'CENTRE') 2 'UX' uxg1
  227. 'UY' uyg1) '+'
  228. ('MANUEL' 'CHPO' (TDOM2 . 'CENTRE') 2 'UX' uxd1
  229. 'UY' uyd1) ;
  230.  
  231. CHGN1 = CHRN1 '*' CHVN1 ;
  232.  
  233. CHRET1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' RETN1) ;
  234.  
  235. CHPHI1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' PHI1) ;
  236.  
  237. CHY1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 2 'ESP1' Y1
  238. 'ESP2' Y2) ;
  239.  
  240. CHAL1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 2 'ESP1' ALPHA1
  241. 'ESP2' ALPHA2) ;
  242.  
  243. CHRPHI = CHPHI1 * CHRN1 ;
  244.  
  245. CHRY1 = CHY1 * CHRN1 ;
  246.  
  247. TABG = 'TABLE' ;
  248. TABG . 'ESPEULE' = 'MOTS' ;
  249. TABG . 'ESPNEULE' = 'ESP1' ;
  250.  
  251. TABG . 'MGAM' = 'PROG' GAM ;
  252. TABG . 'PGAM' = 'PROG' GAM ;
  253. TABG . 'MPIN' = 'PROG' PINF ;
  254. TABG . 'PPIN' = 'PROG' PINF ;
  255.  
  256. TABG1 = 'TABLE' ;
  257. TABG1 . 'ESPEULE' = 'MOTS' 'ESP1' 'ESP2' ;
  258. TABG1 . 'ESPNEULE' = 'ESP3' ;
  259.  
  260. TABG1 . 'MGAM' = 'PROG' GAM GAM GAM ;
  261. TABG1 . 'PGAM' = 'PROG' GAM GAM GAM ;
  262. TABG1 . 'MPIN' = 'PROG' PINF PINF PINF ;
  263. TABG1 . 'PPIN' = 'PROG' PINF PINF PINF ;
  264.  
  265. PH1 = CHRPHI '/' CHRN1 ;
  266. V1 P1 = 'PRIM' 'GFMP' TABG CHRPHI CHRN1 CHGN1 CHRET1 ;
  267. V1B P1B Y1B = 'PRIM' 'GFMP' TABG1 CHRPHI CHRN1 CHGN1 CHRET1
  268. CHRY1 CHAL1 ;
  269. ERRO = 'MAXIMUM' (Y1B '-' CHY1) 'ABS' ;
  270. ERRO = ERRO '+' (
  271. 'MAXIMUM' ((P1 '-' P1B) '/' P1) 'ABS'
  272. );
  273. ERRO = ERRO '+' (
  274. 'MAXIMUM' (V1 '-' V1B) 'ABS'
  275. );
  276. SI (ERRO > 1.0D-12) ;
  277. 'MESSAGE' 'Problem in PRIM' ;
  278. 'MESSAGE' ('CHAINE' 'Error = ', ERRO) ;
  279. 'ERREUR' 5 ;
  280. 'FINSI' ;
  281.  
  282. GRADPH1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 2
  283. 'P1DX' 0.0 'P1DY' 0.0 ;
  284. LIMPH1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1
  285. 'P1' 0.0 ;
  286. GRADR1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 2
  287. 'P1DX' 0.0 'P1DY' 0.0 ;
  288. LIMR1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1
  289. 'P1' 0.0 ;
  290. GRADV1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 4
  291. 'P1DX' 0.0 'P1DY' 0.0 'P2DX' 0.0 'P2DY' 0.0 ;
  292. LIMV1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 2
  293. 'P1' 0.0 'P2' 0.0 ;
  294. GRADP1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 2
  295. 'P1DX' 0.0 'P1DY' 0.0 ;
  296. LIMP1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 1
  297. 'P1' 0.0 ;
  298. GRADY1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 4
  299. 'P1DX' 0.0 'P1DY' 0.0 'P2DX' 0.0 'P2DY' 0.0 ;
  300. LIMY1 = 'MANU' 'CHPO' (TDOMTOT . 'CENTRE') 2
  301. 'P1' 0.0 'P2' 0.0 ;
  302.  
  303. *
  304. **** L'operateur 'PRET'
  305. *
  306.  
  307. CHFPH1 CHFRN1 CHFVN1 CHFPN1 =
  308. 'PRET' 'GFMP' (TABG . 'ESPEULE') $DOMTOT
  309. PH1 (0.0 * GRADPH1) LIMPH1
  310. CHRN1 (0.0 * GRADR1) LIMR1
  311. V1 (0.0 * GRADV1) LIMV1
  312. P1 (0.0 * GRADP1) LIMP1 ;
  313.  
  314. CHFPH1B CHFRN1B CHFVN1B CHFPN1B
  315. CHFYNB CHFALB =
  316. 'PRET' 'GFMP' (TABG1 . 'ESPEULE') $DOMTOT
  317. PH1 (0.0 * GRADPH1) LIMPH1
  318. CHRN1 (0.0 * GRADR1) LIMR1
  319. V1 (0.0 * GRADV1) LIMV1
  320. P1 (0.0 * GRADP1) LIMP1
  321. CHY1 (0.0 * GRADY1) LIMY1
  322. CHAL1 (0.0 * GRADY1) LIMY1;
  323.  
  324. *
  325. **** L'operateur 'KONV'
  326. *
  327.  
  328. 'REPETER' BLMETO 1 ;
  329.  
  330. 'SI' ('EGA' &BLMETO 1) ;
  331. METO = 'GODUNOV' ;
  332. 'FINSI' ;
  333.  
  334. 'MESSAGE' ('CHAINE' 'METO = ' METO) ;
  335. LISTINC1 = ('MOTS' 'PHI1' 'RN1' 'RNX1' 'RUY1' 'RET1') ;
  336. LISTINC2 = ('MOTS' 'PHI1' 'RN1' 'RNX1' 'RUY1' 'RET1'
  337. 'RY1' 'RY2' 'ALP1' 'ALP2') ;
  338.  
  339. CHPRES DT = 'KONV' 'VF' 'GFMP' 'RESI' METO
  340. TABG $DOMTOT
  341. LISTINC1 CHPHI1 CHFPH1 CHFRN1 CHFVN1 CHFPN1
  342. MAILIM VRAI 0.0 ;
  343.  
  344. CHPRES1 DT1 = 'KONV' 'VF' 'GFMP' 'RESI' METO
  345. TABG1 $DOMTOT
  346. LISTINC2 CHPHI1 CHFPH1 CHFRN1 CHFVN1 CHFPN1
  347. CHFYNB CHFALB CHAL1
  348. MAILIM VRAI 0.0 ;
  349.  
  350. ERRO = 'EXCO' CHPRES1 LISTINC1 ;
  351. ERRO = 'MAXIMUM' (ERRO '-' CHPRES) 'ABS' ;
  352. ERRO = ERRO '/' ('MAXIMUM' CHPRES 'ABS') ;
  353. SI (ERRO > 1.0D-12) ;
  354. 'MESSAGE' 'Problem in KONV 1' ;
  355. 'MESSAGE' ('CHAINE' 'Error = ', ERRO) ;
  356. 'ERREUR' 5 ;
  357. 'FINSI' ;
  358.  
  359. * 'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' ETHER1 1)) ;
  360. * 'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' ECIN1 1)) ;
  361. * 'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' EFORM1 1)) ;
  362. * 'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' (pg1)) ;
  363. * 'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' ('EXTRAIRE' RN1 1)) ;
  364. * 'LISTE' ('CHAINE' 'FORMAT' '(E16.10)' (ung1)) ;
  365. * 'OPTION' DONN 5 ;
  366.  
  367. RESX0 = 'EXCO' ('EXTRAIRE' LISTINC1 1) CHPRES ;
  368. RESX1 = 'EXCO' ('EXTRAIRE' LISTINC1 2) CHPRES ;
  369. RESX2X = 'EXCO' ('EXTRAIRE' LISTINC1 3) CHPRES ;
  370. RESX2Y = 'EXCO' ('EXTRAIRE' LISTINC1 4) CHPRES ;
  371. RESX3 = 'EXCO' ('EXTRAIRE' LISTINC1 5) CHPRES ;
  372. RESX4 = 'EXCO' ('EXTRAIRE' LISTINC2 6) CHPRES1 ;
  373. RESX5 = 'EXCO' ('EXTRAIRE' LISTINC2 8) CHPRES1 ;
  374.  
  375.  
  376. RESX2N = (RESX2X '*' NX) '+' (RESX2Y * NY);
  377. RESX2T = (RESX2X '*' TX) '+' (RESX2Y * TY);
  378.  
  379. f0 = 'EXTRAIRE' RESX0 'SCAL' PCD ;
  380. f0bis = 'EXTRAIRE' RESX0 'SCAL' PCG ;
  381. ERRO = 1D-8 '*' f0gd 'ABS' ;
  382. LOGI1 = ('ABS' ((f0 * XVOLD) + (f0bis * XVOLG))) < ERRO ;
  383. LOGI2 = ('ABS' ((f0gd * XSURF) + (f0bis * XVOLG))) < ERRO ;
  384. LOGI1 = LOGI1 'ET' LOGI2;
  385.  
  386. f1 = 'EXTRAIRE' RESX1 'SCAL' PCD ;
  387. f1bis = 'EXTRAIRE' RESX1 'SCAL' PCG ;
  388. ERRO = 1D-8 '*' f1gd 'ABS' ;
  389. LOGI2 = ('ABS' ((f1 * XVOLD) + (f1bis * XVOLG))) < ERRO ;
  390. LOGI1 = LOGI1 'ET' LOGI2;
  391. LOGI2 = ('ABS' ((f1gd * XSURF) + (f1bis * XVOLG))) < ERRO ;
  392. LOGI1 = LOGI1 'ET' LOGI2;
  393. LOGI1 = LOGI1 'ET' LOGI2;
  394.  
  395. f2 = 'EXTRAIRE' RESX2N 'SCAL' PCD ;
  396. f2bis = 'EXTRAIRE' RESX2N 'SCAL' PCG ;
  397. ERRO = 1D-8 '*' f2gd 'ABS' ;
  398. LOGI2 = ('ABS' ((f2 * XVOLD) + (f2bis * XVOLG))) < ERRO ;
  399. LOGI1 = LOGI1 'ET' LOGI2;
  400. LOGI2 = ('ABS' ((f2gd * XSURF) + (f2bis * XVOLG))) < ERRO ;
  401. LOGI1 = LOGI1 'ET' LOGI2;
  402.  
  403. f3 = 'EXTRAIRE' RESX2T 'SCAL' PCD ;
  404. f3bis = 'EXTRAIRE' RESX2T 'SCAL' PCG ;
  405. ERRO = 1D-8 '*' f3gd 'ABS' ;
  406. LOGI2 = ('ABS' ((f3 * XVOLD) + (f3bis * XVOLG))) < ERRO ;
  407. LOGI1 = LOGI1 'ET' LOGI2;
  408. LOGI2 = ('ABS' ((f3gd * XSURF) + (f3bis * XVOLG))) < ERRO ;
  409. LOGI1 = LOGI1 'ET' LOGI2;
  410.  
  411. f4 = 'EXTRAIRE' RESX3 'SCAL' PCD ;
  412. f4bis = 'EXTRAIRE' RESX3 'SCAL' PCG ;
  413. ERRO = 5D-7 '*' f4gd 'ABS' ;
  414. LOGI2 = ('ABS' ((f4 * XVOLD) + (f4bis * XVOLG))) < ERRO ;
  415. LOGI1 = LOGI1 'ET' LOGI2;
  416. LOGI2 = ('ABS' ((f4gd * XSURF) + (f4bis * XVOLG))) < ERRO ;
  417. LOGI1 = LOGI1 'ET' LOGI2;
  418.  
  419. * RHOY
  420. f5 = 'EXTRAIRE' RESX4 'SCAL' PCD ;
  421. f5bis = 'EXTRAIRE' RESX4 'SCAL' PCG ;
  422. ERRO = 1D-8 '*' f5gd 'ABS' ;
  423. LOGI2 = ('ABS' ((f5 * XVOLD) + (f5bis * XVOLG))) < ERRO ;
  424. LOGI1 = LOGI1 'ET' LOGI2;
  425. LOGI2 = ('ABS' ((f5gd * XSURF) + (f5bis * XVOLG))) < ERRO ;
  426. LOGI1 = LOGI1 'ET' LOGI2;
  427. LOGI1 = LOGI1 'ET' LOGI2;
  428.  
  429. * ALPHA ('NON' conservative form...)
  430. f6 = 'EXTRAIRE' RESX5 'SCAL' PCD ;
  431. f6bis = 'EXTRAIRE' RESX5 'SCAL' PCG ;
  432. ERRO = 1D-8 '*' ('MAXIMUM' ('PROG' f6 f6bis) 'ABS') ;
  433. LOGI2 = ('ABS' ((f6d * XSURF) - (f6 * XVOLD))) < ERRO ;
  434. LOGI1 = LOGI1 'ET' LOGI2;
  435. LOGI2 = ('ABS' ((f6g * XSURF) + (f6bis * XVOLG))) < ERRO ;
  436. LOGI1 = LOGI1 'ET' LOGI2;
  437. LOGI1 = LOGI1 'ET' LOGI2;
  438.  
  439. 'SI' ('NON' LOGI1);
  440. 'MESSAGE' ;
  441. 'MESSAGE' 'OPERATEUR KONV';
  442. 'MESSAGE' ('CHAINE' METO);
  443. 'MESSAGE' ;
  444. 'ERREUR' 5 ;
  445. 'FINSI' ;
  446.  
  447. 'FIN' BLMETO ;
  448.  
  449. ****************************************************
  450. ****************************************************
  451. ******** Fin boucle sur les angles *********
  452. ****************************************************
  453. ****************************************************
  454.  
  455. 'FIN' BLOC;
  456.  
  457. 'FIN' ;
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  

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