Télécharger pre2.eso

Retour à la liste

Numérotation des lignes :

pre2
  1. C PRE2 SOURCE CB215821 23/01/25 21:15:29 11573
  2. SUBROUTINE PRE2()
  3. C************************************************************************
  4. C
  5. C PROJET : CASTEM 2000
  6. C
  7. C NOM : PRE2
  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 ideal
  16. C multiespeces "calorically 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 PRE2-------------- PRE21 (1er ordre en espace)
  30. C |
  31. C |
  32. C --------------- PRE22 (2eme ordre en espace)
  33. C
  34. C************************************************************************
  35. C
  36. C PHRASE D'APPEL (GIBIANE) :
  37. C
  38. C 1) gaz ideal multi-espece
  39. C
  40. C a) 1er ordre en espace (1er ordre en temps)
  41. C
  42. C CHAM1S CHAM2S CHAM3S CHAM4S CHAM5S = 'PRET' 'PERFMULT'
  43. C ENTI1 ENTI2 MOD1 CHPO1 CHPO2 CHPO3 CHPO4 CHPO5;
  44. C
  45. C
  46. C ENTREES :
  47. C
  48. C 'PERFMULT' : mot clé (gaz ideal)
  49. C
  50. C ENTI1 : ordre en espace (=1)
  51. C
  52. C ENTI2 : ordre en temps (=1 si ENTI1 = 1)
  53. C
  54. C MOD1 : OBJET MODELE de TYPE NAVIER_STOKES
  55. C
  56. C CHPO1 : CHPOINT "CENTRE" contenant la masse volumique.
  57. C
  58. C CHPO2 : CHPOINT "CENTRE" contenant la vitesse
  59. C ( NDIM composantes);
  60. C
  61. C CHPO3 : CHPOINT "CENTRE" contenant la pression
  62. C
  63. C CHPO4 : CHPOINT "CENTRE" contenant les fractiones
  64. C massiques du gaz
  65. C
  66. C CHPO5 : CHPOINT "CENTRE" contenant les "gamma" du gaz
  67. C
  68. C SORTIES :
  69. C
  70. C CHAM1S : MCHAML "FACEL" contenant la masse
  71. C volumique
  72. C (a gauche et a droite de chaque face).
  73. C Une seule composante ('SCAL')
  74. C
  75. C CHAM2S : MCHAML "FACEL" contenant la vitesse et
  76. C les cosinus directeurs de (n,t) dans le
  77. C repere (x,y);
  78. C dans le cas 2D 6 composantes:
  79. C 'UN' = vitesse normale
  80. C 'UT' = vitesse tangentiel
  81. C 'NX' = n.x
  82. C 'NY' = n.y
  83. C 'TX' = t.x
  84. C 'TY' = t.y
  85. C
  86. C CHAM3S : MCHAML "FACEL" contenant la pression;
  87. C Une seule composante ('SCAL')
  88. C
  89. C CHAM4S : MCHAML "FACEL" contenant les fractiones massiques
  90. C du gaz
  91. C
  92. C CHAM5S : MCHAML "FACEL" contenant les "gamma" du gaz
  93. C Une seule composante ('SCAL')
  94. C
  95. C
  96. C b) 2eme ordre en espace
  97. C 1er ordre en temps ou 2eme ordre en temps
  98. C
  99. C CHAM1S CHAM2S CHAM3S CHAM4S CHAM5S = 'PRET' 'PERFMULT' ENTI1 ENTI2
  100. C TAB1 TAB2
  101. C CHPO1 CHPO2 CHPO3
  102. C CHPO4 CHPO5 CHPO6
  103. C CHPO7 CHPO8 CHPO9
  104. C CHPO10 CHPO11 CHPO12
  105. C CHPO13 (FLOT1) ;
  106. C
  107. C
  108. C ENTREES :
  109. C
  110. C 'PERFMULT' : mot clé (gas ideal)
  111. C
  112. C ENTI1 : ordre en espace (=2)
  113. C
  114. C ENTI2 : ordre en temps (=1 ou 2)
  115. C
  116. C TAB1 : TABLE de sous type "DOMAINE"
  117. C
  118. C TAB2 : TABLE des proprietes du gaz
  119. C
  120. C CHPO1 : CHPOINT "CENTRE" contenant la masse
  121. C volumique; une seule composante ('SCAL')
  122. C
  123. C CHPO2 : CHPOINT "CENTRE" contenant le gradient de
  124. C la masse volumique (2 composantes en 2D,
  125. C 'P1DX', 'P1DY').
  126. C
  127. C CHPO3 : CHPOINT "CENTRE" contenant le limiteur du
  128. C gradient de la masse volumique
  129. C (une seule composante 'P1 ')
  130. C
  131. C CHPO4 : CHPOINT "CENTRE" contenant la vitesse
  132. C (2 composantes en 2D, 'UX' ey 'UY' );
  133. C
  134. C CHPO5 : CHPOINT "CENTRE" contenant le gradient de la
  135. C vitesse (4 composantes en 2D, 'P1DX','P1DY'
  136. C 'P2DX','P2DY').
  137. C
  138. C CHPO6 : CHPOINT "CENTRE" contenant le limiteur du
  139. C gradient de la vitesse (2 composantes en 2D
  140. C 'P1', 'P2').
  141. C
  142. C CHPO7 : CHPOINT "CENTRE" contenant la pression;
  143. C une seule composante ('SCAL')
  144. C
  145. C CHPO8 : CHPOINT "CENTRE" contenant le gradient de
  146. C la pression (2 composantes en 2D,
  147. C 'P1DX', 'P1DY').
  148. C
  149. C CHPO9 : CHPOINT "CENTRE" contenant le limiteur du
  150. C gradient de la pression
  151. C (1 composantes, 'P1' ).
  152. C
  153. C CHPO10 : CHPOINT "CENTRE" contenant les fractiones massiques;
  154. C n composantes (n >= 1), compatibles avec
  155. C TAB2 . 'ESPEULE'
  156. C
  157. C CHPO11 : CHPOINT "CENTRE" contenant le gradient des fractiones
  158. C massique (2n composantes en 2D)
  159. C
  160. C CHPO12 : CHPOINT "CENTRE" contenant le limiteur du
  161. C gradient des fractiones massiques
  162. C (n composantes ).
  163. C
  164. C CHPO13 : CHPOINT "CENTRE" contenant les "gamma" du gaz
  165. C
  166. C FLOT1 : FLOTTANT qui contient l'increment du temps
  167. C pour la prediction, pour avoir le deuxieme
  168. C ordre en temps (ENTI2 = 2)
  169. C FLOT1 = (increment du temps / 2)
  170. C
  171. C SORTIES : voir le cas a)
  172. C
  173. C************************************************************************
  174. C
  175. C HISTORIQUE (Anomalies et modifications éventuelles)
  176. C
  177. C HISTORIQUE : Créée le 10.7.98.
  178. C
  179. C************************************************************************
  180. C
  181. C
  182. C**** Variables de COOPTIO
  183. C
  184. C INTEGER IPLLB, IERPER, IERMAX, IERR, INTERR
  185. C & ,IOTER, IOLEC, IOIMP, IOCAR, IOACQ
  186. C & ,IOPER, IOSGB, IOGRA, IOSAU, IORES
  187. C & ,IECHO, IIMPI, IOSPI
  188. C & ,IDIM
  189. C & ,MCOORD
  190. C & ,IFOMOD, NIFOUR, IFOUR, NSDPGE, IONIVE
  191. C & ,NGMAXY, IZROSF, ISOTYP, IOSCR,LTEXLU
  192. C & ,NORINC,NORVAL,NORIND,NORVAD
  193. C & ,NUCROU, IPSAUV
  194. C
  195. C**** Les variables
  196. C
  197. IMPLICIT INTEGER(I-N)
  198. INTEGER ICOND, IRETOU
  199. & ,ORDESP, ORDTEM
  200. C
  201. C**** Les Includes
  202. C
  203.  
  204. -INC SMCOORD
  205. -INC PPARAM
  206. -INC CCOPTIO
  207. C
  208. C**** Initialisation des parametres d'erreur
  209. C
  210. MOTERR(1:40) = ' '
  211. C
  212. C**** Lecture ORDESP
  213. C
  214. ICOND = 1
  215. CALL LIRENT(ORDESP,ICOND,IRETOU)
  216. IF(IERR .NE. 0) GOTO 9999
  217. IF((ORDESP .LT. 1) .OR. (ORDESP .GT. 2))THEN
  218. C
  219. C******* Message d'erreur standard
  220. C -301 0 %m1:40
  221. C
  222. MOTERR(1:40) = 'ENTI1 = ??? '
  223. CALL ERREUR(-301)
  224. C
  225. C******* Message d'erreur standard
  226. C Entier valant: %i1
  227. C -2 0
  228. C
  229. INTERR(1) = ORDESP
  230. CALL ERREUR(-2)
  231. C
  232. C******* Message d'erreur standard
  233. C 21 2
  234. C Données incompatibles
  235. C
  236. CALL ERREUR(21)
  237. GOTO 9999
  238. ENDIF
  239. C
  240. C**** Lecture ORDTEM
  241. C
  242. ICOND = 1
  243. CALL LIRENT(ORDTEM,ICOND,IRETOU)
  244. IF(IERR .NE. 0) GOTO 9999
  245. IF((ORDTEM .LT. 1) .OR. (ORDTEM .GT. ORDESP))THEN
  246. C
  247. C******* Message d'erreur standard
  248. C -301 0 %m1:40
  249. C
  250. MOTERR(1:40) = 'ENTI2 = ??? '
  251. CALL ERREUR(-301)
  252. C
  253. C******* Message d'erreur standard
  254. C Entier valant: %i1
  255. C -2 0
  256. C
  257. INTERR(1) = ORDTEM
  258. CALL ERREUR(-2)
  259. C
  260. C******* Message d'erreur standard
  261. C 21 2
  262. C Données incompatibles
  263. C
  264. CALL ERREUR(21)
  265. GOTO 9999
  266. ENDIF
  267. C
  268. SEGACT,MCOORD
  269. IF((ORDESP .EQ. 1) .AND. (ORDTEM .EQ. 1))THEN
  270. C
  271. C******* ORDESP = 1, ORDTEM = 1
  272. C
  273. CALL PRE21
  274. ELSEIF((ORDESP .EQ. 2))THEN
  275. C
  276. C******* ORDESP = 2, ORDTEM = 1 ou 2
  277. C
  278. CALL PRE22(ORDTEM)
  279. ELSE
  280. C
  281. C******* Message d'erreur standard
  282. C 251 2
  283. C Tentative d'utilisation d'une option non implémentée
  284. C
  285. CALL ERREUR(251)
  286. ENDIF
  287. SEGDES,MCOORD
  288. C
  289. 9999 CONTINUE
  290. C
  291. RETURN
  292. END
  293.  
  294.  

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