* fichier : mato-3d2.dgibi ************************************************************************ ************************************************************************ 'OPTION' 'ECHO' 0 ; ************************************************************************ * NOM : MATO-3D2 * DESCRIPTION : Test du MAilleur TOpologique pour mailler un cube * avec une métrique isotrope constante en espace * dans le but d'obtenir 5x5x5 mailles. * Au départ, le cube est 1x1x1. Concernant la frontière, * on contraint le mailleur, soit à ne pas la modifier, * soit à en modifier une partie, soit la totalité. * * On teste la qualité des éléments obtenus. * * Issu de mato-2d4.dgibi * * * LANGAGE : GIBIANE-CAST3M * AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SEMT/LTA) * mél : stephane.gounand@cea.fr ********************************************************************** * VERSION : v1, 20/01/2026, version initiale * HISTORIQUE : v1, 20/01/2026, création * HISTORIQUE : * HISTORIQUE : ************************************************************************ * interact = faux ; graph = faux ; * Mini, mediane et maxi d'un LISTREEL 'DEBP' MIMEMA ; 'FINP' mil mel mal ; * Passage au gravite d'un MCHAML 'DEBP' CHGRAV ch*'MCHAML'; * * 'SI' ('NON' interact) ; 'OPTION' 'TRAC' 'PSC' ; 'SINON' ; 'OPTION' 'TRAC' 'X' ; 'FINSI' ; ldens = ldens1 'ET' (ldens2 '**' -1.) ; * for = '(E11.3)' ; * * Création du contour * nx = 1 ; nv = 4 ; pA = 0. 0. 0. ; pB = 1. 0. 0. ; * faces x=0, y=0, z=0 fac0 = facx0 'ET' facy0 'ET' facz0 ; * 'SI' graph ; 'TRACER' 'CACH' envq 'TITR' tit ; 'FINSI' ; * * Tests divers (consistance...) * lok = VRAI ; * * TEST 1 Création d'un maillage initial * 'SI' graph ; 'FINSI' ; * Test 1 : on vérifie que les qualités mini, moyenne et maxi des éléments sont bonnes miqo meqo maqo = MIMEMA qmail1 'TOPO' ; miqa meqa maqa = MIMEMA qmail1 'EQLT' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqar = 0.81 ; meqar = 0.81 ; maqar = 0.81 ; 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ; lok = lok 'ET' faux ; 'FINS' ; * * TEST 2 Remaillage de mail1 avec une taille voulue de 0.2 sans * toucher le bord * 'SI' graph ; 'FINSI' ; * Test 2 : on vérifie que les qualités mini, mediane et maxi des éléments sont bonnes miqo meqo maqo = MIMEMA qmail2 'TOPO' ; miqa meqa maqa = MIMEMA qmail2 'COHE' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqar = 0.81 ; meqar = 0.81 ; maqar = 0.81 ; 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ; lok = lok 'ET' faux ; 'FINS' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqer = 3.55 ; meqer = 3.56 ; maqer = 3.57 ; 'SI' (('<EG' miqe miqer) 'OU' ('NEG' meqe meqer 0.01) 'OU' ('>EG' maqe maqer)) ; lok = lok 'ET' faux ; 'FINS' ; * * TEST 3 Remaillage de mail1 avec une taille voulue de 0.2 en touchant * les faces x=0, y=0, z=0 mais pas les trois autres * 'SI' graph ; 'FINSI' ; * Test 3 : on vérifie que les qualités mini, mediane et maxi des éléments sont bonnes miq meq maq = MIMEMA qmail3 'TOPO' ; miqa meqa maqa = MIMEMA qmail3 'COHE' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqar = 0.27 ; meqar = 0.83 ; maqar = 0.99 ; 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ; lok = lok 'ET' faux ; 'FINS' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqer = 0.64 ; meqer = 0.90 ; maqer = 3.74 ; 'SI' (('<EG' miqe miqer) 'OU' ('NEG' meqe meqer 0.01) 'OU' ('>EG' maqe maqer)) ; lok = lok 'ET' faux ; 'FINS' ; * * TEST 4 Remaillage de mail1 avec une taille voulue de 0.2 en touchant * tout le bord * 'SI' graph ; 'FINSI' ; * Test 4 : on vérifie que les qualités mini, mediane et maxi des éléments sont bonnes miq meq maq = MIMEMA qmail4 'TOPO' ; miqa meqa maqa = MIMEMA qmail4 'COHE' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqar = 0.61 ; meqar = 0.87 ; maqar = 0.99 ; 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ; lok = lok 'ET' faux ; 'FINS' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqer = 0.56 ; meqer = 0.78 ; maqer = 1.05 ; 'SI' (('<EG' miqe miqer) 'OU' ('NEG' meqe meqer 0.01) 'OU' ('>EG' maqe maqer)) ; lok = lok 'ET' faux ; 'FINS' ; * * TEST 5 Remaillage de mail4 avec une taille voulue de 0.2 en ne touchant * plus le bord. On s'attend à ne pas changer le maillage mais * c'est sans compter avec l'algorithme du noeud fictif qui nous * a deja fait des blagues * * Il faut aussi garder exactement le même critère de qualité * lpcritq = tparam . 'lpcritq' ; * lcq = 'EXTR' lpcritq ('DIME' lpcritq) ; * jcq = 'ENTI' 'PROC' ('EXTR' lcq 1) ; * pcq = 'EXTR' lcq 2 ; qcq = 'EXTR' lcq 3 ; * tparam5 = 'TABL' ; * tparam5 . 'impr' = 2 ; * tparam5 . 'critqual' = 'LECT' jcq ; * tparam5 . 'critqual_pmoy' = 'PROG' pcq ; * tparam5 . 'critqual_qbias' = 'PROG' qcq ; * mail5 = 'REMA' mail4 ('/' 1. nv) tparam ; 'SI' graph ; 'FINSI' ; * Test 5 : on vérifie que mail5 et mail4 sont identiques ainsi que les * qualités *! Point a comprendre ici : on ne comprend pas pourquoi on ne trouve pas le meme *! maillage. On saute le test pour l'instant afin d'evoluer. *! A reprendre *! 'SI' ('NEG' dn45 0) ; *! lok = lok 'ET' faux ; 'FINS' ; * Test 5 : on vérifie que les qualités mini, mediane et maxi des éléments sont bonnes miq meq maq = MIMEMA qmail5 'TOPO' ; miqa meqa maqa = MIMEMA qmail5 'COHE' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqar = 0.61 ; meqar = 0.87 ; maqar = 0.99 ; 'SI' (('<EG' miqa miqar) 'OU' ('<EG' meqa meqar) 'OU' ('<EG' maqa maqar)) ; lok = lok 'ET' faux ; 'FINS' ; 'SI' graph ; 'FINSI' ; * 2026/06/05 nx=1 nv=4 miqer = 0.56 ; meqer = 0.78 ; maqer = 1.05 ; 'SI' (('<EG' miqe miqer) 'OU' ('NEG' meqe meqer 0.01) 'OU' ('>EG' maqe maqer)) ; lok = lok 'ET' faux ; 'FINS' ; * * Test final * 'SI' ('NON' lok) ; 'ERREUR' 5 ; 'SINON' ; 'MESSAGE' ('CHAINE' 'Tout sest bien passe !') ; 'FINSI' ; * 'SI' interact ; 'OPTION' 'ECHO' 1 ; 'OPTION' 'DONN' 5 ; 'FINSI' ; * * End of dgibi file MATO-3D2 * 'FIN' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales