byADIT Free software for engineers and students
EngiFree
Netgen/NGSolve — The Complete Guide: Free Meshing and High-Order Finite Elements in Python

Netgen/NGSolve — The Complete Guide: Free Meshing and High-Order Finite Elements in Python

Netgen/NGSolve are two open-source (LGPL) tools from TU Wien that work as one: Netgen builds geometry and generates the mesh, and NGSolve solves on it. Installation is simple (for example with pip), and all the work is done from Python, including in Jupyter notebooks with 3D display.

What you get

Who it suits

Researchers and students who know the mathematics of finite elements and want a modern, flexible tool — especially in electromagnetics and problems where accuracy matters. Netgen is also used on its own as a mesher and is built into other tools such as SALOME. For routine analysis with a full graphical interface — PrePoMax.

Related tools

A similar weak-form approach in Python — FEniCS. A dedicated finite element language — FreeFEM. For complex meshes — Gmsh.

The bottom line

NGSolve brings high-order finite elements to Python in a clean, accessible way — a powerful, free tool for research and teaching.

Further reading