FEM Install: Difference between revisions
(Removed Other section. It doesn't add meaningful information that is already covered above.) |
(To be able to perform finite element analysis (FEA)) |
||
Line 2: | Line 2: | ||
<translate> |
<translate> |
||
== Introduction == <!--T:1--> |
== Introduction == <!--T:1--> |
||
To be able to |
To be able to perform finite element analysis (FEA) using the [[Fem_Workbench|FEM Workbench]] FreeCAD makes use of two external programs: one is used for generating the [[FEM Mesh]] and the other for solving the system of equations. You can test if your FreeCAD installation is ready for FEA by loading and analyzing the [[FEM CalculiX Cantilever 3D]] example which is included with every installation since FreeCAD 0.17. |
||
===== FEM solver ===== <!--T:2--> |
===== FEM solver ===== <!--T:2--> |
Revision as of 17:37, 4 April 2019
Introduction
To be able to perform finite element analysis (FEA) using the FEM Workbench FreeCAD makes use of two external programs: one is used for generating the FEM Mesh and the other for solving the system of equations. You can test if your FreeCAD installation is ready for FEA by loading and analyzing the FEM CalculiX Cantilever 3D example which is included with every installation since FreeCAD 0.17.
FEM solver
For solving the system of equations, CalculiX is the default solver. FreeCAD writes a CalculiX input file, starts the solver, and reads the output. This means the CalculiX binary is standalone and independent from FreeCAD. Because of this and since there are more possibilities to get a mesh it is recommended to install the solver first.
FEM mesh generator
In order to create a FEM Mesh, FreeCAD uses Netgen as the default mesher. For this to work, FreeCAD needs to be compiled against the Netgen libraries. Another common mesher that can be used is GMSH, which needs to be installed separately. See FEM Mesh for various possibilities of obtaining a mesh.
Installation of external software
Windows
The FreeCAD packages available from the download page already include Netgen and CalculiX, so no additional software needs to be installed.
Linux
Linux distributions package software in their own repositories. Look for the packages netgen
and calculix-ccx
or ccx
in your package manager.
Ubuntu PPA
The freecad-stable and freecad-daily personal package archives (PPA) provide a more recent version of FreeCAD than is available in the Ubuntu repositories. These PPAs include the most recent netgen
and calculix-ccx
packages as well. See Install on Unix for more information on setting up the repositories.
If the PPA is already added to your system, install the packages as follows
sudo apt-get install netgen
sudo apt-get install calculix-ccx
The freecad-community PPA also provides netgen
and calculix-ccx
packages for testing. If they are stable enough, they will be migrated to the daily or stable builds.
For developers: the thread Ubuntu Repository discusses the creation of the Ubuntu PPA packages. At the time it was written, CalculiX was not included in the Debian repositories, so there were several personal packages in Launchpad. Only one package should be installed at one time.
CalculiX
Since CalculiX is a standalone software you either can install a CalculiX binary or compile CalculiX yourself. Any CalculiX version from 2.7.X works with FreeCAD. Since there hasn't been much changes in CalculiX resently lower versions than 2.7.X might work as well.
Install CalculiX Binary
There are only a few Linux Distributions which are known to have CalculiX Packages in their Repositories. Following a list:
- Arch Linux:
- Debian 09 Buster:
- Debian packages are outdated, thus https://forum.freecadweb.org/viewtopic.php?f=18&t=31360&start=10#p279925
- Debian 08 Stretch:
- https://packages.debian.org/stretch/calculix-ccx
- Debian packages are outdated, thus https://forum.freecadweb.org/viewtopic.php?f=18&t=31360&p=279925#p260872
- Debian 07 Jessie:
- The packages of Debian Stretch can be installed by dpkg see FreeCAD forum
- CalculiX binary from ccx website:
- On the CalculiX Website it is possible to download a generic Linux binary of CalculiX. Check out http://www.dhondt.de/ Since any Linux Distribution could have different library paths it is likely possible this binary will not work out of the box at your linux distribution.
- Fedora 21:
- http://forum.freecadweb.org/viewtopic.php?f=18&t=10140
- for newer fedora versions see how to compile CalculiX, there is a script out there.
- Some bash commands that may help too
Compile CalculiX
Compiling CalculiX is not as easy as it is with many OpenSource software. There are many different resources at FreeCAD forum and the internet. Check out the following:
- Debian
- Fedora 27, 28, 29
- There is a CMake Repository on github, but at FreeCAD forum noone has reported if this one works
Netgen
There have been mixed results with the Netgen mesher and the compilation of FreeCAD with Netgen support.
- ToDo
Further Informations
The FreeCAD forum is a very good resource for informations in this regard. Check out google search on FreeCAD forum page by :
OSX
The OSX development packages of FreeCAD 0.17.xxxxx do include Netgen [1] but they do not include CalculiX.
CalculiX
See this forum post FreeCAD Fem on OSX how to install CalculiX on OSX Following informations might be outdated:
- Materials: Solid, Fluid, Nonlinear mechanical, Reinforced (concrete); Material editor
- Element geometry: Beam (1D), Beam rotation (1D), Shell (2D), Fluid flow (1D)
Constraints
- Electromagnetic: Electrostatic potential, Current density, Magnetization
- Geometrical: Plane rotation, Section print, Transform
- Mechanical: Fixed, Displacement, Contact, Tie, Spring, Force, Pressure, Centrif, Self weight
- Thermal: Initial temperature, Heat flux, Temperature, Body heat source
- Overwrite Constants: Constant vacuum permittivity
- Solve: CalculiX Standard, Elmer, Mystran, Z88; Equations: Deformation, Elasticity, Electrostatic, Electricforce, Magnetodynamic, Magnetodynamic 2D, Flow, Flux, Heat; Solver: Solver control, Solver run
- Results: Purge, Show; Postprocessing: Apply changes, Pipeline from result, Warp filter, Scalar clip filter, Function cut filter, Region clip filter, Contours filter, Line clip filter, Stress linearization plot, Data at point clip filter, Filter function plane, Filter function sphere, Filter function cylinder, Filter function box
- Additional: Preferences; FEM Install, FEM Mesh, FEM Solver, FEM CalculiX, FEM Concrete; FEM Element Types
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub