Onboarding FEM Devs: Difference between revisions

From FreeCAD Documentation
Line 62: Line 62:
== Adding New FEM Solvers ==
== Adding New FEM Solvers ==



== Informative ==

* [[Wrapping a Cplusplus class in Python]]

== Related ==
== Related ==



Revision as of 00:20, 30 July 2021

Description

This page will orient new developers on how to setup their development environments in order to hack on the FEM workbench.

Setting up a Dev Environment

TBD

Prerequisites

  • Netgen

Recommended

  • Paraview

Compiling via Source

TBD

Compiling via Docker

TBD

Source Code Management

Keeping FreeCAD up-to-date is documented in Source code management page. Along with useful git tips.

FEM Code Infrastructure

The FEM code lives in src/Mod/Fem

  • App/ console-mode application, defines basic structures and base classes for document objects, that are used by modules to build their own.
  • Gui/ GUI-mode application, defines the 3D view, tools/functions used by workbench to interact with UI and 3D view, defines base classes for view providers.
  • 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

Coding Conventions

Please see coding_conventions.md file on the FreeCAD repository.

Adding New FEM Solvers

Informative

Related