GridapTopOpt.jl: A scalable Julia toolbox for level set-based topology optimisation

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: Wegert, Zachary J., Manyer, Jordi, Mallon, Connor, Badia, Santiago, Challis, Vivien J.
Format: Preprint
Publié: 2024
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866915748089167872
author Wegert, Zachary J.
Manyer, Jordi
Mallon, Connor
Badia, Santiago
Challis, Vivien J.
author_facet Wegert, Zachary J.
Manyer, Jordi
Mallon, Connor
Badia, Santiago
Challis, Vivien J.
contents In this paper we present GridapTopOpt, an extendable framework for level set-based topology optimisation that can be readily distributed across a personal computer or high-performance computing cluster. The package is written in Julia and uses the Gridap package ecosystem for parallel finite element assembly from arbitrary weak formulations of partial differential equation (PDEs) along with the scalable solvers from the Portable and Extendable Toolkit for Scientific Computing (PETSc). The resulting user interface is intuitive and easy-to-use, allowing for the implementation of a wide range of topology optimisation problems with a syntax that is near one-to-one with the mathematical notation. Furthermore, we implement automatic differentiation to help mitigate the bottleneck associated with the analytic derivation of sensitivities for complex problems. GridapTopOpt is capable of solving a range of benchmark and research topology optimisation problems with large numbers of degrees of freedom. This educational article demonstrates the usability and versatility of the package by describing the formulation and step-by-step implementation of several distinct topology optimisation problems. The driver scripts for these problems are provided and the package source code is available at https://github$.$com/zjwegert/GridapTopOpt.jl.
format Preprint
id arxiv_https___arxiv_org_abs_2405_10478
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle GridapTopOpt.jl: A scalable Julia toolbox for level set-based topology optimisation
Wegert, Zachary J.
Manyer, Jordi
Mallon, Connor
Badia, Santiago
Challis, Vivien J.
Mathematical Software
In this paper we present GridapTopOpt, an extendable framework for level set-based topology optimisation that can be readily distributed across a personal computer or high-performance computing cluster. The package is written in Julia and uses the Gridap package ecosystem for parallel finite element assembly from arbitrary weak formulations of partial differential equation (PDEs) along with the scalable solvers from the Portable and Extendable Toolkit for Scientific Computing (PETSc). The resulting user interface is intuitive and easy-to-use, allowing for the implementation of a wide range of topology optimisation problems with a syntax that is near one-to-one with the mathematical notation. Furthermore, we implement automatic differentiation to help mitigate the bottleneck associated with the analytic derivation of sensitivities for complex problems. GridapTopOpt is capable of solving a range of benchmark and research topology optimisation problems with large numbers of degrees of freedom. This educational article demonstrates the usability and versatility of the package by describing the formulation and step-by-step implementation of several distinct topology optimisation problems. The driver scripts for these problems are provided and the package source code is available at https://github$.$com/zjwegert/GridapTopOpt.jl.
title GridapTopOpt.jl: A scalable Julia toolbox for level set-based topology optimisation
topic Mathematical Software
url https://arxiv.org/abs/2405.10478