Peano
Loading...
Searching...
No Matches
exahype2.solvers.rkdg.kernels Namespace Reference

Data Structures

class  SolverVariant
 

Functions

 create_abstract_solver_declarations (flux_implementation, ncp_implementation, eigenvalues_implementation, source_term_implementation, point_source_implementation, pde_terms_without_state)
 
 create_abstract_solver_definitions (flux_implementation, ncp_implementation, eigenvalues_implementation, source_term_implementation, point_source_implementation, pde_terms_without_state)
 
 create_solver_declarations (flux_implementation, ncp_implementation, eigenvalues_implementation, source_term_implementation, point_source_implementation, pde_terms_without_state)
 
 create_solver_definitions (flux_implementation, ncp_implementation, eigenvalues_implementation, source_term_implementation, point_source_implementation, pde_terms_without_state)
 
 get_face_merge_implementation (patch_overlap)
 
 create_start_time_step_implementation_for_fixed_time_stepping (normalised_time_step_size)
 We roll over all reduced data after the last time step, and we plot status info in the first step.
 
 create_volumetric_solver_call (polynomial_basis, solver_variant)
 A set of default volumetric kernel calls.
 
 create_add_solver_contributions_call (polynomial_basis)
 
 create_multiply_with_inverted_mass_matrix_call (polynomial_basis)
 

Function Documentation

◆ create_abstract_solver_declarations()

exahype2.solvers.rkdg.kernels.create_abstract_solver_declarations ( flux_implementation,
ncp_implementation,
eigenvalues_implementation,
source_term_implementation,
point_source_implementation,
pde_terms_without_state )

Definition at line 19 of file kernels.py.

◆ create_abstract_solver_definitions()

exahype2.solvers.rkdg.kernels.create_abstract_solver_definitions ( flux_implementation,
ncp_implementation,
eigenvalues_implementation,
source_term_implementation,
point_source_implementation,
pde_terms_without_state )

Definition at line 218 of file kernels.py.

◆ create_add_solver_contributions_call()

exahype2.solvers.rkdg.kernels.create_add_solver_contributions_call ( polynomial_basis)

Definition at line 1039 of file kernels.py.

◆ create_multiply_with_inverted_mass_matrix_call()

exahype2.solvers.rkdg.kernels.create_multiply_with_inverted_mass_matrix_call ( polynomial_basis)

Definition at line 1068 of file kernels.py.

◆ create_solver_declarations()

exahype2.solvers.rkdg.kernels.create_solver_declarations ( flux_implementation,
ncp_implementation,
eigenvalues_implementation,
source_term_implementation,
point_source_implementation,
pde_terms_without_state )

Definition at line 428 of file kernels.py.

◆ create_solver_definitions()

exahype2.solvers.rkdg.kernels.create_solver_definitions ( flux_implementation,
ncp_implementation,
eigenvalues_implementation,
source_term_implementation,
point_source_implementation,
pde_terms_without_state )

Definition at line 673 of file kernels.py.

◆ create_start_time_step_implementation_for_fixed_time_stepping()

exahype2.solvers.rkdg.kernels.create_start_time_step_implementation_for_fixed_time_stepping ( normalised_time_step_size)

We roll over all reduced data after the last time step, and we plot status info in the first step.

Definition at line 892 of file kernels.py.

◆ create_volumetric_solver_call()

exahype2.solvers.rkdg.kernels.create_volumetric_solver_call ( polynomial_basis,
solver_variant )

A set of default volumetric kernel calls.

You might want to use different solver calls in your code depending on the context.

Difference to Finite Volume (FV) implementation

In the FV code base, I need the implementation routines as argument: As we work with FV, the generic FV class does not know which implementations are around. If you work with a domain-specific Rusanov solver, e.g., then there is no such thing as an ncp.

For the DG schemes, things are different: Every DG solver in ExaHyPE 2 in principle supports the ncp. So the base Python class already instantiates the corresponding dictionary entries, and we can use them straightaway.

Arguments

solver_variant: SolverVariant Picks different implementation variants

Definition at line 921 of file kernels.py.

◆ get_face_merge_implementation()

exahype2.solvers.rkdg.kernels.get_face_merge_implementation ( patch_overlap)

Definition at line 858 of file kernels.py.