FEniTop vs OpenMDAO
FEniTop
github.comOpenMDAO
openmdao.orgSide by side
| Figure | FEniTop | OpenMDAO |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | — |
| Linux | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 0 | 1 |
| Spec score · Generative Design Software | 7.4 (#11) | 7.6 (#10) |
| 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. | The project describes applications including cubesat design and mission planning, wind turbine design, and unconventional aircraft concepts. |
| License | The repository identifies its license as GPL-3.0. | OpenMDAO is released under the Apache 2.0 license, which the project says permits proprietary software to be integrated without making it open source. |
| Parallel computing | It supports scalable parallel computing on systems ranging from laptops to distributed computing clusters. | MPI features can run parallel subsystems and distributed variables across multiple processes. |
| Purpose | FEniTop is open-source software for topology optimization based on FEniCSx. | OpenMDAO is an open-source Python framework for systems analysis and multidisciplinary optimization. |
Plans
In their own words
FEniTop
FEniTop is free, open-source software for topology optimization based on FEniCSx. It handles two- and three-dimensional problems on structured or unstructured meshes, with varied element geometries, types, orders, and quadrature degrees. Users express partial differential equations in weak form, while automatic differentiation supports finite-element and sensitivity analysis. PETSc through petsc4py provides linear and nonlinear solvers and preconditioners. Parallel implementations of Optimality Criteria and Method of Moving Asymptotes update design variables. A Helmholtz-type PDE filter targets large-scale parallel problems, including large filter radii. FEniTop can run from laptops to distributed computing clusters. Optimized designs export as XDMF files for ParaView post-processing. Repository examples cover beams in 2D and 3D, a 2D disk, a 3D shell, and a 2D compliant mechanism. The software is licensed under GPL-3.0. Setup instructions specify FEniCSx 0.7.3, PyVista, and Xvfb; Windows 11 instructions use Ubuntu under WSL and Docker Desktop.
OpenMDAO
OpenMDAO is a free, open-source Python framework for systems analysis and multidisciplinary optimization, available for Linux and self-hosted use. It focuses on gradient-based optimization with analytic derivatives, including design spaces with hundreds or thousands of variables. Models combine components and groups, while drivers run optimization algorithms or design of experiments. Nonlinear and linear solvers can be positioned at different levels of the model hierarchy. Derivative tools include analytic partial derivatives, finite-difference and complex-step approximations, derivative checking, and forward or reverse total derivative calculations. MPI features support parallel subsystems and distributed variables across processes. Parallel computing can also support gradient-free optimization, mixed-integer nonlinear programming and design space exploration. Users can visualize models and optimization progress, and record or read model and solver cases. Dymos for transient modeling and optimal control, and pyCycle for turbine engine cycle analysis, are identified as related libraries. Installation is documented through PyPI or a cloned GitHub repository. The supported OpenMDAO 3.x line requires Python 3.10 or later; its API may change periodically during active development.