Télécharger pre3.eso

Retour à la liste

Numérotation des lignes :

pre3
  1. C PRE3 SOURCE OF166741 24/12/13 21:17:06 12097
  2. SUBROUTINE PRE3()
  3. C************************************************************************
  4. C
  5. C PROJET : CASTEM 2000
  6. C
  7. C NOM : PRE3
  8. C
  9. C DESCRIPTION : Voir PRET
  10. C
  11. C Resolution des Equations d'Euler, VF,
  12. C "cell-centred approach"
  13. C
  14. C Calcul des etats "gauche et droit" aux
  15. C interfaces pour le modele de gaz
  16. C mono/multiespeces "thermally perfect".
  17. C
  18. C LANGAGE : FORTRAN 77 + ESOPE 2000 (avec extensions CISI)
  19. C
  20. C AUTEUR : A. BECCANTINI, DRN/DMT/SEMT/TTMF
  21. C
  22. C************************************************************************
  23. C
  24. C
  25. C APPELES (Outils) : LIRENT, ERREUR
  26. C
  27. C APPELES (Calcul) :
  28. C
  29. C PRE3-------------- PRE31 (1er ordre en espace)
  30. C |
  31. C |
  32. C --------------- PRE32 (2eme ordre en espace)
  33. C
  34. C************************************************************************
  35. C
  36. C PHRASE D'APPEL (GIBIANE) :
  37. C
  38. C 1) gaz "thermally perfect"
  39. C
  40. C a) 1er ordre en espace (1er ordre en temps)
  41. C
  42. C CHAM1S CHAM2S CHAM3S (CHAM4S) = 'PRET' 'PERFTEMP'
  43. C ENTI1 ENTI2 MOD1 TAB2
  44. C CHPO1 CHPO2 CHPO3 (CHPO4);
  45. C
  46. C
  47. C ENTREES :
  48. C
  49. C 'PERFTEMP' : mot clé (gaz "thermally perfect")
  50. C
  51. C ENTI1 : ordre en espace (=1)
  52. C
  53. C ENTI2 : ordre en temps (=1 si ENTI1 = 1)
  54. C
  55. C MOD1 : OBJET MODELE de TYPE NAVIER_STOKES
  56. C
  57. C TAB2 : TABLE des proprietes du gaz
  58. C
  59. C CHPO1 : CHPOINT "CENTRE" contenant la masse volumique;
  60. C
  61. C CHPO2 : CHPOINT "CENTRE" contenant la vitesse
  62. C ( NDIM composantes);
  63. C
  64. C CHPO3 : CHPOINT "CENTRE" contenant la pression
  65. C
  66. C (CHPO4) : CHPOINT "CENTRE" contenant les fractiones
  67. C massiques du gaz (dans le cas multi-especes,
  68. C compatible avec TAB2)
  69. C
  70. C SORTIES :
  71. C
  72. C CHAM1S : MCHAML "FACEL" contenant la masse
  73. C volumique
  74. C (a gauche et a droite de chaque face).
  75. C Une seule composante ('SCAL')
  76. C
  77. C CHAM2S : MCHAML "FACEL" contenant la vitesse et
  78. C les cosinus directeurs de (n,t) dans le
  79. C repere (x,y);
  80. C dans le cas 2D 6 composantes:
  81. C 'UN' = vitesse normale
  82. C 'UT' = vitesse tangentiel
  83. C 'NX' = n.x
  84. C 'NY' = n.y
  85. C 'TX' = t.x
  86. C 'TY' = t.y
  87. C
  88. C CHAM3S : MCHAML "FACEL" contenant la pression;
  89. C Une seule composante ('SCAL')
  90. C
  91. C (CHAM4S) : MCHAML "FACEL" contenant les fractiones massiques
  92. C du gaz (si existe CHPO4)
  93. C
  94. C
  95. C b) 2eme ordre en espace
  96. C 1er ordre en temps
  97. C
  98. C CHAM1S CHAM2S CHAM3S (CHAM4S) = 'PRET' 'PERFMULT' ENTI1 ENTI2
  99. C TAB1 TAB2
  100. C CHPO1 CHPO2 CHPO3
  101. C CHPO4 CHPO5 CHPO6
  102. C CHPO7 CHPO8 CHPO9
  103. C (CHPO10 CHPO11 CHPO12) ;
  104. C
  105. C
  106. C ENTREES :
  107. C
  108. C 'PERFTEMP' : mot clé (gaz "thermally prefect")
  109. C
  110. C ENTI1 : ordre en espace (=2)
  111. C
  112. C ENTI2 : ordre en temps (=1 ou 2)
  113. C
  114. C TAB1 : TABLE de sous type "DOMAINE"
  115. C
  116. C TAB2 : TABLE des proprietes du gaz
  117. C
  118. C CHPO1 : CHPOINT "CENTRE" contenant la masse
  119. C volumique; une seule composante ('SCAL')
  120. C
  121. C CHPO2 : CHPOINT "CENTRE" contenant le gradient de
  122. C la masse volumique (2 composantes en 2D,
  123. C 'P1DX', 'P1DY').
  124. C
  125. C CHPO3 : CHPOINT "CENTRE" contenant le limiteur du
  126. C gradient de la masse volumique
  127. C (une seule composante 'P1 ')
  128. C
  129. C CHPO4 : CHPOINT "CENTRE" contenant la vitesse
  130. C (2 composantes en 2D, 'UX' ey 'UY' );
  131. C
  132. C CHPO5 : CHPOINT "CENTRE" contenant le gradient de la
  133. C vitesse (4 composantes en 2D, 'P1DX','P1DY'
  134. C 'P2DX','P2DY').
  135. C
  136. C CHPO6 : CHPOINT "CENTRE" contenant le limiteur du
  137. C gradient de la vitesse (2 composantes en 2D
  138. C 'P1', 'P2').
  139. C
  140. C CHPO7 : CHPOINT "CENTRE" contenant la pression;
  141. C une seule composante ('SCAL')
  142. C
  143. C CHPO8 : CHPOINT "CENTRE" contenant le gradient de
  144. C la pression (2 composantes en 2D,
  145. C 'P1DX', 'P1DY').
  146. C
  147. C CHPO9 : CHPOINT "CENTRE" contenant le limiteur du
  148. C gradient de la pression
  149. C (1 composantes, 'P1' ).
  150. C
  151. C (CHPO10) : CHPOINT "CENTRE" contenant les fractiones massiques;
  152. C n composantes (n >= 1), compatibles avec
  153. C TAB2 . 'ESPEULE'
  154. C
  155. C (CHPO11) : CHPOINT "CENTRE" contenant le gradient des fractiones
  156. C massique (2n composantes en 2D)
  157. C
  158. C (CHPO12) : CHPOINT "CENTRE" contenant le limiteur du
  159. C gradient des fractiones massiques
  160. C (n composantes ).
  161. C
  162. C FLOT1 : FLOTTANT qui contient l'increment du temps
  163. C pour la prediction, pour avoir le deuxieme
  164. C ordre en temps (ENTI2 = 2)
  165. C FLOT1 = (increment du temps / 2)
  166. C
  167. C SORTIES : voir le cas a)
  168. C
  169. C
  170. C
  171. C c) 2eme ordre en espace
  172. C 2er ordre en temps
  173. C
  174. C CHAM1S CHAM2S CHAM3S (CHAM4S) = 'PRET' 'PERFMULT' ENTI1 ENTI2
  175. C TAB1 TAB2
  176. C CHPO1 CHPO2 CHPO3
  177. C CHPO4 CHPO5 CHPO6
  178. C CHPO7 CHPO8 CHPO9
  179. C (CHPO10 CHPO11 CHPO12)
  180. C CHPO13 DT ;
  181. C
  182. C
  183. C ENTREES :
  184. C
  185. C 'PERFTEMP' : mot clé (gaz "thermally prefect")
  186. C
  187. C ENTI1 : ordre en espace (=2)
  188. C
  189. C ENTI2 : ordre en temps (=1 ou 2)
  190. C
  191. C TAB1 : TABLE de sous type "DOMAINE"
  192. C
  193. C TAB2 : TABLE des proprietes du gaz
  194. C
  195. C CHPO1 : CHPOINT "CENTRE" contenant la masse
  196. C volumique; une seule composante ('SCAL')
  197. C
  198. C CHPO2 : CHPOINT "CENTRE" contenant le gradient de
  199. C la masse volumique (2 composantes en 2D,
  200. C 'P1DX', 'P1DY').
  201. C
  202. C CHPO3 : CHPOINT "CENTRE" contenant le limiteur du
  203. C gradient de la masse volumique
  204. C (une seule composante 'P1 ')
  205. C
  206. C CHPO4 : CHPOINT "CENTRE" contenant la vitesse
  207. C (2 composantes en 2D, 'UX' ey 'UY' );
  208. C
  209. C CHPO5 : CHPOINT "CENTRE" contenant le gradient de la
  210. C vitesse (4 composantes en 2D, 'P1DX','P1DY'
  211. C 'P2DX','P2DY').
  212. C
  213. C CHPO6 : CHPOINT "CENTRE" contenant le limiteur du
  214. C gradient de la vitesse (2 composantes en 2D
  215. C 'P1', 'P2').
  216. C
  217. C CHPO7 : CHPOINT "CENTRE" contenant la pression;
  218. C une seule composante ('SCAL')
  219. C
  220. C CHPO8 : CHPOINT "CENTRE" contenant le gradient de
  221. C la pression (2 composantes en 2D,
  222. C 'P1DX', 'P1DY').
  223. C
  224. C CHPO9 : CHPOINT "CENTRE" contenant le limiteur du
  225. C gradient de la pression
  226. C (1 composantes, 'P1' ).
  227. C
  228. C (CHPO10) : CHPOINT "CENTRE" contenant les fractiones massiques;
  229. C n composantes (n >= 1), compatibles avec
  230. C TAB2 . 'ESPEULE'
  231. C
  232. C (CHPO11) : CHPOINT "CENTRE" contenant le gradient des fractiones
  233. C massique (2n composantes en 2D)
  234. C
  235. C (CHPO12) : CHPOINT "CENTRE" contenant le limiteur du
  236. C gradient des fractiones massiques
  237. C (n composantes ).
  238. C
  239. C CHPO13 : CHPOINT "CENTRE" contenant le "gamma" du gaz
  240. C une seule composante ('SCAL')
  241. C
  242. C FLOT1 : FLOTTANT qui contient l'increment du temps
  243. C pour la prediction, pour avoir le deuxieme
  244. C ordre en temps (ENTI2 = 2)
  245. C FLOT1 = (increment du temps / 2)
  246. C
  247. C SORTIES : voir le cas a)
  248. C
  249. C************************************************************************
  250. C
  251. C HISTORIQUE (Anomalies et modifications éventuelles)
  252. C
  253. C HISTORIQUE : Créée le 18.12.98.
  254. C
  255. C************************************************************************
  256. C
  257. C**** Les variables
  258. C
  259. IMPLICIT INTEGER(I-N)
  260. INTEGER ICOND, IRETOU
  261. & ,ORDESP, ORDTEM
  262. C
  263. C**** Les Includes
  264. C
  265.  
  266. -INC PPARAM
  267. -INC CCOPTIO
  268. -INC SMCOORD
  269.  
  270. segact mcoord
  271.  
  272. C
  273. C**** Initialisation des parametres d'erreur
  274. C
  275. MOTERR(1:40) = ' '
  276. C
  277. C**** Lecture ORDESP
  278. C
  279. ICOND = 1
  280. CALL LIRENT(ORDESP,ICOND,IRETOU)
  281. IF(IERR .NE. 0) GOTO 9999
  282. IF((ORDESP .LT. 1) .OR. (ORDESP .GT. 2))THEN
  283. C
  284. C******* Message d'erreur standard
  285. C -301 0 %m1:40
  286. C
  287. MOTERR(1:40) = 'ENTI1 = ??? '
  288. CALL ERREUR(-301)
  289. C
  290. C******* Message d'erreur standard
  291. C Entier valant: %i1
  292. C -2 0
  293. C
  294. INTERR(1) = ORDESP
  295. CALL ERREUR(-2)
  296. C
  297. C******* Message d'erreur standard
  298. C 21 2
  299. C Données incompatibles
  300. C
  301. CALL ERREUR(21)
  302. GOTO 9999
  303. ENDIF
  304. C
  305. C**** Lecture ORDTEM
  306. C
  307. ICOND = 1
  308. CALL LIRENT(ORDTEM,ICOND,IRETOU)
  309. IF(IERR .NE. 0) GOTO 9999
  310. IF((ORDTEM .LT. 1) .OR. (ORDTEM .GT. ORDESP))THEN
  311. C
  312. C******* Message d'erreur standard
  313. C -301 0 %m1:40
  314. C
  315. MOTERR(1:40) = 'ENTI2 = ??? '
  316. CALL ERREUR(-301)
  317. C
  318. C******* Message d'erreur standard
  319. C Entier valant: %i1
  320. C -2 0
  321. C
  322. INTERR(1) = ORDTEM
  323. CALL ERREUR(-2)
  324. C
  325. C******* Message d'erreur standard
  326. C 21 2
  327. C Données incompatibles
  328. C
  329. CALL ERREUR(21)
  330. GOTO 9999
  331. ENDIF
  332. C
  333. IF((ORDESP .EQ. 1) .AND. (ORDTEM .EQ. 1))THEN
  334. C
  335. C******* ORDESP = 1, ORDTEM = 1
  336. C
  337. CALL PRE31()
  338. ELSEIF((ORDESP .EQ. 2))THEN
  339. C
  340. C******* ORDESP = 2, ORDTEM = 1 ou 2
  341. C
  342. CALL PRE32(ORDTEM)
  343. ELSE
  344. C
  345. C******* Message d'erreur standard
  346. C 251 2
  347. C Tentative d'utilisation d'une option non implémentée
  348. C
  349. CALL ERREUR(251)
  350. ENDIF
  351. C
  352. 9999 CONTINUE
  353. C
  354. RETURN
  355. END
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  

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