@gdmcbain

scikit-fem: A Python package for finite element assembly

, and . Journal of Open Source Software, 5 (52): 2369 (August 2020)
DOI: 10.21105/joss.02369

Abstract

Partial differential equations (PDEs)—such as the Navier–Stokes equations in fluid mechanics, the Maxwell equations in electromagnetism, and the Schrödinger equation in quantum mechanics—are the basic building blocks of modern physics and engineering. The finite element method (FEM) is a flexible computational technique for the discretization and solution of PDEs, especially in the case of complex spatial domains. Conceptually, the FEM transforms a time-independent (or temporally discretized) PDE into a system of linear equations Ax=b. scikit-fem is a lightweight Python library for the creation, or assembly, of the finite element matrix A and vector b. The user loads a computational mesh, picks suitable basis functions, and provides the PDE’s weak formulation (Logg, Mardal, Wells, & others, 2012). This results in sparse matrices and vectors compatible with the SciPy (Virtanen et al., 2020) ecosystem.

Links and resources

Tags

community