Gmsh is an open source 3D finite element mesh generator with a built-in CAD
engine and post-processor. Its design goal is to provide a fast, light and
user-friendly meshing tool with parametric input and flexible visualization
capabilities. Gmsh is built
around four modules
(geometry, mesh, solver and post-processing), which can be controlled with
the graphical user
line, using text files written in Gmsh's
.geo files), or through the C++, C, Python, Julia and
See this general presentation for a high-level overview of Gmsh and the reference manual for the complete documentation, which includes the Gmsh tutorial. The source code repository contains the tutorial source files as well as many other examples.
Gmsh is distributed under the terms of the GNU General Public License (GPL):
git clone https://gitlab.onelab.info/gmsh/gmsh.git'
pip install -i https://gmsh.info/python-packages-dev --force-reinstall --no-cache-dir gmsh' (on Linux systems without X windows, use
If you use Gmsh please cite the following reference in your work (books, articles, reports, etc.): C. Geuzaine and J.-F. Remacle. Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities. International Journal for Numerical Methods in Engineering 79(11), pp. 1309-1331, 2009. You can also cite additional references for specific features and algorithms.
Please report all issues
Gmsh is copyright (C) 1997-2022 by C. Geuzaine and J.-F. Remacle (see the CREDITS file for more information) and is distributed under the terms of the GNU General Public License (GPL) (version 2 or later, with an exception to allow for easier linking with external libraries).
In short, this means that everyone is free to use Gmsh and to redistribute it on a free basis. Gmsh is not in the public domain; it is copyrighted and there are restrictions on its distribution (see the license and the related frequently asked questions). For example, you cannot integrate this version of Gmsh (in full or in parts) in any closed-source software you plan to distribute (commercially or not). If you want to integrate parts of Gmsh into a closed-source software, or want to sell a modified closed-source version of Gmsh, you will need to obtain a commercial license: please contact us for details.
These are two screenshots of the Gmsh user interface, with either the light or dark user interface theme. See the ONELAB web site for more.