Peano
fv Namespace Reference

Variables

dictionary available_scenarios
 
 parser
 
 choices
 
 default
 
 help
 
 type
 
 action
 
 args = parser.parse_args()
 
dictionary scenario = available_scenarios[args.scenario]
 
dictionary dimensions = scenario._dimensions
 
 depth = args.depth
 
dictionary end_time = scenario._end_time
 
 should_plot = args.plot
 
list size = [scenario._domain_size, scenario._domain_size, scenario._domain_size]
 
list offset = [scenario._offset, scenario._offset, scenario._offset]
 
string plot_description = ""
 
list variable_names = []
 
 project
 
 fv_solver
 
 initial_conditions
 
 boundary_conditions
 
 flux
 
 max_eigenvalue
 
 min_end_time
 
 max_end_time
 
 first_plot_time_stamp
 
 time_in_between_plots = 0.0
 
 periodic_BC
 
 mode
 
 makefile = project.output.makefile
 
list available_precisions = ["float", "double"]
 
 min_depth
 
 degrees_of_freedom
 
 periodic_boundary_conditions_x
 
 periodic_boundary_conditions_y
 
 periodic_boundary_conditions_z
 
string refinement_criterion
 
float max_h = 1.1 / 3.0**args.min_depth
 
float min_h = max_h * 3.0 ** (-args.amr_levels)
 
 storage_precision
 
 precision
 
 compute_precision
 
dictionary particle_attributes
 
 tracer_particles
 
 init_action_set
 
 descend_invocation_order
 
 tracing_action_set
 
 make
 
 True
 
 make_clean_first
 
 throw_away_data_after_build
 

Variable Documentation

◆ action

fv.action

Definition at line 57 of file fv.py.

◆ args

fv.args = parser.parse_args()

Definition at line 61 of file fv.py.

◆ available_precisions

list fv.available_precisions = ["float", "double"]

Definition at line 6 of file fv.py.

◆ available_scenarios

dictionary fv.available_scenarios
Initial value:
1 = {
2  "AcousticPlanarWaves2D": scenarios.AcousticPlanarWaves(dimensions=2),
3  "AcousticPlanarWaves3D": scenarios.AcousticPlanarWaves(dimensions=3),
4  "AdvectionLinear": scenarios.AdvectionLinear(),
5  "EulerGaussianBell": scenarios.EulerGaussianBell(),
6  "EulerIsotropicVortex": scenarios.EulerIsotropicVortex(),
7  "SWERadialDamBreak": scenarios.SWERadialDamBreak(),
8  "SWERestingLake": scenarios.SWERestingLake(),
9 }
Scenario reproduced from Dumbser & Käser, https://doi.org/10.1111/j.1365-246X.2006....
Very simple scenario in which the initial value of x is shifted in each spatial dimension.
Scenario reproduced from Ioratti, Dumbser & Loubère, https://doi.org/10.1007/s10915-020-01209-w (p.
Scenario reproduced from Ioratti, Dumbser & Loubère, https://doi.org/10.1007/s10915-020-01209-w (p.
Classic radial dam break SWE equations, with constant initial water height but a bump in the bathymet...
Resting lake scenario for the shallow water equations.

Definition at line 9 of file fv.py.

◆ boundary_conditions

string fv.boundary_conditions
Initial value:
1 = """
2  for (int i = 0; i < NumberOfUnknowns + NumberOfAuxiliaryVariables; i++) {
3  Qoutside[i] = Qinside[i];
4  }
5 """

Definition at line 99 of file fv.py.

◆ choices

fv.choices

Definition at line 25 of file fv.py.

◆ compute_precision

fv.compute_precision

Definition at line 76 of file fv.py.

◆ default

fv.default

Definition at line 26 of file fv.py.

◆ degrees_of_freedom

fv.degrees_of_freedom

Definition at line 14 of file fv.py.

◆ depth

fv.depth = args.depth

Definition at line 64 of file fv.py.

◆ descend_invocation_order

fv.descend_invocation_order

Definition at line 124 of file fv.py.

◆ dimensions

fv.dimensions = scenario._dimensions

Definition at line 63 of file fv.py.

◆ end_time

dictionary fv.end_time = scenario._end_time

Definition at line 65 of file fv.py.

◆ first_plot_time_stamp

fv.first_plot_time_stamp

Definition at line 116 of file fv.py.

◆ flux

fv.flux

Definition at line 104 of file fv.py.

◆ fv_solver

fv.fv_solver
Initial value:
1 = exahype2.solvers.fv.godunov.GlobalAdaptiveTimeStep(
2  name="FVSolver",
3  patch_size=int(args.patch_size),
4  unknowns=scenario._equation.num_unknowns,
5  auxiliary_variables=scenario._equation.num_auxiliary_variables,
6  min_volume_h=(1.1 * min(size[0:dimensions]) / (3.0**depth)),
7  max_volume_h=(1.1 * min(size[0:dimensions]) / (3.0**depth)),
8  time_step_relaxation=0.5,
9  use_enclave_tasking=True,
10 )
static double min(double const x, double const y)

Definition at line 86 of file fv.py.

◆ help

fv.help

Definition at line 27 of file fv.py.

◆ init_action_set

fv.init_action_set
Initial value:
1 = exahype2.tracer.InsertParticlesFromFile(
2  particle_set=tracer_particles,
3  filename="ICParticles.dat",
4  scale_factor=1.0,
5 )

Definition at line 118 of file fv.py.

◆ initial_conditions

string fv.initial_conditions
Initial value:
1 = """
2  for (int i = 0; i < NumberOfUnknowns + NumberOfAuxiliaryVariables; i++) {
3  Q[i] = std::sin(x(0) * tarch::la::PI) * std::sin(x(1) * tarch::la::PI)
4 #if DIMENSIONS == 3
5  * std::sin(x(2) * tarch::la::PI)
6 #endif
7  ;
8  }
9 """

Definition at line 98 of file fv.py.

◆ make

fv.make

Definition at line 177 of file fv.py.

◆ make_clean_first

fv.make_clean_first

Definition at line 177 of file fv.py.

◆ makefile

fv.makefile = project.output.makefile

Definition at line 139 of file fv.py.

◆ max_eigenvalue

fv.max_eigenvalue

Definition at line 105 of file fv.py.

◆ max_end_time

fv.max_end_time

Definition at line 115 of file fv.py.

◆ max_h

float fv.max_h = 1.1 / 3.0**args.min_depth

Definition at line 49 of file fv.py.

◆ min_depth

fv.min_depth

Definition at line 13 of file fv.py.

◆ min_end_time

fv.min_end_time

Definition at line 114 of file fv.py.

◆ min_h

float fv.min_h = max_h * 3.0 ** (-args.amr_levels)

Definition at line 50 of file fv.py.

◆ mode

fv.mode

Definition at line 122 of file fv.py.

◆ offset

fv.offset = [scenario._offset, scenario._offset, scenario._offset]

Definition at line 68 of file fv.py.

◆ parser

fv.parser
Initial value:
1 = argparse.ArgumentParser(
2  description="ExaHyPE 2 - Finite Volumes Kernel Benchmarking Script"
3 )

Definition at line 18 of file fv.py.

◆ particle_attributes

dictionary fv.particle_attributes
Initial value:
1 = {
2  "unknowns": {
3  "rho": 1,
4  "fluid_u": 1,
5  "fluid_v": 1,
6  "fluid_w": 1, # Interpolated fluid velocity
7  "u": 1,
8  "v": 1,
9  "w": 1, # Particle's own velocity "a_x": 1, "a_y": 1, "a_z": 1, "d": 1, } if args.dimensions == 3 else { "rho": 1, "fluid_u": 1, "fluid_v": 1, # Interpolated fluid velocity "u": 1, "v": 1, # Particle's own velocity
10  "a_x": 1,
11  "a_y": 1,
12  "d": 1,
13  }
14 }

Definition at line 87 of file fv.py.

◆ periodic_BC

fv.periodic_BC

Definition at line 118 of file fv.py.

◆ periodic_boundary_conditions_x

fv.periodic_boundary_conditions_x

Definition at line 15 of file fv.py.

◆ periodic_boundary_conditions_y

fv.periodic_boundary_conditions_y

Definition at line 16 of file fv.py.

◆ periodic_boundary_conditions_z

fv.periodic_boundary_conditions_z

Definition at line 17 of file fv.py.

◆ plot_description

string fv.plot_description = ""

Definition at line 69 of file fv.py.

◆ precision

fv.precision

Definition at line 76 of file fv.py.

◆ project

fv.project
Initial value:
1 = exahype2.Project(
2  namespace=["benchmarks", "exahype2", "kernelbenchmarks"],
3  project_name="KernelBenchmarks",
4  directory=".",
5  executable="KernelBenchmarks",
6 )

Definition at line 79 of file fv.py.

◆ refinement_criterion

fv.refinement_criterion
Initial value:
1 = """
2  auto result = ::exahype2::RefinementCommand::Keep;
3 
4  if (x(0) > 0.5) {
5  result = ::exahype2::RefinementCommand::Refine;
6  } else {
7  result = ::exahype2::RefinementCommand::Erase;
8  }
9 
10  return result;
11 """

Definition at line 37 of file fv.py.

◆ scenario

dictionary fv.scenario = available_scenarios[args.scenario]

Definition at line 62 of file fv.py.

◆ should_plot

fv.should_plot = args.plot

Definition at line 66 of file fv.py.

◆ size

fv.size = [scenario._domain_size, scenario._domain_size, scenario._domain_size]

Definition at line 67 of file fv.py.

◆ storage_precision

fv.storage_precision

Definition at line 76 of file fv.py.

◆ throw_away_data_after_build

fv.throw_away_data_after_build

Definition at line 177 of file fv.py.

◆ time_in_between_plots

float fv.time_in_between_plots = 0.0

Definition at line 117 of file fv.py.

◆ tracer_particles

fv.tracer_particles
Initial value:
1 = project.add_tracer(
2  name="Tracers", particle_attributes=particle_attributes
3 )

Definition at line 114 of file fv.py.

◆ tracing_action_set

fv.tracing_action_set
Initial value:
1 = exahype2.tracer.FiniteVolumesTracing(
2  tracer_particles,
3  fv_solver,
4  project_on_tracer_properties_kernel="::exahype2::fv::updateParticleState<0, 1, 2>",
5  projection_kernel_arguments=,
6 )

Definition at line 127 of file fv.py.

◆ True

fv.True

Definition at line 177 of file fv.py.

◆ type

fv.type

Definition at line 33 of file fv.py.

◆ variable_names

list fv.variable_names = []

Definition at line 70 of file fv.py.