Peano
Loading...
Searching...
No Matches
radial-dam-break Namespace Reference

Variables

str define_radial_dam
 
str initial_conditions
 
str boundary_conditions
 
str refinement_criterion
 
str limiting_criterion
 
 parser = SWEArgumentParser()
 
 end_time
 
 width
 
 args = parser.parse_args()
 
tuple max_h = (1.1 * min(args.width) / (3.0**args.min_depth))
 
tuple min_h = max_h * 3.0 ** (-args.amr_levels)
 
 patch_size
 
dict unknowns = {"h": 1, "hu": 1, "hv": 1, "b": 1}
 
 aderdg_solver
 
 plot_description
 
 is_linear
 
 False
 
 polynomials
 
dict auxiliary_variables = {"b": 1}
 
 riemann_solver
 
 limiting_solver
 
 project
 
float time_in_between_plots = 0.0
 
 dimensions
 
 size
 
 offset
 
 min_end_time
 
 max_end_time
 
 first_plot_time_stamp
 
 periodic_BC
 
str strategy = f"toolbox::loadbalancing::strategies::{args.load_balancing_strategy}"
 
 assume_periodic_boundary_conditions
 
tuple configuration
 
 mode
 
 make
 
 True
 
 make_clean_first
 
 throw_away_data_after_build
 

Variable Documentation

◆ aderdg_solver

radial-dam-break.aderdg_solver
Initial value:
1= exahype2.solvers.aderdg.GlobalAdaptiveTimeStep(
2 name="ADERDG" + str(args.dg_order),
3 order=args.dg_order,
4 unknowns=unknowns,
5 auxiliary_variables=0,
6 min_cell_h=min_h,
7 max_cell_h=max_h,
8 time_step_relaxation=args.time_step_relaxation,
9 initial_conditions=initial_conditions,
10 boundary_conditions=boundary_conditions,
11 refinement_criterion=refinement_criterion,
12 flux="applications::exahype2::swe::flux(Q, x, h, t, dt, normal, F);",
13 ncp="applications::exahype2::swe::nonconservativeProduct(Q, deltaQ, x, h, t, dt, normal, BTimesDeltaQ);",
14 eigenvalues=,
15)

Definition at line 78 of file radial-dam-break.py.

◆ args

radial-dam-break.args = parser.parse_args()

Definition at line 70 of file radial-dam-break.py.

◆ assume_periodic_boundary_conditions

radial-dam-break.assume_periodic_boundary_conditions
Initial value:
1= any([
2 args.periodic_boundary_conditions_x,
3 args.periodic_boundary_conditions_y,
4 ])

Definition at line 169 of file radial-dam-break.py.

◆ auxiliary_variables

dict radial-dam-break.auxiliary_variables = {"b": 1}

Definition at line 106 of file radial-dam-break.py.

◆ boundary_conditions

str radial-dam-break.boundary_conditions
Initial value:
1= """
2 using s = VariableShortcuts;
3 Qoutside[s::h] = Qinside[s::h];
4 Qoutside[s::hu] = -Qinside[s::hu];
5 Qoutside[s::hv] = -Qinside[s::hv];
6 Qoutside[s::b] = Qinside[s::b];
7"""

Definition at line 49 of file radial-dam-break.py.

◆ configuration

tuple radial-dam-break.configuration
Initial value:
1= (
2 f"new ::exahype2::LoadBalancingConfiguration("
3 f"{args.load_balancing_quality},"
4 f"0,"
5 f"{'true' if assume_periodic_boundary_conditions else 'false'},"
6 f"{args.trees},"
7 f"{args.trees})"
8 )

Definition at line 173 of file radial-dam-break.py.

◆ define_radial_dam

str radial-dam-break.define_radial_dam
Initial value:
1= """
2 constexpr double DAM_RADIUS = 1.0;
3
4 const double domainSizeHalfX = DomainSize[0] / 2.0;
5 const double domainSizeHalfY = DomainSize[1] / 2.0;
6
7 const double distanceFromOrigin = std::sqrt(
8 (x[0] - domainSizeHalfX) * (x[0] - domainSizeHalfX) +
9 (x[1] - domainSizeHalfY) * (x[1] - domainSizeHalfY)
10 );
11
12 const bool isInsideDam = distanceFromOrigin <= DAM_RADIUS;
13 const bool isOutsideDam = distanceFromOrigin > DAM_RADIUS;
14 const bool isDryRing = distanceFromOrigin >= 2 * DAM_RADIUS and distanceFromOrigin <= 3 * DAM_RADIUS;
15"""

Definition at line 13 of file radial-dam-break.py.

◆ dimensions

radial-dam-break.dimensions

Definition at line 154 of file radial-dam-break.py.

◆ end_time

radial-dam-break.end_time

Definition at line 67 of file radial-dam-break.py.

◆ False

radial-dam-break.False

Definition at line 98 of file radial-dam-break.py.

◆ first_plot_time_stamp

radial-dam-break.first_plot_time_stamp

Definition at line 159 of file radial-dam-break.py.

◆ initial_conditions

str radial-dam-break.initial_conditions
Initial value:
1= define_radial_dam + """
2 constexpr double INITIAL_WATER_HEIGHT_INSIDE_DAM = 1.1;
3 constexpr double INITIAL_WATER_HEIGHT_OUTSIDE_DAM = 1.0;
4 constexpr double BATHYMETRY_DRY_RING = 1.2;
5
6 for (int i = 0; i < NumberOfUnknowns + NumberOfAuxiliaryVariables; i++) {
7 Q[i] = 0.0;
8 }
9
10 using s = VariableShortcuts;
11
12 Q[s::h] = isInsideDam ? INITIAL_WATER_HEIGHT_INSIDE_DAM : INITIAL_WATER_HEIGHT_OUTSIDE_DAM;
13
14 if (isDryRing) {
15 Q[s::h] = 0.0; // Dry ring
16 }
17
18 Q[s::b] = isDryRing ? BATHYMETRY_DRY_RING : 0.0;
19"""

Definition at line 29 of file radial-dam-break.py.

◆ is_linear

radial-dam-break.is_linear

Definition at line 98 of file radial-dam-break.py.

◆ limiting_criterion

str radial-dam-break.limiting_criterion
Initial value:
1= define_radial_dam + """
2 return distanceFromOrigin < DAM_RADIUS * 2; // Everything outside the dam (includes the dry ring) shall be limited
3"""

Definition at line 61 of file radial-dam-break.py.

◆ limiting_solver

radial-dam-break.limiting_solver
Initial value:
1= exahype2.solvers.limiting.StaticLimiting(
2 name="Limiting",
3 regular_solver=aderdg_solver,
4 limiting_solver=riemann_solver,
5 limiting_criterion_implementation=limiting_criterion
6)

Definition at line 130 of file radial-dam-break.py.

◆ make

radial-dam-break.make

Definition at line 191 of file radial-dam-break.py.

◆ make_clean_first

radial-dam-break.make_clean_first

Definition at line 191 of file radial-dam-break.py.

◆ max_end_time

radial-dam-break.max_end_time

Definition at line 158 of file radial-dam-break.py.

◆ max_h

tuple radial-dam-break.max_h = (1.1 * min(args.width) / (3.0**args.min_depth))

Definition at line 72 of file radial-dam-break.py.

◆ min_end_time

radial-dam-break.min_end_time

Definition at line 157 of file radial-dam-break.py.

◆ min_h

tuple radial-dam-break.min_h = max_h * 3.0 ** (-args.amr_levels)

Definition at line 73 of file radial-dam-break.py.

◆ mode

radial-dam-break.mode

Definition at line 185 of file radial-dam-break.py.

◆ offset

radial-dam-break.offset

Definition at line 156 of file radial-dam-break.py.

◆ parser

radial-dam-break.parser = SWEArgumentParser()

Definition at line 65 of file radial-dam-break.py.

◆ patch_size

radial-dam-break.patch_size

Definition at line 74 of file radial-dam-break.py.

◆ periodic_BC

radial-dam-break.periodic_BC

Definition at line 161 of file radial-dam-break.py.

◆ plot_description

radial-dam-break.plot_description

Definition at line 96 of file radial-dam-break.py.

◆ polynomials

radial-dam-break.polynomials

Definition at line 98 of file radial-dam-break.py.

◆ project

radial-dam-break.project
Initial value:
1= exahype2.Project(
2 namespace=["applications", "exahype2", "swe"],
3 project_name="RadialDamBreak",
4 directory=".",
5 executable=f"RadialDamBreak.{args.build_mode}",
6)

Definition at line 137 of file radial-dam-break.py.

◆ refinement_criterion

str radial-dam-break.refinement_criterion
Initial value:
1= define_radial_dam + """
2 return isInsideDam ? ::exahype2::RefinementCommand::Refine : ::exahype2::RefinementCommand::Keep;
3"""

Definition at line 57 of file radial-dam-break.py.

◆ riemann_solver

radial-dam-break.riemann_solver
Initial value:
1= exahype2.solvers.fv.riemann.GlobalAdaptiveTimeStep(
2 name="HLLEM" + str(args.patch_size),
3 patch_size=args.patch_size,
4 unknowns=unknowns,
5 auxiliary_variables=auxiliary_variables,
6 min_volume_h=min_h,
7 max_volume_h=max_h,
8 time_step_relaxation=args.time_step_relaxation,
9 pde_terms_without_state=args.stateless,
10 initial_conditions=re.sub(r'\bx\b', 'volumeCentre', initial_conditions),
11 boundary_conditions=boundary_conditions,
12 riemann_solver="return applications::exahype2::swe::hllem(QR, QL, FR, FL, LR, LL, xR, xL, h, t, dt, normal, APDQ, AMDQ);",
13)

Definition at line 108 of file radial-dam-break.py.

◆ size

radial-dam-break.size

Definition at line 155 of file radial-dam-break.py.

◆ strategy

str radial-dam-break.strategy = f"toolbox::loadbalancing::strategies::{args.load_balancing_strategy}"

Definition at line 168 of file radial-dam-break.py.

◆ throw_away_data_after_build

radial-dam-break.throw_away_data_after_build

Definition at line 191 of file radial-dam-break.py.

◆ time_in_between_plots

radial-dam-break.time_in_between_plots = 0.0

Definition at line 148 of file radial-dam-break.py.

◆ True

radial-dam-break.True

Definition at line 191 of file radial-dam-break.py.

◆ unknowns

dict radial-dam-break.unknowns = {"h": 1, "hu": 1, "hv": 1, "b": 1}

Definition at line 76 of file radial-dam-break.py.

◆ width

radial-dam-break.width

Definition at line 68 of file radial-dam-break.py.