Matematicheskoe modelirovanie
RUS  ENG    JOURNALS   PEOPLE   ORGANISATIONS   CONFERENCES   SEMINARS   VIDEO LIBRARY   PACKAGE AMSBIB  
General information
Latest issue
Archive
Impact factor

Search papers
Search references

RSS
Latest issue
Current issues
Archive issues
What is RSS



Matem. Mod.:
Year:
Volume:
Issue:
Page:
Find






Personal entry:
Login:
Password:
Save password
Enter
Forgotten password?
Register


Matematicheskoe modelirovanie, 2021, Volume 33, Number 2, Pages 20–40
DOI: https://doi.org/10.20948/mm-2021-02-02
(Mi mm4259)
 

A grid-operator framework for efficient implementation of explicit finite difference schemes

M. M. Krasnov, V. A. Balashov, E. B. Savenkov

Keldysh Institute of Applied Mathematics of RAS
References:
Abstract: Current paper is devoted to the description of the mesh-operator programming technique. The approach allows for short implementation of mathematical formulas in source code using programming language operators similar to mathematical ones and, at the same moment, provides portable implementation suitable for both CPU and CPU/GPGPU hardware.
Mesh-operator programming is based on expression templates metaprogramming technique to construct C++ expression to implement mesh operators. In turn, mesh operators can be applied to mesh data structures to construct more complex mesh operators. Such an approach allows to perform an arbitrarily complex computations with the mesh functions. In fact, computations are performed in the delayed fashion, i.e., the actual numerical values are computed only when the mesh expression is assigned to the mesh function.
In this paper we show how such an approach can be applied to the efficient implementation of the relatively complex algorithm which utilizes mesh functions defined on different elements of the mesh, i.e., cells, faces, etc. Using mesh-operator technique, the implementation is kept simple and formulas in the code looks practically as simple as in mathematical notation.
Keywords: C++, template metaprogramming, finite difference schemes, operator library, stencil computations.
Funding agency Grant number
Ministry of Education and Science of the Russian Federation RFMEFI60419X0209
Received: 17.09.2020
Revised: 17.09.2020
Accepted: 30.11.2020
English version:
Mathematical Models and Computer Simulations, 2021, Volume 13, Issue 5, Pages 831–843
DOI: https://doi.org/10.1134/S2070048221050148
Document Type: Article
Language: Russian
Citation: M. M. Krasnov, V. A. Balashov, E. B. Savenkov, “A grid-operator framework for efficient implementation of explicit finite difference schemes”, Matem. Mod., 33:2 (2021), 20–40; Math. Models Comput. Simul., 13:5 (2021), 831–843
Citation in format AMSBIB
\Bibitem{KraBalSav21}
\by M.~M.~Krasnov, V.~A.~Balashov, E.~B.~Savenkov
\paper A grid-operator framework for efficient implementation of explicit finite difference schemes
\jour Matem. Mod.
\yr 2021
\vol 33
\issue 2
\pages 20--40
\mathnet{http://mi.mathnet.ru/mm4259}
\crossref{https://doi.org/10.20948/mm-2021-02-02}
\transl
\jour Math. Models Comput. Simul.
\yr 2021
\vol 13
\issue 5
\pages 831--843
\crossref{https://doi.org/10.1134/S2070048221050148}
Linking options:
  • https://www.mathnet.ru/eng/mm4259
  • https://www.mathnet.ru/eng/mm/v33/i2/p20
  • Citing articles in Google Scholar: Russian citations, English citations
    Related articles in Google Scholar: Russian articles, English articles
    Математическое моделирование
     
      Contact us:
     Terms of Use  Registration to the website  Logotypes © Steklov Mathematical Institute RAS, 2024