Peano
Loading...
Searching...
No Matches
fv-fd-coupling Namespace Reference

Variables

 parser
 min_depth
 degrees_of_freedom
 end_time
 number_of_snapshots
 periodic_boundary_conditions_x
 periodic_boundary_conditions_y
 periodic_boundary_conditions_z
 args = parser.parse_args()
list size = [1e6, 1e6, 1e6]
float max_h = 1.1 * min(size) / 3.0**args.min_depth
float min_h = max_h * 3.0 ** (-args.amr_levels)
dict euler_unknowns
 EULER #.
str euler_initial_conditions
str euler_boundary_conditions
str compute_primitive_variables
str euler_max_eigenvalue
str euler_flux
 euler_solver
 initial_conditions
 boundary_conditions
 flux
 max_eigenvalue
dict diffusion_unknowns
 DIFFUSION #.
dict diffusion_auxiliary_variables
str diffusion_initial_conditions
str diffusion_boundary_conditions
str diffusion_stencil
 diffusion_solver
 solver
 _compute_time_step_size
 COUPLING #.
 number_of_variables_euler = euler_solver.auxiliary_variables + euler_solver.unknowns
tuple number_of_variables_diffusion
 last_solver
 project
 PROJECT #.
float time_in_between_plots = 0.0
 dimensions
 offset
 min_end_time
 max_end_time
 first_plot_time_stamp
 periodic_BC
 mode
 make
 True
 make_clean_first
 throw_away_data_after_build

Variable Documentation

◆ _compute_time_step_size

fv-fd-coupling._compute_time_step_size
protected

COUPLING #.

Definition at line 261 of file fv-fd-coupling.py.

◆ args

fv-fd-coupling.args = parser.parse_args()

Definition at line 19 of file fv-fd-coupling.py.

◆ boundary_conditions

fv-fd-coupling.boundary_conditions

Definition at line 119 of file fv-fd-coupling.py.

◆ compute_primitive_variables

str fv-fd-coupling.compute_primitive_variables
Initial value:
1= r"""
2 const auto irho = 1.0 / Q[Shortcuts::rho];
3 const auto u0 = Q[Shortcuts::rhoU + 0] * irho;
4 const auto u1 = Q[Shortcuts::rhoU + 1] * irho;
5#if DIMENSIONS == 3
6 const auto u2 = Q[Shortcuts::rhoU + 2] * irho;
7#endif
8
9#if DIMENSIONS == 3
10 const auto uSq = u0 * u0 + u1 * u1 + u2 * u2;
11 const auto u_n = (normal == 0) ? u0 : (normal == 1) ? u1 : u2;
12#else
13 const auto uSq = u0 * u0 + u1 * u1;
14 const auto u_n = (normal == 0) ? u0 : u1;
15#endif
16
17 const auto internalE = Q[Shortcuts::rhoE] - 0.5 * Q[Shortcuts::rho] * uSq;
18 const auto p = (GAMMA - 1.0) * internalE;
19"""

Definition at line 59 of file fv-fd-coupling.py.

◆ degrees_of_freedom

fv-fd-coupling.degrees_of_freedom

Definition at line 12 of file fv-fd-coupling.py.

◆ diffusion_auxiliary_variables

dict fv-fd-coupling.diffusion_auxiliary_variables
Initial value:
1= {
2 "rho": 1,
3}

Definition at line 135 of file fv-fd-coupling.py.

◆ diffusion_boundary_conditions

str fv-fd-coupling.diffusion_boundary_conditions
Initial value:
1= """
2 // Reflective boundary conditions
3 Qoutside0[Shortcuts::rhoU] = -Qinside[Shortcuts::rhoU];
4 Qoutside0[Shortcuts::rhoV] = -Qinside[Shortcuts::rhoV];
5#if DIMENSIONS == 3
6 Qoutside0[Shortcuts::rhoW] = -Qinside[Shortcuts::rhoW];
7#endif
8 Qoutside0[Shortcuts::rhoE] = Qinside[Shortcuts::rhoE];
9 Qoutside0[Shortcuts::rho] = Qinside[Shortcuts::rho];
10"""

Definition at line 149 of file fv-fd-coupling.py.

◆ diffusion_initial_conditions

str fv-fd-coupling.diffusion_initial_conditions
Initial value:
1= f"""
2 Q[Shortcuts::rhoU] = 0.0;
3 Q[Shortcuts::rhoV] = 0.0;
4#if DIMENSIONS == 3
5 Q[Shortcuts::rhoW] = 0.0;
6#endif
7 Q[Shortcuts::rhoE] = ((x(0) < {size[0] / 2}) ? (1.01) : (1.0));
8 Q[Shortcuts::rho] = 0.1;
9"""

Definition at line 139 of file fv-fd-coupling.py.

◆ diffusion_solver

fv-fd-coupling.diffusion_solver
Initial value:
1= exahype2.solvers.fd.GlobalAdaptiveTimeStep(
2 name="DiffusionSolver",
3 patch_size=args.degrees_of_freedom,
4 unknowns=diffusion_unknowns,
5 auxiliary_variables=diffusion_auxiliary_variables,
6 min_h=min_h,
7 max_h=max_h,
8 time_step_relaxation=0.5,
9 solvers_before_in_coupling=[euler_solver],
10 order=1,
11)

Definition at line 236 of file fv-fd-coupling.py.

◆ diffusion_stencil

str fv-fd-coupling.diffusion_stencil

Definition at line 160 of file fv-fd-coupling.py.

◆ diffusion_unknowns

dict fv-fd-coupling.diffusion_unknowns
Initial value:
1= {
2 "rhoU": 1,
3 "rhoV": 1,
4}

DIFFUSION #.

Definition at line 128 of file fv-fd-coupling.py.

◆ dimensions

fv-fd-coupling.dimensions

Definition at line 429 of file fv-fd-coupling.py.

◆ end_time

fv-fd-coupling.end_time

Definition at line 13 of file fv-fd-coupling.py.

◆ euler_boundary_conditions

str fv-fd-coupling.euler_boundary_conditions
Initial value:
1= """
2 // Reflective boundary conditions
3 Qoutside[Shortcuts::rho] = Qinside[Shortcuts::rho];
4 Qoutside[Shortcuts::rhoU] = -Qinside[Shortcuts::rhoU];
5 Qoutside[Shortcuts::rhoV] = -Qinside[Shortcuts::rhoV];
6#if DIMENSIONS == 3
7 Qoutside[Shortcuts::rhoW] = -Qinside[Shortcuts::rhoW];
8#endif
9 Qoutside[Shortcuts::rhoE] = Qinside[Shortcuts::rhoE];
10"""

Definition at line 48 of file fv-fd-coupling.py.

◆ euler_flux

str fv-fd-coupling.euler_flux
Initial value:
1= r"""
2 {compute_primitive_variables}
3
4 F[Shortcuts::rho] = Q[Shortcuts::rhoU + normal];
5
6 F[Shortcuts::rhoU + 0] = Q[Shortcuts::rhoU + 0] * u_n;
7 F[Shortcuts::rhoU + 1] = Q[Shortcuts::rhoU + 1] * u_n;
8#if DIMENSIONS == 3
9 F[Shortcuts::rhoU + 2] = Q[Shortcuts::rhoU + 2] * u_n;
10#endif
11
12 F[Shortcuts::rhoU + normal] += p;
13
14 F[Shortcuts::rhoE] = (Q[Shortcuts::rhoE] + p) * u_n;
15""".format(
16 compute_primitive_variables=compute_primitive_variables
17)

Definition at line 89 of file fv-fd-coupling.py.

◆ euler_initial_conditions

str fv-fd-coupling.euler_initial_conditions
Initial value:
1= f"""
2 Q[Shortcuts::rho] = 0.1;
3 Q[Shortcuts::rhoU] = 0.0;
4 Q[Shortcuts::rhoV] = 0.0;
5#if DIMENSIONS == 3
6 Q[Shortcuts::rhoW] = 0.0;
7#endif
8 Q[Shortcuts::rhoE] = ((x(0) < {size[0] / 2}) ? (1.01) : (1.0));
9"""

Definition at line 38 of file fv-fd-coupling.py.

◆ euler_max_eigenvalue

str fv-fd-coupling.euler_max_eigenvalue
Initial value:
1= r"""
2 {compute_primitive_variables}
3 const auto speedOfSound = std::sqrt(GAMMA * p * irho);
4 auto result = std::fmax(0.0, std::fabs(u_n - speedOfSound));
5 result = std::fmax(result, std::fabs(u_n + speedOfSound));
6 return result;
7""".format(
8 compute_primitive_variables=compute_primitive_variables
9)

Definition at line 79 of file fv-fd-coupling.py.

◆ euler_solver

fv-fd-coupling.euler_solver
Initial value:
1= exahype2.solvers.fv.godunov.GlobalAdaptiveTimeStep(
2 name="EulerFVSolver",
3 patch_size=args.degrees_of_freedom,
4 unknowns=euler_unknowns,
5 auxiliary_variables=0,
6 min_volume_h=min_h,
7 max_volume_h=max_h,
8 time_step_relaxation=0.5,
9)

Definition at line 107 of file fv-fd-coupling.py.

◆ euler_unknowns

dict fv-fd-coupling.euler_unknowns
Initial value:
1= {
2 "rho": 1,
3 "rhoU": 1,
4 "rhoV": 1,
5}

EULER #.

Definition at line 29 of file fv-fd-coupling.py.

◆ first_plot_time_stamp

fv-fd-coupling.first_plot_time_stamp

Definition at line 434 of file fv-fd-coupling.py.

◆ flux

fv-fd-coupling.flux

Definition at line 120 of file fv-fd-coupling.py.

◆ initial_conditions

fv-fd-coupling.initial_conditions

Definition at line 118 of file fv-fd-coupling.py.

◆ last_solver

fv-fd-coupling.last_solver

Definition at line 406 of file fv-fd-coupling.py.

◆ make

fv-fd-coupling.make

Definition at line 453 of file fv-fd-coupling.py.

◆ make_clean_first

fv-fd-coupling.make_clean_first

Definition at line 453 of file fv-fd-coupling.py.

◆ max_eigenvalue

fv-fd-coupling.max_eigenvalue

Definition at line 121 of file fv-fd-coupling.py.

◆ max_end_time

fv-fd-coupling.max_end_time

Definition at line 433 of file fv-fd-coupling.py.

◆ max_h

float fv-fd-coupling.max_h = 1.1 * min(size) / 3.0**args.min_depth

Definition at line 22 of file fv-fd-coupling.py.

◆ min_depth

fv-fd-coupling.min_depth

Definition at line 11 of file fv-fd-coupling.py.

◆ min_end_time

fv-fd-coupling.min_end_time

Definition at line 432 of file fv-fd-coupling.py.

◆ min_h

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

Definition at line 23 of file fv-fd-coupling.py.

◆ mode

fv-fd-coupling.mode

Definition at line 445 of file fv-fd-coupling.py.

◆ number_of_snapshots

fv-fd-coupling.number_of_snapshots

Definition at line 14 of file fv-fd-coupling.py.

◆ number_of_variables_diffusion

tuple fv-fd-coupling.number_of_variables_diffusion
Initial value:
1= (
2 diffusion_solver.auxiliary_variables + diffusion_solver.unknowns
3)

Definition at line 270 of file fv-fd-coupling.py.

◆ number_of_variables_euler

fv-fd-coupling.number_of_variables_euler = euler_solver.auxiliary_variables + euler_solver.unknowns

Definition at line 269 of file fv-fd-coupling.py.

◆ offset

fv-fd-coupling.offset

Definition at line 431 of file fv-fd-coupling.py.

◆ parser

fv-fd-coupling.parser
Initial value:
1= exahype2.ArgumentParser(
2 "ExaHyPE 2 - Finite Volumes/Finite Differences Coupling Testing Script"
3)

Definition at line 6 of file fv-fd-coupling.py.

◆ periodic_BC

fv-fd-coupling.periodic_BC

Definition at line 436 of file fv-fd-coupling.py.

◆ periodic_boundary_conditions_x

fv-fd-coupling.periodic_boundary_conditions_x

Definition at line 15 of file fv-fd-coupling.py.

◆ periodic_boundary_conditions_y

fv-fd-coupling.periodic_boundary_conditions_y

Definition at line 16 of file fv-fd-coupling.py.

◆ periodic_boundary_conditions_z

fv-fd-coupling.periodic_boundary_conditions_z

Definition at line 17 of file fv-fd-coupling.py.

◆ project

fv-fd-coupling.project
Initial value:
1= exahype2.Project(
2 namespace=["tests", "exahype2", "fvfd"],
3 project_name=".",
4 directory=".",
5 executable="ExaHyPE",
6)

PROJECT #.

Definition at line 412 of file fv-fd-coupling.py.

◆ size

fv-fd-coupling.size = [1e6, 1e6, 1e6]

Definition at line 21 of file fv-fd-coupling.py.

◆ solver

fv-fd-coupling.solver

Definition at line 251 of file fv-fd-coupling.py.

◆ throw_away_data_after_build

fv-fd-coupling.throw_away_data_after_build

Definition at line 453 of file fv-fd-coupling.py.

◆ time_in_between_plots

fv-fd-coupling.time_in_between_plots = 0.0

Definition at line 423 of file fv-fd-coupling.py.

◆ True

fv-fd-coupling.True

Definition at line 453 of file fv-fd-coupling.py.