Wegert, Z. J., Manyer, J., Mallon, C., Badia, S., & Challis, V. J. (2024). GridapTopOpt.jl: A scalable Julia toolbox for level set-based topology optimisation. arXiv preprint arXiv:2405.10478v2.
This paper introduces GridapTopOpt.jl, a novel Julia package designed to make level set-based topology optimization more accessible and efficient. The authors aim to address the limitations of existing educational resources and software tools by providing a user-friendly, scalable, and feature-rich framework for solving topology optimization problems.
The authors leverage the Julia programming language's unique features, such as just-in-time compilation, multiple dispatch, and automatic differentiation, to create a high-level API that simplifies the implementation of complex optimization problems. They utilize the Gridap package ecosystem for parallel finite element assembly and the Portable, Extensible Toolkit for Scientific Computing (PETSc) for scalable solvers. The package also incorporates automatic differentiation to streamline the calculation of sensitivities for intricate problems.
GridapTopOpt.jl enables users to solve a wide range of topology optimization problems, including two- and three-dimensional, linear and nonlinear, with minimal code modifications. The package's intuitive syntax, closely mirroring mathematical notation, makes it easy to learn and use, even for users without extensive programming experience. The parallel implementation, utilizing distributed computing techniques, allows for efficient scaling of problems to large numbers of degrees of freedom.
GridapTopOpt.jl presents a significant advancement in level set-based topology optimization by providing a user-friendly, scalable, and extensible framework. The package's intuitive API, automatic differentiation capabilities, and parallel implementation make it a valuable tool for both educational purposes and research in topology optimization.
This research contributes to the field of topology optimization by lowering the barrier to entry for new users and providing a powerful tool for tackling complex engineering design problems. The package's open-source nature and detailed documentation encourage collaboration and further development within the community.
The current implementation of GridapTopOpt.jl primarily supports uniform Cartesian background meshes for solving the Hamilton-Jacobi evolution and reinitialisation equations. Future work will focus on removing this limitation by incorporating unfitted finite element methods. Additionally, the authors plan to investigate the use of automatic shape differentiation over body-fitted meshes to further enhance the package's capabilities.
다른 언어로
소스 콘텐츠 기반
arxiv.org
더 깊은 질문