Télécharger tube_CJDF.dgibi

Retour à la liste

Numérotation des lignes :

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

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