The finite element
method (FEM, *a.k.a.* finite element analysis, FEA) is a very
popular technique for calculating the strength of a part, or its heat flow
and fluid flow characteristics, etc. But performing the calculation
itself is just one step in that process. One must first define the
shape of the part and divide it into small pieces called a mesh of
elements, this set of steps is known as "pre-processing". And when
the calculation is done, it can be a challenge to display the deformations,
temperatures, or flow velocity distributions in 3-D in a way which
highlights the important features, such as the location where a part is
likely to break; this visualization task is known as "post-processing".

Gmsh is a feature-rich and very mature pre- and post-processor for finite
element calculations. This puts it in the same class as
Salomé. It has its own built-in
Computer-Aided
Design (CAD) engine, and can import files from other CAD programs in
the BREP, STEP and IGES formats (if linked with
OpenCASCADE). It can generate meshes
made of triangles in 2-D or tetrahedra in 3-D, but no quadrilaterals,
prisms or hexahedra. Many open source finite element programs, such
as `deal.II`, can import meshes generated
by Gmsh.

You can read a full overview of Gmsh capabilities at the website. There are also two terrific videos demonstrating Gmsh features, including its CAD engine, meshing capabilities, and several post-processing options and tricks.

Finally, the Gmsh user interface can run and control a finite element
calculation using the GetDP solver,
just as
Salomé-MECA
can run a simulation using
Code_Aster. Salomé-MECA and Code_Aster
have more capabilities than Gmsh and GetDP (*e.g.* quadrilateral and
hexahedral element shapes), but the streamlined and consistent interface
will make these a great pair of tools for many users.

Gmsh and GetDP both run on Linux, Windows and MacOS (Salomé only distributes a Linux version).

All of the content and formatting on this page is Copyright 2008 Opennovation; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.