Multiscale finite element calculations in Python']Python using SfePy

被引:50
作者
Cimrman, Robert [1 ]
Lukes, Vladimir [2 ]
Rohan, Eduard [2 ]
机构
[1] Univ West Bohemia, New Technol Res Ctr, Univ 8, Plzen 30614, Czech Republic
[2] Univ West Bohemia, Fac Appl Sci, NTIS, Univ 8, Plzen 30614, Czech Republic
关键词
Finite element method; Multiscale simulations; Piezoelasticity; SfePy; !text type='Python']Python[!/text; 35Qxx; ISOGEOMETRIC ANALYSIS; HOMOGENIZATION; FRAMEWORK; MODEL;
D O I
10.1007/s10444-019-09666-0
中图分类号
O29 [应用数学];
学科分类号
070104 ;
摘要
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.
引用
收藏
页码:1897 / 1921
页数:25
相关论文
共 64 条
[1]   A short and versatile finite element multiscale code for homogenization problems [J].
Abdulle, Assyr ;
Nonnenmacher, Achim .
COMPUTER METHODS IN APPLIED MECHANICS AND ENGINEERING, 2009, 198 (37-40) :2839-2859
[2]   HOMOGENIZATION AND 2-SCALE CONVERGENCE [J].
ALLAIRE, G .
SIAM JOURNAL ON MATHEMATICAL ANALYSIS, 1992, 23 (06) :1482-1518
[3]  
Alnaes MS., 2015, Archive of numerical software, V3, P1, DOI [10.11588/ans. 2015.100.20553, DOI 10.11588/ANS.2015.100.20553]
[4]   Multiscale computing in the exascale era [J].
Alowayyed, Saad ;
Groen, Derek ;
Coveney, Peter V. ;
Hoekstra, Alfons G. .
JOURNAL OF COMPUTATIONAL SCIENCE, 2017, 22 :15-25
[5]   A low-rank approximation for large-scale 3D controlled-source electromagnetic Gauss-Newton inversion [J].
Amaya, Manuel ;
Morten, Jan Petter ;
Boman, Linus .
GEOPHYSICS, 2016, 81 (03) :E211-E225
[6]  
[Anonymous], 2017, ENCY COMPUTATIONAL M
[7]  
[Anonymous], 1999, OXFORD LECT SER MATH
[8]  
[Anonymous], VIS TOOLK US GUID
[9]  
[Anonymous], 2018, SCIPY OPEN SOURCE SC
[10]  
[Anonymous], 2009, Isogeometric analysis