Télécharger fronabs.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : fronabs.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. ******************************************************************
  5. *
  6. * test des frontieres absorbantes
  7. *
  8. * on teste la reultante pour un champ de vitesses donne
  9. *
  10. *
  11. ***************************************************************
  12.  
  13. option dime 3 elem cub8;
  14.  
  15. FRA = 0.4;
  16. MFR = -1 * FRA;
  17. RAC = (2. ** 0.5) / 2. ;
  18. MRA = -1 * RAC ;
  19.  
  20. P0 = 0. 0. 0. ;
  21. P1a = FRA 0. 0. ;
  22. P1 = 1. 0. 0. ;
  23. P2a = 0. 0. MFR;
  24. P2 = 0. 0. -1. ;
  25. P3 = FRA 0. MFR ;
  26. P4 = RAC 0. MRA ;
  27.  
  28.  
  29. * Plus NBRAY est grand et plus la solution numérique converge vers la
  30. * solution analytique.
  31. NBRAY = 6;
  32. D1a = P0 DROI NBRAY P1a ;
  33. D1b = P1a DROI NBRAY P1 ;
  34. D2a = P0 DROI NBRAY P2a ;
  35. D2b = P2a DROI NBRAY P2 ;
  36. D2c = P1a DROI NBRAY P3 ;
  37. D1c = P2a DROI NBRAY P3 ;
  38. D3 = P3 DROI NBRAY P4 ;
  39.  
  40. C1 = CERC NBRAY P2 P0 P4 ;
  41. C2 = CERC NBRAY P1 P0 P4 ;
  42.  
  43. SUR1 = REGL NBRAY D2a D2c ;
  44. SUR2 = REGL NBRAY D2c C2 ;
  45. SUR3 = REGL NBRAY D1c C1 ;
  46. ELIM 1.D-6 SUR1 SUR2 ;
  47. ELIM 1.D-6 SUR1 SUR3 ;
  48. ELIM 1.D-6 SUR2 SUR3 ;
  49.  
  50. SUR1 = SUR1 ET SUR2 ET SUR3;
  51.  
  52. NBROT = NBRAY * 2 ;
  53. SOL1 = SUR1 VOLU NBROT ROTA 90. ( 0.0 0.0 0.0 ) ( 0.0 0.0 1.0 ) ;
  54. ELIM 1.e-6 SOL1 ;
  55. SOL1 = REGE SOL1 ;
  56.  
  57. *TRAC QUAL SOL1 cach;
  58.  
  59. C1 = C1 ET C2 ;
  60. BOR1 = C1 ROTA NBROT 90. ( 0.0 0.0 0.0 ) ( 0.0 0.0 1.0 ) ;
  61. BOR1 = REGE BOR1 ;
  62. ELIM 1.e-6 BOR1 SOL1 ;
  63.  
  64. MOD_S = MODE SOL1 MECANIQUE ;
  65.  
  66. E = 1. ;
  67. POIS = 0. ;
  68. RO = 1. ;
  69. MAT_S1 = MATE MOD_S 'YOUN' E 'NU' POIS 'RHO' RO ;
  70. AMOT1 = AMOR MOD_S BOR1 MAT_S1 ;
  71.  
  72. E = 2. ;
  73. POIS = 0. ;
  74. RO = 1. ;
  75. MAT_S2 = MATE MOD_S 'YOUN' E 'NU' POIS 'RHO' RO ;
  76. AMOT2 = AMOR MOD_S BOR1 MAT_S2 ;
  77.  
  78. X1 Y1 Z1 = COOR BOR1 ;
  79.  
  80. DEP1 = (X1 NOMC 'UX') ET (Y1 NOMC 'UY') ET (Z1 NOMC 'UZ') ;
  81.  
  82. RIG1 = RELA CORI DEPL SOL1 ;
  83. RIG2 = BLOQ (P0 et P2) DEPL;
  84. RIG3 = BLOQ P1 UY ;
  85. F1 = DEPI RIG3 1. ;
  86. DEP2 = RESO (RIG1 ET RIG2 et rig3 ) F1 ;
  87.  
  88. *vec1 = vect dep2 ux uy uz 1. jaun ;
  89. *trac vec1 sol1 cach ;
  90.  
  91. FOR1 = RESU (AMOT1 * DEP1);
  92. FOR2 = RESU (AMOT2 * DEP2);
  93.  
  94. for1 = (xtx for1) **.5 ;
  95. for2 = (xtx for2) **.5 ;
  96.  
  97. ** resultat analytiques
  98. fan1 = 3**.5 * pi / 4 ;
  99. fan2 = 2**.5 * pi / 4 ;
  100.  
  101. ** comparaison et calcul d'erreur
  102. err1 = (for1 - fan1) / fan1 * 100 ;
  103. err2 = (for2 - fan2) / fan2 * 100 ;
  104. errmax = maxi abs (prog err1 err2) ;
  105.  
  106. list errmax ;
  107.  
  108. MESS 'La résultante des forces visqueuses dues au déplacement radial est' FOR1;
  109.  
  110. MESS 'La résultante des forces visqueuses dues au déplacement tangentiel est' FOR2;
  111. LIST (SOL1 ELEM 'TYPE');
  112.  
  113. * 1.2276 est l'erreur pour NBRAY = 6. On tolere un poil plus
  114. SI(errmax <EG 1.228);
  115. ERRE 0;
  116. SINO;
  117. ERRE 5;
  118. FINSI;
  119.  
  120. FIN;
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  

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