FEM Install/fr: Difference between revisions

From FreeCAD Documentation
(Created page with "FEM Install")
 
No edit summary
 
(135 intermediate revisions by 7 users not shown)
Line 1: Line 1:
<languages/>
=== Introduction ===
To be able to do a Finite Element Analysis (FEA) using the [[Fem_Workbench | FEM Worbench]] FreeCAD makes use of two external programms. One is used for generating the FEM-Mesh and the other for solving the system of equations. If your FreeCAD is set up to do mechanical Finite Element Analysis’s could be checked easily by loading and analyzing an example file. See [[FEM_CalculiX_Cantilever_3D]]


{{TOCright}}
====== FEM Solver ======
For solving the system of equations CalculiX is used. See http://www.calculix.de/ FreeCAD writes an CalculiX input file starts CalculiX and reads the output of CalculiX. It means CalculiX binary is standalone and independent from FreeCAD. Because of this and since there are more possibilities to get a valid FEM-Mesh it is recommended to install the Solver first. Up To date (mid 2015) CalculiX is the only supported Solver of the FEM module.


== Introduction ==
====== FEM Mesh Generator ======
As meshing tool to create a FEM-Mesh netgen is used. See https://sourceforge.net/projects/netgen-mesher/ To use Netgen in FEM module FreeCAD needs to be compiled against netgen libraries. Apart from Netgen a common way to create a FEM Mesh is the use off [[Macro_GMSH | GMSHMacro]]. Check out [[FEM_Mesh#Create_a_FEM_Mesh]] for the various possibilities to create an FEM Mesh in FreeCAD.


Pour pouvoir effectuer une analyse par éléments finis (FEA) dans l'{{KEY|[[Image:Workbench_FEM.svg|24px]] [[FEM_Workbench/fr|atelier FEM]]}}, FreeCAD utilise deux programmes externes : l’un est utilisé pour générer le [[FEM_Mesh/fr|FEM Mesh]], l’autre pour la résolution numérique du analyse réelle. Vous pouvez tester si votre installation FreeCAD est prête pour une FEA en exécutant l’exemple [[FEM_CalculiX_Cantilever_3D/fr|FEM CalculiX Cantilever 3D]] fourni avec l'installation de FreeCAD depuis la v0.17.
=== Installation of external FEM Module Software ===
==== Windwos ====
If either a stable or development version from [[Download]] is used no further software needs to be installed. Netgen and CalculiX are included in the FreeCAD download package.


[[Image:FEM_Workbench_workflow.svg|600px]]
==== Linux ====
{{Caption|Workflow de l'atelier FEM ; le plan de travail appelle deux programmes externes pour effectuer le maillage d'un objet solide et pour résoudre le problème des éléments finis}}
===== Ubuntu PPA =====
The easiest possibility to get an working FEM Workbench on Linux is the use of the Ubuntu PPA Version. Check out [[Download#Ubuntu_PPA_packages]]. The netgen FEM Mesh Generator is allready included in the ppa version. CalculiX is an extra package provided by the Ubuntu PPA Version as well. If the Ubuntu PPA repository is allready added to your package manager install CalculiX by
apt-get install ccx


<span id="FEM_solver"></span>
The following FreeCAD Ubuntu PPA packages have Netgen and CalculiX:
=== Solveur FEM ===
* Ubuntu 14.04 (Trusty Tahr)
* Ubuntu 14.10 (Utopic Unicorn)
* Ubuntu 15.04 (Vivid Vervet)


Le solveur par défaut pour effectuer des calculs par éléments finis est [[FEM_CalculiX/fr|CalculiX]], un solveur simple pour l'analyse de structures. FreeCAD écrit un fichier d'entrée CalculiX, lance le solveur et lit le résultat qui peut ensuite être présenté visuellement dans la fenêtre d'affichage. Cela signifie que le binaire CalculiX est autonome et indépendant de FreeCAD. Etant donné que de nombreux programmes peuvent générer un maillage, '''il est recommandé d’installer le solveur et de s’assurer qu’il fonctionne en premier'''.
For Developers: There is a huge [http://forum.freecadweb.org/viewtopic.php?f=18&t=10393 forum thread] in which the creation of the Ubuntu PPA packages was disscussed. It may be usefull if the Ubuntu PPA packages needs to be updated. On Launchpad there are more than one CalculiX packages. Only one CalculiX package should be installed and any of them should work. There is a simple reason for not taking the one which was allready on Launchpad. We did not know about it (see http://forum.freecadweb.org/viewtopic.php?f=18&t=10393&start=90#p85498)


Si le solveur est correctement installé, vous pouvez exécuter la commande unique {{incode|ccx}} dans le terminal pour obtenir une réponse simple :
===== Other =====
On other Linux distributions you need to make sure to get the appropriate software and libraries installed yourself before using FEM workbench.


{{SystemInput|User@PC:~$ ccx}}
===== 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.


{{Code|code=
====== Install CalculiX Binary ======
Usage: CalculiX.exe -i jobname
There are only a few Linux Distributions which are known to have CalculiX Packages in their Repositories. Following a list:
}}
* Arch Linux --> https://aur.archlinux.org/packages/calculix/
* Debian Stretch --> https://packages.debian.org/stretch/calculix-ccx
* Debian Jessie --> The packages of Debian Stretch can be installed by dpkg see [http://forum.freecadweb.org/viewtopic.php?f=4&t=5975&p=110597#p110597 FreeCAD forum]


Si le solveur est installé, assurez-vous que l'atelier FEM est capable de trouver le binaire. Allez à {{MenuCommand|Édition → Préférences → FEM → CalculiX → Rechercher dans les répertoires des binaires connus}}. Si vous avez compilé le solveur vous-même, décochez l'option et indiquez le chemin correct au fichier binaire. Pour les autres solveurs pouvant être utilisés avec FreeCAD, voir [[FEM_Solver/fr|FEM Solveur]].
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. Check out the following FreeCAD forum threads for more infomation:
* Fedora 21 --> http://forum.freecadweb.org/viewtopic.php?f=18&t=10140
* Some bash commands that may help --> http://forum.freecadweb.org/viewtopic.php?f=3&t=11830&start=20#p95741


<span id="FEM_mesh_generator"></span>
====== Compile CalculiX ======
=== Générateur de maillage FEM ===
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 --> http://forum.freecadweb.org/viewtopic.php?f=4&t=5975&start=10
* There is a CMake Repository on github, but at FreeCAD forum noone has reported if this one works
** https://github.com/ricortiz/CalculiX-cmake


Afin de créer un [[FEM_Mesh/fr|maillage FEM]], FreeCAD utilise [http://gmsh.info/ Gmsh] comme mailleur par défaut. En fonction de votre système d'exploitation et de votre installation de FreeCAD, Gmsh peut être inclus ou pas dans les binaires d'installation de FreeCAD. S'il n'est pas intégré, vous pouvez l'installer séparément de FreeCAD et ensuite utiliser le menu {{MenuCommand|Édition → Préférences → FEM → Gmsh}} pour définir le chemin vers ''gmsh.exe''.
===== Netgen =====
There have been mixed results with the Netgen mesher and the compilation of FreeCAD with Netgen support.
* ToDo


Si le programme est correctement installé, vous pouvez exécuter la commande {{incode|gmsh}} dans le terminal pour lancer l'interface graphique du programme. Cette interface n’est pas utilisée par FreeCAD mais montre que le programme est installé.
===== Further Informations =====
The [http://www.forum.freecadweb.org/ FreeCAD forum] is a very good resource for informations in this regard. Check out google search on FreeCAD forum page by :
* [https://www.google.ch/search?q=sys.append.path+site%3Aforum.freecadweb.org#q=calculix+site:forum.freecadweb.org calculix site:forum.freecadweb.org]
* [https://www.google.ch/search?q=sys.append.path+site%3Aforum.freecadweb.org#q=netgen+site:forum.freecadweb.org netgen site:forum.freecadweb.org]


{{SystemInput|User@PC:~$ gmsh -info}}
==== OSX ====
Neither Netgen nor CalculiX are included in FreeCAD download packages which can be downloaded from [[Download]]


{{Code|code=
===== CalculiX =====
Version : 3.0.6
Check out the following [http://forum.freecadweb.org/viewtopic.php?f=18&t=10979 forum thread].
License : GNU General Public License
Build OS : Linux64
Build date : 20171107
Build host : lgw01-amd64-034
Build options : 64Bit Ann Bamg Bfgs Blas(Generic) Blossom C++11 Cgns Chaco DIntegration Dlopen Fltk Gmm Jpeg Kbipack Lapack(Generic) LinuxJoystick MPI MathEx Med Mesh Mmg3d Mpeg NativeFileChooser Netgen ONELAB ONELABMetamodel OpenCASCADE OpenGL OptHom Parser Plugins Png Post Python Solver TetGen/BR Tetgen Voro3D Zlib
FLTK version : 1.3.4
OCC version : 6.9.1
MED version : 3.0.6
Packaged by : buildd
Web site : http://gmsh.info
Mailing list : gmsh@onelab.info
}}


Si le mailleur est installé, assurez-vous que l'atelier FEM est capable de trouver le binaire. Allez à {{MenuCommand|Édition → Préférences → FEM → Gmsh → Rechercher dans les répertoires des binaires connus}}. Si vous avez compilé le mailleur vous-même, décochez l'option et indiquez le chemin correct au fichier binaire. Voir [[FEM_Mesh/fr|FEM Mesh]] pour les différentes possibilités d'obtenir un maillage valide pour l'analyse.
===== Netgen =====
There is no known documantion source for FreeCAD and netgen on OSX. As stated before use [[Macro_GMSH | GMSHMacro]] and check [[FEM_Mesh#Create_a_FEM_Mesh]] for the various possibilities to create an FEM Mesh in FreeCAD.


=== Netgen ===


Pour créer un maillage FEM, vous pouvez utiliser ''Netgen'' comme alternative à ''Gmsh''. Selon votre système d'exploitation et votre installation de FreeCAD, Netgen peut être fourni avec les binaires d'installation de FreeCAD.
[[Category:User Documentation]]


Si le programme est correctement installé, vous pouvez lancer la commande {{incode|netgen}} dans le terminal sous Linux pour lancer l'interface graphique du programme.


{{SystemInput|User@PC:~$ netgen -V}}
{{clear}}

<languages/>
{{Code|code=
NETGEN-6.2-dev
Developed by Joachim Schoeberl at
2010-xxxx Vienna University of Technology
2006-2010 RWTH Aachen University
1996-2006 Johannes Kepler University Linz
Including OpenCascade geometry kernel
Run parallel Netgen with 'mpirun -np xy netgen'
NETGENDIR = .
Tcl header version = 8.6.8
Tcl runtime version = 8.6.8
using internal Tcl-script
optfile ./ng.opt does not exist - using default values
togl-version : 2
OCC module loaded
}}

<span id="Installing_on_Windows"></span>
== Installation sous Windows ==

Les paquets FreeCAD disponibles à partir de la page [[Download/fr|Téléchargements]] incluent déjà Netgen et CalculiX, donc aucun logiciel supplémentaire ne doit être installé. Quelques liens pour obtenir un meilleur exécutable CalculiX que celui inclus dans FreeCAD peuvent être trouvés ici [https://forum.freecadweb.org/viewtopic.php?f=18&t=58792&start=10#p506164 alternative ccx executables].

<div class="mw-collapsible mw-collapsed toccolours">

<span id="Installing_on_Linux"></span>
== Installation sous Linux ==

Les distributions Linux ont différentes manières d'installer un logiciel. De nombreuses distributions ont des référentiels de logiciels et des gestionnaires de paquets; avant de compiler le code source, recherchez dans votre gestionnaire de paquets pour {{incode|netgen}}, {{incode|gmsh}}, {{incode|calculix-ccx}} ou {{incode|ccx}} et installez-les d'après les instructions de votre propre distribution.

<div class="mw-collapsible-content">
<span id="Ubuntu_PPA"></span>
=== PPA Ubuntu ===

Les versions PPA (Personal Package Archives) [https://launchpad.net/~freecad-maintainers/+archive/ubuntu/freecad-stable stable de Freecad] et [https://launchpad.net/~freecad-maintainers/+archive/ubuntu/freecad-daily développement de Freecad] fournissent une version de FreeCAD plus récente que celle disponible dans les dépôts officiels d'Ubuntu. Ces PPA incluent également les derniers {{incode|netgen}}, {{incode|gmsh}} et {{incode|calculix-ccx}}. Voir [[Installing_on_Linux/fr|Installation sous Linux]] pour plus d'informations sur la configuration des référentiels.

Si un PPA est déjà ajouté à votre système, installez les packages comme suit

{{Code|code=
sudo apt-get install netgen
sudo apt-get install gmsh
sudo apt-get install calculix-ccx
}}

Le PPA [https://launchpad.net/~freecad-community/+archive/ubuntu/ppa freecad-community] fournit également les {{incode|netgen}}, {{incode|gmsh}} et {{incode|calculix-ccx}} paquets à tester. S'ils sont suffisamment stables, ils peuvent être ajoutés aux référentiels quotidiens ou stables. Les binaires pour ccx 2.14 fonctionnent sur Debian Stretch mais pas sur Debian Buster en raison de problèmes de dépendance.

{{Emphasis|Note :}} le fil [http://forum.freecadweb.org/viewtopic.php?f=18&t=10393 Ubuntu Repository] traite de la création des packages PPA Ubuntu. Au moment de sa rédaction, CalculiX n'était pas inclus dans les référentiels Debian. Il y avait donc plusieurs paquets personnels dans Launchpad. Un seul paquet doit être installé.

=== Arch Linux ===

Récupérez le package CalculiX à partir de [https://aur.archlinux.org/packages/calculix/ AUR repository].

=== Debian ===

* Debian 9 Buster : les paquets [https://packages.debian.org/buster/calculix-ccx dépôts] sont obsolètes, mais vous pouvez utiliser les paquets du PPA Ubuntu ({{incode|freecad-community}}). Voir [https://forum.freecadweb.org/viewtopic.php?f=18&t=31360&start=10#p279925 Gmsh 4 package available for testing in Community Extras PPA] (message sur le forum).
* Debian 8 Stretch : les paquets [https://packages.debian.org/stretch/calculix-ccx dépôts] sont obsolètes, mais vous pouvez utiliser les packages de la PPA Ubuntu ({{incode|freecad-community}}). Voir [https://forum.freecadweb.org/viewtopic.php?f=18&t=31360&p=279925#p260872 Gmsh 4 package available for testing in Community Extras PPA] (message sur le forum).
* Debian 7 Jessie : installez les paquets à partir de Debian 8 Stretch en utilisant {{incode|dpkg}}. Voir [http://forum.freecadweb.org/viewtopic.php?f=4&t=5975&p=110597#p110597 Debian source package for Calculix] (message sur le forum).

=== openSUSE ===

* [https://en.opensuse.org/openSUSE:Science_Math#Mesh_Generation_and_Related_Tools openSUSE:Science Math]
* [https://software.opensuse.org/package/netgen netgen Automatic 3D tetrahedral mesh generator]
* [https://software.opensuse.org/package/gmsh gmsh A three-dimensional finite element mesh generator]
* [https://software.opensuse.org/package/ccx ccx An open source finite element package]

Les paquets supplémentaires sont généralement installés avec YAST (abbr. Yet another Setup Tool), l'outil d'installation et de configuration du système d'exploitation Linux ou dans n'importe quel terminal/console (droits root requis) avec :

:{{Code|code=
zypper install netgen
zypper install gmsh
zypper install ccx
}}

<span id="CalculiX_binary"></span>
=== Binaire CalculiX ===

Les auteurs CalculiX fournissent un binaire Linux précompilé du solveur. Il peut être téléchargé à partir du [http://www.dhondt.de/ site web des auteurs]. Cependant, étant donné que les différentes distributions Linux ont des chemins de bibliothèque différents, ce binaire ne fonctionnera probablement pas sans certains ajustements.

Pour utiliser le binaire avec Fedora 21, voir le fil [http://forum.freecadweb.org/viewtopic.php?f=18&t=10140 Making FEM run on linux fedora 21]. Pour les versions plus récentes de Fedora, vous devez compiler CalculiX vous-même.

Si vous utilisez ce binaire, vérifiez que le binaire est exécutable, qu'il se trouve dans l'exécutable {{incode|$PATH}} de votre système et que vous disposez de la version nécessaire des bibliothèques ({{incode|libgfortran}}, {{incode|liblapack}}, {{incode|libblas}}, etc.) pour lequel il a été compilé. Ceci est mentionné dans le message du forum [http://forum.freecadweb.org/viewtopic.php?f=3&t=11830&start=20#p95741 atelier FEM].

Utilisez la commande {{incode|ldd}} pour voir les bibliothèques liées par le binaire. Installez les dépendances manquantes.

{{SystemInput|User@PC:~$ ldd /usr/bin/ccx}}

{{Code|code=
linux-vdso.so.1 (0x00007fffbabdc000)
libspooles.so.2.2 => /usr/lib/x86_64-linux-gnu/libspooles.so.2.2 (0x00007fe9bd042000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe9bce23000)
libarpack.so.2 => /usr/lib/x86_64-linux-gnu/libarpack.so.2 (0x00007fe9bcbd9000)
liblapack.so.3 => /usr/lib/x86_64-linux-gnu/liblapack.so.3 (0x00007fe9bc353000)
libgfortran.so.4 => /usr/lib/x86_64-linux-gnu/libgfortran.so.4 (0x00007fe9bbf74000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe9bbbd6000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe9bb7e5000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe9bb5cd000)
libmpi.so.20 => /usr/lib/x86_64-linux-gnu/libmpi.so.20 (0x00007fe9bb2db000)
/lib64/ld-linux-x86-64.so.2 (0x00007fe9bdaa9000)
libblas.so.3 => /usr/lib/x86_64-linux-gnu/libblas.so.3 (0x00007fe9bb080000)
libopenblas.so.0 => /usr/lib/x86_64-linux-gnu/libopenblas.so.0 (0x00007fe9b8dda000)
libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007fe9b8b9a000)
libopen-rte.so.20 => /usr/lib/x86_64-linux-gnu/libopen-rte.so.20 (0x00007fe9b8912000)
libopen-pal.so.20 => /usr/lib/x86_64-linux-gnu/libopen-pal.so.20 (0x00007fe9b8660000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe9b8458000)
libhwloc.so.5 => /usr/lib/x86_64-linux-gnu/libhwloc.so.5 (0x00007fe9b821b000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe9b8017000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007fe9b7e14000)
libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007fe9b7c09000)
libltdl.so.7 => /usr/lib/x86_64-linux-gnu/libltdl.so.7 (0x00007fe9b79ff000)
}}

<span id="Compile_CalculiX"></span>
=== Compiler CalculiX ===

CalculiX étant une application autonome, vous pouvez installer un fichier binaire empaqueté pour votre distribution ou le compiler vous-même. A partir de la version 2.7.x, CalculiX devrait fonctionner avec FreeCAD. Etant donné que le code n'a pas beaucoup changé depuis des années, des versions plus basses que la version 2.7.x peuvent également fonctionner.

Compiler CalculiX est une tâche pour des utilisateurs expérimentés, nécessitant la modification des Makefiles et des options de construction de différentes plates-formes. Voir les informations suivantes :
* Debian : [http://forum.freecadweb.org/viewtopic.php?f=4&t=5975&start=10 Debian source package for Calculix], [https://forum.freecadweb.org/viewtopic.php?f=18&t=31360&start=10#p260506 Gmsh 4 package available for testing in Community Extras PPA], [https://forum.freecadweb.org/viewtopic.php?f=18&t=34024 Compiling CalculiX ccx on fedora, ubuntu and debian].
* Fedora 27, 28, 29 : [https://forum.freecadweb.org/viewtopic.php?f=18&t=34024 Compiling CalculiX ccx on fedora, ubuntu and debian].
* Il existe une version CMake du paquet source dans un [https://github.com/ricortiz/CalculiX-cmake dépôt github], mais sur les forums FreeCAD, personne n'a signalé si ce paquet fonctionnait.

<span id="Compile_Netgen"></span>
=== Compiler Netgen ===

Netgen était initialement lié par FreeCAD lorsque FreeCAD a utilisé OCE, le fork de la communauté d'OpenCascade (OCCT). Alors que OCE accusait un retard de développement par rapport à OCCT, FreeCAD est revenu à OCCT. Cela a rompu la liaison de Netgen, qui ne pouvait se lier qu'à OCCT 6.9 ou à OCE 0.18 et au-dessous. Les versions OCCT 7.x améliorant la fonctionnalité de base de FreeCAD, il a été décidé de supprimer le support Netgen au profit de Gmsh.

Depuis lors, quelques succès ont été obtenus en corrigeant et en liant les nouvelles versions de Netgen avec OCCT 7.x. Néanmoins, l'inclusion de Netgen avec FreeCAD reste problématique.
</div> <!-- End of 'Installing on Linux' collapsible div. Do no remove. -->
</div> <!-- End of 'Installing on Linux' collapsible div. Do no remove. -->

<span id="Installing_on_MacOSX"></span>
== Installation sous Mac OSX ==

{{VeryImportantMessage|Ces informations peuvent être obsolètes. Si vous êtes un utilisateur OSX, veuillez tester et corriger cette section}}
Les packages de développement OSX [https://github.com/FreeCAD/FreeCAD/releases development packages] de FreeCAD peuvent inclure Netgen mais ne peuvent pas inclure CalculiX.

Voir cet article du forum [https://forum.freecadweb.org/viewtopic.php?f=18&t=10979&p=198652#p198642 FEM on Mac OSX] pour plus d'informations sur l'installation de CalculiX et un [https://forum.freecadweb.org/viewtopic.php?f=18&t=10979&start=90#p273746 updated post] pour des informations plus récentes.

CalculiX :
* [https://forum.freecadweb.org/viewtopic.php?f=18&t=10979&start=90#p508724 installer CalculiX avec brew]
Les articles suivants peuvent être dépassés :
* [http://forum.freecadweb.org/viewtopic.php?f=18&t=10979 FEM on Mac OSX, post 1]
* [http://forum.freecadweb.org/viewtopic.php?f=8&t=14497 MacPorts users: CalculiX port test request]

<span id="Further_information"></span>
== Plus d'informations ==

L'[[FEM_Workbench/fr|atelier FEM]] est en développement constant. Les informations les plus récentes se trouvent sur le [http://www.forum.freecadweb.org/ Forum FreeCAD].

Si vous rencontrez des problèmes pour installer Netgen, Gmsh ou CalculiX, ou un autre outil externe, commencez par rechercher le forum correspondant :
* [https://www.google.ch/search?q=sys.append.path+site%3Aforum.freecadweb.org#q=netgen+site:forum.freecadweb.org netgen site:forum.freecadweb.org]
* [https://www.google.ch/search?q=sys.append.path+site%3Aforum.freecadweb.org#q=gmsh+site:forum.freecadweb.org gmsh site:forum.freecadweb.org]
* [https://www.google.ch/search?q=sys.append.path+site%3Aforum.freecadweb.org#q=calculix+site:forum.freecadweb.org calculix site:forum.freecadweb.org]

{{FEM Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 12:31, 2 January 2024

Introduction

Pour pouvoir effectuer une analyse par éléments finis (FEA) dans l' atelier FEM, FreeCAD utilise deux programmes externes : l’un est utilisé pour générer le FEM Mesh, l’autre pour la résolution numérique du analyse réelle. Vous pouvez tester si votre installation FreeCAD est prête pour une FEA en exécutant l’exemple FEM CalculiX Cantilever 3D fourni avec l'installation de FreeCAD depuis la v0.17.

Workflow de l'atelier FEM ; le plan de travail appelle deux programmes externes pour effectuer le maillage d'un objet solide et pour résoudre le problème des éléments finis

Solveur FEM

Le solveur par défaut pour effectuer des calculs par éléments finis est CalculiX, un solveur simple pour l'analyse de structures. FreeCAD écrit un fichier d'entrée CalculiX, lance le solveur et lit le résultat qui peut ensuite être présenté visuellement dans la fenêtre d'affichage. Cela signifie que le binaire CalculiX est autonome et indépendant de FreeCAD. Etant donné que de nombreux programmes peuvent générer un maillage, il est recommandé d’installer le solveur et de s’assurer qu’il fonctionne en premier.

Si le solveur est correctement installé, vous pouvez exécuter la commande unique ccx dans le terminal pour obtenir une réponse simple :

User@PC:~$ ccx

Usage: CalculiX.exe -i jobname

Si le solveur est installé, assurez-vous que l'atelier FEM est capable de trouver le binaire. Allez à Édition → Préférences → FEM → CalculiX → Rechercher dans les répertoires des binaires connus. Si vous avez compilé le solveur vous-même, décochez l'option et indiquez le chemin correct au fichier binaire. Pour les autres solveurs pouvant être utilisés avec FreeCAD, voir FEM Solveur.

Générateur de maillage FEM

Afin de créer un maillage FEM, FreeCAD utilise Gmsh comme mailleur par défaut. En fonction de votre système d'exploitation et de votre installation de FreeCAD, Gmsh peut être inclus ou pas dans les binaires d'installation de FreeCAD. S'il n'est pas intégré, vous pouvez l'installer séparément de FreeCAD et ensuite utiliser le menu Édition → Préférences → FEM → Gmsh pour définir le chemin vers gmsh.exe.

Si le programme est correctement installé, vous pouvez exécuter la commande gmsh dans le terminal pour lancer l'interface graphique du programme. Cette interface n’est pas utilisée par FreeCAD mais montre que le programme est installé.

User@PC:~$ gmsh -info

Version          : 3.0.6
License          : GNU General Public License
Build OS         : Linux64
Build date       : 20171107
Build host       : lgw01-amd64-034
Build options    : 64Bit Ann Bamg Bfgs Blas(Generic) Blossom C++11 Cgns Chaco DIntegration Dlopen Fltk Gmm Jpeg Kbipack Lapack(Generic) LinuxJoystick MPI MathEx Med Mesh Mmg3d Mpeg NativeFileChooser Netgen ONELAB ONELABMetamodel OpenCASCADE OpenGL OptHom Parser Plugins Png Post Python Solver TetGen/BR Tetgen Voro3D Zlib
FLTK version     : 1.3.4
OCC version      : 6.9.1
MED version      : 3.0.6
Packaged by      : buildd
Web site         : http://gmsh.info
Mailing list     : gmsh@onelab.info

Si le mailleur est installé, assurez-vous que l'atelier FEM est capable de trouver le binaire. Allez à Édition → Préférences → FEM → Gmsh → Rechercher dans les répertoires des binaires connus. Si vous avez compilé le mailleur vous-même, décochez l'option et indiquez le chemin correct au fichier binaire. Voir FEM Mesh pour les différentes possibilités d'obtenir un maillage valide pour l'analyse.

Netgen

Pour créer un maillage FEM, vous pouvez utiliser Netgen comme alternative à Gmsh. Selon votre système d'exploitation et votre installation de FreeCAD, Netgen peut être fourni avec les binaires d'installation de FreeCAD.

Si le programme est correctement installé, vous pouvez lancer la commande netgen dans le terminal sous Linux pour lancer l'interface graphique du programme.

User@PC:~$ netgen -V

NETGEN-6.2-dev
Developed by Joachim Schoeberl at
2010-xxxx Vienna University of Technology
2006-2010 RWTH Aachen University
1996-2006 Johannes Kepler University Linz
Including OpenCascade geometry kernel
Run parallel Netgen with 'mpirun -np xy netgen'
NETGENDIR = .
Tcl header version = 8.6.8
Tcl runtime version = 8.6.8 
using internal Tcl-script
optfile ./ng.opt does not exist - using default values
togl-version : 2
OCC module loaded

Installation sous Windows

Les paquets FreeCAD disponibles à partir de la page Téléchargements incluent déjà Netgen et CalculiX, donc aucun logiciel supplémentaire ne doit être installé. Quelques liens pour obtenir un meilleur exécutable CalculiX que celui inclus dans FreeCAD peuvent être trouvés ici alternative ccx executables.

Installation sous Linux

Les distributions Linux ont différentes manières d'installer un logiciel. De nombreuses distributions ont des référentiels de logiciels et des gestionnaires de paquets; avant de compiler le code source, recherchez dans votre gestionnaire de paquets pour netgen, gmsh, calculix-ccx ou ccx et installez-les d'après les instructions de votre propre distribution.

PPA Ubuntu

Les versions PPA (Personal Package Archives) stable de Freecad et développement de Freecad fournissent une version de FreeCAD plus récente que celle disponible dans les dépôts officiels d'Ubuntu. Ces PPA incluent également les derniers netgen, gmsh et calculix-ccx. Voir Installation sous Linux pour plus d'informations sur la configuration des référentiels.

Si un PPA est déjà ajouté à votre système, installez les packages comme suit

sudo apt-get install netgen
sudo apt-get install gmsh
sudo apt-get install calculix-ccx

Le PPA freecad-community fournit également les netgen, gmsh et calculix-ccx paquets à tester. S'ils sont suffisamment stables, ils peuvent être ajoutés aux référentiels quotidiens ou stables. Les binaires pour ccx 2.14 fonctionnent sur Debian Stretch mais pas sur Debian Buster en raison de problèmes de dépendance.

Note : le fil Ubuntu Repository traite de la création des packages PPA Ubuntu. Au moment de sa rédaction, CalculiX n'était pas inclus dans les référentiels Debian. Il y avait donc plusieurs paquets personnels dans Launchpad. Un seul paquet doit être installé.

Arch Linux

Récupérez le package CalculiX à partir de AUR repository.

Debian

openSUSE

Les paquets supplémentaires sont généralement installés avec YAST (abbr. Yet another Setup Tool), l'outil d'installation et de configuration du système d'exploitation Linux ou dans n'importe quel terminal/console (droits root requis) avec :

zypper install netgen
zypper install gmsh
zypper install ccx

Binaire CalculiX

Les auteurs CalculiX fournissent un binaire Linux précompilé du solveur. Il peut être téléchargé à partir du site web des auteurs. Cependant, étant donné que les différentes distributions Linux ont des chemins de bibliothèque différents, ce binaire ne fonctionnera probablement pas sans certains ajustements.

Pour utiliser le binaire avec Fedora 21, voir le fil Making FEM run on linux fedora 21. Pour les versions plus récentes de Fedora, vous devez compiler CalculiX vous-même.

Si vous utilisez ce binaire, vérifiez que le binaire est exécutable, qu'il se trouve dans l'exécutable $PATH de votre système et que vous disposez de la version nécessaire des bibliothèques (libgfortran, liblapack, libblas, etc.) pour lequel il a été compilé. Ceci est mentionné dans le message du forum atelier FEM.

Utilisez la commande ldd pour voir les bibliothèques liées par le binaire. Installez les dépendances manquantes.

User@PC:~$ ldd /usr/bin/ccx

linux-vdso.so.1 (0x00007fffbabdc000)
 libspooles.so.2.2 => /usr/lib/x86_64-linux-gnu/libspooles.so.2.2 (0x00007fe9bd042000)
 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe9bce23000)
 libarpack.so.2 => /usr/lib/x86_64-linux-gnu/libarpack.so.2 (0x00007fe9bcbd9000)
 liblapack.so.3 => /usr/lib/x86_64-linux-gnu/liblapack.so.3 (0x00007fe9bc353000)
 libgfortran.so.4 => /usr/lib/x86_64-linux-gnu/libgfortran.so.4 (0x00007fe9bbf74000)
 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe9bbbd6000)
 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe9bb7e5000)
 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe9bb5cd000)
 libmpi.so.20 => /usr/lib/x86_64-linux-gnu/libmpi.so.20 (0x00007fe9bb2db000)
 /lib64/ld-linux-x86-64.so.2 (0x00007fe9bdaa9000)
 libblas.so.3 => /usr/lib/x86_64-linux-gnu/libblas.so.3 (0x00007fe9bb080000)
 libopenblas.so.0 => /usr/lib/x86_64-linux-gnu/libopenblas.so.0 (0x00007fe9b8dda000)
 libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007fe9b8b9a000)
 libopen-rte.so.20 => /usr/lib/x86_64-linux-gnu/libopen-rte.so.20 (0x00007fe9b8912000)
 libopen-pal.so.20 => /usr/lib/x86_64-linux-gnu/libopen-pal.so.20 (0x00007fe9b8660000)
 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe9b8458000)
 libhwloc.so.5 => /usr/lib/x86_64-linux-gnu/libhwloc.so.5 (0x00007fe9b821b000)
 libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe9b8017000)
 libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007fe9b7e14000)
 libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007fe9b7c09000)
 libltdl.so.7 => /usr/lib/x86_64-linux-gnu/libltdl.so.7 (0x00007fe9b79ff000)

Compiler CalculiX

CalculiX étant une application autonome, vous pouvez installer un fichier binaire empaqueté pour votre distribution ou le compiler vous-même. A partir de la version 2.7.x, CalculiX devrait fonctionner avec FreeCAD. Etant donné que le code n'a pas beaucoup changé depuis des années, des versions plus basses que la version 2.7.x peuvent également fonctionner.

Compiler CalculiX est une tâche pour des utilisateurs expérimentés, nécessitant la modification des Makefiles et des options de construction de différentes plates-formes. Voir les informations suivantes :

Compiler Netgen

Netgen était initialement lié par FreeCAD lorsque FreeCAD a utilisé OCE, le fork de la communauté d'OpenCascade (OCCT). Alors que OCE accusait un retard de développement par rapport à OCCT, FreeCAD est revenu à OCCT. Cela a rompu la liaison de Netgen, qui ne pouvait se lier qu'à OCCT 6.9 ou à OCE 0.18 et au-dessous. Les versions OCCT 7.x améliorant la fonctionnalité de base de FreeCAD, il a été décidé de supprimer le support Netgen au profit de Gmsh.

Depuis lors, quelques succès ont été obtenus en corrigeant et en liant les nouvelles versions de Netgen avec OCCT 7.x. Néanmoins, l'inclusion de Netgen avec FreeCAD reste problématique.

Installation sous Mac OSX

Ces informations peuvent être obsolètes. Si vous êtes un utilisateur OSX, veuillez tester et corriger cette section

Les packages de développement OSX development packages de FreeCAD peuvent inclure Netgen mais ne peuvent pas inclure CalculiX.

Voir cet article du forum FEM on Mac OSX pour plus d'informations sur l'installation de CalculiX et un updated post pour des informations plus récentes.

CalculiX :

Les articles suivants peuvent être dépassés :

Plus d'informations

L'atelier FEM est en développement constant. Les informations les plus récentes se trouvent sur le Forum FreeCAD.

Si vous rencontrez des problèmes pour installer Netgen, Gmsh ou CalculiX, ou un autre outil externe, commencez par rechercher le forum correspondant :