Télécharger filmtopo.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : filmtopo.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. 'OPTION' 'ECHO' 1 ;
  5. ************************************************************************
  6. * NOM : FILMTOPO
  7. * DESCRIPTION : Test de la procedure de film associee au
  8. * MAilleur TOpologique.
  9. *
  10. * Issu de mato-2d1.dgibi
  11. *
  12. *
  13. * LANGAGE : GIBIANE-CAST3M
  14. * AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SEMT/LTA)
  15. * mél : stephane.gounand@cea.fr
  16. **********************************************************************
  17. * VERSION : v1, 09/06/2026, version initiale
  18. * HISTORIQUE : v1, 09/06/2026, création
  19. * HISTORIQUE :
  20. * HISTORIQUE :
  21. ************************************************************************
  22. *
  23. interact = faux ;
  24. graph = faux ;
  25. * Mini, mediane et maxi d'un MCHAML
  26. 'DEBP' MIMEMA ;
  27. 'ARGU' ch*'MCHAML' ;
  28. 'ARGU' cmp*'MOT' ;
  29. lr = 'EXTR' (CHGRAV ch) 'VALE' cmp ;
  30. lro = 'ORDO' lr ; dlr = 'DIME' lr ;
  31. mil = 'EXTR' lro 1 ; mal = 'EXTR' lro dlr ;
  32. mel = 'EXTR' lro ('/' ('+' 1 dlr) 2) ;
  33. 'FINP' mil mel mal ;
  34. * Passage au gravite d'un MCHAML
  35. 'DEBP' CHGRAV ch*'MCHAML';
  36. 'FINP' ('CHAN' ch ('MODE' ('EXTR' ch 'MAIL') 'THERMIQUE') 'GRAVITE') ;
  37. *
  38. 'OPTION' 'DIME' 2 'ELEM' 'TRI3' ;
  39. *
  40. 'SI' ('NON' interact) ;
  41. 'OPTION' 'TRAC' 'PSC' ;
  42. 'SINON' ;
  43. 'OPTION' 'TRAC' 'X' ;
  44. 'FINSI' ;
  45. vtrac = 'VALE' 'TRAC' ;
  46. lqual = 'PROG' 0. 'PAS' 0.05 1. ;
  47. ldens1 = 'PROG' 0.5 'PAS' 0.05 1. ;
  48. ldens2 = 'PROG' 0.9 'PAS' -0.05 0.5 ;
  49. ldens = ldens1 'ET' (ldens2 '**' -1.) ;
  50. *
  51. for = '(E11.3)' ;
  52. *
  53. tol= ('VALE' prec) '*' 10. ;
  54. *
  55. * Maillage Mickey
  56. *
  57. Rgrand = 1. ; Dpetit = 1. ; ang = 45. ; dang = 10. ;
  58. den = 0.3 ;
  59. 'DENS' den ;
  60. * Points
  61. p0 = 0. 0. ;
  62. p1 = 0. ('*' Rgrand -1.) ;
  63. p2 = POINTCYL Rgrand ('-' ang dang) ;
  64. p3 = POINTCYL ('+' Rgrand Dpetit) ang ;
  65. p4 = POINTCYL Rgrand ('+' ang dang) ;
  66. p5 = POINTCYL Rgrand ('-' 180. ('+' ang dang)) ;
  67. p6 = POINTCYL ('+' Rgrand Dpetit) ('-' 180. ang) ;
  68. p7 = POINTCYL Rgrand ('-' 180. ('-' ang dang)) ;
  69. * Contour
  70. l1 = 'CER3' p7 p1 p2 ; l2 = 'CER3' p2 p3 p4 ;
  71. l3 = 'CERCLE' p4 p0 p5 ; l4 = 'CER3' p5 p6 p7 ;
  72. cnt = l1 'ET' l2 'ET' l3 'ET' l4 ;
  73. *
  74. 'SI' graph ;
  75. tit = 'CHAI' 'Contour ' ;
  76. 'TRACER' 'CACH' cnt 'TITR' tit 'NOEU' ;
  77. 'FINSI' ;
  78. *
  79. lok = VRAI ;
  80. *
  81. * TEST 1 Création d'un maillage sans ajouter de noeuds
  82. *
  83. tparam = tabl ; tparam . 'sort_seqm' = 1 ;
  84. mail1 = 'TRIA' 'TOPO' cnt 'NOAJ' tparam ;
  85. nomfic1 = 'filmtopo-tria-noaj.ps' ;
  86. 'OPTI' 'TRAC' 'PSC' 'POTR' 'COURIERB_14' 'EPTR' 5 'FTRA' nomfic1 ;
  87. FILMTOPO tparam 'IMPR' ;
  88. 'OPTI' 'TRAC' vtrac ;
  89.  
  90. 'SI' graph ;
  91. tit = 'CHAI' 'Maillage genere sans noeud supplémentaire' ;
  92. 'TRAC' mail1 'TITR' tit 'NOEU' ;
  93. 'FINSI' ;
  94. * Test 1 : on vérifie que le nombre de noeuds est conservé
  95. nno1 = 'NBNO' cnt ;
  96. nno2 = 'NBNO' mail1 ;
  97. 'SI' ('NEG' nno1 nno2) ;
  98. 'MESS' '!!! TEST 1 : nombre de noeuds non conserve' ;
  99. lok = lok 'ET' faux ;
  100. 'SINO' ;
  101. 'MESS' 'TEST 1 : nombre de noeuds conserve' ;
  102. 'FINS' ;
  103. *
  104. * TEST 2 Création d'un maillage en ajoutant des noeuds interieurs
  105. *
  106. tparam = tabl ; tparam . 'sort_seqm' = 1 ;
  107. mail2 = 'TRIA' 'TOPO' cnt 'AJNO' tparam ;
  108. nomfic2 = 'filmtopo-tria.ps' ;
  109. 'OPTI' 'TRAC' 'PSC' 'POTR' 'COURIERB_14' 'EPTR' 5 'FTRA' nomfic2 ;
  110. FILMTOPO tparam ;
  111. 'OPTI' 'TRAC' vtrac ;
  112. 'SI' graph ;
  113. tit = 'CHAI' 'Maillage genere en ajoutant des noeuds interieurs' ;
  114. 'TRAC' mail2 'TITR' tit 'NOEU' ;
  115. 'FINSI' ;
  116. * Test 2 : on vérifie que les qualités mini, moyenne et maxi des éléments sont bonnes
  117. qmail2 = 'INDI' 'TOPO' 'EQLT' mail2 ;
  118. miqo meqo maqo = MIMEMA qmail2 'TOPO' ;
  119. 'MESS' 'FORMAT' for 'TEST 2 : Qmin=' miqo ' Qmed=' meqo ' Qmax=' maqo ;
  120. miqa meqa maqa = MIMEMA qmail2 'EQLT' ;
  121. 'MESS' 'FORMAT' for 'TEST 2 : Qeqltmin=' miqa ' Qeqltmed=' meqa ' Qeqltmax=' maqa ;
  122. 'SI' graph ;
  123. momail2 = 'MODE' mail2 'THERMIQUE' ;
  124. tit = 'CHAI' 'Qualite equilateralite maillage avec noeuds interieurs' ;
  125. 'TRAC' ('EXCO' 'EQLT' qmail2) momail2 lqual 'TITR' tit ;
  126. 'FINSI' ;
  127. * Sur mon linux32 au 09/06/2026
  128. miqar = 0.32 ; meqar = 0.83 ; maqar = 0.99 ;
  129. 'MESS' 'FORMAT' for 'TEST 2 : Qeqltmir=' miqar ' Qeqltmer=' meqar ' Qeqltmar=' maqar ;
  130. 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ;
  131. 'MESS' '!!! TEST 2 failed' ;
  132. lok = lok 'ET' faux ;
  133. 'FINS' ;
  134. *
  135. * TEST 3 Remaillage du précédent avec une métrique uniforme constante
  136. * en espace
  137. *
  138. metva = den ;
  139. tparam = tabl ; tparam . 'sort_seqm' = 1 ;
  140. mail3 = 'REMA' mail2 metva tparam ;
  141. nomfic3 = 'filmtopo-rema.ps' ;
  142. 'OPTI' 'TRAC' 'PSC' 'POTR' 'COURIERB_14' 'EPTR' 5 'FTRA' nomfic3 ;
  143. FILMTOPO tparam ;
  144. 'OPTI' 'TRAC' vtrac ;
  145. 'SI' graph ;
  146. tit = 'CHAI' 'Maillage avec metrique constante uniforme' ;
  147. 'TRAC' mail3 'TITR' tit 'NOEU' ;
  148. 'FINSI' ;
  149. * Test 3 : on vérifie que les qualités mini et moyenne des éléments sont bonnes
  150. qmail3 = 'INDI' 'TOPO' 'COHE' 'DENS' mail3 metva ;
  151. miq meq maq = MIMEMA qmail3 'TOPO' ;
  152. 'MESS' 'FORMAT' for 'TEST 3 : Qmin=' miq ' Qmed=' meq ' Qmax=' maq ;
  153. miqa meqa maqa = MIMEMA qmail3 'COHE' ;
  154. 'MESS' 'FORMAT' for 'TEST 3 : Qcohemin=' miqa ' Qcohemed=' meqa ' Qcohemax=' maqa ;
  155. 'SI' graph ;
  156. momail3 = 'MODE' mail3 'THERMIQUE' ;
  157. tit = 'CHAI' 'Qualite coherence maillage avec noeuds interieurs' ;
  158. 'TRAC' ('EXCO' 'COHE' qmail3) momail3 lqual 'TITR' tit ;
  159. 'FINSI' ;
  160. * Sur mon linux32 au 09/06/2026
  161. miqar = 0.69 ; meqar = 0.93 ; maqar = 0.99 ;
  162. 'MESS' 'FORMAT' for 'TEST 3 : Qcohemir=' miqar ' Qcohemer=' meqar ' Qcohemar=' maqar ;
  163. 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ;
  164. 'MESS' '!!! TEST 3 coherence failed' ;
  165. lok = lok 'ET' faux ;
  166. 'FINS' ;
  167. *
  168. * Test final
  169. *
  170. 'SI' ('NON' lok) ;
  171. 'ERREUR' 5 ;
  172. 'SINON' ;
  173. 'SAUT' 1 'LIGN' ;
  174. 'MESSAGE' ('CHAINE' 'Tout sest bien passe !') ;
  175. 'FINSI' ;
  176. *
  177. 'SI' interact ;
  178. 'OPTION' 'ECHO' 1 ;
  179. 'OPTION' 'DONN' 5 ;
  180. 'FINSI' ;
  181. *
  182. * End of dgibi file MATO-2D1
  183. *
  184. 'FIN' ;
  185.  
  186.  
  187.  

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