Autofreefem: automatic code generation with FreeFEM and LaTex output for shape and topology optimization of non-linear multi-physics problems: AutoFreeFEM: automatic code generation
For an educational purpose, we develop the Python package AutoFreeFEM which generates all ingredients for shape optimization with non-linear multi-physics in FreeFEM and also outputs the expressions for use in LaTeX. As an input, the objective function and the weak form of the problem have to be spe...
Gespeichert in:
Veröffentlicht in: | Structural and multidisciplinary optimization 2024, Vol.67 (12) |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | For an educational purpose, we develop the
Python
package
AutoFreeFEM
which generates all ingredients for shape optimization with non-linear multi-physics in
FreeFEM
and also outputs the expressions for use in LaTeX. As an input, the objective function and the weak form of the problem have to be specified only once. This ensures consistency between the simulation code and its documentation. In particular,
AutoFreeFEM
provides the linearization of the state equation, the adjoint problem, the shape derivative, as well as a basic implementation of the level-set based mesh evolution method for shape optimization. For the computation of shape derivatives, we utilize the mathematical Lagrangian approach for differentiating PDE-constrained shape functions. Differentiation is done symbolically using
SymPy
. In numerical experiments, we verify the accuracy of the computed derivatives. Finally, we showcase the capabilities of
AutoFreeFEM
by considering shape optimization of a non-linear diffusion problem, linear and non-linear elasticity problems, a thermo-elasticity problem, and a fluid–structure interaction problem. |
---|---|
ISSN: | 1615-147X 1615-1488 |
DOI: | 10.1007/s00158-024-03917-5 |