PyAlbany: A Python interface to the C++ multiphysics solver Albany

Albany is a parallel C++ finite element library for solving forward and inverse problems involving partial differential equations (PDEs). In this paper we introduce PyAlbany, a newly developed Python interface to the Albany library. PyAlbany can be used to effectively drive Albany enabling fast and...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Journal of computational and applied mathematics Jg. 425; H. C; S. 115037
Hauptverfasser: Liegeois, Kim, Perego, Mauro, Hartland, Tucker
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Belgium Elsevier B.V 01.06.2023
Elsevier
Schlagworte:
ISSN:0377-0427, 1879-1778
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Albany is a parallel C++ finite element library for solving forward and inverse problems involving partial differential equations (PDEs). In this paper we introduce PyAlbany, a newly developed Python interface to the Albany library. PyAlbany can be used to effectively drive Albany enabling fast and easy analysis and post-processing of applications based on PDEs that are pre-implemented in Albany. PyAlbany relies on the library PyBind11 to bind Python with C++ Albany code. Here we detail the implementation of PyAlbany and showcase its capabilities through a number of examples targeting a heat-diffusion problem. In particular we consider (1) the generation of samples for a Monte Carlo application, (2) a scalability study, (3) a study of parameters on the performance of a linear solver, and (4) a tool for performing eigenvalue decompositions of matrix-free operators for a Bayesian inference application.
Bibliographie:NA-0003525
USDOE National Nuclear Security Administration (NNSA)
ISSN:0377-0427
1879-1778
DOI:10.1016/j.cam.2022.115037