FEM Maillage FEM à partir d'une forme avec Gmsh

From FreeCAD Documentation
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page is a translated version of the page FEM MeshGmshFromShape and the translation is 100% complete.

FEM Maillage FEM à partir d'une forme avec Gmsh

Emplacement du menu
Maillage → Maillage FEM à partir d'une forme de Gmsh
Ateliers
FEM
Raccourci par défaut
Aucun
Introduit dans la version
-
Voir aussi
FEM Tutoriel

Description

Pour une analyse par éléments finis, la géométrie doit être discrétisée en un maillage FEM. Cette commande utilise le logiciel Gmsh (qui doit être installé sur le système) pour générer le maillage.

En fonction de votre système d'exploitation et de votre paquetage d'installation, Gmsh peut être fourni avec FreeCAD ou pas. Pour plus d'informations voir FEM Installation des composants requis.

Utilisation

  1. Sélectionnez la forme que vous souhaitez analyser. Pour le volume FEM, il doit s'agir d'un solide ou d'un composé de solides (compsolid). Un composé de solides est nécessaire si votre pièce est composée de plusieurs matériaux. (Un composé de solides peut être créé avec la commande Part Fragments booléens.)
  2. Vous pouvez éventuellement modifier la taille minimale et maximale des éléments (l'autodétection crée souvent des maillages trop grossiers).
  3. Cliquez sur le bouton Appliquer et attendez que la génération du maillage soit terminée.
  4. Fermez la tâche. Vous devriez maintenant voir un nouvel objet FEMMeshGMSH dans votre conteneur d'analyse active.

Une fois que le maillage a été créé, vous pouvez modifier ses propriétés à l'aide de l'éditeur de propriétés. Après avoir modifié une propriété, vous devez rouvrir la boîte de dialogue Gmsh et cliquer sur le bouton Appliquer. (Vous pouvez laisser la boîte de dialogue ouverte pendant la modification des propriétés).

Propriétés

  • DonnéesAlgorithm2D : algorithme permettant de créer des maillages 2D. Les différents algorithmes sont expliqué ici. Pour Delaunay, voir triangulation de Delaunay.
  • DonnéesAlgorithm3D : algorithme de création de maillages 3D. Les différents algorithmes sont expliqué ici.
  • DonnéesCharacteristic Length Max : taille maximale des éléments du maillage. Si elle est définie sur 0.0, la taille sera définie automatiquement. Cette propriété peut également être modifiée dans le dialogue Gmsh dans le champ Max element size.
  • DonnéesCharacteristic Length Min : taille minimale des éléments du maillage. Si elle est définie à 0.0, la taille sera définie automatiquement. Cette propriété peut également être modifiée dans le dialogue Gmsh dans le champ Min element size.
  • DonnéesCoherence Mesh :
    • true (par défaut) ; les noeuds de maillage dupliqués seront supprimés.
    • false
  • DonnéesElement Dimension : dimension des éléments du maillage. Cette propriété peut également être modifiée dans le dialogue Gmsh dans le champ Mesh element dimension.
    • From Shape (par défaut) ; la dimension sera déterminée à partir de la dimension de l'objet maillé.
    • 1D
    • 2D
    • 3D
  • DonnéesElement Order : ordre des éléments de maillage. Cette propriété peut également être modifiée dans le dialogue Gmsh dans le champ Mesh order. introduit dans la version 0.20
    • 1er
    • 2ème (par défaut)
      Remarque: si vous utilisez le solveur Elmer, vous pouvez obtenir cette erreur : ERROR:: GetEdgeBasis: Can't handle but linear elements, sorry.. Cela signifie que l'équation du solveur ne peut pas gérer les mailles de 2ème ordre. Utilisez alors des mailles de 1er ordre, ou consultez la page Wiki de FreeCAD sur l'équation du solveur pour connaître les options possibles pour gérer les mailles de 2ème ordre.
  • DonnéesGeometrical Tolerance : tolérance géométrique pour que le maillage corresponde aux bords de l'objet. La valeur par défaut 0.0 signifie que la valeur par défaut de 1e-8 de Gmsh est utilisée.
  • DonnéesGroups Of Nodes : tous les noeuds et pas seulement les éléments seront sauvegardés pour chaque groupe physique de maillage. Les groupes physiques sont des collections d'entités de maillage (points, courbes, surfaces et volumes). Ils sont identifiés par leur dimension et par un tag. Par exemple, un maillage de la même région de l'objet est étiqueté de la même façon en interne. Ainsi, toutes les surfaces de cette région formeront un seul groupe physique.
  • DonnéesHigh Order Optimize : si et comment les maillages de DonnéesElement Order = 2nd sont optimisés. L'optimisation se fait par une déformation des bordures des éléments.
    introduit dans la version 0.20. Gmsh supporte différents algorithmes d'optimisation. Elastic est un algorithme dans lequel les éléments du maillage sont traités comme une collection de solides viscoélastiques déformables. Les maillages de 1er ordre ne peuvent pas être optimisés car les bords des éléments sont linéaires et ne peuvent pas être déformés.
  • DonnéesMesh Size From Curvature introduit dans la version 0.20 : nombre d'éléments de maillage par fois le rayon de la courbure. Pour obtenir un maillage plus fin au niveau des petits coins ou des trous, cette valeur peut être augmentée pour de meilleurs résultats

Effet de Mesh Size From Curvature; à gauche : réglé sur 12, à droite : désactivé

.

  • DonnéesOptimize Netgen : si le maillage sera optimisé à l'aide du générateur de maillage 3D Netgen pour améliorer la qualité des éléments tétraédriques. Remarque : comme Netgen ne peut créer que des éléments tétraédriques, cette option est ignorée pour les maillages dont la DonnéesElement Dimension n'est pas 3D.
  • DonnéesRecombination Algorithm introduit dans la version 0.20 : algorithme utilisé pour DonnéesRecombine 3D All et également pour DonnéesRecombine All. Pour plus d'informations, voir la section Recombinaison d'éléments et pour les détails techniques, voir la documentation Gmsh.
  • DonnéesRecombine 3D All introduit dans la version 0.20 : applique un algorithme de recombinaison 3D à tous les volumes. Les tétraèdres seront recombinés en prismes, hexaèdres ou pyramides si possible.
  • DonnéesRecombine All : applique un algorithme de recombinaison à toutes les surfaces. Les triangles seront recombinés en quadrangles si possible.
  • DonnéesOptimize Std : optimise le maillage pour améliorer la qualité des éléments tétraédriques.
  • DonnéesSecond Order Linear : option si les noeuds de second ordre (si DonnéesElement Order réglé sur 2nd) et/ou les points de raffinement du maillage sont créés par interpolation linéaire.
    • true ; l'interpolation linéaire est utilisée.
    • false (par défaut) ; l'interpolation curviligne est utilisée.
  • DonnéesSubdivision Algorithm introduit dans la version 0.22 : permet la création d'éléments quadrilatéraux et hexaédriques par subdivision.
    • None : n'utilise aucun algorithme de subdivision
    • All Quadrangles : crée des éléments quadrilatéraux par subdivision
    • All Hexahedra : crée des éléments hexaédriques par subdivision
    • Barycentric : crée des éléments triangulaires par subdivision barycentrique

Remarques

Jacobiens non positifs

Lorsque vous obtenez une erreur de maillage à cause de Jacobiens non positifs, vous pouvez essayer les stratégies suivantes :

  • Définissez DonnéesSecond Order Linear à true mais gardez DonnéesElement Order à 2nd.
  • Définissez DonnéesElement Order à 1st.
  • Utilisez une taille d'élément plus petite en réduisant DonnéesCharacteristic Length Max.
  • Si le solveur ccxtools est utilisé et que le bouton d'exécution est utilisé (pas le panneau des tâches), les nœuds des éléments jacobiens non positifs seront verts.

Croissance du maillage

Au niveau des bords et des petites entités géométriques, le maillage doit être plus petit que dans les zones sans bords. Ainsi, la taille des éléments du maillage augmente en s'éloignant des bords. La stratégie de croissance de Gmsh consiste à croître entre des bords de tailles différentes. La croissance échoue donc lorsqu'une zone a des bords de même taille, comme par exemple ce tube :

Échec de la croissance du maillage car la zone cylindrique est entourée par les mêmes bords.

Pour permettre une croissance raisonnable du maillage, vous devez dans ce cas ajouter un bord à la zone. Dans l'exemple, il s'agit d'un cercle au milieu du cylindre. Le cercle est ajouté dans le cadre d'un composé Part Fragments booléens (pour former un CompSolid), voir l'exemple de the project file.

Croissance notable du maillage grâce à l'arête supplémentaire au milieu de la région cylindrique

Recombinaison d'éléments

Les éléments peuvent être recombinés de deux manières, à la surface des objets de sorte que les triangles seront recombinés en quadrangles si possible et dans le volume des objets de sorte que les tétraèdres seront recombinés en prismes, hexaèdres ou pyramides si possible. En réfléchissant à la géométrie, il devient clair que le résultat de la recombinaison dépend fortement de la géométrie du corps et que la recombinaison d'un corps 3D uniquement à la surface conduira le plus souvent à des résultats étranges.

Pour illustrer cela, regardez l'image ci-dessous. Un corps cuboïde est maillé en utilisant les paramètres standards (tétraèdres, maillage de 2ème ordre). C'est la sous-image en haut à gauche. L'image en haut à droite montre le résultat, quand en plus les éléments sont recombinés seulement à la surface du corps. Le résultat est mauvais car les éléments de surface modifiés ne correspondent pas aux éléments de volume inchangés. Ainsi, DonnéesRecombine All seul n'a généralement de sens que pour les maillages 2D.
Si nous utilisons maintenant aussi DonnéesRecombine 3D All, le résultat est meilleur, voir la sous-image en bas à gauche. Cependant, le résultat ne montre pas une grande différence par rapport au maillage sans recombinaisons. Puisque notre corps est un cuboïde, il est donc judicieux d'utiliser un algorithme de recombinaison qui essaie de créer des cuboïdes également. Et ce résultat est montré dans la sous-image en bas à droite.

L'algorithme de recombinaison Simple laissera quelques triangles dans le maillage au cas où la recombinaison conduirait à des quads de mauvaise forme. Dans ce cas, utilisez un algorithme full-quad de recombinaison qui effectuera automatiquement un maillage plus grossier suivi de la recombinaison, du lissage et de la subdivision. Voir le sujet sur le forum

Effet de la recombinaison des éléments du maillage.
En haut à gauche : maillage standard.
En haut à droite : recombinaison uniquement en surface avec l'algorithme Simple.
En bas à gauche : recombinaison en surface et dans le volume avec l'algorithme Simple.
En bas à droite : recombinaison en surface et dans le volume avec l'algorithme Simple full-quad.