Peano
Loading...
Searching...
No Matches
artificial-tsunami Namespace Reference

Variables

float end_time = 10.0
list size = [10000, 10000]
list offset = [-5000, -5000]
int min_depth = 4
int amr_levels = 0
int dg_order = 5
int number_of_snapshots = 0
str build_mode = "Release"
str output = "solutions"
str initial_conditions
str boundary_conditions
str refinement_criterion
dict constants
float max_h = 1.1 * min(size) / (3.0**min_depth)
float min_h = max_h * 3.0 ** (-amr_levels)
 aderdg_solver
 flux
 ncp
 max_eigenvalue
 is_linear
 False
 polynomials
 project
float time_in_between_plots = 0.0
 dimensions
 min_end_time
 max_end_time
 first_plot_time_stamp
 periodic_BC
 mode
 const_val
 const_type
 make
 True
 make_clean_first
 throw_away_data_after_build
 parser = exahype2.ArgumentParser()
 args = parser.parse_args()

Variable Documentation

◆ aderdg_solver

artificial-tsunami.aderdg_solver
Initial value:
1= exahype2.solvers.aderdg.GlobalAdaptiveTimeStep(
2 name="ADERDGSolver",
3 order=dg_order,
4 unknowns={"h": 1, "hu": 1, "hv": 1, "z": 1},
5 auxiliary_variables=0,
6 min_cell_h=min_h,
7 max_cell_h=max_h,
8 time_step_relaxation=0.5,
9)

Definition at line 68 of file artificial-tsunami.py.

◆ amr_levels

int artificial-tsunami.amr_levels = 0

Definition at line 16 of file artificial-tsunami.py.

◆ args

artificial-tsunami.args = parser.parse_args()

Definition at line 52 of file artificial-tsunami.py.

◆ boundary_conditions

str artificial-tsunami.boundary_conditions
Initial value:
1= """
2 Qoutside[Shortcuts::h] = Qinside[Shortcuts::h];
3 Qoutside[Shortcuts::hu] = -Qinside[Shortcuts::hu];
4 Qoutside[Shortcuts::hv] = -Qinside[Shortcuts::hv];
5 Qoutside[Shortcuts::z] = Qinside[Shortcuts::z];
6"""

Definition at line 45 of file artificial-tsunami.py.

◆ build_mode

str artificial-tsunami.build_mode = "Release"

Definition at line 19 of file artificial-tsunami.py.

◆ const_type

artificial-tsunami.const_type

Definition at line 120 of file artificial-tsunami.py.

◆ const_val

artificial-tsunami.const_val

Definition at line 120 of file artificial-tsunami.py.

◆ constants

dict artificial-tsunami.constants
Initial value:
1= {
2 "g": [9.81, "double"],
3 "hThreshold": [1e-5, "double"],
4}

Definition at line 60 of file artificial-tsunami.py.

◆ dg_order

int artificial-tsunami.dg_order = 5

Definition at line 17 of file artificial-tsunami.py.

◆ dimensions

artificial-tsunami.dimensions

Definition at line 106 of file artificial-tsunami.py.

◆ end_time

artificial-tsunami.end_time = 10.0

Definition at line 12 of file artificial-tsunami.py.

◆ False

artificial-tsunami.False

Definition at line 89 of file artificial-tsunami.py.

◆ first_plot_time_stamp

artificial-tsunami.first_plot_time_stamp

Definition at line 111 of file artificial-tsunami.py.

◆ flux

artificial-tsunami.flux

Definition at line 82 of file artificial-tsunami.py.

◆ initial_conditions

str artificial-tsunami.initial_conditions
Initial value:
1= """
2 for (int i = 0; i < NumberOfUnknowns + NumberOfAuxiliaryVariables; i++) {
3 Q[i] = 0.0;
4 }
5
6 constexpr double INITIAL_WATER_HEIGHT = 100.0;
7 constexpr double INITIAL_BATHYMETRY_BEFORE_EARTHQUAKE = -100.0;
8
9 Q[Shortcuts::h] = INITIAL_WATER_HEIGHT;
10
11 auto displacementX = [](double x) { return std::sin((x / 500.0 + 1.0) * tarch::la::PI); };
12 auto displacementY = [](double y) { return -std::pow(y / 500.0, 2) + 1.0; };
13 auto displacement = [&](double x, double y) { return 5.0 * displacementX(x) * displacementY(y); };
14
15 const double bathymetryAfterEarthquake = INITIAL_BATHYMETRY_BEFORE_EARTHQUAKE + displacement(x(0), x(1));
16
17 if (std::abs(x(0)) <= 500 and std::abs(x(1)) <= 500) { // Center of domain is [0, 0]
18 Q[Shortcuts::z] = bathymetryAfterEarthquake;
19 } else {
20 Q[Shortcuts::z] = INITIAL_BATHYMETRY_BEFORE_EARTHQUAKE;
21 }
22"""

Definition at line 22 of file artificial-tsunami.py.

◆ is_linear

artificial-tsunami.is_linear

Definition at line 89 of file artificial-tsunami.py.

◆ make

artificial-tsunami.make

Definition at line 125 of file artificial-tsunami.py.

◆ make_clean_first

artificial-tsunami.make_clean_first

Definition at line 125 of file artificial-tsunami.py.

◆ max_eigenvalue

artificial-tsunami.max_eigenvalue

Definition at line 84 of file artificial-tsunami.py.

◆ max_end_time

artificial-tsunami.max_end_time

Definition at line 110 of file artificial-tsunami.py.

◆ max_h

float artificial-tsunami.max_h = 1.1 * min(size) / (3.0**min_depth)

Definition at line 65 of file artificial-tsunami.py.

◆ min_depth

artificial-tsunami.min_depth = 4

Definition at line 15 of file artificial-tsunami.py.

◆ min_end_time

artificial-tsunami.min_end_time

Definition at line 109 of file artificial-tsunami.py.

◆ min_h

float artificial-tsunami.min_h = max_h * 3.0 ** (-amr_levels)

Definition at line 66 of file artificial-tsunami.py.

◆ mode

artificial-tsunami.mode

Definition at line 117 of file artificial-tsunami.py.

◆ ncp

artificial-tsunami.ncp

Definition at line 83 of file artificial-tsunami.py.

◆ number_of_snapshots

int artificial-tsunami.number_of_snapshots = 0

Definition at line 18 of file artificial-tsunami.py.

◆ offset

artificial-tsunami.offset = [-5000, -5000]

Definition at line 14 of file artificial-tsunami.py.

◆ output

str artificial-tsunami.output = "solutions"

Definition at line 20 of file artificial-tsunami.py.

◆ parser

artificial-tsunami.parser = exahype2.ArgumentParser()

Definition at line 47 of file artificial-tsunami.py.

◆ periodic_BC

artificial-tsunami.periodic_BC

Definition at line 113 of file artificial-tsunami.py.

◆ polynomials

artificial-tsunami.polynomials

Definition at line 89 of file artificial-tsunami.py.

◆ project

artificial-tsunami.project
Initial value:
1= exahype2.Project(
2 namespace=["benchmarks", "exahype2", "swe"],
3 project_name="ArtificialTsunami",
4 directory=".",
5 executable=f"ArtificialTsunami",
6)

Definition at line 91 of file artificial-tsunami.py.

◆ refinement_criterion

str artificial-tsunami.refinement_criterion
Initial value:
1= """
2 auto result = ::exahype2::RefinementCommand::Keep;
3 if (std::abs(x(0)) <= 500 and std::abs(x(1)) <= 500) { // Center of domain is [0, 0]
4 result = ::exahype2::RefinementCommand::Refine;
5 }
6 return result;
7"""

Definition at line 52 of file artificial-tsunami.py.

◆ size

list artificial-tsunami.size = [10000, 10000]

Definition at line 13 of file artificial-tsunami.py.

◆ throw_away_data_after_build

artificial-tsunami.throw_away_data_after_build

Definition at line 125 of file artificial-tsunami.py.

◆ time_in_between_plots

float artificial-tsunami.time_in_between_plots = 0.0

Definition at line 100 of file artificial-tsunami.py.

◆ True

artificial-tsunami.True

Definition at line 125 of file artificial-tsunami.py.