======= Commit 2014-07-11 ======= ====== Composites UD, test d'indentation ====== ===== Composites ===== Un modèle de pli composite unidirectionnel de type Cachan a été implanté à l'occasion du TFE de Pierre Joris. Le modèle utilise la classe de base ''DamageEpIsoHOrthoHypoMaterial'' combinée avec le nouveau modèle d'endommagement ''UDCompositeDamage'', qui fonctionne de la même façon que ''WovenCompositeDamage''. Les classes relatives à l'endommagement des composites ont été un peu remaniées. Un bug détecté par Pierre dans le calcul des variables d'endo a été corrigé. ===== Test d'indentation ===== Un test 2D de nano-indentation réalisé dans le cadre d'ABRAWAL a été ajouté dans ''apps/rupture''. Un poinçon descend dans un matériau polyester endommageable contenant une inclusion en aluminium-silicium. Le maillage a été réalisé avec ''Gmsh'' en utilisant le nouveau mailleur quadrangulaire, avec la définition d'une carte de taille du maillage au moyen de boîtes. Ce test a nécessité des modifications mineures au code : - introduction d'un critère de rupture asymétrique, ''IFAsymRuptureCriterion'', qui ne rompt l'élément que si ce dernier n'est pas sollicité en compression. Ca évite les situations où un outil en contact avec un matériau endommageable détruit successivement tous les éléments, alors que ceux-ci devraient conserver une certaine résistance en compression. - changements dans ''gmsh.py'' pour résoudre un problème posé par ''Gmsh'' lorsqu'on crée des maillages 2D. L'orientation des éléments est en effet arbitraire (normale orientée vers les Z positifs ou négatifs au petit bonheur). J'ai introduit la possibilité de vérifier l'orientation et de retourner l'élément si nécessaire : from toolbox.gmsh import GmshImport GmshImport( 'geometry.geo', domain ).execute2D() J'en ai profité pour réécrire une partie du fichier afin de le rendre plus lisible. ===== Remarques ===== Les temps CPU sur Thorgal diffèrent fortement pour certains cas-tests, sans que ce soit le cas sur les autres machines. ===== Fichiers ajoutés/supprimés ===== A oo_meta/apps/rupture/html A oo_meta/apps/rupture/html/indentation.png A oo_meta/apps/rupture/html/index.html A oo_meta/apps/rupture/indentation.geo A oo_meta/apps/rupture/indentation.py A oo_meta/mtElements/rupture/IFAsymRuptureCriterion.cpp A oo_meta/mtElements/rupture/IFAsymRuptureCriterion.h A + oo_meta/mtMaterialLaws/damage/CompositeDamageGpState.cpp A + oo_meta/mtMaterialLaws/damage/CompositeDamageGpState.h A oo_meta/mtMaterialLaws/damage/UDCompositeDamage.cpp A oo_meta/mtMaterialLaws/damage/UDCompositeDamage.h D oo_meta/mtMaterialLaws/damage/WovenCompDamageGpState.cpp D oo_meta/mtMaterialLaws/damage/WovenCompDamageGpState.h --- //[[geoffrey.deliege@ulg.ac.be|Geoffrey Deliége]] 2014/07/11 //