FEniTop
FEniTop is open-source software for topology optimization built on FEniCSx.
What FEniTop is
FEniTop is open-source software for topology optimization built on FEniCSx. It supports 2D and 3D problems on structured or unstructured meshes, with choices of element geometries, types, orders, and quadrature degrees. Users can express PDEs in weak form rather than manually manipulating matrices, and automatic differentiation supports finite-element and sensitivity analysis. PETSc through petsc4py provides linear and nonlinear solvers and preconditioners. FEniTop includes parallel implementations of Optimality Criteria and Method of Moving Asymptotes, plus a Helmholtz-type PDE filter intended for large-scale parallel problems, including large filter radii. It can scale from laptops to distributed clusters. Optimized designs can be exported as XDMF files for post-processing in ParaView. Repository examples cover 2D and 3D beams, a 2D disk, a 3D shell, and a 2D compliant mechanism. Setup instructions specify FEniCSx 0.7.3, PyVista, and Xvfb; the documented Windows 11 setup uses Ubuntu under WSL and Docker Desktop. FEniTop is free and licensed under GPL-3.0.
Good
- Handles both 2D and 3D problems.
- Supports structured and unstructured meshes.
- Includes parallel implementations of two optimizers.
- Exports designs as XDMF for ParaView.
Watch out
- Setup specifies FEniCSx 0.7.3, PyVista, and Xvfb.
- Documented Windows setup uses WSL and Docker Desktop.
Who it suits
FEniTop may suit topology-optimization beginners seeking an efficient workflow and experts working on complex problems. It is also relevant to users who need parallel computation or finite-element analysis with FEniCSx.
Verdict
FEniTop brings mesh, PDE, sensitivity, optimization, and export tools together for topology-optimization work. Its detailed dependencies and Windows setup are worth reviewing before installation.
The facts
Each one read from FEniTop's own pages, with the date it was checked.
What it does
- Dimensions and meshes
- It supports 2D and 3D problems with structured or unstructured meshes and multiple element geometries and types.checked 4 Oct 2026
- Examples
- The repository includes examples for 2D and 3D beams, a 2D disk, a 3D shell, and a 2D compliant mechanism.checked 4 Oct 2026
- Export
- Optimized designs can be exported as XDMF files for post-processing in ParaView.checked 4 Oct 2026
- Export and post-processing
- Optimized designs can be exported to XDMF files for post-processing in ParaView.checked 4 Oct 2026
- Filter
- It includes a Helmholtz-type PDE filter designed for large-scale parallel problems, particularly with large filter radii.checked 4 Oct 2026
- Filtering
- It includes a Helmholtz-type PDE filter designed for large-scale parallel problems, including problems with large filter radii.checked 4 Oct 2026
- Finite element support
- It supports varying element geometries, element types, element orders, and quadrature degrees.checked 4 Oct 2026
- Intended users
- The authors say FEniTop may benefit both topology-optimization beginners seeking efficiency and ease of use and experts seeking computing efficiency for complex problems.checked 4 Oct 2026
- License
- The repository identifies its license as GPL-3.0.checked 4 Oct 2026
- Optimization algorithms
- It provides parallel implementations of Optimality Criteria and Method of Moving Asymptotes for updating design variables.checked 4 Oct 2026
- Optimization methods
- It provides parallel implementations of the Optimality Criteria and Method of Moving Asymptotes optimizers.checked 4 Oct 2026
- Parallel computing
- It supports scalable parallel computing on systems ranging from laptops to distributed computing clusters.checked 4 Oct 2026
- PDE formulation
- It lets users express PDEs in weak form, avoiding manual matrix manipulation.checked 4 Oct 2026
- PDEs and sensitivities
- It expresses PDEs in weak form and uses automatic differentiation for finite-element analysis and sensitivity analysis.checked 4 Oct 2026
- Product
- FEniTop is open-source software for topology optimization based on FEniCSx.checked 4 Oct 2026
- Purpose
- FEniTop is open-source software for topology optimization based on FEniCSx.checked 4 Oct 2026
- Requirements
- The installation instructions specify FEniCSx version 0.7.3, PyVista, and Xvfb.checked 4 Oct 2026
- Sensitivity analysis
- It uses automatic differentiation to help with chain rules in finite element analysis and sensitivity analysis.checked 4 Oct 2026
- Setup requirements
- The README recommends FEniCSx version 0.7.3, PyVista, and Xvfb; its detailed setup uses Docker and Ubuntu under WSL on Windows 11.checked 4 Oct 2026
- Solvers
- It provides access to linear and nonlinear solvers and preconditioners through the PETSc backend via petsc4py.checked 4 Oct 2026
Where it runs
- Windows setup
- The documented Windows 11 setup uses WSL with Ubuntu, Docker Desktop, and a Docker image containing FEniCSx, PyVista, and Xvfb.checked 4 Oct 2026


