* fichier : filmtopo.dgibi ************************************************************************ * Section : Maillage Autres ************************************************************************ 'OPTION' 'ECHO' 1 ; ************************************************************************ * NOM : FILMTOPO * DESCRIPTION : Test de la procedure de film associee au * MAilleur TOpologique. * * Issu de mato-2d1.dgibi * * * LANGAGE : GIBIANE-CAST3M * AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SEMT/LTA) * mél : stephane.gounand@cea.fr ********************************************************************** * VERSION : v1, 09/06/2026, version initiale * HISTORIQUE : v1, 09/06/2026, création * HISTORIQUE : * HISTORIQUE : ************************************************************************ * interact = faux ; graph = faux ; * Mini, mediane et maxi d'un MCHAML 'DEBP' MIMEMA ; 'ARGU' ch*'MCHAML' ; 'ARGU' cmp*'MOT' ; lr = 'EXTR' (CHGRAV ch) 'VALE' cmp ; lro = 'ORDO' lr ; dlr = 'DIME' lr ; mil = 'EXTR' lro 1 ; mal = 'EXTR' lro dlr ; mel = 'EXTR' lro ('/' ('+' 1 dlr) 2) ; 'FINP' mil mel mal ; * Passage au gravite d'un MCHAML 'DEBP' CHGRAV ch*'MCHAML'; 'FINP' ('CHAN' ch ('MODE' ('EXTR' ch 'MAIL') 'THERMIQUE') 'GRAVITE') ; * 'OPTION' 'DIME' 2 'ELEM' 'TRI3' ; * 'SI' ('NON' interact) ; 'OPTION' 'TRAC' 'PSC' ; 'SINON' ; 'OPTION' 'TRAC' 'X' ; 'FINSI' ; vtrac = 'VALE' 'TRAC' ; lqual = 'PROG' 0. 'PAS' 0.05 1. ; ldens1 = 'PROG' 0.5 'PAS' 0.05 1. ; ldens2 = 'PROG' 0.9 'PAS' -0.05 0.5 ; ldens = ldens1 'ET' (ldens2 '**' -1.) ; * for = '(E11.3)' ; * tol= ('VALE' prec) '*' 10. ; * * Maillage Mickey * Rgrand = 1. ; Dpetit = 1. ; ang = 45. ; dang = 10. ; den = 0.3 ; 'DENS' den ; * Points p0 = 0. 0. ; p1 = 0. ('*' Rgrand -1.) ; p2 = POINTCYL Rgrand ('-' ang dang) ; p3 = POINTCYL ('+' Rgrand Dpetit) ang ; p4 = POINTCYL Rgrand ('+' ang dang) ; p5 = POINTCYL Rgrand ('-' 180. ('+' ang dang)) ; p6 = POINTCYL ('+' Rgrand Dpetit) ('-' 180. ang) ; p7 = POINTCYL Rgrand ('-' 180. ('-' ang dang)) ; * Contour l1 = 'CER3' p7 p1 p2 ; l2 = 'CER3' p2 p3 p4 ; l3 = 'CERCLE' p4 p0 p5 ; l4 = 'CER3' p5 p6 p7 ; cnt = l1 'ET' l2 'ET' l3 'ET' l4 ; * 'SI' graph ; tit = 'CHAI' 'Contour ' ; 'TRACER' 'CACH' cnt 'TITR' tit 'NOEU' ; 'FINSI' ; * lok = VRAI ; * * TEST 1 Création d'un maillage sans ajouter de noeuds * tparam = tabl ; tparam . 'sort_seqm' = 1 ; mail1 = 'TRIA' 'TOPO' cnt 'NOAJ' tparam ; nomfic1 = 'filmtopo-tria-noaj.ps' ; 'OPTI' 'TRAC' 'PSC' 'POTR' 'COURIERB_14' 'EPTR' 5 'FTRA' nomfic1 ; FILMTOPO tparam 'IMPR' ; 'OPTI' 'TRAC' vtrac ; 'SI' graph ; tit = 'CHAI' 'Maillage genere sans noeud supplémentaire' ; 'TRAC' mail1 'TITR' tit 'NOEU' ; 'FINSI' ; * Test 1 : on vérifie que le nombre de noeuds est conservé nno1 = 'NBNO' cnt ; nno2 = 'NBNO' mail1 ; 'SI' ('NEG' nno1 nno2) ; 'MESS' '!!! TEST 1 : nombre de noeuds non conserve' ; lok = lok 'ET' faux ; 'SINO' ; 'MESS' 'TEST 1 : nombre de noeuds conserve' ; 'FINS' ; * * TEST 2 Création d'un maillage en ajoutant des noeuds interieurs * tparam = tabl ; tparam . 'sort_seqm' = 1 ; mail2 = 'TRIA' 'TOPO' cnt 'AJNO' tparam ; nomfic2 = 'filmtopo-tria.ps' ; 'OPTI' 'TRAC' 'PSC' 'POTR' 'COURIERB_14' 'EPTR' 5 'FTRA' nomfic2 ; FILMTOPO tparam ; 'OPTI' 'TRAC' vtrac ; 'SI' graph ; tit = 'CHAI' 'Maillage genere en ajoutant des noeuds interieurs' ; 'TRAC' mail2 'TITR' tit 'NOEU' ; 'FINSI' ; * Test 2 : on vérifie que les qualités mini, moyenne et maxi des éléments sont bonnes qmail2 = 'INDI' 'TOPO' 'EQLT' mail2 ; miqo meqo maqo = MIMEMA qmail2 'TOPO' ; 'MESS' 'FORMAT' for 'TEST 2 : Qmin=' miqo ' Qmed=' meqo ' Qmax=' maqo ; miqa meqa maqa = MIMEMA qmail2 'EQLT' ; 'MESS' 'FORMAT' for 'TEST 2 : Qeqltmin=' miqa ' Qeqltmed=' meqa ' Qeqltmax=' maqa ; 'SI' graph ; momail2 = 'MODE' mail2 'THERMIQUE' ; tit = 'CHAI' 'Qualite equilateralite maillage avec noeuds interieurs' ; 'TRAC' ('EXCO' 'EQLT' qmail2) momail2 lqual 'TITR' tit ; 'FINSI' ; * Sur mon linux32 au 09/06/2026 miqar = 0.32 ; meqar = 0.83 ; maqar = 0.99 ; 'MESS' 'FORMAT' for 'TEST 2 : Qeqltmir=' miqar ' Qeqltmer=' meqar ' Qeqltmar=' maqar ; 'SI' (('