FEM Mesh/de

Ein Finite-Elemente-Netz erstellen
Die Finite-Elemente-Analyse (FEA) wird auf einem Polygonnetz durchgeführt, das aus mehreren drei- und vierseitigen finiten Elementen besteht, die einen Originalkörper unterteilen. Je feiner das Netz ist, desto genauer sind die numerischen Ergebnisse, aber desto größer ist auch die Berechnungszeit. Ein Gleichgewicht zwischen der Größe des Netzes, der Berechnungszeit und der Genauigkeit der Ergebnisse ist ein wichtiges Merkmal einer gut definierten Finite-Elemente-Analyse.

Es gibt verschiedene Möglichkeiten, ein Polygonnetz im Arbeitsbereich FEM einzurichten:
 * Das Werkzeug FEM mesh from shape by Gmsh aus der grafischen Benutzeroberfläche.
 * Das Werkzeug FEM mesh from shape by Netgen aus der grafischen Benutzeroberfläche.
 * Importieren eines Polygonnetzes aus einem anderen Programm. Insbesondere können Gmsh und Netgen außerhalb von FreeCAD allein verwendet werden, um Volumenkörper wie Step Dateien zu vernetzen.
 * Manuelle Erstellung des Netzes durch Python-Skripte.

Die Gmsh und Netgen Werkzeuge unterstützen die Vernetzung von Körpern, die mit den Arbeitsbereichen Part und PartDesign erstellt wurden, sowie einfache Kopien dieser Körper. Im Allgemeinen kann jeder Arbeitsbereich, der Volumenkörper erzeugt, wie z.B. der Arbeitsbereich Arch, als Grundlage für die Erstellung von Polygonnetzen verwendet werden. Beachte, dass sich ein für die FEA verwendetes Netz von einem Netz unterscheidet, das mit dem Arbeitsbereich Mesh erstellt oder importiert wurde.





Die Gmsh- und Netgen-Werkzeuge sind einfach anzuwendende Werkzeuge, um einen Körper schnell zu vernetzen, und besitzen nicht den vollen Funktionsumfang dieser Programme; sie erzeugen normalerweise Dreiecksnetze, die für manche Arten von Analysen nicht ideal sind. Wird mehr Kontrolle über das erstellte Netz gebraucht (nur Vierecke verwenden, genaue Elementanzahl und -Größe, variable Auflösung des Netzes, usw.), sollten diese Programme extern verwendet, eine Netzdatei in einem unterstützten Format erzeugt und diese Datei in FreeCAD importiert werden.

Zuvor war Netgen in FreeCAD enthalten und konnte sofort verwendet werden. Nun sollten sowohl Netgen als auch Gmsh installiert werden, bevor sie vom Arbeitsbereich FEM verwendet werden können. Siehe FEM Installation für Anleitungen.

Netzerstellungssoftware
Netzerstellungssoftware arbeitet mit Festkörpern, die in verschiedenen Formaten vorliegen können, wie Step und Brep. Diese Programme können unabhängig von FreeCAD verwendet werden und verfügen typischerweise Über viele Optionen zur Steuerung der Vernetzungsalgorithmen, der Elementgröße und der Randbedingungen.

Der Arbeitsbereich FEM hat einfache Kommunikationsoberflächen entwickelt, um Gmsh und Netgen direkt in FreeCAD zu verwenden. Andere Programme haben keine Oberfläche, aber das könnte sich in Zukunft ändern, wenn Interesse in der Gemeinschaft besteht und wenn diese Anwendungen leicht zu integrieren sind. Die Netzerstellungssoftware darf nur dann zusammen mit FreeCAD kompiliert und verteilt werden, wenn ihre Lizenz mit der LGPL2-Lizenz kompatibel ist; andernfalls muss das Programm als externe Binärdatei verwendet werden, wie z.B. Gmsh (GPL2).

Oberfläche in FreeCAD implementiert

 * Gmsh: Hauptwebseite, Code Repositorium
 * Netgen: Hauptwebseite, Code Repositorium

Keine Oberfläche in FreeCAD

 * ENigMA,, Code Repositorium
 * libMesh, Hauptwebseite, Code Repositorium, Forumsbeitrag; es ist ein sehr aktives Projekt, und es ist nur C++
 * PythonOCC, Haupt-Webseite
 * SnappyHexMesh, Hauptwebseite
 * Tetgen, Hauptwebseite

Netzelemente in FreeCAD
FreeCAD unterstützt verschiedene Elementtypen. Der folgende Artikel erklärt den Unterschied zwischen ihnen und wann sie verwendet werden sollten (engl.): Meshing Your Geometry: When to Use the Various Element Types.


 * NI" bedeutet, dass der Elementtyp in FreeCAD nicht implementiert ist, aber das Format ihn unterstützen würde.
 * Edit_Cancel.svg bedeutet, dass die Formatspezifikation diesen Elementtyp nicht unterstützt, so dass FreeCAD ihn nicht unterstützen kann.
 * "?" bedeutet, dass es nicht bekannt ist, ob das Format diesen Elementtyp unterstützt.

FEM Elementtypen
Mehr Informationen über die Elemente und ihre Datenstruktur in FreeCAD kann in FEM Elementtypen gefunden werden.

Ein FEM-Netz komplett in Python erstellen
FreeCAD Grundlagen Skripten.

Die Python API ermöglicht dem Benutzer ein Finite Element Netz festzulegen, durch direktes hinzufügen einzelner Knoten und festlegen von Kanten, Flächen und Volumen.

Das Netz selbst ist vom Typ, das an ein entsprechendes Dokumentobjekt vom Typ angehängt werden muss.

Erstellen eines Netzes mit einem Tet-10 Element
Erstelle ein leeres FemMesh, bestücke es mit Knoten, erstelle das Volumen und rufe schließlich auf, um das Dokumentobjekt mit dem zugehörigen Netz zu erstellen.

Wenn du eine vordefinierte Knoten- und Elementnummerierung wünschst, übergib die entsprechende ID an die Knoten- und Volumen Methoden

Um ein aktuelles Dokumentobjekt zu erstellen, kannst du anstelle von auch die Methode document  verwenden; hänge dann das erstellte Netz an das  Attribut dieses Objekts an.

Visuelle Eigenschaften
Sobald ein FemMesh Objekt mit erstellt wurde, können einige seiner visuellen Eigenschaften durch Ändern der verschiedenen Attribute seines  geändert werden. Dies kann nützlich sein, um das Netz nach einer Finite Elemente Lösung nachzubearbeiten.

Heben Sie einige Knoten im Netz hervor

Die einzelnen Elemente eines Netzes können durch die Übergabe eines Wörterbuchs mit den entsprechenden Paaren modifiziert werden

Setze das Volumen 1 auf rot

Setzt man die Knoten 1, 2 und 3 auf unterschiedliche Farben, erhält die Fläche dazwischen eine daraus errechnete Farbe.

Displace the nodes 1 and 2 by the magnitude and direction defined by a vector.

Double the factor of the displacement shown. 

Shell, 3 node triangle, tria3 (linear)
Add a face with the element number.

Shell, 6 node triangle, tria6 (quadratic)
Add a face with the element number.

Shell, 4 node quadrangle, quad4 (linear)
Add a face with the element number.

Shell, 8 node quadrangle, quad8 (quadratic)
Add a face with the element number.

Volume, 4 node tetrahedron, tetra4 (linear)
Add a volume with the element number.

Volume, 10 node tetrahedron, tetra10 (quadratic)
Add a volume with the element number.

Volume, 8 node hexahedron, hexa8 (linear)
Add a volume with the element number.

Volume, 20 node hexahedron, hexa20 (quadratic)
Add a volume with the element number.

Volume, 6 node pentahedron, penta6 (linear)
Add a volume with the element number.

Volume, 15 node pentahedron, penta15 (quadratic)
Add a volume with the element number.

Volume, 5 node pyramid, pyra5 (linear)
Add a volume with the element number.

Volume, 13 node pyramid, pyra13 (quadratic)
Füge ein Volumen mit der Elementnummer hinzu.

Scripting examples for groups
See for example https://forum.freecadweb.org/viewtopic.php?f=18&t=37304&start=20#p318823