FEM Install/fr: Difference between revisions
(Created page with "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....") |
(Created page with "=== Compiler Netgen ===") |
||
Line 161: | Line 161: | ||
* Il existe une version CMake du paquet source dans un [https://github.com/ricortiz/CalculiX-cmake github repository], mais sur les forums FreeCAD, personne n'a signalé si ce paquet fonctionnait. |
* Il existe une version CMake du paquet source dans un [https://github.com/ricortiz/CalculiX-cmake github repository], mais sur les forums FreeCAD, personne n'a signalé si ce paquet fonctionnait. |
||
=== |
=== Compiler Netgen === |
||
Netgen was originally linked by FreeCAD when FreeCAD used OCE, the community fork of OpenCascade (OCCT). As OCE lagged in development behind OCCT, FreeCAD switched back to OCCT. This broke the linking of Netgen, which could only link against OCCT 6.9 or OCE 0.18 and below. As OCCT 7.x versions improved the core funcitonality of FreeCAD, it was decided to drop Netgen support in favor of Gmsh. |
Netgen was originally linked by FreeCAD when FreeCAD used OCE, the community fork of OpenCascade (OCCT). As OCE lagged in development behind OCCT, FreeCAD switched back to OCCT. This broke the linking of Netgen, which could only link against OCCT 6.9 or OCE 0.18 and below. As OCCT 7.x versions improved the core funcitonality of FreeCAD, it was decided to drop Netgen support in favor of Gmsh. |
Revision as of 10:28, 8 May 2019
Introduction
Pour pouvoir effectuer une analyse par éléments finis (FEA) dans 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 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
FEM Solver
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 à Edit → Preferences → FEM → CalculiX → Search in known binary directories. Si vous avez compilé le solveur vous-même, décochez l'option et donnez 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 FEM Mesh, FreeCAD utilise Gmsh comme mailleur par défaut. Pour que cela fonctionne, Gmsh doit être installé séparément de FreeCAD.
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 FEM Workbench est capable de trouver le binaire. Allez à Edit → Preferences → FEM → Gmsh → Search in known binary directories. Si vous avez compilé le mailleur vous-même, décochez l'option et donnez le chemin correct au fichier binaire. Voir FEM Mesh pour les différentes possibilités d'obtenir un maillage valide pour l'analyse.
Netgen
Note: le mailleur Netgen a été désactivé en mars 2017, lorsque FreeCAD est passé à l'utilisation de OCCT 7.1. Modifiez ces informations si Netgen est à nouveau utilisable avec la version stable de FreeCAD.
Dans les versions précédentes de FreeCAD, Netgen était le mailleur par défaut. Pour fonctionner avec l'atelier FEM, FreeCAD devait être lié aux bibliothèques Netgen au moment de la compilation. Alors que FreeCAD passait de OCE 0.17 à OCCT 7.1, Netgen 4.9.13 n'a pas réussi à établir de liaison avec cette version d'OCCT. Il a donc été décidé de supprimer le support Netgen dans Atelier FEM (le bouton Netgen button a été enlevé). Néanmoins, peu après, certains utilisateurs ont signalé qu'ils avaient réussi à appliquer une correction à Netgen 5.3.1, qui fonctionnait donc avec OCCT 7.x et FreeCAD.
Pour référence historique, voir les discussions:
- (Ubuntu Daily PPA) Transitioning to OCCT7, VTK7...
- Ubuntu Daily Builds PPA now using OCC 7.1.0
- patching Netgen 5.3.1 to work with OCCT 7.1
- Troubles with gmsh in FEM wb (netgen nostalgy)
Bien que Netgen ne soit pas disponible à partir de Atelier FEM, il peut toujours être utilisé seul pour produire des maillages pouvant être importés.
Si le programme est correctement installé, vous pouvez exécuter la commande netgen
dans le terminal 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 packages FreeCAD disponibles sur la page Téléchargements incluent déjà Netgen et CalculiX, aucun logiciel supplémentaire ne doit donc être installé.
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 après la instructions de votre propre distribution.
PPA sous Ubuntu
Les freecad-stable et freecad-daily PPA (personal package archives) 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 Unix 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.
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
- Debian 9 Buster: les paquets repository sont obsolètes, mais vous pouvez utiliser les paquets du PPA Ubuntu (
freecad-community
). Voir Gmsh 4 package available for testing in Community Extras PPA (post de forum). - Debian 8 Stretch: les packages repository sont obsolètes, mais vous pouvez utiliser les packages de la PPA Ubuntu (
freecad-community
). Voir Gmsh 4 package available for testing in Community Extras PPA (post de forum). - Debian 7 Jessie: installez les paquets à partir de Debian 8 Stretch en utilisant
dpkg
. Voir [Debian source package for Calculix] (message sur le forum).
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 FEM WB.
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:
- Debian: Debian source package for Calculix, Gmsh 4 package available for testing in Community Extras PPA, Compiling CalculiX ccx on fedora, ubuntu and debian.
- Fedora 27, 28, 29: Compiling CalculiX ccx on fedora, ubuntu and debian.
- Il existe une version CMake du paquet source dans un github repository, mais sur les forums FreeCAD, personne n'a signalé si ce paquet fonctionnait.
Compiler Netgen
Netgen was originally linked by FreeCAD when FreeCAD used OCE, the community fork of OpenCascade (OCCT). As OCE lagged in development behind OCCT, FreeCAD switched back to OCCT. This broke the linking of Netgen, which could only link against OCCT 6.9 or OCE 0.18 and below. As OCCT 7.x versions improved the core funcitonality of FreeCAD, it was decided to drop Netgen support in favor of Gmsh.
Since then some success has been achieved patching and linking newer versions of Netgen against OCCT 7.x. Nevertheless, the inclusion of Netgen with FreeCAD is still problematic.
Installing on OSX
The OSX development packages of FreeCAD may include Netgen but may not include CalculiX.
CalculiX
Voir ce message de forum FreeCAD Fem on OSX comment installer CalculiX sur OSX Les informations suivantes peuvent être obsolètes:
The following posts may be outdated:
Further information
The FEM Workbench is under constant development. The most recent information is found in the FreeCAD forum.
If you have problems installing Netgen, Gmsh, or CalculiX, or another external tool, please search the forum first: