Onboarding FEM Devs/pl: Difference between revisions
(Created page with "==Infrastruktura kodu MES==") |
(Created page with "Kod MES znajduje się w {{incode|src/Mod/Fem}}.") |
||
Line 41: | Line 41: | ||
==Infrastruktura kodu MES== |
==Infrastruktura kodu MES== |
||
Kod MES znajduje się w {{incode|src/Mod/Fem}}. |
|||
* {{incode|App/}} <small>console-mode application, defines basic structures and base classes for document objects, that are used by modules to build their own.</small> |
* {{incode|App/}} <small>console-mode application, defines basic structures and base classes for document objects, that are used by modules to build their own.</small> |
Revision as of 17:51, 29 July 2023
Opis
Na tej stronie nowi programiści dowiedzą się, jak skonfigurować swoje środowiska programistyczne, aby hakować w środowisku pracy MES.
Konfiguracja środowiska deweloperskiego
Do opracowania.
Wymagania wstępne
- Netgen
Zalecane
- Paraview
Kompilacja ze źródła
Do opracowania.
Kompilacja przez Docker
Do opracowania.
Zarządzanie kodem źródłowym
Utrzymanie aktualności FreeCAD jest udokumentowane na stronie Zarządzanie kodem źródłowym. Wraz z przydatnymi wskazówkami git
.
Infrastruktura kodu MES
Kod MES znajduje się w 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
A new FEM solver requires the following:
- Mesh exporter
- Results importer
- Solver object (needs changes in solver settings, unit tests, ObjectsFem modules as well)
- Task and writer module (here is where the main solver input writing happens)
- GUI tool to create a solver
- GUI preference tab to set the solver binary path
- A solver input writing unit test. Best to take the ccx cantilever. This is available for all mesh element types
- Having one or two beers
See also:
- Extend FEM Module
- The implementation efforts of the oofem solver
- The implementation efforts of the myStran solver
Writing Unit Tests
TBD
Informative
Related
- FEM bugs in the FreeCAD bugtracker
- Open FEM FIXME comments in the FreeCAD source code
- Open FEM TODO comments in the FreeCAD source code
- Original thread discussion for this wiki page
- FEM Workbench