Télécharger phase_02.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : phase_02.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. graph= faux;
  5. *
  6. * Cas test : phase2d.dgibi
  7. *
  8. * barreau ayant une temperature variant de 0 à 250 jusqu'a son milieu
  9. * puis de 250 à 0°C à son extremité. On suppose une température de
  10. * fusion à 200°C, on laisse évoluer la température
  11. * tout devient solide.
  12. *
  13. *
  14.  
  15.  
  16. OPTI DIME 2 ELEM qua4 MODE plan;
  17. *
  18. *************** Temperature de changement de phase ************************
  19. Tfma = 200. ;
  20. *
  21. *************** Geometrie *************************************************
  22. *p1 = 0. 0. 0. ; p11 = (0. 0. 10.e-3); p12=(0. 0. -10.e-3);
  23. *p2 = 10.e-3 0. 0. ;
  24. *p3 = 10.e-3 10.e-3 0. ;
  25. *p4 = 0. 10.e-3 0. ;
  26. p1 = 0. 0. ; p11 = (0. 10.e-3); p12=(0. -10.e-3);
  27. p2 = 10.e-3 0. ;
  28. *p3 = 10.e-3 10.e-3 0. ;
  29. *p4 = 0. 10.e-3 0. ;
  30. n=1;
  31. l1 = p12 droi 100 p1 droi 100 p11;
  32. si graph;trac l1;finsi;
  33. su1= l1 trans n p2;
  34. *vol1= su1 volu trans n p4;
  35. *trac cach vol1;
  36. **************** Modeles et caracteristiques *********************************
  37. modth1 = MODE su1 'THERMIQUE' 'CONDUCTION' ;
  38. modph1 = MODE su1 'CHANGEMENT_PHASE' 'INCO' 'T' 'Q';
  39.  
  40. latmin= 16.25e19; latint = 16.85;latmax= 25.63e19;
  41.  
  42. LAT= 16.5e19;
  43.  
  44. LAT=1.e5;
  45. CAPCALO= 900.;
  46. matth1 = MATE modth1 'C' capcalo 'K' 100. 'RHO' 4500. ;
  47. matph1 = MATE modph1 'PRIM' Tfma 'DUAL' (4500. * LAT);
  48. *
  49. *************** Pas de temps "grossier" et fin ********************************
  50. * Durée totale
  51. TT1 = 1.;
  52. * pas de temps "grossier"
  53. dt1 = 5.e-2 ;
  54. * pas de temps "fin"
  55. dt2 = 0.5e-6 ;
  56. * pas de temps "très fin" juste pour avant la disparition totale de la zone fondue
  57. dt3 = 0.5e-8 ;
  58. *
  59. * pas de temps du début "grossier" jusqu'à Temps1 et ensuite fin jusqu'à Temps2 ;
  60. *
  61. Temps1 = 0.350e-3 ;
  62. Temps2 = 0.378e-3 ;
  63. Temps3 = 0.385e-3 ;
  64. listT = PROG 0. PAS dT1 Temps1 PAS dt2 Temps2 PAS dt3 Temps3
  65. PAS dt1 TT1 ;
  66. listt= prog 0. pas dt1 tt1;
  67. n1 = DIME listT ;
  68. listS = PROG 0. pas 1. (n1-1) ;
  69. listS = (1./(n1-1.)) * listS ;
  70. EvS = EVOL MANU 'TEMP' listT 'SOUR' listS ;
  71. si graph; dess EvS TITR 'evolution chargement'; finsi;
  72. *
  73. **************** Définition du champ de temperatures initial ****************
  74. *xco = COOR 3 vol1 ;
  75. xco = COOR 2 su1 ;
  76. xco = ABS xco ;
  77. max1 = MAXI xco ;
  78. xco = max1 - xco ;
  79. xco = (1./max1) * xco ;
  80. *
  81. * eventuellement, pour un pic de temperature plus localisé...
  82. *xco = xco * xco ;
  83. *
  84. Txco = Tfma * 1.25 * xco ;
  85. Txco = CHAN COMP 'T' Txco;
  86. Txco = CHAN 'ATTRIBUT' Txco NATURE 'DIFFUS' ;
  87. *TRAC vol1 Txco 'TITR' ' Temperature initiale' ;
  88. si graph ;TRAC su1 Txco 'TITR' ' Temperature initiale' ; finsi;
  89. evch = evol chpo l1 Txco;
  90. si graph ; dess evch; finsi;
  91. ********************************************************************
  92. * chargement nul !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  93. ********************************************************************
  94. *sour0 = MANU CHPO vol1 1 'Q' 0. 'NATURE' 'DISC';
  95. sour0 = MANU CHPO su1 1 'Q' 0. 'NATURE' 'DISC';
  96. chthQ0 = CHAR 'Q' sour0 EvS ;
  97. ********************************************************************
  98. xtab = table ;
  99. *xtab.'CELSIUS'= VRAI ;
  100. xtab.'TEMPERATURES' = table ;
  101. xtab.'TEMPERATURES' . 0 = Txco ;
  102. xtab.'MODELE' = modth1 et modph1 ;
  103. xtab.'CARACTERISTIQUES' = matth1 et matph1 ;
  104. xtab.'CHARGEMENT' = chthQ0 ;
  105. xtab.'PROCEDURE_PERSO2' = VRAI ;
  106. DEBP PERSO2 ;
  107. chT = PECHE xtab.'TEMPERATURES' ;
  108. cht = exco cht 'T' 'T';
  109. * TRAC vol1 chT ;
  110. Tmax1 = MAXI chT ;
  111. titre ' profil de temperature le long du barreau';
  112. evch= evol chpo l1 cht ;
  113. si graph ; dess evch nclk; finsi;
  114. FINP ;
  115. xtab.'TEMPS_CALCULES' = listT ;
  116. *xtab.'TEMPS_SAUVES' = (PROG 0. TT1) ;
  117. *xtab.'PAS_AJUSTE' = vrai ;
  118. *xtab.'RELAXATION_THETA' = 1.;
  119. *xtab.'CRITERE' = 1.e-3 ;
  120. *
  121. PASAPAS xtab ;
  122.  
  123.  
  124.  
  125. * on compare energie fournie/dépensée par chaleur latente dql
  126. * à la différence d'énergie calorique % à la solution homogène 125°C
  127. * obtenue sans chaleur latente (dqt).
  128.  
  129. tder = peche xtab temperatures ;
  130. tder= tder exco 'T';
  131. evt = evol chpo tder l1;
  132. so =( ( INTG evt) ) / 2.e-2;
  133. list so;
  134. evini= evol chpo txco l1;
  135. sini= ( ( INTG evini) ) / 2.e-2;
  136.  
  137. dqt = capcalo * ( abs( so - sini));
  138.  
  139. *proportions de phase, initiale, prise dans le cacul
  140. pr0= xtab.proportions_phase . 0;
  141. zo= intg pr0 modph1;
  142. zz = manu chml modph1 'SCAL' 1.;
  143.  
  144. zotot= intg zz modph1;
  145. na = dime xtab.proportions_phase ;
  146. prfi= xtab . proportions_phase . (na - 1);
  147. zfi= intg prfi modph1;
  148. zmod = abs ( zfi - zo ) ;
  149.  
  150. propchzo=abs( zmod / zotot);
  151. dql = LAT * propchzo ;
  152.  
  153. mess ' dqt' dqt ' dql ' dql;
  154.  
  155. err= abs ( ( dql- dqt ) / dql);
  156. si ( err > 1.e-4) ;
  157. mess ' erreur dans phase2d.dgibi' ;
  158. erreur 5 ; finsi;
  159.  
  160. fin;
  161.  
  162.  
  163.  
  164.  
  165.  

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