The complexity of problems attacked in topology optimization has increased dramatically during the past decade. Examples include fully coupled multiphysics problems in thermo-elasticity, fluid-structure interaction, Micro-Electro Mechanical System (MEMS) design and large-scale three dimensional problems. The only feasible way to obtain a solution within a reasonable amount of time is to use parallel computations in order to speed up the solution process. The focus of this article is on a fully parallel topology optimization framework implemented in C++, with emphasis on utilizing well tested and simple to implement linear solvers and optimization algorithms. However, to ensure generality, the code is developed to be easily extendable in terms of physical models as well as in terms of solution methods, without compromising the parallel scalability. The widely used Method of Moving Asymptotes optimization algorithm is parallelized and included as a fundamental part of the code. The capabilities of the presented approaches are demonstrated on topology optimization of a Stokes flow problem with target outflow constraints as well as the minimum compliance problem with a volume constraint from linear elasticity.
Bibliographical noteThe authors acknowledge the support of the Danish National Advanced Technology Foundation, the Danish Center for Scientific Computing, the CSC supercomputer center in Finland, and the NextTop project sponsored by the Villum foundation.
- Topology optimization
- Method of moving asymptotes
- Parallel computing
- Indefinite systems