Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › Research › peer-review
FEMEngine : Finite element method C++ code based on functional and template metaprogramming. / Gurin, Alexey; Baykin, Alexey; Polyansky, Timofey et al.
Proceedings - 2019 Ivannikov Ispras Open Conference, ISPRAS 2019. ed. / Sergei Prokhorov. Institute of Electrical and Electronics Engineers Inc., 2019. p. 92-96 8991149 (Proceedings - 2019 Ivannikov Ispras Open Conference, ISPRAS 2019).Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › Research › peer-review
}
TY - GEN
T1 - FEMEngine
T2 - 2019 Ivannikov Ispras Open Conference, ISPRAS 2019
AU - Gurin, Alexey
AU - Baykin, Alexey
AU - Polyansky, Timofey
AU - Krivtsov, Anton
N1 - Funding Information: ACKNOWLEDGMENT This work was supported by Ministry of Science and Higher Education of the Russian Federation within the framework of the Federal Program ”Research and development in priority areas for the development of the scientific and technological complex of Russia for 2014 – 2020” (activity 1.2), grant No. 14.575.21.0146 of September 26, 2017, unique identifier: RFMEFI57517X0146. The industrial partner of the grant is LLC ”Gazprom-neft Science & TechnologyCentre”.
PY - 2019/12
Y1 - 2019/12
N2 - The paper discusses the problems of a finite element method programming. Modern C++ functional programming and template metaprogramming approach to finite element analysis is presented. This approach simplifies the implementation of an effective assembly of the stiffness matrix for a problem defined by a weak form. This method is tested by a solution of the Poisson equation on an unstructured 3D tetrahedral mesh using FEM C++ library FEMEngine developed by authors. The function which calculates the matrix is generated by higher order functions during the compilation stage. The performance of the computation is analyzed by studying of a disassembled code and by comparison with the popular open source FEM software.
AB - The paper discusses the problems of a finite element method programming. Modern C++ functional programming and template metaprogramming approach to finite element analysis is presented. This approach simplifies the implementation of an effective assembly of the stiffness matrix for a problem defined by a weak form. This method is tested by a solution of the Poisson equation on an unstructured 3D tetrahedral mesh using FEM C++ library FEMEngine developed by authors. The function which calculates the matrix is generated by higher order functions during the compilation stage. The performance of the computation is analyzed by studying of a disassembled code and by comparison with the popular open source FEM software.
KW - C++
KW - FEM
KW - Functional programming
KW - Template meta programming
UR - http://www.scopus.com/inward/record.url?scp=85081360735&partnerID=8YFLogxK
U2 - 10.1109/ISPRAS47671.2019.00020
DO - 10.1109/ISPRAS47671.2019.00020
M3 - Conference contribution
AN - SCOPUS:85081360735
T3 - Proceedings - 2019 Ivannikov Ispras Open Conference, ISPRAS 2019
SP - 92
EP - 96
BT - Proceedings - 2019 Ivannikov Ispras Open Conference, ISPRAS 2019
A2 - Prokhorov, Sergei
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 5 December 2019 through 6 December 2019
ER -
ID: 26207431