Gmsh est un générateur de maillage par éléments finis 3D gratuit avec un moteur CAO intégré et un post-processeur. Son objectif de conception est de fournir un outil de maillage rapide, léger et convivial avec une entrée paramétrique et des capacités de visualisation avancées. Gmsh est construit autour de quatre modules : géométrie, maillage, solveur et post-traitement. La spécification de toute entrée à ces modules se fait soit de manière interactive en utilisant l'interface graphique, dans des fichiers texte ASCII en utilisant le propre langage de script de Gmsh (fichiers .geo), ou en utilisant l'API C++, Python ou C.