CAD & Mesh-Tools
CAD and meshing software installed on viz, amp and green cluster nodes.
FreeCAD
FreeCAD is an easy to use open-source CAD software, that can use Gmsh or Netgen for meshing. It can also serve as a frontend for CalculiX and ElmerFEM, thus providing similar functionality as SolidWorks.
(Please don’t run simulations on viz) FreeCAD is best used within a VNC session.
See separate page on visualization.
On the green nodes use a SPACK module:
module load rocky8-spack
module load openfoam
How to cite:
FreeCAD available from: https://www.freecadweb.org.
Gmsh
Gmsh meshes can be used with ElmerFEM and OpenFOAM. For OpenFOAM, make sure it is saved as version 2 and ASCII format.
The GUI is available on viz, large meshes can be done as batch jobs on the green cluster nodes, on the command-line run:
gmsh -3 -format msh2 -o outfilename.msh infilename.geo
this creates a volume mesh and saves as version 2 format suitable for OpenFOAM.
On the green nodes use a SPACK module:
module load rocky8-spack
module load gmsh
How to cite:
If you use Gmsh please cite C. Geuzaine and J.-F. Remacle. Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities. Int. J. Numer. Methods Eng., 79(11), pp. 1309-1331, 2009. You can also cite additional references for specific features and algorithms.
Salome
Salome is a multi-platform environment, allowing the realization of physics simulations. Salome is suitable for various stages of a study: from creation of the CAD model and the mesh to the post-processing and visualization of the results. Other functionalities such as uncertainty treatment, data assimilation are also implemented. Salome does not contain a physics solver but it provides the computing environment necessary for their integration.
Salome is installed on the green nodes.
module load rocky8/all
module load salome
Salome has a python interface, so the meshing can be done as a batch-job on the cluster nodes.
The current state can be dumped into a script from the GUI by CTRL+D
, the script can then be executed on the command-line by:
salome -t scriptname.py
It is therefore possible to prepare the geometry on your workstation or viz, dump the script, add the meshing command and run the script on the cluster in batch-mode.
On viz there is no module for Salome, just run salome
or mesa_salome
on the command-line, this is best done within a VNC session session (or X2GO session, here use vglrun salome
).
See separate page on visualization.
How to cite:
Salome can be cited as DOI:10.13140/RG.2.2.12107.08485.
Netgen (NGsolve)
Netgen is a part of the NGsolve suite. Netgen is a automatic 3d tetrahedral mesh generator containing modules for mesh optimization and hierarchical mesh refinement. It accepts input from constructive solid geometry .csg
or boundary representation (BRep) from .stl
files, but also handles .brep
, .step
and .iges
formats. Those meshes generated can be exported in several formats (e.g. neutral, Abaqus, Fluent, ElmerFEM Gmsh and OpenFOAM). Netgen has a GUI (e.g. use a X2GO session on viz), but can also be used through its Python interface.
A Python example using the OpenCASCADE kernel:
from netgen.NgOCC import *
geo = LoadOCCGeometry('screw.step')
geo.Heal()
mesh = geo.GenerateMesh()
# mesh.Save('screw.vol')
mesh.Export("export.msh","Gmsh Format")
from ngsolve import *
Draw(Mesh(mesh))
A Python example using the netgen STL:
import netgen.stl as stl
geo2 = stl.LoadSTLGeometry("input.stl")
m2 = geo2.GenerateMesh (maxh=0.05)
m2.Export("export.msh","Gmsh2 Format")
You can get a list of export formats from the GUI.
How to cite:
Netgen - J. Schöberl. NETGEN An advancing front 2D/3D-mesh generator based on abstract rules. Comput. Vis. Sci., 1(1):41–52, 1997. Netgen/NGSolve is open source and available at www.ngsolve.org.