Peano
Loading...
Searching...
No Matches
ProjectPatchOntoFaces.py
Go to the documentation of this file.
1# This file is part of the ExaHyPE2 project. For conditions of distribution and
2# use, please see the copyright notice at www.peano-framework.org
4
5
6class ProjectPatchOntoFaces(toolbox.blockstructured.api.ProjectPatchOntoFaces):
7 """!
8
9 Project a patch's data onto the overlap held on its surrounding faces,
10 so the halo layers can be reconstructed from it later on, see
11 toolbox.blockstructured.api.ReconstructPatchWithHalo.
12
13 The fourth-order Finite Differences of @ref exahype2.api.rkfd4 use an
14 overlap of HALO_SIZE grid cells, i.e. each face holds 2*HALO_SIZE layers
15 along its normal. The overlap is taken from the face data, so the action set does
16 not need to know it.
17
18 The class does exactly what its base class
19 toolbox.blockstructured.api.ProjectPatchOntoFaces does: copy the
20 patch's boundary layers into the face overlap. It is a copy of
21 exahype2.api.fv.actionsets.ProjectPatchOntoFaces, as rkfd4 does not
22 depend on the Finite Volume package.
23
24 """
25
26 def __init__(self, patch, patch_overlap_update, guard, includes):
27 """!
28
29 @param patch: peano4.api.datamodel.Patch
30 The cell-associated patch to project onto its surrounding faces,
31 i.e. solver._patch.
32
33 @param patch_overlap_update: peano4.api.datamodel.Patch
34 The face-associated overlap patch to project patch's boundary
35 layers into, i.e. solver._patch_overlap_update.
36
37 @param guard: str
38 C++ boolean expression, evaluated per cell in touchCellLastTime,
39 guarding whether that cell's patch is projected onto its faces.
40
41 @param includes: str
42 Additional includes this action set's generated code needs -
43 callers typically pass solver._get_default_includes() +
44 solver.user_solver_includes.
45
46 """
47 super().__init__(
48 patch,
49 patch_overlap_update,
50 guard,
51 includes,
52 )
53
55 return __name__.replace(".py", "").replace(".", "_")
Project a patch's data onto the overlap held on its surrounding faces, so the halo layers can be reco...