Jump to content

Einführung für FEM-Entwickler

From FreeCAD Documentation
This page is a translated version of the page Onboarding FEM Devs and the translation is 100% complete.

Beschreibung

Diese Seite dient als Orientierungshilfe für neue Entwickler, um ihre Entwicklungsumgebung für das Bearbeiten des Arbeitsbereichs FEM anzupassen.

Eine Entwicklungsumgebung anlegen

TBD

Voraussetzungen

  • Netgen

Empfohlen

  • Paraview

Kompilieren über die Quelle

in Arbeit...

Kompilieren über Docker

in Arbeit...

Quellcodeverwaltung

Wie man FreeCAD auf dem neuesten Stand hält, ist auf der Seite Quellcodeverwaltung dokumentiert. Dort findet man auch nützliche git-Tipps.

FEM-Code-Infrastruktur

Der FEM-Code befindet sich in src/Mod/Fem.

  • App/ Konsolen-Modus-Anwendung, definiert grundlegende Strukturen und Basisklassen für Dokumentobjekte, die von Modulen zum Erstellen eigener Objekte verwendet werden.
  • Gui/ GUI-Modus-Anwendung, definiert die 3D-Ansicht, vom Arbeitsbereich verwendete Werkzeuge/Funktionen für die Interaktion mit der Benutzeroberfläche und der 3D-Ansicht, definiert Basisklassen für Viewprovider.
  • femcommands/
  • fem.dox
  • femexamples/
  • femguiobjects/
  • femguiutils/
  • feminout/
  • femmesh/
  • femobjects/
  • femresult/
  • femsolver/
  • femtaskpanels/
  • femtest/
  • femtools/
  • femviewprovider/
  • InitGui.py
  • Init.py
  • ObjectsFem.py
  • TestFemApp.py
  • TestFemGui.py

Codierungskonventionen

Man beachte die Datei coding_conventions.md im FreeCAD-Repository.

Neue FEM-Löser hinzufügen

Ein neuer FEM-Löser erfordert Folgendes:

  • Mesh-Exporter
  • Ergebnis-Importer
  • Löser-Objekt (erfordert Änderungen an den Löser-Einstellungen, Unit-Tests und ObjectsFem-Modulen)
  • Aufgaben- und Schreibmodul (hier erfolgt das Schreiben der wichtigsten Löser-Eingaben)
  • GUI-Tool zum Erstellen eines Lösers
  • GUI-Einstellungsregisterkarte zum Festlegen des Löser-Binärpfads
  • Ein Unit-Test zum Schreiben der Löser-Eingabe. Am besten nimmt man den CCX-Ausleger. Dieser ist für alle Netzwerkelementtypen verfügbar.
  • Ein oder zwei Bier trinken

Siehe auch:

Unit-Tests schreiben

in Arbeit...

Informationen

Verwandt