Gmsh is an open source and completely free graphical software implemented in C++ and Python, designed from the offset to provide an automatic 3D finite element mesh generator utility, primarily Delaunay.
Featuring built-in pre- and post-processing facilities, as well as parametric input and advanced visualization capabilities, the main goal of the Gmsh project is to provide a simple meshing utility for academic problems.
Built around four modules
Gmsh is built around four modules: mesh, geometry, solver and post-processing. All these instructions are prescribed either interactively in ASCII data files using the program's own scripting language, or using the graphical user interface (GUI).
The application supports various sample BREP and STEP models, including propeller, pump (EDF R&D, zylkopf, linkrods, hammer, bike, piston, block and tap, as well as several native modules, including magnetron 2 (P. Lefèvre), violin (S. Hardesty), magnetron 1, electrical machine (J. Gyselinck), braid 1, circuit breaker (S. K. Choi), ocean, and braid 2 (D. Colignon).
Supports structured and unstructured grids
Structured and unstructured grids are also supported, including structured tet, structured hex, structured pri, spirale and unstructured. Post-processing elements include F16 streamlines, colormaps, isosurfaces, streamlines (S. Lehmann), F18 streamlines, boing (P. Geuzaine), vector fields, pressure ring, post-pro and post-pro 2.
Among other interesting features, we can mention support for mesh around an airplane (A319 1 and A319 2), support for various screen captures, including electrical machine, magnetron, neutron scattering and F16, support for importing IGES, BREP and STEP though OpenCascade, and support for implementing an ONELAB server for using external solvers.
Gmsh also lets users to create animated cutting spirals, to use Lenna as background mesh, to use clipping and selection functions, to generate high-quality vector SVG (Scalable Vector Graphics), PDF and PostScript (PS) outputs via GL2PS, and to integrated with different external mesh generators, such as TetGen and Netgen.