In this article, we provide a summary of a recent numerical framework for shape and topology optimization,
which features an exact mesh of the shape at each iteration of the process, while still leaving the room for an arbitrary evolution of the latter (including changes in its topology).
In a nutshell, two complementary representations of the shape are combined: on the one hand, it is meshed exactly,
which allows for precise mechanical calculations based on the finite element method; on the other hand,
it is described implicitly, using the level set method, which makes it possible to track its evolution in a robust way.
In the first part of this work, we overview the main aspects of this numerical strategy.
After a brief presentation of some necessary background material -- related to shape optimization and meshing, among others --
we describe the numerical schemes involved, notably when it comes to the practice of the level set method, the remeshing algorithms, and the considered optimization solver.
This strategy is illustrated with 2d and 3d numerical examples in various physical contexts.
In the second part of this article, we propose a simple albeit efficient \(\texttt{python}\)-based implementation of this framework.
The code is described with a fair amount of details, and it is expected that the reader can easily elaborate upon the presented examples to tackle his own problems.
|