Télécharger prim_gfm.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : prim_gfm.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. ***********************************************************
  5. **** APPROCHE VF "Cell-Centred Formulation" pour la ****
  6. **** solution des ****
  7. **** Equations d'Euler, GFMP ****
  8. **** OPERATEUR 'PRIM', GFMP ****
  9. **** Stiffened gas ****
  10. **** ****
  11. **** A. BECCANTINI DRN/DMT/SEMT/TTMF MAI 2011 ****
  12. ***********************************************************
  13. *
  14.  
  15. 'OPTION' 'DIME' 2
  16. 'ELEM' QUA4 'ECHO' 1
  17. 'TRAC' 'PS';
  18.  
  19. *
  20. **** GRAPH
  21. *
  22.  
  23. GRAPH = FAUX ;
  24. * GRAPH = VRAI ;
  25.  
  26.  
  27. ***************************
  28. ***** DOMAINE SPATIAL ****
  29. ***************************
  30.  
  31.  
  32. A1 = 0.0D0 0.0D0;
  33. A2 = 2.0D0 0.0D0;
  34. A3 = 3.0D0 0.0D0;
  35. A4 = 4.0D0 1.0D0;
  36. A5 = 1.0D0 1.0D0;
  37. A6 = 0.0D0 1.0D0;
  38.  
  39. MAI1 = ('MANUEL' 'POI1' A1) 'ET'
  40. ('MANUEL' 'POI1' A2) 'ET'
  41. ('MANUEL' 'POI1' A3) 'ET'
  42. ('MANUEL' 'POI1' A4) 'ET'
  43. ('MANUEL' 'POI1' A5) 'ET'
  44. ('MANUEL' 'POI1' A6) ;
  45. *
  46.  
  47. MAI2 = ('MANUEL' 'POI1' A2) 'ET'
  48. ('MANUEL' 'POI1' A1) 'ET'
  49. ('MANUEL' 'POI1' A3) 'ET'
  50. ('MANUEL' 'POI1' A4) 'ET'
  51. ('MANUEL' 'POI1' A5) 'ET'
  52. ('MANUEL' 'POI1' A6) ;
  53. *
  54. MAI3 = ('MANUEL' 'POI1' A3) 'ET'
  55. ('MANUEL' 'POI1' A2) 'ET'
  56. ('MANUEL' 'POI1' A1) 'ET'
  57. ('MANUEL' 'POI1' A4) 'ET'
  58. ('MANUEL' 'POI1' A5) 'ET'
  59. ('MANUEL' 'POI1' A6) ;
  60. *
  61. MAI4 = ('MANUEL' 'POI1' A4) 'ET'
  62. ('MANUEL' 'POI1' A3) 'ET'
  63. ('MANUEL' 'POI1' A2) 'ET'
  64. ('MANUEL' 'POI1' A1) 'ET'
  65. ('MANUEL' 'POI1' A5) 'ET'
  66. ('MANUEL' 'POI1' A6) ;
  67.  
  68. ***********************
  69. **** TEST1 ************
  70. ***********************
  71.  
  72. TABG = 'TABLE' ;
  73. TABG . 'ESPEULE' = 'MOTS' ;
  74. TABG . 'ESPNEULE' = 'ESP1' ;
  75.  
  76. GAMMA1 = 1.4 ;
  77. GAMMA2 = 2.8 ;
  78. PINF1 = 1.0 ;
  79. PINF2 = 5.0 ;
  80.  
  81. TABG . 'MGAM' = 'PROG' GAMMA1 ;
  82. TABG . 'PGAM' = 'PROG' GAMMA2 ;
  83. TABG . 'MPIN' = 'PROG' PINF1 ;
  84. TABG . 'PPIN' = 'PROG' PINF2 ;
  85.  
  86. *
  87. **** CHPOINTs definis sur la meme rapresentation du maillage
  88. *
  89.  
  90. PHI = 'BRUI' 'BLAN' 'UNIF' 0.0 0.3 MAI1 ;
  91.  
  92. RN = 'BRUI' 'BLAN' 'UNIF' 1.24 0.5 MAI1 ;
  93. PN = 'BRUI' 'BLAN' 'UNIF' 11.24 5.5 MAI1 ;
  94. VNY = ('NOMC' 'UY'
  95. ('BRUI' 'BLAN' 'UNIF' 1.24 7.5 MAI1)
  96. 'NATU' 'DISCRET') ;
  97. VNX = ('NOMC' 'UX'
  98. ('BRUI' 'BLAN' 'UNIF' 0.24 0.5 MAI1)
  99. 'NATU' 'DISCRET') ;
  100. VN = VNX 'ET' VNY ;
  101.  
  102. *
  103. *** La quantité de mouvement
  104. *
  105.  
  106. GN = VN '*' RN ('MOTS' 'UY' 'UX') ('MOTS' 'SCAL' 'SCAL')
  107. ('MOTS' 'UY' 'UX') ;
  108. GN1 = 'COPIER' GN ;
  109.  
  110. * Composantes de GN1: 'UY', 'UX' ;
  111.  
  112. *
  113. *** L'energie totale (ROET)
  114. *
  115. GM11 = (gamma1 - 1.) * (MASQ PHI 'EGINFE' 0.0) ;
  116. GP1 = (gamma1 * pinf1) * (MASQ PHI 'EGINFE' 0.0) ;
  117. GM12 = (gamma2 - 1.) * (MASQ PHI 'SUPERIEUR' 0.0) ;
  118. GP2 = (gamma2 * pinf2) * (MASQ PHI 'SUPERIEUR' 0.0) ;
  119. GM1 = GM11 + GM12 ;
  120. GP = GP1 + GP2 ;
  121. ETHER = (PN + GP) '/' GM1;
  122. ECIN = (0.5D0 * ('PSCAL' VN VN ('MOTS' 'UX' 'UY') ('MOTS' 'UX' 'UY')))
  123. '*' RN;
  124. EN = ECIN '+' ETHER ;
  125.  
  126. VITESSE PRES = 'PRIM' 'GFMP' TABG PHI RN GN EN ;
  127.  
  128. ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ;
  129. ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS';
  130. VCELL = ('MAXIMUM' VN 'ABS') ;
  131. 'SI' (VCELL > 0);
  132. ERRV = ERRV '/' VCELL;
  133. 'FINSI' ;
  134.  
  135. ERRP = ('MAXIMUM' (PRES '-' PN) 'ABS') '/' ('MAXIMUM' PN);
  136.  
  137. ERRO = 'MAXIMUM' ('PROG' ERRGN ERRV ERRP) ;
  138. 'SI' (ERRO '>'
  139. 1.0D-12);
  140. 'MESSAGE' ('CHAINE' 'Erreur maximum');
  141. 'LISTE' ('MAXIMUM' ('PROG' ERRVX ERRVY ERRP));
  142. 'ERREUR' 5;
  143. 'FINSI' ;
  144.  
  145. ***********************
  146. **** TEST2 ************
  147. ***********************
  148.  
  149. TABG = 'TABLE' ;
  150. TABG . 'ESPEULE' = 'MOTS' 'ESP2' ;
  151. TABG . 'ESPNEULE' = 'ESP1' ;
  152.  
  153. GAMMA1 = 1.4 ;
  154. GAMMA2 = 2.8 ;
  155. PINF1 = 1.0 ;
  156. PINF2 = 5.0 ;
  157.  
  158. TABG . 'MGAM' = 'PROG' GAMMA1 GAMMA1 ;
  159. TABG . 'PGAM' = 'PROG' GAMMA2 GAMMA2 ;
  160. TABG . 'MPIN' = 'PROG' PINF1 PINF1 ;
  161. TABG . 'PPIN' = 'PROG' PINF2 PINF2 ;
  162.  
  163. YN = (RN * 0.0) '+' 0.1 ;
  164. YN = 'NOMC' YN 'ESP2' ;
  165. RYN = RN * YN ;
  166. ALN = YN * 0.3 ;
  167.  
  168. VITESSE1 PRES1 YN1 = 'PRIM' 'GFMP' TABG PHI RN GN EN
  169. RYN ALN ;
  170.  
  171. ERRV = 'MAXIMUM' (VITESSE '-' VITESSE1) 'ABS';
  172. VCELL = ('MAXIMUM' VN 'ABS') ;
  173. 'SI' (VCELL > 0);
  174. ERRV = ERRV '/' VCELL;
  175. 'FINSI' ;
  176.  
  177. ERRP = ('MAXIMUM' (PRES '-' PRES1) 'ABS') '/' ('MAXIMUM' PN);
  178.  
  179. ERRY = ('MAXIMUM' (YN '-' YN1) 'ABS') ;
  180.  
  181. ERRO = 'MAXIMUM' ('PROG' ERRY ERRV ERRP) ;
  182. 'SI' (ERRO '>'
  183. 1.0D-12);
  184. 'MESSAGE' ('CHAINE' 'Erreur maximum');
  185. 'LISTE' (('PROG' ERRY ERRV ERRP));
  186. 'ERREUR' 5;
  187. 'FINSI' ;
  188.  
  189. 'FIN' ;
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  

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