We found a match
Your institution may have rights to this item. Sign in to continue.
- Title
Multiscale finite element calculations in Python using SfePy.
- Authors
Cimrman, Robert; Lukeš, Vladimír; Rohan, Eduard
- Abstract
SfePy (simple finite elements in Python) is a software for solving various kinds of problems described by partial differential equations in one, two, or three spatial dimensions by the finite element method. Its source code is mostly (85%) Python and relies on fast vectorized operations provided by the NumPy package. For a particular problem, two interfaces can be used: a declarative application programming interface (API), where problem description/definition files (Python modules) are used to define a calculation, and an imperative API, that can be used for interactive commands, or in scripts and libraries. After outlining the SfePy package development, the paper introduces its implementation, structure, and general features. The components for defining a partial differential equation are described using an example of a simple heat conduction problem. Specifically, the declarative API of SfePy is presented in the example. To illustrate one of SfePy's main assets, the framework for implementing complex multiscale models based on the theory of homogenization, an example of a two-scale piezoelastic model is presented, showing both the mathematical description of the problem and the corresponding code.
- Subjects
PYTHON programming language; PARTIAL differential equations; FINITE element method
- Publication
Advances in Computational Mathematics, 2019, Vol 45, Issue 4, p1897
- ISSN
1019-7168
- Publication type
Article
- DOI
10.1007/s10444-019-09666-0