Télécharger visufour1.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : visufour1.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4.  
  5. ************************************************************************
  6. * *
  7. * Exemple d'utilisation de four2tri *
  8. * Visualisation 3D de résultats de calcul Fourier *
  9. * avec possibilité de recombinaison des harmoniques *
  10. * *
  11. * D. Combescure - Janvier 2007 *
  12. * Laboratoire DYN - CEA Saclay *
  13. ************************************************************************
  14. *
  15. * GRAPH = VRAI; OPTI TRAC PSC;
  16. GRAPH = FAUX;
  17. *
  18. opti dime 2 elem tri3 mode four 'NOHA';
  19. *
  20. ************************************************************************
  21. * MAILLAGE
  22. ************************************************************************
  23. xelim = 1.E-8;
  24.  
  25. p1 = 10 0.01;
  26. p2 = 11 0.01;
  27. p3 = 20 0.01;
  28. p4 = 30 0.01;
  29. p5 = 30 1;
  30. v1 = 0 1;
  31. *
  32. lig1 = d 3 p1 p2;
  33. mesh2d = tran 3 lig1 v1;
  34. opti elem seg2;
  35. lig2 = d 3 p2 p3;
  36.  
  37. ************************************************************************
  38. * MODELE
  39. ************************************************************************
  40.  
  41. mod1 = modeli mesh2d mecanique elastique;
  42. mod2 = modeli lig2 mecanique elastique coq2;
  43. * mod3 = modeli (p5 et p4) mecanique elastique cerc;
  44. modt = mod1 et mod2;
  45. mesht = mesh2d et lig2;
  46.  
  47.  
  48. ************************************************************************
  49. * CHPO 2D Fourier
  50. ************************************************************************
  51.  
  52. * listreel pour les isovaleurs
  53. izo1 = prog -1. PAS 0.1 1.;
  54. izo2 = 0.001 * izo1;
  55.  
  56. * creation des tables de chpoint
  57. U2D = tabl; U2DZ = tabl;
  58. F2D = tabl; F2DZ = tabl;
  59. PRE1 = tabl;
  60.  
  61. REPE bnf 3; nf = &bnf - 1;
  62. opti dime 2 elem tri3 mode four nf;
  63. U2D . nf = manu chpo mesht 3 'UR' 1. 'UT' -1. 'UZ' 0. 'NATURE' 'DIFFUS';
  64. U2DZ . nf = manu chpo mesht 3 'UR' 0. 'UT' 0. 'UZ' 1. 'NATURE' 'DIFFUS';
  65. F2D . nf = manu chpo mesht 2 'FR' 0.001 'FT' 0.001 'NATURE' 'DISCRET';
  66. F2DZ . nf = manu chpo mesht 1 'FZ' 1. 'NATURE' 'DISCRET';
  67. PRE1 . nf = manu chpo mesht 2 'P' 0.001 'EPAI' 0.001 'NATURE' 'DIFFUS';
  68. FIN bnf;
  69. opti mode four 'NOHA';
  70.  
  71. * creation d'une force composee de plusieurs harmoniques
  72. opti mode four 1;
  73. FPONC = manu chpo p3 1 FR 1. nature discrete;
  74. opti mode four 2;
  75. FPONC = FPONC et (manu chpo p3 1 FR 1. nature discrete);
  76. opti mode four 3;
  77. FPONC = FPONC et (manu chpo p3 1 FR 1. nature discrete);
  78. opti mode four 4;
  79. FPONC = FPONC et (manu chpo p3 1 FR 1. nature discrete);
  80. opti mode four 5;
  81. FPONC = FPONC et (manu chpo p3 1 FR 1. nature discrete);
  82. opti mode four 6;
  83. FPONC = FPONC et (manu chpo p3 1 FR 1. nature discrete);
  84. opti mode four 'NOHA';
  85.  
  86.  
  87. ************************************************************************
  88. * FOUR2TRI (attention : on passe en 3D)
  89. ************************************************************************
  90.  
  91.  
  92. * >>> GENERATION DU MAILLAGE 3D SEULEMENT <<<
  93.  
  94. tab1 = TABLE;
  95. tab1 . 'MODELE' = modt;
  96. tab1 . 'ELIM' = xelim;
  97. tab1 . 'ANGLES' = PROG 0. pas 10. 360.;
  98. FOUR2TRI tab1 ;
  99. mesh3d = tab1 . 'MAILLAGE_3D';
  100. OPTI 'OEIL' (0. 1.E4 -1.E4);
  101. SI GRAPH;
  102. TRAC mesh3d 'TITRE' 'MAILLAGE_3D';
  103. FINSI;
  104.  
  105.  
  106. * >>> CHPO 2D Fourier --> 3D (deplacements et champs scalaires)<<<
  107.  
  108. REPE bnf 3; nf = &bnf - 1;
  109.  
  110. tab1.'DEPLACEMENTS' = TABLE;
  111. tab1.'DEPLACEMENTS'. 1 = U2D . nf;
  112. tab1.'DEPLACEMENTS'. 2 = U2DZ . nf;
  113. tab1.'CHPO_SYME' = TABLE;
  114. tab1.'CHPO_SYME'. 1 = PRE1 . nf;
  115.  
  116. FOUR2TRI tab1 nf ;
  117.  
  118. dep3D1 = (tab1 . 'DEPLACEMENTS_3D' . 1);
  119. dep3D2 = (tab1 . 'DEPLACEMENTS_3D' . 2);
  120.  
  121. SI GRAPH;
  122. mo3d = mots 'UX' 'UY' 'UZ';
  123. u1 = psca dep3D1 dep3D1 mo3d mo3d;
  124. trac (defo mesh3D dep3D1 u1) CACH izo1
  125. 'TITRE' (chai 'n_{H}='nf ' UR=-UT=+1');
  126.  
  127. u2 = psca dep3D2 dep3D2 mo3d mo3d;
  128. trac (defo mesh3D dep3D2 u2) CACH izo1
  129. 'TITRE' (chai 'n_{H}='nf ' UZ=+1');
  130.  
  131. trac mesh3d (exco (tab1.'CHPO_SYME_3D'. 1) 'P')
  132. 'TITRE' (chai 'n_{H}='nf ' p=+0.001') izo2;
  133. FINSI;
  134.  
  135. * pour ne pas refaire le calcul on oublie simplement...
  136. OUBL tab1 'DEPLACEMENTS';
  137. OUBL tab1 'CHPO_SYME';
  138.  
  139. FIN bnf;
  140.  
  141.  
  142. * >>> CHPO 2D Fourier --> 3D (efforts) <<<
  143.  
  144. tab1.'EFFORTS' = TABLE;
  145. tab1.'EFFORTS'. 1 = FPONC;
  146.  
  147. F3D = VIDE 'CHPOINT';
  148. REPE bnf 6; nf = &bnf ;
  149. FOUR2TRI tab1 nf;
  150. F3D = F3D + tab1. 'EFFORTS_3D'. 1;
  151. FVECT = vect F3D 'FX' 'FY' 'FZ' ROSE;
  152. SI GRAPH;
  153. trac (0 -1E4 0) mesh3d FVECT
  154. 'TITRE' (chai 'F^{3D}=\S_{n=1..'nf'} F_{n}');
  155. FINSI;
  156. FIN bnf;
  157.  
  158.  
  159.  
  160. ************************************************************************
  161. * fin du cas-test
  162. ************************************************************************
  163. * TODO : on pourrait tester la convergence vers une force poncutelle ...
  164.  
  165. TEMP 'IMPR' 'MAXI' 'CPU';
  166.  
  167. FIN ;
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  

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