1 : $$$$ MAILTOPO NOTICE GOUNAND 26/06/11 21:15:05 12570 2 : DATE 26/06/11 3 : 4 : Procedure MAILTOPO Voir aussi : TRIA REMA 5 : ------------------ INDI 6 : MAIL1 (METR1) = MAILTOPO | 'TRIA' MAIL2 | (METR2) ... 7 : | 'REMA' MAIL3 (MAIL4) | 8 : 9 : ... | ('AJNO') | ('IPOL') (TAB1) ; 10 : | 'NOAJ' | 11 : Objet : 12 : _______ 13 : 14 : Cette procédure n'est pas destinee a etre appelee par l'utilisateur 15 : (voir operateurs TRIA et REMA). 16 : Elle implemente un algorithme topologique de génération ('TRIA') ou 17 : d'optimisation ('REMA') d'un maillage de simplex anisotrope du a T. 18 : Coupez et al. (voir bibliographie ci-apres) 19 : 20 : Commentaire : 21 : _____________ 22 : 23 : MAIL1 : maillage genere (type MAILLAGE) 24 : 25 : METR1 : si le mot-cle 'IPOL' est donne, METR1 (type CHPOINT) est 26 : la metrique interpolee sur le nouveau maillage MAIL1 27 : 28 : MAIL2 : bord du maillage a generer (type MAILLAGE) 29 : 30 : MAIL3 : maillage a optimiser (type MAILLAGE) 31 : 32 : MAIL4 : partie du bord de MAIL3 que le mailleur ne doit pas 33 : modifier (par defaut le mailleur peut retirer ou ajouter 34 : des noeuds sur les parties planes du bord de MAIL3) 35 : 36 : METR2 : objet de type FLOTTANT ou CHPOINT 37 : Si METR2 est de type FLOTTANT, il s'agit de la taille 38 : d'arete voulue (densite) 39 : Si METR2 est de type CHPOINT, il s'agit de l'inverse 40 : de la metrique voulue (unite : longueur^-2) 41 : 42 : TAB1 : objet optionnel de type TABLE dont les indices sont des 43 : parametres d'entree ou de sortie du mailleur 44 : Entree : 45 : -------- 46 : TAB1 . 'ipol_met' = 0..1 ; (0 par defaut) 47 : Interpolation de la metrique 48 : 0 : arithmetique 49 : 1 : geometrique 50 : TAB1 . 'bary_topo' = 0..1 ; (0 par defaut) 51 : Ajout d'un nouveau noeud 52 : 0 : isobarycentre 53 : 1 : quasi-barycentre dans la metrique 54 : TAB1 . 'impr' = 0..2 ; (0 par defaut) 55 : Niveau d'information 56 : TAB1 . 'graph' = faux..vrai ; (faux par defaut) 57 : Sortie de graphiques 58 : TAB1 . 'id_cas' = MOT1 ; 59 : Chaine de caracteres decrivant le cas 60 : TAB1 . 'max_iter' = ENTI1 ; (100 par defaut) 61 : Nombre d'iterations maximum de l'algorithme 62 : TAB1 . 'detect_cycling' = 0..1 ; (1 par defaut) 63 : Detecte-t-on le cyclage ? 64 : TAB1 . 'precrel_volume' = FLOT1 ; (1.D-11 par defaut) 65 : Precision relative en-dessous de laquelle un element 66 : est considere comme ayant un volume nul 67 : TAB1 . 'precrel_qualite' = FLOT1 ; (1.D-2 par defaut) 68 : Precision relative en-dessous de laquelle deux 69 : elements sont consideres comme ayant une qualite 70 : identique 71 : TAB1 . 'critquals' = enum (prog 2 10 3) (prog 2 10 1) ; 72 : (par defaut) 73 : Critere de qualite demande pour chaque passe de 74 : l'algorithme (voir description en remarque 3) 75 : TAB1 . 'nbpasses_rema' = 2 (par defaut) ; 76 : Nombre de passes pour le remaillage 77 : TAB1 . 'sort_mail_pass' = 0..1 ; (0 par defaut) 78 : Sortie de la sequence des maillages generes a chaque 79 : passe (a l'indice 'seqpass') 80 : TAB1 . 'sort_seqm' = 0..1 ; (0 par defaut) 81 : Sortie de la sequence des maillages generes par 82 : l'algorithme (a l'indice 'seqtopo') 83 : TAB1 . 'veri_seqm' = 0..1 ; (0 par defaut) 84 : Verifie la sequence des maillages generes par 85 : l'algorithme (debug) 86 : TAB1 . 'veri_opto' = 0..2 ; (0 par defaut) 87 : Niveau de verification (impr) dans l'operateur 88 : appele (OPTO) 89 : TAB1 . 'impr_opto' = 0..6 ; (default 0) 90 : Impressions (debug) dans l'operateur appele (OPTO) 91 : TAB1 . 'impr_segadj_opto' = 0..1 ; (0 par defaut) 92 : Impressions (debug) lors des ajustements de segments 93 : dans l'operateur appele (OPTO) 94 : Sortie : 95 : -------- 96 : TAB1 . 'curtopo' = MAIL1 ; 97 : Maillage courant obtenu par l'algorithme 98 : TAB1 . 'cycling_detected' = LOGI1 ; 99 : Cyclage detecte ou non 100 : TAB1 . 'seqtopo' = LMAIL1 ; 101 : Sequence de maillages obtenues par l'algorithme 102 : (type LISTOBJE) 103 : TAB1 . 'seqpass' = LMAIL2 ; 104 : Sequence de maillages obtenues a chaque passe par 105 : l'algorithme (type LISTOBJE) 106 : TAB1 . 'critquals_eff' = LLREEL ; 107 : Critere de qualite effectivement utilise pour chaque 108 : passe de l'algorithme. Il peut avoir ete modifie par 109 : rapport a celui demande pour des raisons de precision 110 : numerique 111 : TAB1 . 'dvol' = FLOT1 ; 112 : Difference entre le volume du maillage courant et le 113 : volume souhaite 114 : TAB1 . 'nnul' = ENTI1 ; 115 : Nombre d'elements du maillage courant ayant un volume 116 : nul 117 : TAB1 . 'miq' = FLOT1 ; 118 : Qualite minimum (cf. operateur INDI) des elements du 119 : maillage courant 120 : TAB1 . 'meq' = FLOT1 ; 121 : Qualite mediane des elements du maillage courant 122 : TAB1 . 'maq' = FLOT1 ; 123 : Qualite maximale des elements du maillage courant 124 : 125 : 126 : Remarques : 127 : ___________ 128 : 129 : 1) Si la metrique voulue est isotrope, le nom de composante est G. 130 : Si la metrique voulue est anisotrope, les noms des composantes 131 : sont : G11, G21, G22, (G31, G32, G33 en 3D) 132 : 133 : 2) Si le mot-clef 'AJNO' (par defaut) est donne, le mailleur peut 134 : generer de nouveaux noeuds. 135 : Si le mot-clef 'NOAJ' est donne, le mailleur ne genere pas de 136 : nouveaux noeuds. 137 : 138 : 3) Un critere de qualite est donne par 3 nombres dans un LISTREEL 139 : Nombre 1 : type du critere de qualite et de taille d'un element 140 : 0 = Coupez 141 : 1 = \prod_i l_i^2 / \sum_i l_i^2 142 : 2 = \prod_i l_i / \sum_i l_i 143 : 3 = \min l_i / \max l_i 144 : Nombre 2 : exposant p de la p-moyenne des l_i pour definir la 145 : taille moyenne d'un element 146 : Nombre 3 : exposant q utilise pour ponderer le critere de taille 147 : par rapport au critere de qualite 148 : Les l_i sont les valeurs propres de la transformation geometrique 149 : entre un element reel et un element de reference regulier dans 150 : la metrique voulue. 151 : 152 : 153 : Bibliographie : 154 : _______________ 155 : 156 : @article{author = {Coupez, Thierry}, 157 : title = {Generation de maillage et adaptation de maillage par 158 : optimisation locale}, 159 : journal = {Revue Européenne des Éléments Finis}, 160 : volume = {9}, number = {4}, pages = {403-423}, year = {2000}, 161 : doi = {10.1080/12506559.2000.10511454}} 162 : 163 : 164 : @PhdThesis{author = {Cyril Gruau}, 165 : title = {Generation de métriques pour adaptation anisotrope 166 : de maillage, application à la mise en forme des matériaux}, 167 : school = {ENSMP}, year = {2004}} 168 : 169 : @article{author = "Cyril Gruau and Thierry Coupez", 170 : title = "3D tetrahedral, unstructured and anisotropic mesh 171 : generation with adaptation to natural and multidomain metric", 172 : journal = "Computer Methods in Applied Mechanics and Engineering", 173 : volume = "194", number = "48 - 49", pages = "4951 - 4976", 174 : year = "2005", 175 : doi = "10.1016/j.cma.2004.11.020"} 176 :
© Cast3M 2003 - Tous droits réservés.
Mentions légales