Litcius/Paper detail

Topology optimization using PETSc: a Python wrapper and extended functionality

Thijs Smit, Niels Aage, Stephen J. Ferguson, Benedikt Helgason

2021Structural and Multidisciplinary Optimization22 citationsDOIOpen Access PDF

Abstract

Abstract This paper presents a Python wrapper and extended functionality of the parallel topology optimization framework introduced by Aage et al. (Topology optimization using PETSc: an easy-to-use, fully parallel, open source topology optimization framework. Struct Multidiscip Optim 51(3):565–572, 2015). The Python interface, which simplifies the problem definition, is intended to expand the potential user base and to ease the use of large-scale topology optimization for educational purposes. The functionality of the topology optimization framework is extended to include passive domains and local volume constraints among others, which contributes to its usability to real-world design applications. The functionality is demonstrated via the cantilever beam, bracket and torsion ball examples. Several tests are provided which can be used to verify the proper installation and for evaluating the performance of the user’s system setup. The open-source code is available at https://github.com/thsmit/ , repository $$\texttt {TopOpt\_in\_PETSc\_wrapped\_in\_Python}$$ <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML"> <mml:mrow> <mml:mi>TopOpt</mml:mi> <mml:mi>_</mml:mi> <mml:mi>in</mml:mi> <mml:mi>_</mml:mi> <mml:mi>PETSc</mml:mi> <mml:mi>_</mml:mi> <mml:mi>wrapped</mml:mi> <mml:mi>_</mml:mi> <mml:mi>in</mml:mi> <mml:mi>_</mml:mi> <mml:mi>Python</mml:mi> </mml:mrow> </mml:math> .

Topics & Concepts

Python (programming language)Computer scienceTopology (electrical circuits)UsabilityTopology optimizationUser interfaceAlgorithmComputational sciencePhysicsProgramming languageFinite element methodMathematicsOperating systemCombinatoricsThermodynamicsTopology Optimization in EngineeringAdvanced Multi-Objective Optimization AlgorithmsPiezoelectric Actuators and Control