FEM Préparation de la géométrie et maillage

From FreeCAD Documentation
Revision as of 20:14, 11 January 2024 by David69 (talk | contribs) (Created page with "400px")
Other languages:
Tutoriel
Thème
Analyse par éléments finis
Niveau
Débutant
Temps d'exécution estimé
Non applicable
Auteurs
NewJoker
Version de FreeCAD
0.21 ou plus récente
Fichiers exemples
None
Voir aussi
None

Contexte

La préparation de la géométrie et le maillage sont des éléments cruciaux du prétraitement des simulations utilisant la méthode des éléments finis (FEM). Bien que les logiciels de simulation facilement accessibles et connectés à un environnement CAO (comme l'atelier FEM dans FreeCAD) rendent tentante la réalisation immédiate d'analyses sur de nouvelles conceptions, il est très important de se rappeler que la FEM est une méthode avancée et qu'elle nécessite une géométrie et un maillage correctement préparés afin de fournir des résultats raisonnables et précis. La vieille règle garbage in, garbage out est particulièrement importante ici. Il existe également d'autres paramètres cruciaux dont la précision de la FEM dépend fortement (tels que les propriétés des matériaux et les conditions aux limites), mais les premières étapes et certaines des sources de problèmes les plus courantes sont la préparation de la géométrie et le maillage, dont il est question sur cette page.

Types de géométrie utilisés pour la méthode des éléments finis dans FreeCAD

  • Lignes (polylignes) - utilisées pour les analyses avec des éléments de poutre
  • Surfaces - utilisées pour les analyses avec des éléments de coque
  • Solides - utilisés pour les analyses avec des éléments solides

Choix du type de géométrie

Bien que la plupart des conceptions soient constituées de solides, il est souvent fortement recommandé d'utiliser des polylignes ou des surfaces pour les éléments finis si la structure le permet :

  • Si une pièce est mince (longue et fine) et en forme de poutre et a une section transversale régulière de l'un des types de section de poutre actuellement supportés (rectangulaire, circulaire ou tube), elle doit être analysée à l'aide d'éléments de poutre (à moins qu'il n'y ait des formes spécifiques de charge, de réponse ou des détails géométriques inévitables qui invalident cette supposition). Fondamentalement, il faut dessiner une ligne centrale (des conseils sur la manière de l'extraire d'une géométrie solide existante peuvent être trouvés dans ce fil de discussion) et appliquer une section de poutre appropriée avec une éventuelle rotation. Il n'y a pas de règle unique dictant quand les éléments de poutre peuvent être utilisés, mais il est souvent conseillé que les dimensions de la section transversale soient < 1/10 de la longueur de la pièce pour que l'hypothèse de la poutre soit valide.

Pièce mince convenant à l'analyse avec des éléments de poutre - axe central mis en évidence

  • Si une pièce a des parois minces (comme les pièces en tôle), elle doit être analysée à l'aide d'éléments de coque (sauf si des résultats de contact précis sont nécessaires ou si certaines limites des éléments de coque sont rencontrées). Ce point est très important et souvent négligé. Pour obtenir des résultats précis (en particulier en cas de flexion), il faut quelques éléments (au moins 3 à 5) dans la direction de l'épaisseur. Dans le cas de pièces à parois minces, cela se traduit généralement par de grandes mailles (en particulier lorsque des tétraèdres sont utilisés, car les éléments hexaédriques ne peuvent pas être générés dans FreeCAD) et un coût de calcul élevé - puissance informatique élevée et long temps de résolution. Pour obtenir une géométrie adaptée à l'analyse avec des éléments coques, il faut dessiner une surface médiane de la pièce (des conseils sur la manière de l'extraire d'une géométrie solide existante peuvent être trouvés dans ce fil de discussion, celui-ci et celui-ci) et appliquer une épaisseur appropriée. Là encore, il n'y a pas de règle unique, mais il est généralement recommandé que l'épaisseur soit < 1/10 d'une dimension globale typique (longueur/largeur) pour que l'hypothèse de la coque soit valide.

Pièce à paroi mince adaptée à l'analyse avec des éléments de coque - mise en évidence de la surface médiane

Il convient de rappeler que les éléments de poutre et de coque utilisés dans CalculiX ne sont pas de véritables éléments de poutre/coque (ils n'utilisent pas les formulations d'éléments de poutre/coque connues dans la littérature et dans d'autres logiciels) - ils sont étendus de manière interne aux solides. Néanmoins, leur utilisation est recommandée dans les cas susmentionnés.

Validité de la géométrie

La géométrie utilisée pour la simulation par éléments finis doit être valide. Plus important encore, il ne doit pas y avoir d'intersections. Il s'agit d'un problème courant qui survient souvent lorsque des assemblages sont modélisés sans contraintes appropriées entre les pièces. L'outil Part Coupe persistante peut aider à trouver de telles interférences entre les pièces. Bien entendu, l'outil Part Union peut aider à les résoudre si elles sont intentionnelles. D'autres problèmes liés à la géométrie (tels que les géométries non pliantes, les arêtes ou faces redondantes, etc.) doivent également être résolus avant de procéder au maillage. L'outil Part Vérifier la géométrie peut être utile, mais les contrôles visuels sont également importants. Lors de la préparation d'une simulation utilisant des éléments solides et en cas de doute quant à savoir si la pièce est réellement solide ou s'il s'agit simplement d'une coque fermée, les outils susmentionnés (Part Coupe persistante et l'onglet Contenu de la forme de Part Vérifier la géométrie) peuvent permettre de clarifier la situation.

Simplification de la géométrie

Les designs préparés dans les logiciels de CAO sont généralement trop détaillés pour être adaptées aux simulations par éléments finis. Dans de nombreux cas, il est nécessaire de les simplifier au préalable. Cette étape est souvent négligée, mais elle est très importante car il peut être difficile d'obtenir un bon maillage lorsque la pièce est trop détaillée et même si un tel maillage est finalement obtenu, il peut être très dense, ce qui entraîne des temps de résolution déraisonnables. Il faut donc toujours examiner la conception et essayer de la simplifier autant que possible, en ne laissant que les caractéristiques géométriques qui peuvent avoir un impact significatif sur les résultats (résistance/rigidité) et qui ne peuvent donc pas être ignorées. Les caractéristiques suivantes sont généralement omises

  • les petits congés et chanfreins,
  • petits trous,
  • autres petits détails,
  • soudures,
  • boulons, filetages,
  • les éléments décoratifs (logos, gravures).

L'outil Part Supprimer la fonctionnalité et l'extension Defeaturing peuvent être utiles pour simplifier les pièces pour les simulations.

Original bracket geometry

Bracket geometry simplified using only the Part Defeaturing tool

In the case of assemblies (more about them in one of the next sections), often some parts can be excluded from simulations and replaced with boundary conditions if they were attached to parts being analyzed. Such approach is valid if the excluded parts are significantly stiffer (in terms of structural stiffness so considering not only elasticity of the material but also geometry of the part) than the analyzed parts to which they were connected. That's because fixed boundary conditions introduce rigidity (as if the analyzed part was attached to an infinitely stiff component) and flexible supports (like springs) are not available in FreeCAD FEM.

Geometry simplification for FEM may also mean cutting it in one of the symmetry planes to make use of the planar symmetry assumption in the analysis. This assumption is valid only when all the following aspects of the model exhibit symmetry in a given plane:

  • geometry,
  • loads,
  • boundary conditions,
  • response (one has to be careful with frequency/buckling analyses utilizing symmetry - antisymmetric mode shapes won't be obtained).

The use of symmetry (1/2, 1/4 or 1/8 of the model) is recommended whenever possible since it can highly reduce the computational cost of the analysis. Another advantage is that it eliminates some rigid body motions, making it easier to constrain the part. A symmetry boundary condition should be applied to the faces belonging to the plane of the cut:

  • translation in the direction normal to the symmetry plane should be blocked for solid parts,
  • translation in the direction normal to the symmetry plane and rotations other than around the axis normal to the symmetry plane should be blocked for shell and beam parts.

Applied force should be properly reduced if the symmetry plane cuts the region to which the force is applied (irrelevant when pressure load is used).

Model of 1/8 of a cylindrical pressure vessel with symmetry boundary conditions and internal pressure load

Geometry partitioning

So-called partitioning is a division of the geometry into smaller segments. In other software, it's commonly used to allow hex meshing but in FreeCAD it can be useful for other reasons too. The main application of partitioning is when a load (or a boundary condition) has to be applied only to a selected region of the part's surface. The easiest way to achieve it is to create a sketch with a proper contour on that face and use the Part Boolean Fragments tool to split the face with the sketch. Another reason for partitioning is when multiple materials have to be applied to a single part (without having to use multiple parts connected with each other). Then partitioning can be done using a datum plane and Boolean Fragments tool with the Compsolid mode.

Part with a face partition for load or boundary condition application

Assembly geometries

One of the current major limitations of the FEM workbench is that multiple meshes are not supported. In practice, this means that one cannot mesh each part of the assembly individually and then connect the parts with proper constraints for the analysis. Instead, it's necessary to create a single object containing all the parts of the assembly and mesh it. There are several different options here, all relying on Part boolean tools. The choice depends on the desired effect - whether the individual parts/volumes and their boundaries should be selectable (e.g. for material assignments or definitions of boundary conditions acting on internal faces) or not:

  • Part Fuse - merges the parts, making it impossible to select them individually e.g. for material definitions,
  • Part Compound - creates a compound object, making it possible to select individual parts,
  • Part JoinConnect - works like Part Fuse, merges the parts, making it impossible to select them individually,
  • Part BooleanFragments - works like Part Compound, making it possible to select individual parts.

It's important to mention that if the parts are touching, a continuous mesh will be created on the boolean object and no constraints will be needed for the simulation. If there's even a small gap between the parts, the mesh won't be continuous and constraints like tie or contact will be needed. Running a frequency analysis is a good way to reveal if the mesh is continuous or not - if the parts are not connected, the first mode shapes with deformation visualized using Warp filter will show separation - the parts will "fly away".

The first mode shape of a frequency analysis visualized with the Warp filter - two cubes with a small initial gap were analyzed

Selection of internal regions (faces/volumes) can be tricky. It might be needed for the application of different materials, body loads or boundary conditions (especially in thermal and electromagnetic analyses). Several ways are possible:

  • enabling clipping plane for the time of selection and picking internal faces,
  • hiding the boolean object, showing only one of the parts it was applied to and selecting it,
  • selecting another, external object and editing the References property in the Data tab of a given analysis feature (requires manual specification of the geometric object's number).

Meshing basics

Too coarse mesh is one of the most common sources of inaccuracies and other issues in FEM. It's often a partial fault of automatic mesher settings - they typically generate very coarse, unsuitable meshes when the element size is not manually specified but left with a default value. One should always know the approximate dimensions of the part, especially the size of the smallest relevant feature (Part Measure Linear tool can help with that) and specify the proper maximum element size based on that. It's better to start with a coarser mesh (taking less time to generate), see what it looks like (some experience is necessary) and refine it if necessary. It often makes sense to use dense mesh only around the areas of interest (locations with large stress gradients/concentrations - notches) and relatively coarse mesh away from them. This way, the number of elements can be significantly reduced, leading to shorter solving times. Local mesh refinement is defined using FEM MeshRegion.

Default, too coarse mesh

Globally refined mesh

Locally refined mesh

The choice of element type is not easy and depends on many factors but the general rule is that hexahedral and quad elements are preferable over tetrahedral and triangular ones. However, complex geometries can't be meshed with hexahedral elements and FreeCAD can't generate them at all (only quad meshes can be generated on surfaces - see this forum thread). Hexahedral elements can be imported from external meshers like Gmsh and used in the FEM workbench as shown in this video.

The choice of element order (first or second) depends on the analysis conditions but in most cases, second-order elements are preferred. This is particularly the case with triangular and tetrahedral elements - their first-order (linear) versions are normally not recommended for regular usage and they should be used only as filler elements in regions of low importance. However, since FreeCAD can't generate hexahedral elements, linear tetrahedrons can be used in some cases, if the meshes are dense enough. Especially when performing analyses with contact.

Mesh convergence studies

Mesh convergence studies are recommended in all serious projects requiring accurate results. The reason is that the results can change a lot, approaching correct values when the mesh is refined. The following approach should be used:

  1. After obtaining the first results and noting them (usually maximum von Mises stress, von Mises stress at a given location and maximum displacement), refine the mesh (globally or better locally - with FEM MeshRegion) and rerun the simulation.
  2. Check the results and note their new values. If they differ significantly from the initial results, refine the mesh further and rerun the analysis.
  3. Repeat the process if the results still change (usually grow) significantly with mesh refinement.

It usually helps to create a plot with a given result vs mesh density. This way it's easier to notice when the results start to converge. The acceptable difference in results between two runs is usually around a few percent (e.g. below 5%).

In some cases, it may happen that the maximum stress will be growing indefinitely regardless of how dense the mesh will be. Such a non-physical effect is known as a stress singularity. It may occur due to the following reasons:

  • concentrated forces applied to solid and shell models,
  • boundary conditions applied to points (individual nodes),
  • sharp corners,
  • contact occurring at a corner.

Typical ways of dealing with stress singularities are:

  • applying loads and boundary conditions to small areas instead of points - see the section about partitioning above,
  • adding small fillets to sharp corners (an exception to the rule of omitting small fillets when simplifying the geometry for FEM),
  • including plasticity in material behavior to enable stress redistribution and limit the stresses to values allowed by the plasticity definition while observing the proper level of yielding (plastic strain),
  • ignoring singularities and reading stresses away from them if possible (based on St. Venant’s Principle).

Typical mesh convergence plots - displacement (green curve) converges quickly, maximum stress at a notch like a hole (blue curve) needs more iterations of mesh refinement to converge while maximum stress at a sharp corner with a fixed boundary condition (red curve) doesn't converge at all - stress singularity occurs and a small fillet would have to be added and the connection would have to be modeled in more realistic, flexible way to avoid this behavior.