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

Data Structures

class  SolverVariant
 

Functions

 clear_dg_kernel_file ()
 
 create_cell_integral_kernel_definitions (namespace, patch_size, unknowns, auxiliary_variables, flux_implementation, ncp_implementation, source_term_implementation, point_source_implementation)
 
 create_cell_integral_kernel_definitions_for_function (function, function_name, namespace, patch_size, unknowns, auxiliary_variables, flux_implementation, ncp_implementation, source_term_implementation, point_source_implementation)
 
 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_dsl (polynomial_basis, solver_variant)
 A set of default volumetric kernel calls.
 
 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

◆ clear_dg_kernel_file()

solvers.rkdg.kernels.clear_dg_kernel_file ( )

Definition at line 19 of file kernels.py.

◆ create_abstract_solver_declarations()

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 173 of file kernels.py.

◆ create_abstract_solver_definitions()

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 426 of file kernels.py.

◆ create_add_solver_contributions_call()

solvers.rkdg.kernels.create_add_solver_contributions_call (   polynomial_basis)

Definition at line 1427 of file kernels.py.

◆ create_cell_integral_kernel_definitions()

solvers.rkdg.kernels.create_cell_integral_kernel_definitions (   namespace,
  patch_size,
  unknowns,
  auxiliary_variables,
  flux_implementation,
  ncp_implementation,
  source_term_implementation,
  point_source_implementation 
)

Definition at line 24 of file kernels.py.

References solvers.rkdg.kernels.create_cell_integral_kernel_definitions_for_function().

Here is the call graph for this function:

◆ create_cell_integral_kernel_definitions_for_function()

solvers.rkdg.kernels.create_cell_integral_kernel_definitions_for_function (   function,
  function_name,
  namespace,
  patch_size,
  unknowns,
  auxiliary_variables,
  flux_implementation,
  ncp_implementation,
  source_term_implementation,
  point_source_implementation 
)

Definition at line 39 of file kernels.py.

Referenced by solvers.rkdg.kernels.create_cell_integral_kernel_definitions().

Here is the caller graph for this function:

◆ create_multiply_with_inverted_mass_matrix_call()

solvers.rkdg.kernels.create_multiply_with_inverted_mass_matrix_call (   polynomial_basis)

Definition at line 1456 of file kernels.py.

◆ create_solver_declarations()

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 686 of file kernels.py.

◆ create_solver_definitions()

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 933 of file kernels.py.

◆ create_start_time_step_implementation_for_fixed_time_stepping()

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 1154 of file kernels.py.

◆ create_volumetric_solver_call()

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 dg 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 1309 of file kernels.py.

◆ create_volumetric_solver_call_dsl()

solvers.rkdg.kernels.create_volumetric_solver_call_dsl (   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 dg 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 1182 of file kernels.py.

◆ get_face_merge_implementation()

solvers.rkdg.kernels.get_face_merge_implementation (   patch_overlap)

Definition at line 1120 of file kernels.py.