Peano
Loading...
Searching...
No Matches
ProjectSolverRepository.template.h
Go to the documentation of this file.
1// **********************************************************************************************
2// *** !!!WARNING!!! ***
3// *** WARNING: AUTO GENERATED FILE! DO NOT MODIFY BY HAND! YOUR CHANGES WILL BE OVERWRITTEN! ***
4// *** !!!WARNING!!! ***
5// *** Generated by Peano's Python API: www.peano-framework.org ***
6// **********************************************************************************************
7#pragma once
8
10
11{% if LOAD_BALANCER!="" -%}
12#include "{{LOAD_BALANCER | replace('::', '/') }}.h"
13{% endif -%}
14
16#include "exahype2/PlotFilter.h"
18
19{% for item in SOLVERS -%}
20#include "{{ item[0] }}.h"
21{# Comment to ensure that jinja2 adds a new line#}
22{% endfor %}
23
24
25{% for item in NAMESPACE -%}
26 namespace {{ item }} {
27{%- endfor %}
28
29 {% for item in SOLVERS -%}
30 extern {{ item[0] }} {{ item[1] }};
31 {# Comment to ensure that jinja2 adds a new line#}
32 {%- endfor %}
33
34
35 extern ::exahype2::RefinementControl refinementControl;
36 extern ::exahype2::PlotFilter plotFilter;
37
38 {% if LOAD_BALANCER!="" -%}
39 extern {{LOAD_BALANCER}} loadBalancer;
40 {% else -%}
42 {% endif -%}
43
44 extern peano4::grid::GridStatistics gridStatisticsAfterGridConstruction;
45
56 double getMinTimeStamp();
57
66 double getMaxTimeStamp();
67 double getMinTimeStepSize();
68 double getMaxTimeStepSize();
69 double getMinMeshSize();
70 double getMaxMeshSize();
71
75 double getMaxAdmissibleMeshSize();
76
80 double getMinAdmissibleMeshSize();
81
82 void startGridConstructionStep();
83 void startGridInitialisationStep();
84
93 void startTimeStep(
94 double globalMinTimeStamp,
95 double globalMaxTimeStamp,
96 double globalMinTimeStepSize,
97 double globalMaxTimeStepSize
98 );
99
100 void startPlottingStep(
101 double globalMinTimeStamp,
102 double globalMaxTimeStamp,
103 double globalMinTimeStepSize,
104 double globalMaxTimeStepSize
105 );
106
107 void finishGridConstructionStep();
108 void finishGridInitialisationStep();
109
132 void finishTimeStep();
133 void finishPlottingStep();
134
135 void startSimulation();
136 void finishSimulation();
137
138 bool mayPlot();
139
155 bool isFirstGridSweepOfTimeStep();
156
168 bool isLastGridSweepOfTimeStep();
169
170 void suspendSolversForOneGridSweep();
171
172 void initLogFilters();
173
174 void initSharedMemoryAndGPUEnvironment();
175
184 std::string getSolverStateDescriptions();
185
186{% for item in NAMESPACE -%}
187 }
188{%- endfor %}
189
190