Télécharger tube_CJDF3D.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : tube_CJDF3D.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. ****************************************************************
  5. **** APPROCHE VF "Cell-Centred Formulation" pour la ****
  6. **** combustion. ****
  7. **** MODELE RDEM ****
  8. **** ****
  9. **** OPERATEURS 'PRIM', PRET, KONV ****
  10. **** ****
  11. **** PROPAGATION D'UNE CJDF DANS UN TUBE ****
  12. **** Cas 3D. ****
  13. **** A. BECCANTINI, SFME/LTMF, 22.12.10 ****
  14. **** ****
  15. ****************************************************************
  16. *
  17. * The file is divided into 6 parts
  18. *
  19. * 0) exact solution
  20. * 1) mesh
  21. * 2) initial conditions and gas properties
  22. * 3) parameters used in the computation
  23. * 4) the main part (where the computation is realised)
  24. * 5) the post-treatment
  25. *
  26. 'OPTION' 'ECHO' 0 'DIME' 3
  27. 'TRAC' 'PSC' ;
  28. * 'TRAC' 'X' ;
  29. GRAPH = VRAI ;
  30. GRAPH = FAUX ;
  31. * Upwind scheme
  32. * METO = 'VLH' ;
  33. * METO = 'SS' ;
  34. METO = 'AUSMPUP' ;
  35.  
  36. ***********************
  37. ***********************
  38. *** EXACT SOLUTION ****
  39. ***********************
  40. LEXACT = (PROG
  41. );
  42. LEXACT = LEXACT ET ( PROG
  43. 0.185869E+04 0.869073E+00 0.293160E+03
  44. 0.101300E+06 0.000000E+00
  45. 0.184803E+04 0.869073E+00 0.293160E+03
  46. 0.101300E+06 0.000000E+00
  47. 0.183737E+04 0.869073E+00 0.293160E+03
  48. 0.101300E+06 0.000000E+00
  49. 0.182671E+04 0.869073E+00 0.293160E+03
  50. 0.101300E+06 0.000000E+00
  51. );
  52. LEXACT = LEXACT ET ( PROG
  53. 0.181605E+04 0.869073E+00 0.293160E+03
  54. 0.101300E+06 0.000000E+00
  55. 0.180539E+04 0.869073E+00 0.293160E+03
  56. 0.101300E+06 0.000000E+00
  57. 0.179473E+04 0.869073E+00 0.293160E+03
  58. 0.101300E+06 0.000000E+00
  59. 0.178407E+04 0.869073E+00 0.293160E+03
  60. 0.101300E+06 0.000000E+00
  61. );
  62. LEXACT = LEXACT ET ( PROG
  63. 0.177341E+04 0.869073E+00 0.293160E+03
  64. 0.101300E+06 0.000000E+00
  65. 0.176275E+04 0.869073E+00 0.293160E+03
  66. 0.101300E+06 0.000000E+00
  67. 0.175209E+04 0.869073E+00 0.293160E+03
  68. 0.101300E+06 0.000000E+00
  69. 0.174143E+04 0.869073E+00 0.293160E+03
  70. 0.101300E+06 0.000000E+00
  71. );
  72. LEXACT = LEXACT ET ( PROG
  73. 0.173077E+04 0.869073E+00 0.293160E+03
  74. 0.101300E+06 0.000000E+00
  75. 0.172011E+04 0.869073E+00 0.293160E+03
  76. 0.101300E+06 0.000000E+00
  77. 0.170945E+04 0.869073E+00 0.293160E+03
  78. 0.101300E+06 0.000000E+00
  79. 0.169879E+04 0.869073E+00 0.293160E+03
  80. 0.101300E+06 0.000000E+00
  81. );
  82. LEXACT = LEXACT ET ( PROG
  83. 0.168813E+04 0.869073E+00 0.293160E+03
  84. 0.101300E+06 0.000000E+00
  85. 0.167747E+04 0.869073E+00 0.293160E+03
  86. 0.101300E+06 0.000000E+00
  87. 0.166681E+04 0.869073E+00 0.293160E+03
  88. 0.101300E+06 0.000000E+00
  89. 0.165615E+04 0.869073E+00 0.293160E+03
  90. 0.101300E+06 0.000000E+00
  91. );
  92. LEXACT = LEXACT ET ( PROG
  93. 0.164549E+04 0.869073E+00 0.293160E+03
  94. 0.101300E+06 0.000000E+00
  95. 0.163483E+04 0.869073E+00 0.293160E+03
  96. 0.101300E+06 0.000000E+00
  97. 0.162417E+04 0.869073E+00 0.293160E+03
  98. 0.101300E+06 0.000000E+00
  99. 0.161351E+04 0.869073E+00 0.293160E+03
  100. 0.101300E+06 0.000000E+00
  101. );
  102. LEXACT = LEXACT ET ( PROG
  103. 0.160285E+04 0.869073E+00 0.293160E+03
  104. 0.101300E+06 0.000000E+00
  105. 0.159219E+04 0.869073E+00 0.293160E+03
  106. 0.101300E+06 0.000000E+00
  107. 0.158153E+04 0.869073E+00 0.293160E+03
  108. 0.101300E+06 0.000000E+00
  109. 0.157087E+04 0.869073E+00 0.293160E+03
  110. 0.101300E+06 0.000000E+00
  111. );
  112. LEXACT = LEXACT ET ( PROG
  113. 0.156021E+04 0.869073E+00 0.293160E+03
  114. 0.101300E+06 0.000000E+00
  115. 0.154955E+04 0.869073E+00 0.293160E+03
  116. 0.101300E+06 0.000000E+00
  117. 0.153889E+04 0.869073E+00 0.293160E+03
  118. 0.101300E+06 0.000000E+00
  119. 0.152823E+04 0.869073E+00 0.293160E+03
  120. 0.101300E+06 0.000000E+00
  121. );
  122. LEXACT = LEXACT ET ( PROG
  123. 0.151757E+04 0.869073E+00 0.293160E+03
  124. 0.101300E+06 0.000000E+00
  125. 0.150691E+04 0.869073E+00 0.293160E+03
  126. 0.101300E+06 0.000000E+00
  127. 0.149625E+04 0.869073E+00 0.293160E+03
  128. 0.101300E+06 0.000000E+00
  129. 0.148560E+04 0.869073E+00 0.293160E+03
  130. 0.101300E+06 0.000000E+00
  131. );
  132. LEXACT = LEXACT ET ( PROG
  133. 0.147494E+04 0.869073E+00 0.293160E+03
  134. 0.101300E+06 0.000000E+00
  135. 0.146428E+04 0.869073E+00 0.293160E+03
  136. 0.101300E+06 0.000000E+00
  137. 0.145362E+04 0.869073E+00 0.293160E+03
  138. 0.101300E+06 0.000000E+00
  139. 0.144296E+04 0.869073E+00 0.293160E+03
  140. 0.101300E+06 0.000000E+00
  141. );
  142. LEXACT = LEXACT ET ( PROG
  143. 0.143230E+04 0.869073E+00 0.293160E+03
  144. 0.101300E+06 0.000000E+00
  145. 0.142164E+04 0.869073E+00 0.293160E+03
  146. 0.101300E+06 0.000000E+00
  147. 0.141098E+04 0.869073E+00 0.293160E+03
  148. 0.101300E+06 0.000000E+00
  149. 0.140032E+04 0.869073E+00 0.293160E+03
  150. 0.101300E+06 0.000000E+00
  151. );
  152. LEXACT = LEXACT ET ( PROG
  153. 0.138966E+04 0.869073E+00 0.293160E+03
  154. 0.101300E+06 0.000000E+00
  155. 0.137900E+04 0.869073E+00 0.293160E+03
  156. 0.101300E+06 0.000000E+00
  157. 0.136834E+04 0.869073E+00 0.293160E+03
  158. 0.101300E+06 0.000000E+00
  159. 0.135768E+04 0.869073E+00 0.293160E+03
  160. 0.101300E+06 0.000000E+00
  161. );
  162. LEXACT = LEXACT ET ( PROG
  163. 0.134702E+04 0.869073E+00 0.293160E+03
  164. 0.101300E+06 0.000000E+00
  165. 0.133636E+04 0.869073E+00 0.293160E+03
  166. 0.101300E+06 0.000000E+00
  167. 0.132570E+04 0.369181E+01 0.864601E+03
  168. 0.126912E+07 0.101362E+04
  169. 0.132346E+04 0.369181E+01 0.864601E+03
  170. 0.126912E+07 0.101362E+04
  171. );
  172. LEXACT = LEXACT ET ( PROG
  173. 0.132122E+04 0.369181E+01 0.864601E+03
  174. 0.126912E+07 0.101362E+04
  175. 0.131897E+04 0.369181E+01 0.864601E+03
  176. 0.126912E+07 0.101362E+04
  177. 0.131673E+04 0.369181E+01 0.864601E+03
  178. 0.126912E+07 0.101362E+04
  179. 0.131449E+04 0.369181E+01 0.864601E+03
  180. 0.126912E+07 0.101362E+04
  181. );
  182. LEXACT = LEXACT ET ( PROG
  183. 0.131225E+04 0.369181E+01 0.864601E+03
  184. 0.126912E+07 0.101362E+04
  185. 0.131001E+04 0.369181E+01 0.864601E+03
  186. 0.126912E+07 0.101362E+04
  187. 0.130777E+04 0.369181E+01 0.864601E+03
  188. 0.126912E+07 0.101362E+04
  189. 0.130552E+04 0.369181E+01 0.864601E+03
  190. 0.126912E+07 0.101362E+04
  191. );
  192. LEXACT = LEXACT ET ( PROG
  193. 0.130328E+04 0.369181E+01 0.864601E+03
  194. 0.126912E+07 0.101362E+04
  195. 0.130104E+04 0.369181E+01 0.864601E+03
  196. 0.126912E+07 0.101362E+04
  197. 0.129880E+04 0.369181E+01 0.864601E+03
  198. 0.126912E+07 0.101362E+04
  199. 0.129656E+04 0.369181E+01 0.864601E+03
  200. 0.126912E+07 0.101362E+04
  201. );
  202. LEXACT = LEXACT ET ( PROG
  203. 0.129432E+04 0.369181E+01 0.864601E+03
  204. 0.126912E+07 0.101362E+04
  205. 0.129208E+04 0.369181E+01 0.864601E+03
  206. 0.126912E+07 0.101362E+04
  207. 0.128983E+04 0.369181E+01 0.864601E+03
  208. 0.126912E+07 0.101362E+04
  209. 0.128759E+04 0.369181E+01 0.864601E+03
  210. 0.126912E+07 0.101362E+04
  211. );
  212. LEXACT = LEXACT ET ( PROG
  213. 0.128535E+04 0.369181E+01 0.864601E+03
  214. 0.126912E+07 0.101362E+04
  215. 0.128311E+04 0.369181E+01 0.864601E+03
  216. 0.126912E+07 0.101362E+04
  217. 0.128087E+04 0.369181E+01 0.864601E+03
  218. 0.126912E+07 0.101362E+04
  219. 0.127863E+04 0.369181E+01 0.864601E+03
  220. 0.126912E+07 0.101362E+04
  221. );
  222. LEXACT = LEXACT ET ( PROG
  223. 0.127638E+04 0.369181E+01 0.864601E+03
  224. 0.126912E+07 0.101362E+04
  225. 0.127414E+04 0.369181E+01 0.864601E+03
  226. 0.126912E+07 0.101362E+04
  227. 0.127190E+04 0.369181E+01 0.864601E+03
  228. 0.126912E+07 0.101362E+04
  229. 0.126966E+04 0.369181E+01 0.864601E+03
  230. 0.126912E+07 0.101362E+04
  231. );
  232. LEXACT = LEXACT ET ( PROG
  233. 0.126742E+04 0.369181E+01 0.864601E+03
  234. 0.126912E+07 0.101362E+04
  235. 0.126518E+04 0.369181E+01 0.864601E+03
  236. 0.126912E+07 0.101362E+04
  237. 0.126294E+04 0.369181E+01 0.864601E+03
  238. 0.126912E+07 0.101362E+04
  239. 0.126069E+04 0.369181E+01 0.864601E+03
  240. 0.126912E+07 0.101362E+04
  241. );
  242. LEXACT = LEXACT ET ( PROG
  243. 0.125845E+04 0.369181E+01 0.864601E+03
  244. 0.126912E+07 0.101362E+04
  245. 0.125621E+04 0.369181E+01 0.864601E+03
  246. 0.126912E+07 0.101362E+04
  247. 0.125397E+04 0.369181E+01 0.864601E+03
  248. 0.126912E+07 0.101362E+04
  249. 0.125173E+04 0.369181E+01 0.864601E+03
  250. 0.126912E+07 0.101362E+04
  251. );
  252. LEXACT = LEXACT ET ( PROG
  253. 0.124949E+04 0.369181E+01 0.864601E+03
  254. 0.126912E+07 0.101362E+04
  255. 0.124724E+04 0.369181E+01 0.864601E+03
  256. 0.126912E+07 0.101362E+04
  257. 0.124500E+04 0.369181E+01 0.864601E+03
  258. 0.126912E+07 0.101362E+04
  259. 0.124276E+04 0.369181E+01 0.864601E+03
  260. 0.126912E+07 0.101362E+04
  261. );
  262. LEXACT = LEXACT ET ( PROG
  263. 0.124052E+04 0.369181E+01 0.864601E+03
  264. 0.126912E+07 0.101362E+04
  265. 0.123828E+04 0.369181E+01 0.864601E+03
  266. 0.126912E+07 0.101362E+04
  267. 0.123604E+04 0.369181E+01 0.864601E+03
  268. 0.126912E+07 0.101362E+04
  269. 0.123380E+04 0.369181E+01 0.864601E+03
  270. 0.126912E+07 0.101362E+04
  271. );
  272. LEXACT = LEXACT ET ( PROG
  273. 0.123155E+04 0.369181E+01 0.864601E+03
  274. 0.126912E+07 0.101362E+04
  275. 0.122931E+04 0.369181E+01 0.864601E+03
  276. 0.126912E+07 0.101362E+04
  277. 0.122707E+04 0.369181E+01 0.864601E+03
  278. 0.126912E+07 0.101362E+04
  279. 0.122483E+04 0.369181E+01 0.864601E+03
  280. 0.126912E+07 0.101362E+04
  281. );
  282. LEXACT = LEXACT ET ( PROG
  283. 0.122259E+04 0.369181E+01 0.864601E+03
  284. 0.126912E+07 0.101362E+04
  285. 0.122035E+04 0.369181E+01 0.864601E+03
  286. 0.126912E+07 0.101362E+04
  287. 0.121810E+04 0.369181E+01 0.864601E+03
  288. 0.126912E+07 0.101362E+04
  289. 0.121586E+04 0.369181E+01 0.864601E+03
  290. 0.126912E+07 0.101362E+04
  291. );
  292. LEXACT = LEXACT ET ( PROG
  293. 0.121362E+04 0.695313E+00 0.268600E+04
  294. 0.632719E+06 0.151709E+03
  295. 0.120125E+04 0.688084E+00 0.267929E+04
  296. 0.624577E+06 0.140618E+03
  297. 0.118886E+04 0.680916E+00 0.267258E+04
  298. 0.616522E+06 0.129516E+03
  299. 0.117647E+04 0.673807E+00 0.266587E+04
  300. 0.608555E+06 0.118406E+03
  301. );
  302. LEXACT = LEXACT ET ( PROG
  303. 0.116406E+04 0.666758E+00 0.265917E+04
  304. 0.600673E+06 0.107285E+03
  305. 0.115164E+04 0.659768E+00 0.265246E+04
  306. 0.592877E+06 0.961556E+02
  307. 0.113921E+04 0.652838E+00 0.264575E+04
  308. 0.585165E+06 0.850162E+02
  309. 0.112677E+04 0.645966E+00 0.263904E+04
  310. 0.577537E+06 0.738671E+02
  311. );
  312. LEXACT = LEXACT ET ( PROG
  313. 0.111432E+04 0.639152E+00 0.263233E+04
  314. 0.569993E+06 0.627085E+02
  315. 0.110186E+04 0.632396E+00 0.262562E+04
  316. 0.562530E+06 0.515401E+02
  317. 0.108938E+04 0.625697E+00 0.261892E+04
  318. 0.555150E+06 0.403622E+02
  319. 0.107690E+04 0.619055E+00 0.261221E+04
  320. 0.547850E+06 0.291745E+02
  321. );
  322. LEXACT = LEXACT ET ( PROG
  323. 0.106440E+04 0.612470E+00 0.260550E+04
  324. 0.540631E+06 0.179772E+02
  325. 0.105189E+04 0.605942E+00 0.259879E+04
  326. 0.533491E+06 0.677015E+01
  327. 0.103937E+04 0.599469E+00 0.259208E+04
  328. 0.526430E+06 -0.444662E+01
  329. 0.102684E+04 0.593053E+00 0.258537E+04
  330. 0.519447E+06 -0.156731E+02
  331. );
  332. LEXACT = LEXACT ET ( PROG
  333. 0.101430E+04 0.586691E+00 0.257867E+04
  334. 0.512541E+06 -0.269094E+02
  335. 0.100175E+04 0.580384E+00 0.257196E+04
  336. 0.505713E+06 -0.381554E+02
  337. 0.989185E+03 0.574132E+00 0.256525E+04
  338. 0.498960E+06 -0.494113E+02
  339. 0.976609E+03 0.567934E+00 0.255854E+04
  340. 0.492283E+06 -0.606769E+02
  341. );
  342. LEXACT = LEXACT ET ( PROG
  343. 0.964022E+03 0.561790E+00 0.255183E+04
  344. 0.485681E+06 -0.719524E+02
  345. 0.951424E+03 0.555700E+00 0.254512E+04
  346. 0.479153E+06 -0.832377E+02
  347. 0.938814E+03 0.549663E+00 0.253842E+04
  348. 0.472698E+06 -0.945328E+02
  349. 0.926192E+03 0.543678E+00 0.253171E+04
  350. 0.466316E+06 -0.105838E+03
  351. );
  352. LEXACT = LEXACT ET ( PROG
  353. 0.913559E+03 0.537746E+00 0.252500E+04
  354. 0.460006E+06 -0.117153E+03
  355. 0.900915E+03 0.531866E+00 0.251829E+04
  356. 0.453767E+06 -0.128478E+03
  357. 0.888259E+03 0.526038E+00 0.251158E+04
  358. 0.447599E+06 -0.139812E+03
  359. 0.875591E+03 0.520262E+00 0.250487E+04
  360. 0.441502E+06 -0.151157E+03
  361. );
  362. LEXACT = LEXACT ET ( PROG
  363. 0.862912E+03 0.514536E+00 0.249817E+04
  364. 0.435474E+06 -0.162512E+03
  365. 0.850221E+03 0.508862E+00 0.249146E+04
  366. 0.429514E+06 -0.173877E+03
  367. 0.837518E+03 0.503237E+00 0.248475E+04
  368. 0.423623E+06 -0.185251E+03
  369. 0.824804E+03 0.497663E+00 0.247804E+04
  370. 0.417800E+06 -0.196636E+03
  371. );
  372. LEXACT = LEXACT ET ( PROG
  373. 0.812078E+03 0.492139E+00 0.247133E+04
  374. 0.412044E+06 -0.208031E+03
  375. 0.799340E+03 0.486664E+00 0.246462E+04
  376. 0.406354E+06 -0.219435E+03
  377. 0.786591E+03 0.481238E+00 0.245792E+04
  378. 0.400729E+06 -0.230850E+03
  379. 0.773830E+03 0.475861E+00 0.245121E+04
  380. 0.395170E+06 -0.242275E+03
  381. );
  382. LEXACT = LEXACT ET ( PROG
  383. 0.761057E+03 0.470532E+00 0.244450E+04
  384. 0.389676E+06 -0.253710E+03
  385. 0.748272E+03 0.465251E+00 0.243779E+04
  386. 0.384245E+06 -0.265156E+03
  387. 0.735475E+03 0.460018E+00 0.243108E+04
  388. 0.378878E+06 -0.276611E+03
  389. 0.722666E+03 0.454833E+00 0.242437E+04
  390. 0.373574E+06 -0.288077E+03
  391. );
  392. LEXACT = LEXACT ET ( PROG
  393. 0.709845E+03 0.449695E+00 0.241767E+04
  394. 0.368331E+06 -0.299552E+03
  395. 0.697013E+03 0.444603E+00 0.241096E+04
  396. 0.363150E+06 -0.311038E+03
  397. 0.684168E+03 0.439558E+00 0.240425E+04
  398. 0.358031E+06 -0.322535E+03
  399. 0.671311E+03 0.434559E+00 0.239754E+04
  400. 0.352972E+06 -0.334041E+03
  401. );
  402. LEXACT = LEXACT ET ( PROG
  403. 0.658443E+03 0.429606E+00 0.239083E+04
  404. 0.347972E+06 -0.345558E+03
  405. 0.645562E+03 0.424699E+00 0.238412E+04
  406. 0.343032E+06 -0.357085E+03
  407. 0.632669E+03 0.419837E+00 0.237742E+04
  408. 0.338151E+06 -0.368622E+03
  409. 0.619764E+03 0.415019E+00 0.237071E+04
  410. 0.333327E+06 -0.380170E+03
  411. );
  412. LEXACT = LEXACT ET ( PROG
  413. 0.606847E+03 0.410247E+00 0.236400E+04
  414. 0.328562E+06 -0.391728E+03
  415. 0.593918E+03 0.405518E+00 0.235729E+04
  416. 0.323853E+06 -0.403296E+03
  417. 0.580976E+03 0.400834E+00 0.235058E+04
  418. 0.319201E+06 -0.414875E+03
  419. 0.561059E+03 0.400834E+00 0.235058E+04
  420. 0.319201E+06 -0.414875E+03
  421. );
  422. LEXACT = LEXACT ET ( PROG
  423. 0.541142E+03 0.400834E+00 0.235058E+04
  424. 0.319201E+06 -0.414875E+03
  425. 0.521225E+03 0.400834E+00 0.235058E+04
  426. 0.319201E+06 -0.414875E+03
  427. 0.501308E+03 0.400834E+00 0.235058E+04
  428. 0.319201E+06 -0.414875E+03
  429. 0.481391E+03 0.400834E+00 0.235058E+04
  430. 0.319201E+06 -0.414875E+03
  431. );
  432. LEXACT = LEXACT ET ( PROG
  433. 0.461474E+03 0.400834E+00 0.235058E+04
  434. 0.319201E+06 -0.414875E+03
  435. 0.441557E+03 0.400834E+00 0.235058E+04
  436. 0.319201E+06 -0.414875E+03
  437. 0.421640E+03 0.400834E+00 0.235058E+04
  438. 0.319201E+06 -0.414875E+03
  439. 0.401723E+03 0.400834E+00 0.235058E+04
  440. 0.319201E+06 -0.414875E+03
  441. );
  442. LEXACT = LEXACT ET ( PROG
  443. 0.381806E+03 0.400834E+00 0.235058E+04
  444. 0.319201E+06 -0.414875E+03
  445. 0.361889E+03 0.400834E+00 0.235058E+04
  446. 0.319201E+06 -0.414875E+03
  447. 0.341972E+03 0.400834E+00 0.235058E+04
  448. 0.319201E+06 -0.414875E+03
  449. 0.322055E+03 0.400834E+00 0.235058E+04
  450. 0.319201E+06 -0.414875E+03
  451. );
  452. LEXACT = LEXACT ET ( PROG
  453. 0.302138E+03 0.400834E+00 0.235058E+04
  454. 0.319201E+06 -0.414875E+03
  455. 0.282221E+03 0.400834E+00 0.235058E+04
  456. 0.319201E+06 -0.414875E+03
  457. 0.262304E+03 0.400834E+00 0.235058E+04
  458. 0.319201E+06 -0.414875E+03
  459. 0.242387E+03 0.400834E+00 0.235058E+04
  460. 0.319201E+06 -0.414875E+03
  461. );
  462. LEXACT = LEXACT ET ( PROG
  463. 0.222470E+03 0.400834E+00 0.235058E+04
  464. 0.319201E+06 -0.414875E+03
  465. 0.202552E+03 0.400834E+00 0.235058E+04
  466. 0.319201E+06 -0.414875E+03
  467. 0.182635E+03 0.400834E+00 0.235058E+04
  468. 0.319201E+06 -0.414875E+03
  469. 0.162718E+03 0.400834E+00 0.235058E+04
  470. 0.319201E+06 -0.414875E+03
  471. );
  472. LEXACT = LEXACT ET ( PROG
  473. 0.142801E+03 0.400834E+00 0.235058E+04
  474. 0.319201E+06 -0.414875E+03
  475. 0.122884E+03 0.400834E+00 0.235058E+04
  476. 0.319201E+06 -0.414875E+03
  477. 0.102967E+03 0.400834E+00 0.235058E+04
  478. 0.319201E+06 -0.414875E+03
  479. 0.830503E+02 0.400834E+00 0.235058E+04
  480. 0.319201E+06 -0.414875E+03
  481. );
  482. LEXACT = LEXACT ET ( PROG
  483. 0.631333E+02 0.400834E+00 0.235058E+04
  484. 0.319201E+06 -0.414875E+03
  485. 0.432163E+02 0.400834E+00 0.235058E+04
  486. 0.319201E+06 -0.414875E+03
  487. 0.232993E+02 0.400834E+00 0.235058E+04
  488. 0.319201E+06 -0.414875E+03
  489. 0.338225E+01 0.400834E+00 0.235058E+04
  490. 0.319201E+06 -0.414875E+03
  491. );
  492. LEXACT = LEXACT ET ( PROG
  493. -0.165348E+02 0.400834E+00 0.235058E+04
  494. 0.319201E+06 -0.414875E+03
  495. -0.364518E+02 0.400834E+00 0.235058E+04
  496. 0.319201E+06 -0.414875E+03
  497. -0.563688E+02 0.400834E+00 0.235058E+04
  498. 0.319201E+06 -0.414875E+03
  499. -0.762858E+02 0.400834E+00 0.235058E+04
  500. 0.319201E+06 -0.414875E+03
  501. );
  502. LEXACT = LEXACT ET ( PROG
  503. -0.962029E+02 0.400834E+00 0.235058E+04
  504. 0.319201E+06 -0.414875E+03
  505. -0.116120E+03 0.400834E+00 0.235058E+04
  506. 0.319201E+06 -0.414875E+03
  507. -0.136037E+03 0.400834E+00 0.235058E+04
  508. 0.319201E+06 -0.414875E+03
  509. -0.155954E+03 0.400834E+00 0.235058E+04
  510. 0.319201E+06 -0.414875E+03
  511. );
  512. LEXACT = LEXACT ET ( PROG
  513. -0.175871E+03 0.400834E+00 0.235058E+04
  514. 0.319201E+06 -0.414875E+03
  515. -0.195788E+03 0.400834E+00 0.235058E+04
  516. 0.319201E+06 -0.414875E+03
  517. -0.215705E+03 0.400834E+00 0.235058E+04
  518. 0.319201E+06 -0.414875E+03
  519. -0.235622E+03 0.400834E+00 0.235058E+04
  520. 0.319201E+06 -0.414875E+03
  521. );
  522. LEXACT = LEXACT ET ( PROG
  523. -0.255539E+03 0.400834E+00 0.235058E+04
  524. 0.319201E+06 -0.414875E+03
  525. -0.275456E+03 0.400834E+00 0.235058E+04
  526. 0.319201E+06 -0.414875E+03
  527. -0.295373E+03 0.400834E+00 0.235058E+04
  528. 0.319201E+06 -0.414875E+03
  529. -0.315290E+03 0.400834E+00 0.235058E+04
  530. 0.319201E+06 -0.414875E+03
  531. );
  532. LEXACT = LEXACT ET ( PROG
  533. -0.335207E+03 0.400834E+00 0.235058E+04
  534. 0.319201E+06 -0.414875E+03
  535. -0.355124E+03 0.400834E+00 0.235058E+04
  536. 0.319201E+06 -0.414875E+03
  537. -0.375041E+03 0.400834E+00 0.235058E+04
  538. 0.319201E+06 -0.414875E+03
  539. -0.394958E+03 0.400834E+00 0.235058E+04
  540. 0.319201E+06 -0.414875E+03
  541. );
  542. LEXACT = LEXACT ET ( PROG
  543. -0.414875E+03 0.307434E+00 0.306470E+04
  544. 0.319201E+06 -0.414875E+03
  545. -0.433363E+03 0.307434E+00 0.306470E+04
  546. 0.319201E+06 -0.414875E+03
  547. -0.451850E+03 0.307434E+00 0.306470E+04
  548. 0.319201E+06 -0.414875E+03
  549. -0.470338E+03 0.307434E+00 0.306470E+04
  550. 0.319201E+06 -0.414875E+03
  551. );
  552. LEXACT = LEXACT ET ( PROG
  553. -0.488825E+03 0.307434E+00 0.306470E+04
  554. 0.319201E+06 -0.414875E+03
  555. -0.507313E+03 0.307434E+00 0.306470E+04
  556. 0.319201E+06 -0.414875E+03
  557. -0.525800E+03 0.307434E+00 0.306470E+04
  558. 0.319201E+06 -0.414875E+03
  559. -0.544288E+03 0.307434E+00 0.306470E+04
  560. 0.319201E+06 -0.414875E+03
  561. );
  562. LEXACT = LEXACT ET ( PROG
  563. -0.562775E+03 0.307434E+00 0.306470E+04
  564. 0.319201E+06 -0.414875E+03
  565. -0.581263E+03 0.307434E+00 0.306470E+04
  566. 0.319201E+06 -0.414875E+03
  567. -0.599750E+03 0.307434E+00 0.306470E+04
  568. 0.319201E+06 -0.414875E+03
  569. -0.618238E+03 0.307434E+00 0.306470E+04
  570. 0.319201E+06 -0.414875E+03
  571. );
  572. LEXACT = LEXACT ET ( PROG
  573. -0.636725E+03 0.307434E+00 0.306470E+04
  574. 0.319201E+06 -0.414875E+03
  575. -0.655213E+03 0.307434E+00 0.306470E+04
  576. 0.319201E+06 -0.414875E+03
  577. -0.673700E+03 0.307434E+00 0.306470E+04
  578. 0.319201E+06 -0.414875E+03
  579. -0.692188E+03 0.307434E+00 0.306470E+04
  580. 0.319201E+06 -0.414875E+03
  581. );
  582. LEXACT = LEXACT ET ( PROG
  583. -0.710675E+03 0.307434E+00 0.306470E+04
  584. 0.319201E+06 -0.414875E+03
  585. -0.729163E+03 0.307434E+00 0.306470E+04
  586. 0.319201E+06 -0.414875E+03
  587. -0.747650E+03 0.307434E+00 0.306470E+04
  588. 0.319201E+06 -0.414875E+03
  589. -0.766138E+03 0.307434E+00 0.306470E+04
  590. 0.319201E+06 -0.414875E+03
  591. );
  592. LEXACT = LEXACT ET ( PROG
  593. -0.784625E+03 0.307434E+00 0.306470E+04
  594. 0.319201E+06 -0.414875E+03
  595. -0.803113E+03 0.307434E+00 0.306470E+04
  596. 0.319201E+06 -0.414875E+03
  597. -0.821600E+03 0.307434E+00 0.306470E+04
  598. 0.319201E+06 -0.414875E+03
  599. -0.840088E+03 0.307434E+00 0.306470E+04
  600. 0.319201E+06 -0.414875E+03
  601. );
  602. LEXACT = LEXACT ET ( PROG
  603. -0.858575E+03 0.307434E+00 0.306470E+04
  604. 0.319201E+06 -0.414875E+03
  605. -0.877063E+03 0.307434E+00 0.306470E+04
  606. 0.319201E+06 -0.414875E+03
  607. -0.895551E+03 0.307434E+00 0.306470E+04
  608. 0.319201E+06 -0.414875E+03
  609. -0.914038E+03 0.307434E+00 0.306470E+04
  610. 0.319201E+06 -0.414875E+03
  611. );
  612. LEXACT = LEXACT ET ( PROG
  613. -0.932526E+03 0.307434E+00 0.306470E+04
  614. 0.319201E+06 -0.414875E+03
  615. -0.951013E+03 0.307434E+00 0.306470E+04
  616. 0.319201E+06 -0.414875E+03
  617. -0.969501E+03 0.307434E+00 0.306470E+04
  618. 0.319201E+06 -0.414875E+03
  619. -0.987988E+03 0.307434E+00 0.306470E+04
  620. 0.319201E+06 -0.414875E+03
  621. );
  622. LEXACT = LEXACT ET ( PROG
  623. -0.100648E+04 0.307434E+00 0.306470E+04
  624. 0.319201E+06 -0.414875E+03
  625. -0.102496E+04 0.307434E+00 0.306470E+04
  626. 0.319201E+06 -0.414875E+03
  627. -0.104345E+04 0.307434E+00 0.306470E+04
  628. 0.319201E+06 -0.414875E+03
  629. -0.106194E+04 0.307434E+00 0.306470E+04
  630. 0.319201E+06 -0.414875E+03
  631. );
  632. LEXACT = LEXACT ET ( PROG
  633. -0.108043E+04 0.307434E+00 0.306470E+04
  634. 0.319201E+06 -0.414875E+03
  635. -0.109891E+04 0.307434E+00 0.306470E+04
  636. 0.319201E+06 -0.414875E+03
  637. -0.111740E+04 0.307434E+00 0.306470E+04
  638. 0.319201E+06 -0.414875E+03
  639. -0.113589E+04 0.307434E+00 0.306470E+04
  640. 0.319201E+06 -0.414875E+03
  641. );
  642. LEXACT = LEXACT ET ( PROG
  643. -0.115438E+04 0.307434E+00 0.306470E+04
  644. 0.319201E+06 -0.414875E+03
  645. -0.117286E+04 0.307434E+00 0.306470E+04
  646. 0.319201E+06 -0.414875E+03
  647. -0.119135E+04 0.307434E+00 0.306470E+04
  648. 0.319201E+06 -0.414875E+03
  649. -0.120984E+04 0.307434E+00 0.306470E+04
  650. 0.319201E+06 -0.414875E+03
  651. );
  652. LEXACT = LEXACT ET ( PROG
  653. -0.122833E+04 0.307434E+00 0.306470E+04
  654. 0.319201E+06 -0.414875E+03
  655. -0.124681E+04 0.307434E+00 0.306470E+04
  656. 0.319201E+06 -0.414875E+03
  657. -0.126530E+04 0.307434E+00 0.306470E+04
  658. 0.319201E+06 -0.414875E+03
  659. -0.128379E+04 0.307434E+00 0.306470E+04
  660. 0.319201E+06 -0.414875E+03
  661. );
  662. LEXACT = LEXACT ET ( PROG
  663. -0.130228E+04 0.307434E+00 0.306470E+04
  664. 0.319201E+06 -0.414875E+03
  665. -0.132076E+04 0.307434E+00 0.306470E+04
  666. 0.319201E+06 -0.414875E+03
  667. -0.133925E+04 0.212196E+00 0.280015E+04
  668. 0.201300E+06 0.000000E+00
  669. -0.134991E+04 0.212196E+00 0.280015E+04
  670. 0.201300E+06 0.000000E+00
  671. );
  672. LEXACT = LEXACT ET ( PROG
  673. -0.136057E+04 0.212196E+00 0.280015E+04
  674. 0.201300E+06 0.000000E+00
  675. -0.137123E+04 0.212196E+00 0.280015E+04
  676. 0.201300E+06 0.000000E+00
  677. -0.138189E+04 0.212196E+00 0.280015E+04
  678. 0.201300E+06 0.000000E+00
  679. -0.139255E+04 0.212196E+00 0.280015E+04
  680. 0.201300E+06 0.000000E+00
  681. );
  682. LEXACT = LEXACT ET ( PROG
  683. -0.140321E+04 0.212196E+00 0.280015E+04
  684. 0.201300E+06 0.000000E+00
  685. -0.141387E+04 0.212196E+00 0.280015E+04
  686. 0.201300E+06 0.000000E+00
  687. -0.142453E+04 0.212196E+00 0.280015E+04
  688. 0.201300E+06 0.000000E+00
  689. -0.143519E+04 0.212196E+00 0.280015E+04
  690. 0.201300E+06 0.000000E+00
  691. );
  692. LEXACT = LEXACT ET ( PROG
  693. -0.144585E+04 0.212196E+00 0.280015E+04
  694. 0.201300E+06 0.000000E+00
  695. -0.145651E+04 0.212196E+00 0.280015E+04
  696. 0.201300E+06 0.000000E+00
  697. -0.146717E+04 0.212196E+00 0.280015E+04
  698. 0.201300E+06 0.000000E+00
  699. -0.147783E+04 0.212196E+00 0.280015E+04
  700. 0.201300E+06 0.000000E+00
  701. );
  702. LEXACT = LEXACT ET ( PROG
  703. -0.148849E+04 0.212196E+00 0.280015E+04
  704. 0.201300E+06 0.000000E+00
  705. -0.149915E+04 0.212196E+00 0.280015E+04
  706. 0.201300E+06 0.000000E+00
  707. -0.150981E+04 0.212196E+00 0.280015E+04
  708. 0.201300E+06 0.000000E+00
  709. -0.152047E+04 0.212196E+00 0.280015E+04
  710. 0.201300E+06 0.000000E+00
  711. );
  712. LEXACT = LEXACT ET ( PROG
  713. -0.153113E+04 0.212196E+00 0.280015E+04
  714. 0.201300E+06 0.000000E+00
  715. -0.154179E+04 0.212196E+00 0.280015E+04
  716. 0.201300E+06 0.000000E+00
  717. -0.155245E+04 0.212196E+00 0.280015E+04
  718. 0.201300E+06 0.000000E+00
  719. -0.156311E+04 0.212196E+00 0.280015E+04
  720. 0.201300E+06 0.000000E+00
  721. );
  722. LEXACT = LEXACT ET ( PROG
  723. -0.157377E+04 0.212196E+00 0.280015E+04
  724. 0.201300E+06 0.000000E+00
  725. -0.158443E+04 0.212196E+00 0.280015E+04
  726. 0.201300E+06 0.000000E+00
  727. -0.159509E+04 0.212196E+00 0.280015E+04
  728. 0.201300E+06 0.000000E+00
  729. -0.160575E+04 0.212196E+00 0.280015E+04
  730. 0.201300E+06 0.000000E+00
  731. );
  732. LEXACT = LEXACT ET ( PROG
  733. -0.161641E+04 0.212196E+00 0.280015E+04
  734. 0.201300E+06 0.000000E+00
  735. -0.162707E+04 0.212196E+00 0.280015E+04
  736. 0.201300E+06 0.000000E+00
  737. -0.163773E+04 0.212196E+00 0.280015E+04
  738. 0.201300E+06 0.000000E+00
  739. -0.164838E+04 0.212196E+00 0.280015E+04
  740. 0.201300E+06 0.000000E+00
  741. );
  742. LEXACT = LEXACT ET ( PROG
  743. -0.165904E+04 0.212196E+00 0.280015E+04
  744. 0.201300E+06 0.000000E+00
  745. -0.166970E+04 0.212196E+00 0.280015E+04
  746. 0.201300E+06 0.000000E+00
  747. -0.168036E+04 0.212196E+00 0.280015E+04
  748. 0.201300E+06 0.000000E+00
  749. -0.169102E+04 0.212196E+00 0.280015E+04
  750. 0.201300E+06 0.000000E+00
  751. );
  752. LEXACT = LEXACT ET ( PROG
  753. -0.170168E+04 0.212196E+00 0.280015E+04
  754. 0.201300E+06 0.000000E+00
  755. -0.171234E+04 0.212196E+00 0.280015E+04
  756. 0.201300E+06 0.000000E+00
  757. -0.172300E+04 0.212196E+00 0.280015E+04
  758. 0.201300E+06 0.000000E+00
  759. -0.173366E+04 0.212196E+00 0.280015E+04
  760. 0.201300E+06 0.000000E+00
  761. );
  762. LEXACT = LEXACT ET ( PROG
  763. -0.174432E+04 0.212196E+00 0.280015E+04
  764. 0.201300E+06 0.000000E+00
  765. -0.175498E+04 0.212196E+00 0.280015E+04
  766. 0.201300E+06 0.000000E+00
  767. -0.176564E+04 0.212196E+00 0.280015E+04
  768. 0.201300E+06 0.000000E+00
  769. -0.177630E+04 0.212196E+00 0.280015E+04
  770. 0.201300E+06 0.000000E+00
  771. );
  772. LEXACT = LEXACT ET ( PROG
  773. -0.178696E+04 0.212196E+00 0.280015E+04
  774. 0.201300E+06 0.000000E+00
  775. -0.179762E+04 0.212196E+00 0.280015E+04
  776. 0.201300E+06 0.000000E+00
  777. -0.180828E+04 0.212196E+00 0.280015E+04
  778. 0.201300E+06 0.000000E+00
  779. -0.181894E+04 0.212196E+00 0.280015E+04
  780. 0.201300E+06 0.000000E+00
  781. );
  782. LEXACT = LEXACT ET ( PROG
  783. -0.182960E+04 0.212196E+00 0.280015E+04
  784. 0.201300E+06 0.000000E+00
  785. -0.184026E+04 0.212196E+00 0.280015E+04
  786. 0.201300E+06 0.000000E+00
  787. -0.185092E+04 0.212196E+00 0.280015E+04
  788. 0.201300E+06 0.000000E+00
  789. -0.186158E+04 0.212196E+00 0.280015E+04
  790. 0.201300E+06 0.000000E+00
  791. );
  792. aa = 'DIME' LEXACT ;
  793. LEX_XOT = 'LECT' 1 PAS 5 (aa '-' 4) ;
  794. LEX_XOT = 'EXTRAIRE' LEXACT LEX_XOT ;
  795. LEX_RHO = 'LECT' 2 PAS 5 (aa '-' 3) ;
  796. LEX_RHO = 'EXTRAIRE' LEXACT LEX_RHO ;
  797. LEX_T = 'LECT' 3 PAS 5 (aa '-' 2) ;
  798. LEX_T = 'EXTRAIRE' LEXACT LEX_T ;
  799. LEX_P = 'LECT' 4 PAS 5 (aa '-' 1) ;
  800. LEX_P = 'EXTRAIRE' LEXACT LEX_P ;
  801. LEX_U = 'LECT' 5 PAS 5 (aa '-' 0) ;
  802. LEX_U = 'EXTRAIRE' LEXACT LEX_U ;
  803. *
  804. ******************
  805. **** PRIMCONS ****
  806. ******************
  807. 'DEBPROC' PRIMCONS ;
  808. 'ARGUMENT' PGAS*TABLE TN1*'CHPOINT ' TN2*'CHPOINT '
  809. PN1*'CHPOINT ' PN2*'CHPOINT ' VN1*'CHPOINT ' VN2*'CHPOINT ' ;
  810. *
  811. * ETHER = int_0^T cv(T') dT' T < TMAX
  812. * = int_0^TMAX cv(T') dT' '+'
  813. * cv(TMAX) T >= TMAX
  814. ESP1 = 'EXTRAIRE' (PGAS . 'SPECIES') 1 ;
  815. * DY1 = y_i - y_f for the species 1
  816. DY1 = (('EXTRAIRE' (PGAS . 'MASSFRA') 1) '-'
  817. ('EXTRAIRE' (PGAS . 'MASSFRA') 2)) ;
  818. COEF1 = ('EXTRAIRE' (PGAS . 'CHEMCOEF') 1) '*'
  819. (PGAS . ESP1 . 'W') ;
  820. YFINPH1 = 1.0 ;
  821. YFINPH2 = 1.0 ;
  822. 'SI' (COEF1 > 0) ;
  823. YPH2 = 'EXTRAIRE' (PGAS . 'MASSFRA') 2 ;
  824. YPH1 = YPH2 '+' DY1 ;
  825. 'SINON' ;
  826. YPH1 = 'EXTRAIRE' (PGAS . 'MASSFRA') 2 ;
  827. YPH2 = YPH1 '-' DY1 ;
  828. 'FINSI' ;
  829. YFINPH1 = YFINPH1 '-' YPH1 ;
  830. YFINPH2 = YFINPH2 '-' YPH2 ;
  831. PRYPH1 = 'PROG' YPH1 ;
  832. PRYPH2 = 'PROG' YPH2 ;
  833. 'REPETER' BLESP (('DIME' (PGAS . 'SPECIES')) '-' 2) ;
  834. ESP = 'EXTRAIRE' (PGAS . 'SPECIES') (&BLESP '+' 1) ;
  835. COEF = ('EXTRAIRE' (PGAS . 'CHEMCOEF') (&BLESP '+' 1))
  836. '*' (PGAS . ESP . 'W') ;
  837. DY = (DY1 * (COEF '/' COEF1)) ;
  838. 'SI' (COEF > 0) ;
  839. YPH2 = 'EXTRAIRE' (PGAS . 'MASSFRA') (&BLESP '+' 2) ;
  840. YPH1 = YPH2 '+' DY ;
  841. 'SINON' ;
  842. YPH1 = 'EXTRAIRE' (PGAS . 'MASSFRA') (&BLESP '+' 2) ;
  843. YPH2 = YPH1 '-' DY ;
  844. 'FINSI' ;
  845. PRYPH1 = PRYPH1 'ET' ('PROG' YPH1) ;
  846. PRYPH2 = PRYPH2 'ET' ('PROG' YPH2) ;
  847. YFINPH1 = YFINPH1 '-' YPH1 ;
  848. YFINPH2 = YFINPH2 '-' YPH2 ;
  849. 'FIN' BLESP ;
  850. PRYPH1 = PRYPH1 'ET' ('PROG' YFINPH1) ;
  851. PRYPH2 = PRYPH2 'ET' ('PROG' YFINPH2) ;
  852. * 'LISTE' PRYPH1 ;
  853. * 'LISTE' PRYPH2 ;
  854. *
  855. TMAX = (PGAS . 'TMAX') ;
  856. * TCAL1 = MIN TN1, TMAX
  857. TCAL1 = 0.5D0 '*' ((TMAX '+' TN1) '-' ('ABS' (TN1 '-' TMAX))) ;
  858. DTN1 = TN1 '-' TCAL1 ;
  859. * TCAL1 = MIN TN1, TMAX
  860. TCAL2 = 0.5D0 '*' ((TMAX '+' TN2) '-' ('ABS' (TN2 '-' TMAX))) ;
  861. DTN2 = TN2 '-' TCAL2 ;
  862. *
  863. * Internal energy (J/kg in SI)
  864. *
  865. ETHER1 = 0.0 ;
  866. CV1 = 0.0 ;
  867. ETHER2 = 0.0 ;
  868. CV2 = 0.0 ;
  869. FUNTN1 = 1.0 ;
  870. FUNTN2 = 1.0 ;
  871. 'REPETER' BLPO ((PGAS . 'NORD') '+' 1) ;
  872. 'REPETER' BLESP ('DIME' (PGAS . 'SPECIES')) ;
  873. ESP = 'EXTRAIRE' (PGAS . 'SPECIES') &BLESP ;
  874. YCEL1 = 'EXTRAIRE' PRYPH1 &BLESP ;
  875. YCEL2 = 'EXTRAIRE' PRYPH2 &BLESP ;
  876. AA = 'EXTRAIRE' (PGAS . ESP . 'A') &BLPO ;
  877. DCV1 = (AA * YCEL1 * FUNTN1) ;
  878. DCV2 = (AA * YCEL2 * FUNTN2) ;
  879. CV1 = CV1 '+' DCV1 ;
  880. CV2 = CV2 '+' DCV2 ;
  881. ETHER1 = ETHER1 '+' (DCV1 * TCAL1 '/' (&BLPO)) ;
  882. ETHER2 = ETHER2 '+' (DCV2 * TCAL2 '/' (&BLPO)) ;
  883. 'FIN' BLESP ;
  884. FUNTN1 = FUNTN1 '*' TCAL1 ;
  885. FUNTN2 = FUNTN2 '*' TCAL2 ;
  886. 'FIN' BLPO ;
  887. ETHER1 = ETHER1 '+' (CV1 '*' DTN1) ;
  888. ETHER2 = ETHER2 '+' (CV2 '*' DTN2) ;
  889. *
  890. * Formation energy/enthalpy (J/kg in SI) and gas constant (J/kg/K)
  891. *
  892. EFORM1 = 0.0 ;
  893. EFORM2 = 0.0 ;
  894. RGAS1 = 0.0 ;
  895. RGAS2 = 0.0 ;
  896. 'REPETER' BLESP ('DIME' (PGAS . 'SPECIES')) ;
  897. ESP = 'EXTRAIRE' (PGAS . 'SPECIES') &BLESP ;
  898. YCEL1 = 'EXTRAIRE' PRYPH1 &BLESP ;
  899. YCEL2 = 'EXTRAIRE' PRYPH2 &BLESP ;
  900. EFORM1 = EFORM1 '+' (YCEL1 * (PGAS . ESP . 'H0K')) ;
  901. EFORM2 = EFORM2 '+' (YCEL2 * (PGAS . ESP . 'H0K')) ;
  902. RGAS1 = RGAS1 '+' (YCEL1 * (PGAS . 'RUNIV') '/'
  903. (PGAS . ESP . 'W')) ;
  904. RGAS2 = RGAS2 '+' (YCEL2 * (PGAS . 'RUNIV') '/'
  905. (PGAS . ESP . 'W')) ;
  906. 'FIN' BLESP ;
  907. *
  908. * Computation of the conservative variables
  909. *
  910. RN1 = PN1 '/' (RGAS1 '*' TN1) ;
  911. RN2 = PN2 '/' (RGAS2 '*' TN2) ;
  912. GN1 = RN1 * VN1 ;
  913. GN2 = RN2 * VN2 ;
  914. LVEL = 'MOTS' 'UX' 'UY' 'UZ' ;
  915. ECIN1 = 0.5D0 '*' ('PSCAL' VN1 VN1 LVEL LVEL) ;
  916. ECIN2 = 0.5D0 '*' ('PSCAL' VN2 VN2 LVEL LVEL) ;
  917. RETN1 = RN1 '*' (ETHER1 '+' ECIN1 '+' EFORM1) ;
  918. RETN2 = RN2 '*' (ETHER2 '+' ECIN2 '+' EFORM2) ;
  919. *
  920. 'RESPRO' RN1 RN2 GN1 GN2 RETN1 RETN2 ;
  921. 'FINPROC' ;
  922.  
  923. *
  924. ****************************************************************
  925. ***** 1D mesh *****
  926. ****************************************************************
  927. *
  928. *
  929. * A4 ------------------- A5 ----------------------- A6
  930. * | | |
  931. * | ZONE1 | ZONE2 |
  932. * | | |
  933. * A1 ------------------- A2 ----------------------- A3
  934. * | | |
  935. * | L1 | L2 |
  936. * >|<--------------------->|<----------------------->|
  937. *
  938. * AR = activation region
  939. * ZONE1
  940. * ZONE2
  941. *
  942.  
  943. RAF = 200 ;
  944.  
  945. L1 = 1. ;
  946. L2 = 1. ;
  947.  
  948. DX = L1 '/' RAF ;
  949. N1 = RAF ;
  950. N2 = 'ENTIER' ((L2 '/' DX) '+' 0.5) ;
  951.  
  952. * For sake of simplicity, we will only consider NY mesh in y-direction
  953.  
  954. NY = 1 ;
  955. H1 = NY '*' DX ;
  956.  
  957. A1 = 0.0 0.0 0.0 ;
  958. A2 = L1 0.0 0.0 ;
  959. A3 = (L1 '+' L2) 0.0 0.0 ;
  960. A4 = 0.0 H1 0.0 ;
  961. A5 = L1 H1 0.0 ;
  962. A6 = (L1 '+' L2) H1 0.0 ;
  963. *
  964. 'OPTION' 'ELEM' 'SEG2' ;
  965. A1A2 = A1 'DROIT' N1 A2 ;
  966. A2A3 = A2 'DROIT' N2 A3 ;
  967. A4A5 = A4 'DROIT' N1 A5 ;
  968. A5A6 = A5 'DROIT' N2 A6 ;
  969. *
  970. A1A4 = A1 'DROIT' NY A4 ;
  971. A2A5 = A2 'DROIT' NY A5 ;
  972. A3A6 = A3 'DROIT' NY A6 ;
  973. *
  974. *
  975. **** 2D mesh
  976. *
  977. * DOM1 is zone 1
  978. * DOM2 is zone 2
  979. *
  980. 'OPTION' 'ELEM' 'QUA4' ;
  981. DOM1P = 'DALLER' A1A2 A2A5 ('INVERSE' A4A5) ('INVERSE' A1A4) ;
  982. DOM2P = 'DALLER' A2A3 A3A6 ('INVERSE' A5A6) ('INVERSE' A2A5) ;
  983. LIMG = A1A4 'TRANSLATION' 1 (0.0 0.0 H1) ;
  984. LIMD = A3A6 'TRANSLATION' 1 (0.0 0.0 H1) ;
  985. *
  986. 'OPTION' 'ELEM' 'CUB8' ;
  987. DOM1 = DOM1P 'VOLUME' 'TRANSLATION' 1 (0.0 0.0 H1) ;
  988. DOM2 = DOM2P 'VOLUME' 'TRANSLATION' 1 (0.0 0.0 H1) ;
  989. *
  990. * DOMTOT = total region
  991. *
  992. DOMTOT = DOM1 'ET' DOM2 ;
  993. 'ELIMINATION' (1.0D-3 '*' DX) DOMTOT ;
  994. 'ELIMINATION' DOM1 (1.0D-3 '*' DX) LIMG ;
  995. 'ELIMINATION' DOM2 (1.0D-3 '*' DX) LIMD ;
  996. DOMLIM = 'ENVE' DOMTOT ;
  997. *
  998. **** The tables 'DOMAINE'
  999. *
  1000. $DOMTOT = 'MODELISER' DOMTOT 'EULER' ;
  1001. $DOMLIM = 'MODELISER' DOMLIM 'EULER' ;
  1002. $DOM1 = 'MODELISER' DOM1 'EULER' ;
  1003. $DOM2 = 'MODELISER' DOM2 'EULER' ;
  1004. $LIMG = 'MODELISER' LIMG 'EULER' ;
  1005. $LIMD = 'MODELISER' LIMD 'EULER' ;
  1006. *
  1007. TDOMTOT = 'DOMA' $DOMTOT 'VF' ;
  1008. TDOMLIM = 'DOMA' $DOMLIM 'VF' ;
  1009. TDOM1 = 'DOMA' $DOM1 'VF' ;
  1010. TDOM2 = 'DOMA' $DOM2 'VF' ;
  1011. TLIMG = 'DOMA' $LIMG 'VF' ;
  1012. TLIMD = 'DOMA' $LIMD 'VF' ;
  1013. *
  1014. QDOMTOT = TDOMTOT . 'QUAF' ;
  1015. QDOMLIM = TDOMLIM . 'QUAF' ;
  1016. QDOM1 = TDOM1 . 'QUAF' ;
  1017. QDOM2 = TDOM2 . 'QUAF' ;
  1018. QLIMG = TLIMG . 'QUAF' ;
  1019. QLIMD = TLIMD . 'QUAF' ;
  1020. *
  1021. 'ELIMINATION' QDOMTOT (0.001 '*' DX) QDOMLIM ;
  1022. 'ELIMINATION' QDOMTOT (0.001 '*' DX) QDOM1 ;
  1023. 'ELIMINATION' QDOMTOT (0.001 '*' DX) QDOM2 ;
  1024. 'ELIMINATION' QDOMTOT (0.001 '*' DX) QLIMG ;
  1025. 'ELIMINATION' QDOMTOT (0.001 '*' DX) QLIMD ;
  1026. *
  1027. **** MOD1 = model (created just to display the CHAMELEMs)
  1028. *
  1029. MOD1 = 'MODELISER' ('DOMA' $DOMTOT 'MAILLAGE') 'THERMIQUE' ;
  1030. *
  1031. **** Line for graphics
  1032. *
  1033. *
  1034. LIGEVO = (TDOMTOT . 'CENTRE') ;
  1035. * P1 = 'POIN' (COOR 1 LIGEVO) 'MINIMUM' ;
  1036. * 'ORDONNER' LIGEVO P1 ;
  1037. 'ORDONNER' LIGEVO ;
  1038. LIGEVO = 'QUELCONQUE' 'SEG2' LIGEVO 'COULEUR' 'VERT';
  1039. 'SI' GRAPH ;
  1040. 'TRACER' (QDOMTOT 'ET' LIGEVO) ;
  1041. 'FINSI' ;
  1042.  
  1043. * 'OPTION' 'SAUVER' ('CHAINE' 'mesh.sauv_raf' RAF) ;
  1044. * 'SAUVER' RAF DOMTOT $DOMTOT $DOM1 $DOM2 $DOM3 LIGEVO MOD1 ;
  1045.  
  1046. ****************************************************************
  1047. ****************************************************************
  1048. ***** Initial conditions and gas properties. *****
  1049. ****************************************************************
  1050. ****************************************************************
  1051. *
  1052. *************************************************
  1053. **** The table for the properties of the gas ****
  1054. *************************************************
  1055. *
  1056. PGAS = 'TABLE' ;
  1057. *
  1058. **** Order of the polynomial order for cv = cv(T)
  1059. * For T > TMAX, cv(T) = cv(Tmax)
  1060. *
  1061. PGAS . 'TMAX' = 6000.0 ;
  1062. PGAS . 'NORD' = 4 ;
  1063. *
  1064. **** Species involved in the mixture (before or after
  1065. * the chemical reaction)
  1066. *
  1067. PGAS . 'SPECIES' = 'MOTS' 'H2 ' 'O2 ' 'H2O ' 'N2 ' ;
  1068. *
  1069. *
  1070. **** Coefficient of the chemical reaction.
  1071. * Note that for the first species this coefficient should be positive
  1072. * Normal, we take it equal to 1.
  1073. *
  1074. * H2 '+' 0.5 O2 ---> H2O
  1075. *
  1076. PGAS . 'CHEMCOEF' = 'PROG' 1.0 0.5 -1.0 0.0 ;
  1077. *
  1078. **** Mass fraction of the first species before and after the combustion
  1079. * Final mass fractions of the species with positive coefficients.
  1080. * Final mass fractions of the species with non-positive coefficient.
  1081. * The mass fraction of the last species is not given.
  1082. *
  1083. PGAS . 'MASSFRA' = 'PROG' 0.285219E-01 0.964039E-11 0.765104E-10
  1084. 0.127442E-10 ;
  1085. *
  1086. **** Coef with the gas properties
  1087. *
  1088. PGAS . 'H2 ' = 'TABLE' ;
  1089. PGAS . 'H2O ' = 'TABLE' ;
  1090. PGAS . 'N2 ' = 'TABLE' ;
  1091. PGAS . 'O2 ' = 'TABLE' ;
  1092. *
  1093. **** Runiv (J/mole/K)
  1094. *
  1095. PGAS . 'RUNIV' = 8.31441 ;
  1096. *
  1097. **** W (kg/mole). Gas constant (J/kg/K = Runiv/W)
  1098. *
  1099. PGAS . 'H2 ' . 'W' = 2. * 1.00797E-3 ;
  1100. PGAS . 'O2 ' . 'W' = 2. * 15.9994E-3 ;
  1101. PGAS . 'H2O ' . 'W' = (PGAS . 'H2 ' . 'W' ) '+'
  1102. (0.5 * (PGAS . 'O2 ' . 'W' )) ;
  1103. PGAS . 'N2 ' . 'W' = 2 * 14.0067E-3 ;
  1104. *
  1105. **** Polynomial coefficients
  1106. *
  1107. PGAS . 'H2 ' . 'A' = 'PROG' 9834.91866 0.54273926 0.000862203836
  1108. -2.37281455E-07 1.84701105E-11 ;
  1109. PGAS . 'H2O ' . 'A' = 'PROG' 1155.95625 0.768331151 -5.73129958E-05
  1110. -1.82753232E-08 2.44485692E-12 ;
  1111. PGAS . 'N2 ' . 'A' = 'PROG' 652.940766 0.288239099 -7.80442298E-05
  1112. 8.78233606E-09 -3.05514485E-13 ;
  1113. PGAS . 'O2 ' . 'A' = 'PROG' 575.012333 0.350522002 -0.000128294865
  1114. 2.33636971E-08 -1.53304905E-12;
  1115. *
  1116. **** Formation enthalpies (energies) at 0K (J/Kg)
  1117. *
  1118. PGAS . 'H2 ' . 'H0K' = -4.195D6 ;
  1119. PGAS . 'H2O ' . 'H0K' = -1.395D7 ;
  1120. PGAS . 'N2 ' . 'H0K' = -2.953D5 ;
  1121. PGAS . 'O2 ' . 'H0K' = -2.634D5 ;
  1122. *
  1123. *************************************************
  1124. **** The initial conditions *********************
  1125. *************************************************
  1126. *
  1127. eps = 1.0D-64 ;
  1128. K0 = 200. ;
  1129. *
  1130. T1 = 293. ;
  1131. alph11 = 1.0 '-' 1.0D-5 ;
  1132. alph12 = 1.0D-5 ;
  1133. * alph11 = 0.5 ;
  1134. * alph12 = 0.5 ;
  1135. alph21 = 1.0 '-' alph11 ;
  1136. alph22 = 1.0 - alph12 ;
  1137. T2 = 2800. ;
  1138. un1 = 0.0 ;
  1139. un2 = 0.0 ;
  1140. ut1 = 0.0 ;
  1141. ut2 = 0.0 ;
  1142. uv1 = 0.0 ;
  1143. uv2 = 0.0 ;
  1144. pre1 = 1.013D5 ;
  1145. pre2 = 2.013D5 ;
  1146. *
  1147. CHVN1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 3 'UX' un1
  1148. 'UY' ut1 'UZ' uv1) ;
  1149. CHVN2 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 3 'UX' un2
  1150. 'UY' ut2 'UZ' uv2) ;
  1151. *
  1152. CHTN1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' T1) ;
  1153. CHTN2 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' T2) ;
  1154. *
  1155. CHPN1 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' pre1) ;
  1156. CHPN2 = ('MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' pre2) ;
  1157. *
  1158. CHAL1 = ('MANUEL' 'CHPO' (TDOM1 . 'CENTRE') 1 'SCAL'
  1159. alph11) '+'
  1160. ('MANUEL' 'CHPO' (TDOM2 . 'CENTRE') 1 'SCAL'
  1161. alph12) ;
  1162. CHAL2 = ('MANUEL' 'CHPO' (TDOM1 . 'CENTRE') 1 'SCAL'
  1163. alph21) '+'
  1164. ('MANUEL' 'CHPO' (TDOM2 . 'CENTRE') 1 'SCAL'
  1165. alph22) ;
  1166. *
  1167. CHRN1 CHRN2 CHGN1 CHGN2 CHRET1 CHRET2 = PRIMCONS
  1168. PGAS CHTN1 CHTN2 CHPN1 CHPN2 CHVN1 CHVN2 ;
  1169. *
  1170. RN1 RN2 VN1 VN2 PN1 PN2 TN1 TN2 = 'PRIM' 'DEM' PGAS CHAL1 CHAL2
  1171. (CHAL1 * CHRN1) (CHAL2 * CHRN2) (CHAL1 * CHGN1)
  1172. (CHAL2 * CHGN2) (CHAL1 * CHRET1) (CHAL2 * CHRET2)
  1173. CHTN1 CHTN2 EPS ;
  1174. TN1M = COPIER TN1 ;
  1175. TN2M = COPIER TN2 ;
  1176. *
  1177. ERRO = 'MAXIMUM' (PRE1 '-' ('REDU' PN1 (TDOM1 . 'CENTRE'))) 'ABS' ;
  1178. ERRO = ERRO '/' (pre1) ;
  1179. 'SI' (ERRO > 1.0D-6) ;
  1180. 'MESSAGE' ('CHAINE' 'Erreur PRIM ' ERRO);
  1181. 'ERREUR' 21 ;
  1182. 'FINSI' ;
  1183. ERRO = 'MAXIMUM' (PRE2 '-' ('REDU' PN2 (TDOM2 . 'CENTRE'))) 'ABS' ;
  1184. ERRO = ERRO '/' (pre2) ;
  1185. 'SI' (ERRO > 1.0D-6) ;
  1186. 'MESSAGE' ('CHAINE' 'Erreur PRIM ' ERRO);
  1187. 'ERREUR' 21 ;
  1188. 'FINSI' ;
  1189. ERRO = 'MAXIMUM' (T1 '-' ('REDU' TN1 (TDOM1 . 'CENTRE'))) 'ABS' ;
  1190. ERRO = ERRO '/' (T1) ;
  1191. 'SI' (ERRO > 1.0D-6) ;
  1192. 'MESSAGE' ('CHAINE' 'Erreur PRIM ' ERRO);
  1193. 'ERREUR' 21 ;
  1194. 'FINSI' ;
  1195. ERRO = 'MAXIMUM' (T2 '-' ('REDU' TN2 (TDOM2 . 'CENTRE'))) 'ABS' ;
  1196. ERRO = ERRO '/' (T2) ;
  1197. 'SI' (ERRO > 1.0D-6) ;
  1198. 'MESSAGE' ('CHAINE' 'Erreur PRIM ' ERRO);
  1199. 'ERREUR' 21 ;
  1200. 'FINSI' ;
  1201. *
  1202. **** Parameter for the time loop
  1203. *
  1204. * Names of the residuum components
  1205. *
  1206. LISTINCO = ('MOTS' 'ALF1' 'RN1' 'RNX1' 'RNY1' 'RNZ1' 'RET1'
  1207. 'ALF2' 'RN2' 'RNX2' 'RNY2' 'RNZ2' 'RET2') ;
  1208. *
  1209. **** BC
  1210. *
  1211. KONLIM = 'DIFF' (TLIMG . 'CENTRE') (TLIMG . 'CENTRE') ;
  1212. CHPVID CHMVID = 'KOPS' 'MATRIK' ;
  1213. RESLIM = 'COPIER' CHPVID ;
  1214.  
  1215. *
  1216. ****************************************************************
  1217. ****************************************************************
  1218. ***** Parameters for the computations ******
  1219. ****************************************************************
  1220. ****************************************************************
  1221. *
  1222.  
  1223. * Iterations
  1224. * Final time
  1225. * Safety Factor fot the time step
  1226. * Second order reconstruction?
  1227. * We compute the gradients during the correction or not ?
  1228.  
  1229. NITER = 100000 ;
  1230. TFINAL = 0.4D-3 ;
  1231. SAFFAC = 0.5 ;
  1232. LOGSO = VRAI ;
  1233. LOGGRA = VRAI ;
  1234.  
  1235.  
  1236. * 'OPTION' 'SAUVER' 'parameters.sauv' ;
  1237. * 'SAUVER' METO NITER TFINAL SAFFAC LOGSO ;
  1238.  
  1239. ****************************************************************
  1240. ****************************************************************
  1241. ***** The computation ******
  1242. ****************************************************************
  1243. ****************************************************************
  1244.  
  1245. AL1 = CHAL1 ;
  1246. AL2 = CHAL2 ;
  1247. ARN1 = CHAL1 * CHRN1 ;
  1248. ARN2 = CHAL2 * CHRN2 ;
  1249. AGN1 = CHAL1 * CHGN1 ;
  1250. AGN2 = CHAL2 * CHGN2 ;
  1251. AREN1 = CHAL1 * CHRET1 ;
  1252. AREN2 = CHAL2 * CHRET2 ;
  1253. *
  1254. AL10 = 'COPIER' AL1 ;
  1255. AL20 = 'COPIER' AL2 ;
  1256. ARN10 = 'COPIER' ARN1 ;
  1257. ARN20 = 'COPIER' ARN2 ;
  1258. AGN10 = 'COPIER' AGN1 ;
  1259. AGN20 = 'COPIER' AGN2 ;
  1260. AREN10 = 'COPIER' AREN1 ;
  1261. AREN20 = 'COPIER' AREN2 ;
  1262. TN10 = 'COPIER' TN1 ;
  1263. TN20 = 'COPIER' TN2 ;
  1264.  
  1265. *
  1266. **** Geometrical coefficient to compute grad(alpha)/|grad(alpha)|
  1267. *
  1268.  
  1269. EPSGR = 1.0D-6 ;
  1270. CHPL1 = CHPVID ;
  1271. CHPL2 = 'MANUEL' 'CHPO' (TDOMLIM . 'CENTRE') 3
  1272. 'P1DX' 0.0 'P1DY' 0.0 'P1DZ' 0.0 ;
  1273. GRALP1 GRAL = 'PENT' $DOMTOT 'FACE'
  1274. 'DIAMAN2' ('MOTS' 'SCAL') ('MOTS' 'P1DX' 'P1DY' 'P1DZ')
  1275. AL1 CHPL1 CHPL2 ;
  1276. * 'SI' VRAI ;
  1277. * V1 = 'VECTEUR'
  1278. * ('NOMC' ('MOTS' 'P1DX' 'P1DY' 'P1DZ') GRALP1
  1279. * ('MOTS' 'UX' 'UY' 'UZ')) ;
  1280. * 'TRACER' DOMTOT V1 DOMLIM ;
  1281. * 'FINSI' ;
  1282. GRALP1 = GRALP1 '+' EPSGR ;
  1283. GRALP1 = GRALP1 '/' (('PSCAL' GRALP1 GRALP1
  1284. ('MOTS' 'P1DX' 'P1DY' 'P1DZ')
  1285. ('MOTS' 'P1DX' 'P1DY' 'P1DZ')) '**' 0.5) ;
  1286. * 'SI' VRAI ;
  1287. * V1 = 'VECTEUR'
  1288. * ('NOMC' ('MOTS' 'P1DX' 'P1DY' 'P1DZ') GRALP1
  1289. * ('MOTS' 'UX' 'UY' 'UZ')) ;
  1290. * 'TRACER' DOMTOT V1 DOMLIM ;
  1291. * 'FINSI' ;
  1292.  
  1293. *
  1294. **** Geometrical coefficient to compute gradients
  1295. *
  1296. GRADR0 ALR0 COEFSCAL = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'NOLIMITE'
  1297. ('MOTS' 'SCAL') AL10 ;
  1298. GRADR0 = GRADR0 * 0.0 ;
  1299. ALR0 = ALR0 * 0.0 ;
  1300.  
  1301. GRADV0 ALV0 COEFVECT = 'PENT' $DOMTOT 'CENTRE' 'EULEVECT' 'NOLIMITE'
  1302. ('MOTS' 'UX' 'UY' 'UZ') AGN10 ;
  1303. GRADV0 = GRADV0 * 0.0 ;
  1304. ALV0 = ALV0 * 0.0 ;
  1305.  
  1306. VINF1 = 'MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' 10. ;
  1307. VINF2 = 'MANUEL' 'CHPO' (TDOMTOT . 'CENTRE') 1 'SCAL' 100. ;
  1308. *
  1309. **** Temporal loop
  1310. *
  1311.  
  1312. TPS = 0.0 ;
  1313.  
  1314. 'MESSAGE' ;
  1315. 'MESSAGE' ('CHAINE' 'Methode = ' METO) ;
  1316. 'MESSAGE' ('CHAINE' 'SAFFAC = ' SAFFAC) ;
  1317. 'MESSAGE' ;
  1318.  
  1319. 'TEMPS' 'ZERO' ;
  1320. 'REPETER' BLITER NITER ;
  1321.  
  1322. *
  1323. **** Primitive variables
  1324. *
  1325.  
  1326. RN1 RN2 VN1 VN2 PN1 PN2 TN1 TN2 = 'PRIM' 'DEM' PGAS AL1 AL2
  1327. ARN1 ARN2 AGN1 AGN2 AREN1 AREN2 TN1M TN2M EPS ;
  1328.  
  1329. TN1M = 'COPIER' TN1 ;
  1330. TN2M = 'COPIER' TN2 ;
  1331.  
  1332. **** Gradient of alpha
  1333.  
  1334. GRALP1 = 'PENT' $DOMTOT 'FACE'
  1335. 'DIAMAN2' ('MOTS' 'SCAL') ('MOTS' 'P1DX' 'P1DY' 'P1DZ')
  1336. AL1 CHPL1 CHPL2 'GRADGEO' GRAL ;
  1337. * 'SI' VRAI ;
  1338. * V1 = 'VECTEUR'
  1339. * ('NOMC' ('MOTS' 'P1DX' 'P1DY' 'P1DZ') GRALP1
  1340. * ('MOTS' 'UX' 'UY' 'UZ')) ;
  1341. * 'TRACER' DOMTOT V1 DOMLIM ;
  1342. * 'FINSI' ;
  1343. GRALP1 = GRALP1 '+' EPSGR ;
  1344. GRALP1 = GRALP1 '/' (('PSCAL' GRALP1 GRALP1
  1345. ('MOTS' 'P1DX' 'P1DY' 'P1DZ')
  1346. ('MOTS' 'P1DX' 'P1DY' 'P1DZ')) '**' 0.5) ;
  1347.  
  1348. 'SI' LOGSO ;
  1349.  
  1350. GRADA1 ALA1 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1351. ('MOTS' 'SCAL') AL1 'GRADGEO' COEFSCAL ;
  1352.  
  1353. GRADR1 ALR1 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1354. ('MOTS' 'SCAL') RN1 'GRADGEO' COEFSCAL ;
  1355.  
  1356. GRADP1 ALP1 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1357. ('MOTS' 'SCAL') PN1 'GRADGEO' COEFSCAL ;
  1358.  
  1359. GRADV1 ALV1 = 'PENT' $DOMTOT 'CENTRE' 'EULEVECT' 'LIMITEUR'
  1360. ('MOTS' 'UX' 'UY' 'UZ') VN1 'GRADGEO' COEFVECT ;
  1361.  
  1362. GRADA2 ALA2 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1363. ('MOTS' 'SCAL') AL2 'GRADGEO' COEFSCAL ;
  1364.  
  1365. GRADR2 ALR2 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1366. ('MOTS' 'SCAL') RN2 'GRADGEO' COEFSCAL ;
  1367.  
  1368. GRADP2 ALP2 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1369. ('MOTS' 'SCAL') PN2 'GRADGEO' COEFSCAL ;
  1370.  
  1371. GRADV2 ALV2 = 'PENT' $DOMTOT 'CENTRE' 'EULEVECT' 'LIMITEUR'
  1372. ('MOTS' 'UX' 'UY' 'UZ') VN2 'GRADGEO' COEFVECT ;
  1373.  
  1374. CHFAL1 CHFAL2 CHFRN1 CHFRN2 CHFVN1 CHFVN2 CHFPN1 CHFPN2 =
  1375. 'PRET' 'DEM' $DOMTOT
  1376. AL1 GRADA1 ALA1
  1377. AL2 GRADA2 ALA2
  1378. * AL1 GRADA1 ALR0
  1379. * AL2 GRADA2 ALR0
  1380. RN1 GRADR1 ALR1
  1381. RN2 GRADR2 ALR2
  1382. VN1 GRADV1 ALV1
  1383. VN2 GRADV2 ALV2
  1384. PN1 GRADP1 ALP1
  1385. PN2 GRADP2 ALP2 ;
  1386.  
  1387. 'SINON' ;
  1388.  
  1389. CHFAL1 CHFAL2 CHFRN1 CHFRN2 CHFVN1 CHFVN2 CHFPN1 CHFPN2 =
  1390. 'PRET' 'DEM' $DOMTOT
  1391. AL1 GRADR0 ALR0
  1392. AL2 GRADR0 ALR0
  1393. RN1 GRADR0 ALR0
  1394. RN2 GRADR0 ALR0
  1395. VN1 GRADV0 ALV0
  1396. VN2 GRADV0 ALV0
  1397. PN1 GRADR0 ALR0
  1398. PN2 GRADR0 ALR0 ;
  1399.  
  1400. 'FINSI' ;
  1401.  
  1402. SI ('EGA' METO 'AUSMPUP') ;
  1403. RESIDU DELTAT SURF = 'KONV' 'VF' 'DEM' 'RESI' METO 'CONS'
  1404. $DOMTOT PGAS LISTINCO AL1 AL2 CHFAL1 CHFAL2 CHFRN1 CHFRN2
  1405. CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS KONLIM VINF1 VINF2 ;
  1406. 'SINON' ;
  1407. RESIDU DELTAT SURF = 'KONV' 'VF' 'DEM' 'RESI' METO 'CONS'
  1408. $DOMTOT PGAS LISTINCO AL1 AL2 CHFAL1 CHFAL2 CHFRN1 CHFRN2
  1409. CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS KONLIM ;
  1410. 'FINSI' ;
  1411.  
  1412.  
  1413. RESIDU = RESIDU '+' RESLIM ;
  1414. *
  1415. * 'REPETER' BL1 ('DIME' LISTINCO) ;
  1416. * mot1 = 'EXTRAIRE' LISTINCO &BL1 ;
  1417. * valre1 = 'MAXIMUM' ('EXCO' RESLIM mot1) 'ABS' ;
  1418. * tit1 = 'CHAINE' 'Component ' mot1 ', reference value ' valre1 ;
  1419. * evaa = 'EVOL' 'CHPO' RESIDU mot1 LIGEVO ;
  1420. * 'DESSIN' evaa 'TITRE' tit1 ;
  1421. * 'FIN' BL1 ;
  1422.  
  1423. * Problem with RNY1, RNY2
  1424.  
  1425. DT_CON = SAFFAC '*' DELTAT ;
  1426. *
  1427. **** The time step linked to tps
  1428. *
  1429.  
  1430. DTTPS = (TFINAL '-' TPS) * (1. '+' 1.0D-6) ;
  1431.  
  1432. *
  1433. **** Total time step
  1434. *
  1435.  
  1436. DTMIN = 'MINIMUM' ('PROG' DT_CON DTTPS) ;
  1437.  
  1438. *
  1439. **** Increment of the variables (predictor)
  1440. *
  1441. * RN1 RN2 VN1 VN2 PN1 PN2 TN1 TN2 = 'PRIM' 'DEM' PGAS AL1 AL2
  1442. * ARN1 ARN2 AGN1 AGN2 AREN1 AREN2 CHTN1 CHTN2 EPS ;
  1443.  
  1444. RESIDU = (0.5 * DTMIN) '*' RESIDU ;
  1445.  
  1446. DALP1 = 'EXCO' 'ALF1' RESIDU 'SCAL' ;
  1447. DRN1 = 'EXCO' 'RN1' RESIDU 'SCAL' ;
  1448. DGN1 = 'EXCO' ('MOTS' 'RNX1' 'RNY1' 'RNZ1') RESIDU
  1449. ('MOTS' 'UX' 'UY' 'UZ') ;
  1450. DRET1 = 'EXCO' 'RET1' RESIDU 'SCAL' ;
  1451. DALP2 = 'EXCO' 'ALF2' RESIDU 'SCAL' ;
  1452. DRN2 = 'EXCO' 'RN2' RESIDU 'SCAL' ;
  1453. DGN2 = 'EXCO' ('MOTS' 'RNX2' 'RNY2' 'RNZ2') RESIDU
  1454. ('MOTS' 'UX' 'UY' 'UZ') ;
  1455. DRET2 = 'EXCO' 'RET2' RESIDU 'SCAL' ;
  1456.  
  1457. AL1B = AL1 '+' DALP1 ;
  1458. ARN1B = ARN1 '+' DRN1 ;
  1459. AGN1B = AGN1 '+' DGN1 ;
  1460. AREN1B = AREN1 '+' DRET1 ;
  1461. AL2B = AL2 '+' DALP2 ;
  1462. ARN2B = ARN2 '+' DRN2 ;
  1463. AGN2B = AGN2 '+' DGN2 ;
  1464. AREN2B = AREN2 '+' DRET2 ;
  1465.  
  1466. *
  1467. **** Corrector
  1468. *
  1469.  
  1470. RN1 RN2 VN1 VN2 PN1 PN2 TN1 TN2 = 'PRIM' 'DEM' PGAS AL1B AL2B
  1471. ARN1B ARN2B AGN1B AGN2B AREN1B AREN2B TN1M TN2M EPS ;
  1472.  
  1473. **** Gradient of alpha
  1474.  
  1475. GRALP1 = 'PENT' $DOMTOT 'FACE'
  1476. 'DIAMAN2' ('MOTS' 'SCAL') ('MOTS' 'P1DX' 'P1DY' 'P1DZ')
  1477. AL1B CHPL1 CHPL2 'GRADGEO' GRAL ;
  1478. * 'SI' VRAI ;
  1479. * V1 = 'VECTEUR'
  1480. * ('NOMC' ('MOTS' 'P1DX' 'P1DY' 'P1DZ') GRALP1
  1481. * ('MOTS' 'UX' 'UY' 'UZ')) ;
  1482. * 'TRACER' DOMTOT V1 DOMLIM ;
  1483. * 'FINSI' ;
  1484. GRALP1 = GRALP1 '+' EPSGR ;
  1485. GRALP1 = GRALP1 '/' (('PSCAL' GRALP1 GRALP1
  1486. ('MOTS' 'P1DX' 'P1DY' 'P1DZ')
  1487. ('MOTS' 'P1DX' 'P1DY' 'P1DZ')) '**' 0.5) ;
  1488.  
  1489. 'SI' LOGSO ;
  1490.  
  1491. SI LOGGRA ;
  1492. GRADA1 ALA1 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1493. ('MOTS' 'SCAL') AL1B 'GRADGEO' COEFSCAL ;
  1494.  
  1495. GRADR1 ALR1 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1496. ('MOTS' 'SCAL') RN1 'GRADGEO' COEFSCAL ;
  1497.  
  1498. GRADP1 ALP1 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1499. ('MOTS' 'SCAL') PN1 'GRADGEO' COEFSCAL ;
  1500.  
  1501. GRADV1 ALV1 = 'PENT' $DOMTOT 'CENTRE' 'EULEVECT' 'LIMITEUR'
  1502. ('MOTS' 'UX' 'UY' 'UZ') VN1 'GRADGEO' COEFVECT ;
  1503.  
  1504. GRADA2 ALA2 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1505. ('MOTS' 'SCAL') AL2B 'GRADGEO' COEFSCAL ;
  1506.  
  1507. GRADR2 ALR2 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1508. ('MOTS' 'SCAL') RN2 'GRADGEO' COEFSCAL ;
  1509.  
  1510. GRADP2 ALP2 = 'PENT' $DOMTOT 'CENTRE' 'EULESCAL' 'LIMITEUR'
  1511. ('MOTS' 'SCAL') PN2 'GRADGEO' COEFSCAL ;
  1512.  
  1513. GRADV2 ALV2 = 'PENT' $DOMTOT 'CENTRE' 'EULEVECT' 'LIMITEUR'
  1514. ('MOTS' 'UX' 'UY' 'UZ') VN2 'GRADGEO' COEFVECT ;
  1515. 'FINSI' ;
  1516.  
  1517. CHFAL1 CHFAL2 CHFRN1 CHFRN2 CHFVN1 CHFVN2 CHFPN1 CHFPN2 =
  1518. 'PRET' 'DEM' $DOMTOT
  1519. AL1B GRADA1 ALA1
  1520. AL2B GRADA2 ALA2
  1521. * AL1B GRADA1 ALR0
  1522. * AL2B GRADA2 ALR0
  1523. RN1 GRADR1 ALR1
  1524. RN2 GRADR2 ALR2
  1525. VN1 GRADV1 ALV1
  1526. VN2 GRADV2 ALV2
  1527. PN1 GRADP1 ALP1
  1528. PN2 GRADP2 ALP2 ;
  1529.  
  1530. 'SINON' ;
  1531.  
  1532. CHFAL1 CHFAL2 CHFRN1 CHFRN2 CHFVN1 CHFVN2 CHFPN1 CHFPN2 =
  1533. 'PRET' 'DEM' $DOMTOT
  1534. AL1B GRADR0 ALR0
  1535. AL2B GRADR0 ALR0
  1536. RN1 GRADR0 ALR0
  1537. RN2 GRADR0 ALR0
  1538. VN1 GRADV0 ALV0
  1539. VN2 GRADV0 ALV0
  1540. PN1 GRADR0 ALR0
  1541. PN2 GRADR0 ALR0 ;
  1542.  
  1543. 'FINSI' ;
  1544.  
  1545. SI ('EGA' METO 'AUSMPUP') ;
  1546. RESIDU DELTAT SURF = 'KONV' 'VF' 'DEM' 'RESI' METO 'CONS'
  1547. $DOMTOT PGAS LISTINCO AL1B AL2B CHFAL1 CHFAL2 CHFRN1 CHFRN2
  1548. CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS KONLIM VINF1 VINF2 ;
  1549. 'SINON' ;
  1550. RESIDU DELTAT SURF = 'KONV' 'VF' 'DEM' 'RESI' METO 'CONS'
  1551. $DOMTOT PGAS LISTINCO AL1B AL2B CHFAL1 CHFAL2 CHFRN1 CHFRN2
  1552. CHFVN1 CHFVN2 CHFPN1 CHFPN2 K0 GRALP1 EPS KONLIM ;
  1553. 'FINSI' ;
  1554.  
  1555. RESIDU = RESIDU '+' RESLIM ;
  1556. *
  1557. * 'REPETER' BL1 ('DIME' LISTINCO) ;
  1558. * mot1 = 'EXTRAIRE' LISTINCO &BL1 ;
  1559. * valre1 = 'MAXIMUM' ('EXCO' RESLIM mot1) 'ABS' ;
  1560. * tit1 = 'CHAINE' 'Component ' mot1 ', reference value ' valre1 ;
  1561. * evaa = 'EVOL' 'CHPO' RESIDU mot1 LIGEVO ;
  1562. * 'DESSIN' evaa 'TITRE' tit1 ;
  1563. * 'FIN' BL1 ;
  1564.  
  1565. * 'OPTION' DONN 5 ;
  1566. * Problem with RNY1, RNY2
  1567.  
  1568.  
  1569. RESIDU = DTMIN '*' RESIDU ;
  1570.  
  1571. DALP1 = 'EXCO' 'ALF1' RESIDU 'SCAL' ;
  1572. DRN1 = 'EXCO' 'RN1' RESIDU 'SCAL' ;
  1573. DGN1 = 'EXCO' ('MOTS' 'RNX1' 'RNY1' 'RNZ1') RESIDU
  1574. ('MOTS' 'UX' 'UY' 'UZ') ;
  1575. DRET1 = 'EXCO' 'RET1' RESIDU 'SCAL' ;
  1576. DALP2 = 'EXCO' 'ALF2' RESIDU 'SCAL' ;
  1577. DRN2 = 'EXCO' 'RN2' RESIDU 'SCAL' ;
  1578. DGN2 = 'EXCO' ('MOTS' 'RNX2' 'RNY2' 'RNZ2')
  1579. RESIDU ('MOTS' 'UX' 'UY' 'UZ') ;
  1580. DRET2 = 'EXCO' 'RET2' RESIDU 'SCAL' ;
  1581.  
  1582. TPS = TPS '+' DTMIN ;
  1583. AL1 = AL1 '+' DALP1 ;
  1584. ARN1 = ARN1 '+' DRN1 ;
  1585. AGN1 = AGN1 '+' DGN1 ;
  1586. AREN1 = AREN1 '+' DRET1 ;
  1587. AL2 = AL2 '+' DALP2 ;
  1588. ARN2 = ARN2 '+' DRN2 ;
  1589. AGN2 = AGN2 '+' DGN2 ;
  1590. AREN2 = AREN2 '+' DRET2 ;
  1591.  
  1592. 'SI' (((&BLITER '/' 20) '*' 20) 'EGA' &BLITER) ;
  1593. 'MESSAGE' ('CHAINE' 'ITER =' &BLITER ' TPS =' TPS) ;
  1594. 'FINSI' ;
  1595.  
  1596. 'SI' (TPS > TFINAL) ;
  1597. 'QUITTER' BLITER ;
  1598. 'FINSI' ;
  1599.  
  1600. 'FIN' BLITER ;
  1601. * 'TEMPS' 'IMPR' ;
  1602. 'TEMPS' ;
  1603.  
  1604. * 'OPTION' 'SAUVER' ('CHAINE' 'result.sauv_' RAF 'tps_' TPS ) ;
  1605. * 'SAUVER' ;
  1606.  
  1607. ****************************************************************
  1608. ****************************************************************
  1609. ***** The post-treatment ******
  1610. ****************************************************************
  1611. ****************************************************************
  1612.  
  1613. * 'OPTI' 'REST' 'result.sauv_1tps_5' ;
  1614. * 'REST' ;
  1615.  
  1616. *
  1617. **** The mesh
  1618. *
  1619.  
  1620. 'SI' GRAPH ;
  1621. 'TRACER' ('DOMA' $DOMTOT 'MAILLAGE')
  1622. 'TITR' ('CHAINE' 'Maillage: ' ('NBEL' DOMTOT) ' elts');
  1623. 'FINSI' ;
  1624.  
  1625. *
  1626. **** Initial conditions
  1627. *
  1628.  
  1629. MOD1 = 'MODELISER' ('DOMA' $DOMTOT 'MAILLAGE') 'THERMIQUE' ;
  1630.  
  1631. 'SI' FAUX ;
  1632.  
  1633. RN10 RN20 VN10 VN20 PN10 PN20 TN10 TN20 = 'PRIM' 'DEM' PGAS
  1634. AL10 AL20 ARN10 ARN20 AGN10 AGN20 AREN10 AREN20 TN1M TN2M EPS ;
  1635.  
  1636. CHM_AL10 = 'KCHA' $DOMTOT 'CHAM' AL10 ;
  1637. CHM_RN10 = 'KCHA' $DOMTOT 'CHAM' RN10 ;
  1638. CHM_VN10 = 'KCHA' $DOMTOT 'CHAM' VN10 ;
  1639. CHM_PN10 = 'KCHA' $DOMTOT 'CHAM' PN10 ;
  1640. CHM_TN10 = 'KCHA' $DOMTOT 'CHAM' TN10 ;
  1641. CHM_AL20 = 'KCHA' $DOMTOT 'CHAM' AL20 ;
  1642. CHM_RN20 = 'KCHA' $DOMTOT 'CHAM' RN20 ;
  1643. CHM_VN20 = 'KCHA' $DOMTOT 'CHAM' VN20 ;
  1644. CHM_PN20 = 'KCHA' $DOMTOT 'CHAM' PN20 ;
  1645. CHM_TN20 = 'KCHA' $DOMTOT 'CHAM' TN20 ;
  1646.  
  1647. 'TRAC' CHM_AL10 MOD1
  1648. 'TITR' ('CHAINE' 'alp_1 at t=' 0.0) ;
  1649. 'TRAC' CHM_RN10 MOD1
  1650. 'TITR' ('CHAINE' 'rho_1 at t=' 0.0) ;
  1651. 'TRAC' CHM_VN10 MOD1
  1652. 'TITR' ('CHAINE' 'v_1 at t= ' 0.0) ;
  1653. 'TRAC' CHM_PN10 MOD1
  1654. 'TITR' ('CHAINE' 'p_1 at t= ' 0.0) ;
  1655. 'TRAC' CHM_TN10 MOD1
  1656. 'TITR' ('CHAINE' 'T_1 at t= ' 0.0) ;
  1657. 'TRAC' CHM_AL20 MOD1
  1658. 'TITR' ('CHAINE' 'alp_2 at t=' 0.0) ;
  1659. 'TRAC' CHM_RN20 MOD1
  1660. 'TITR' ('CHAINE' 'rho_2 at t=' 0.0) ;
  1661. 'TRAC' CHM_VN20 MOD1
  1662. 'TITR' ('CHAINE' 'v_2 at t= ' 0.0) ;
  1663. 'TRAC' CHM_PN20 MOD1
  1664. 'TITR' ('CHAINE' 'p_2 at t= ' 0.0) ;
  1665. 'TRAC' CHM_TN20 MOD1
  1666. 'TITR' ('CHAINE' 'T_2 at t= ' 0.0) ;
  1667.  
  1668. 'FINSI' ;
  1669.  
  1670. *
  1671. **** Results
  1672. *
  1673.  
  1674. RN1 RN2 VN1 VN2 PN1 PN2 TN1 TN2 = 'PRIM' 'DEM' PGAS AL1 AL2
  1675. ARN1 ARN2 AGN1 AGN2 AREN1 AREN2 TN1M TN2M EPS ;
  1676.  
  1677. 'SI' FAUX ;
  1678.  
  1679. CHM_AL1 = 'KCHA' $DOMTOT 'CHAM' AL1 ;
  1680. CHM_RN1 = 'KCHA' $DOMTOT 'CHAM' RN1 ;
  1681. CHM_VN1 = 'KCHA' $DOMTOT 'CHAM' VN1 ;
  1682. CHM_PN1 = 'KCHA' $DOMTOT 'CHAM' PN1 ;
  1683. CHM_TN1 = 'KCHA' $DOMTOT 'CHAM' TN1 ;
  1684. CHM_AL2 = 'KCHA' $DOMTOT 'CHAM' AL2 ;
  1685. CHM_RN2 = 'KCHA' $DOMTOT 'CHAM' RN2 ;
  1686. CHM_VN2 = 'KCHA' $DOMTOT 'CHAM' VN2 ;
  1687. CHM_PN2 = 'KCHA' $DOMTOT 'CHAM' PN2 ;
  1688. CHM_TN2 = 'KCHA' $DOMTOT 'CHAM' TN2 ;
  1689.  
  1690. 'TRAC' CHM_AL1 MOD1
  1691. 'TITR' ('CHAINE' 'alp_1 at t=' TPS) ;
  1692. 'TRAC' CHM_RN1 MOD1
  1693. 'TITR' ('CHAINE' 'rho_1 at t=' TPS) ;
  1694. 'TRAC' CHM_VN1 MOD1
  1695. 'TITR' ('CHAINE' 'v_1 at t= ' TPS) ;
  1696. 'TRAC' CHM_PN1 MOD1
  1697. 'TITR' ('CHAINE' 'p_1 at t= ' TPS) ;
  1698. 'TRAC' CHM_TN1 MOD1
  1699. 'TITR' ('CHAINE' 'T_1 at t= ' TPS) ;
  1700. 'TRAC' CHM_AL2 MOD1
  1701. 'TITR' ('CHAINE' 'alp_2 at t=' TPS) ;
  1702. 'TRAC' CHM_RN2 MOD1
  1703. 'TITR' ('CHAINE' 'rho_2 at t=' TPS) ;
  1704. 'TRAC' CHM_VN2 MOD1
  1705. 'TITR' ('CHAINE' 'v_2 at t= ' TPS) ;
  1706. 'TRAC' CHM_PN2 MOD1
  1707. 'TITR' ('CHAINE' 'p_2 at t= ' TPS) ;
  1708. 'TRAC' CHM_TN2 MOD1
  1709. 'TITR' ('CHAINE' 'T_2 at t= ' TPS) ;
  1710.  
  1711. 'FINSI' ;
  1712.  
  1713. *
  1714. *** Evolution Objects
  1715. *
  1716.  
  1717. LXMED = 'PROG' ('DIME' LEX_XOT) '*' 1.0 ;
  1718.  
  1719. TABLEG = 'TABLE' ;
  1720. TABLEG . 1 = 'MOT' 'TIRC MARQ PLUS' ;
  1721. TABLEG . 2 = 'MOT' 'TIRC MARQ CROI' ;
  1722. TABLEG . 3 = 'MOT' '' ;
  1723. TABLEG . 'TITRE' = 'TABLE' ;
  1724. TABLEG . 'TITRE' . 1 = 'MOT' 'phase 1' ;
  1725. TABLEG . 'TITRE' . 2 = 'MOT' 'phase 2' ;
  1726. TABLEG . 'TITRE' . 3 = 'MOT' 'alp_1*ph_1 + alp_2 ph_2' ;
  1727.  
  1728. TABLE2 = 'TABLE' ;
  1729. TABLE2 . 1 = 'MOT' 'TIRC MARQ PLUS' ;
  1730. TABLE2 . 2 = 'MOT' '' ;
  1731. TABLE2 . 'TITRE' = 'TABLE' ;
  1732. TABLE2 . 'TITRE' . 1 = 'MOT' 'Num' ;
  1733. TABLE2 . 'TITRE' . 2 = 'MOT' 'Exa' ;
  1734.  
  1735. eval1 = ('EVOL' 'CHPO' al1 LIGEVO) 'COULEUR' 'ROUG' ;
  1736. eval2 = ('EVOL' 'CHPO' al2 LIGEVO) 'COULEUR' 'BLEU' ;
  1737. evone = (eval1 '+' eval2) 'COULEUR' 'VERT' ;
  1738.  
  1739. evrn1 = ('EVOL' 'CHPO' rn1 LIGEVO) 'COULEUR' 'ROUG' ;
  1740. evrn2 = ('EVOL' 'CHPO' rn2 LIGEVO) 'COULEUR' 'BLEU' ;
  1741. evrn = ((eval1 * evrn1) '+' (eval2 * evrn2)) 'COULEUR' 'VERT' ;
  1742. evrna = 'EVOL' 'MANU' 'x' (LXMED '+' (LEX_XOT * TFINAL * -1))
  1743. 'SCAL' LEX_RHO ;
  1744.  
  1745. evpn1 = ('EVOL' 'CHPO' pn1 LIGEVO) 'COULEUR' 'ROUG' ;
  1746. evpn2 = ('EVOL' 'CHPO' pn2 LIGEVO) 'COULEUR' 'BLEU' ;
  1747. evpn = ((eval1 * evpn1) '+' (eval2 * evpn2)) 'COULEUR' 'VERT' ;
  1748. evpna = 'EVOL' 'MANU' 'x' (LXMED '+' (LEX_XOT * TFINAL * -1))
  1749. 'SCAL' LEX_P ;
  1750.  
  1751. evux1 = ('EVOL' 'CHPO' vn1 LIGEVO 'UX') 'COULEUR' 'ROUG' ;
  1752. evux2 = ('EVOL' 'CHPO' vn2 LIGEVO 'UX') 'COULEUR' 'BLEU' ;
  1753. evux = ((eval1 * evux1) '+' (eval2 * evux2)) 'COULEUR' 'VERT' ;
  1754. evuna = 'EVOL' 'MANU' 'x' (LXMED '+' (LEX_XOT * TFINAL * -1))
  1755. 'SCAL' (-1 * LEX_U) ;
  1756.  
  1757. evuy1 = ('EVOL' 'CHPO' vn1 LIGEVO 'UY') 'COULEUR' 'ROUG' ;
  1758. evuy2 = ('EVOL' 'CHPO' vn2 LIGEVO 'UY') 'COULEUR' 'BLEU' ;
  1759. evuy = ((eval1 * evuy1) '+' (eval2 * evuy2)) 'COULEUR' 'VERT' ;
  1760.  
  1761. evtn1 = ('EVOL' 'CHPO' tn1 LIGEVO) 'COULEUR' 'ROUG' ;
  1762. evtn2 = ('EVOL' 'CHPO' tn2 LIGEVO) 'COULEUR' 'BLEU' ;
  1763. evtn = ((eval1 * evtn1) '+' (eval2 * evtn2)) 'COULEUR' 'VERT' ;
  1764. evtna = 'EVOL' 'MANU' 'x' (LXMED '+' (LEX_XOT * TFINAL * -1))
  1765. 'SCAL' LEX_T ;
  1766.  
  1767. *
  1768. * Test
  1769. *
  1770. 'SI' GRAPH ;
  1771. 'DESSIN' (eval1 'ET' eval2 'ET' evone) 'TITRE'
  1772. 'alpha (alp_1 + alp_2)'
  1773. 'LEGE' TABLEG ;
  1774.  
  1775. 'DESSIN' ((evone '-' (evone '/' evone))) 'TITRE'
  1776. '(alp_1 + alp_2), error' ;
  1777.  
  1778. 'DESSIN' (evrn1 'ET' evrn2 'ET' evrn) 'TITRE' 'Density'
  1779. 'LEGE' TABLEG ;
  1780.  
  1781. 'DESSIN' (evrn et evrna) 'TITRE' 'Density' 'LEGE' TABLE2 ;
  1782.  
  1783. 'DESSIN' (evpn1 'ET' evpn2 'ET' evpn) 'TITRE' 'Pressure'
  1784. 'LEGE' TABLEG ;
  1785.  
  1786. 'DESSIN' (evpn et evpna) 'TITRE' 'Pressure' 'LEGE' TABLE2 ;
  1787.  
  1788. 'DESSIN' (evtn1 'ET' evtn2 'ET' evtn) 'TITRE' 'Temperature'
  1789. 'LEGE' TABLEG ;
  1790.  
  1791. 'DESSIN' (evtn et evtna) 'TITRE' 'Temperature' 'LEGE' TABLE2 ;
  1792.  
  1793. 'DESSIN' (evux1 'ET' evux2 'ET' evux) 'TITRE' 'ux'
  1794. 'LEGE' TABLEG ;
  1795.  
  1796. 'DESSIN' (evux et evuna) 'TITRE' 'ux' 'LEGE' TABLE2 ;
  1797.  
  1798. 'DESSIN' (evuy1 'ET' evuy2 'ET' evuy) 'TITRE' 'uy'
  1799. 'LEGE' TABLEG ;
  1800.  
  1801. 'DESSIN' (evuy) 'TITRE' 'uy' ;
  1802.  
  1803. 'FINSI' ;
  1804.  
  1805. *
  1806. **** Test
  1807. *
  1808. lxa = 'EXTRAIRE' EVRNA 'ABSC' ;
  1809. lrhoa = 'EXTRAIRE' EVRNA 'ORDO' ;
  1810. lx = 'EXTRAIRE' EVRN 'ABSC' ;
  1811. lrho = 'EXTRAIRE' EVRN 'ORDO' ;
  1812. lrho1 = 'IPOL' lxa lx lrho ;
  1813. erro = 'ABS' ((lrho1 '-' lrhoa) '/' lrhoa) ;
  1814. lxa1 = (lxa '-'
  1815. ('PROG' ('DIME' lxa) '*' ('MINIMUM' lxa))) ;
  1816. everro = 'EVOL' 'MANU' 'x' lxa1 'y' erro ;
  1817. erroint = ('PRIM' everro) ;
  1818. 'SI' GRAPH ;
  1819. 'DESSIN' everro 'TITRE' 'Erreur' ;
  1820. 'DESSIN' erroint 'TITRE' 'Integral de l Erreur' ;
  1821. 'FINSI' ;
  1822. errL1 = ('MAXIMUM' ('EXTRAIRE' erroint 'ORDO')) '/'
  1823. ('MAXIMUM' lxa1) ;
  1824. 'MESSAGE' ;
  1825. 'MESSAGE' ('CHAINE' 'ERR_L1 = ' errL1) ;
  1826. 'MESSAGE' ;
  1827.  
  1828. SI (errL1 > 1.0D-1) ;
  1829. 'ERREUR' 'errL1 too big !!! ' ;
  1830. 'ERREUR' 5 ;
  1831. 'FINSI' ;
  1832. 'FIN' ;
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  

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