Télécharger fron1.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : fron1.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. * FICHIER GIBIANE POUR TESTER L'OPERATEUR FRONT
  5. *
  6. graph = 'N';
  7. * sur un disque de rayon 100
  8. * la vitesse vaut 2 - (r/100)**2
  9. * la position du front 100(-1+exp(t/100))
  10. * r = 100 est atteint pour t=62.3225
  11. *
  12. *
  13. * MAILLAGE
  14. *
  15. opti dime 2 elem qua4 ;
  16. opti isoval ligne ;
  17. n1 = 30;
  18. p1 = 0. 0. ;
  19. pp1 = -1.d-6 -1.d-6 ;
  20. p2 = 0. 100. ;
  21. p3 = 100. 0. ;
  22. *
  23. * SEGMENTS
  24. *
  25. li1 = d p1 n1 p2 ;
  26. li2 = p2 c n1 p1 p3 ;
  27. li3= d p3 n1 p1 ;
  28. *
  29. * SURFACE
  30. *
  31. su1 = surf (li1 et li2 et li3) 'PLAN' ;
  32. *su1 = li1 rota -90. 50 pp1 ;
  33. *elim su1 1.d-4 ;
  34. titre 'Maillage d un quart du disque' ;
  35. SI ( ega graph 'O');
  36. trace su1 ;
  37. finsi;
  38. *
  39. * CHAMP DE VITESSE
  40. *
  41. chx chy = coor su1 ;
  42. *
  43. chv = ((chx*chx +(chy*chy))) * (-1.d-4) + 2.D0 ;
  44. titre 'champ de vitesse' ;
  45. SI ( ega graph 'O');
  46. trace chv su1 (cont su1) ;
  47. finsi;
  48. chpv = (manu chpo su1 1 'TCMB' 10.) +(nomc chv 'VIT') ;
  49. *
  50. * INITIALISATION
  51. *
  52. chp1 = (manu chpo su1 1 'TPS' 100. ) +
  53. (manu chpo p1 1 'TPS ' -100.) ;
  54. t1 = 0. ;
  55. dt = 5. ;
  56. *
  57. chp1 = fron chp1 chpv t1 0. ;
  58. *
  59. titre 'instant' t1 ;
  60. chflag = (exco chp1 'TPS') masque inferieure t1 ;
  61. SI ( ega graph 'O');
  62. trace chflag su1 (cont su1 ) ;
  63. finsi;
  64.  
  65. ev1 = evol chpo chp1 'TPS' li1 ;
  66. lx = extr ev1 'ABS' ;
  67. ly = prog ;
  68. *
  69. * COURBE DE REFERENCE
  70. *
  71. repeter bou2 (dime lx) ;
  72. x = extr lx &bou2 ;
  73. r2 = 2**0.5 ;
  74. y = 50 / r2 * (log ( (r2 + (x/100)) /( r2 - (x/100)) )) ;
  75. ly = ly et (prog y ) ;
  76. fin bou2 ;
  77. *
  78. ev2 = evol manu lx 'ABS' 'TEMPS' ly ;
  79. TAB1=TABLE;
  80. TAB1.1='TIRR';
  81. TAB1.2='MARQ TRIA';
  82. SI ( ega graph 'O');
  83. dess (ev2 et ev1) 'TITX' 'Rayon' tab1 ;
  84. *
  85. finsi;
  86. * BOUCLE SUR LES PAS DE TEMPS
  87. *
  88. repeter bou1 14 ;
  89. t1 = (dt* &bou1) ;
  90. titre 'Instant' t1 ;
  91. chp3 = fron chp1 chpv t1 dt ;
  92. *
  93. ev1 = (evol chpo chp3 'TPS' li1) ;
  94. chflag = (exco chp3 'TPS') masque inferieure t1 ;
  95. SI ( ega graph 'O');
  96. trace chp3 su1 (cont su1 ) ;
  97. trace chflag su1 (cont su1 ) ;
  98. dess (ev2 et ev1) 'TITX' 'Rayon' tab1 ;
  99. finsi;
  100. *
  101. chp1 = chp3 ;
  102. fin bou1 ;
  103. *
  104. * VALIDATION
  105. *
  106. ltc = extr ev1 'TPS' ;
  107. tc = extr ltc (dime ltc ) ;
  108. tcth = extr ly (dime ly ) ;
  109. err = abs ( tc -tcth ) ;
  110. si ( err >eg 1.d-2 ) ;
  111. erreur 5 ;
  112. finsi ;
  113.  
  114.  
  115.  
  116. fin ;
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  

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