Abstract:
In the numerical simulation of gasdynamic flows in areas with complex geometry it is necessary
to use detailed unstructured grids and numerical methods of high accuracy. Galerkin method
with discontinuous basis functions or Discontinuous Galerkin Method (DGM) works well in
dealing with such problems. This approach has several advantages inherent in both finite-element
and finite-difference approximations. At the same time discontinuous Galerkin method has a significant
computational complexity, so the corresponding implementation should efficiently use
all available computational capacity. In order to speed up the calculations operator programming
method was applied while creating the computational module.
Operator programming method allows writing mathematical formulas in programs in compact
form and helps to port the programs to parallel architectures, such as NVidia CUDA and Intel
Xeon Phi. Earlier the operator programming method was implemented for regular threedimensional
Cartesian grids and tree-dimensional locally adaptive grids. In this work, the approach
is applied to three-dimensional tetrahedron meshes. This demonstrates the possibility of
implementation of the method on arbitrary tree-dimensional meshes. Besides, in this work we
give the example of the usage of template metaptogramming methods of the C++ programming
language to speed-up calculations.