Peano
Loading...
Searching...
No Matches
exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps Class Reference

Probably the simplest solver you could think off. More...

Inheritance diagram for exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps:
Collaboration diagram for exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps:

Public Member Functions

 __init__ (self, name, rk_order, polynomial_basis, number_of_face_projections, unknowns, auxiliary_variables, min_cell_h, max_cell_h, plot_grid_properties, pde_terms_without_state)
 The super call invokes the creation of the data sets, where the guards have to be known already.
 
 create_data_structures (self)
 First, call the superclass' create_data_structures() to ensure that all the data structures are in place.
 
 create_action_sets (self)
 We invoke the superclass which creates all the action sets, and then we set the appropriate guards.
 
- Public Member Functions inherited from exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG
 __str__ (self)
 
 get_min_number_of_spacetree_levels (self, domain_size)
 
 get_max_number_of_spacetree_levels (self, domain_size)
 
 get_coarsest_number_of_cells (self, domain_size)
 
 get_finest_number_of_cells (self, domain_size)
 
 create_readme_descriptor (self, domain_offset, domain_size)
 
 user_action_set_includes (self)
 Add further includes to this property, if your action sets require some additional routines from other header files.
 
 user_solver_includes (self)
 Add further includes to this property, if your solver requires some additional routines from other header files.
 
 add_user_action_set_includes (self, value)
 Add further includes to this property, if your action sets require some additional routines from other header files.
 
 add_user_solver_includes (self, value)
 Add further includes to this property, if your solver requires some additional routines from other header files.
 
 get_name_of_global_instance (self)
 
 add_to_Peano4_datamodel (self, datamodel, verbose)
 Add all required data to the Peano4 project's datamodel so it is properly built up.
 
 add_use_data_statements_to_Peano4_solver_step (self, step)
 Tell Peano what data to move around.
 
 add_actions_to_init_grid (self, step)
 Add the action sets to the grid initialisation.
 
 add_actions_to_create_grid (self, step, evaluate_refinement_criterion)
 
 set_plot_description (self, description)
 Use this one to set a description within the output patch file that tells the vis solver what the semantics of the entries are.
 
 add_actions_to_plot_solution (self, step, output_path)
 Dump snapshot of solution.
 
 add_actions_to_perform_time_step (self, step)
 The tricky part here is that we have to get the order right.
 
 add_entries_to_text_replacement_dictionary (self, d)
 
 add_implementation_files_to_project (self, namespace, output, dimensions, subdirectory="")
 The ExaHyPE project will call this operation when it sets up the overall environment.
 
 set_solver_constants (self, datastring)
 
 add_solver_constants (self, datastring)
 
 unknowns (self)
 
 auxiliary_variables (self)
 
 unknowns (self, value)
 
 auxiliary_variables (self, value)
 
 number_of_Runge_Kutta_steps (self)
 
 set_implementation (self, flux=None, ncp=None, eigenvalues=None, boundary_conditions=None, refinement_criterion=None, initial_conditions=None, source_term=None, point_source=None, additional_action_set_includes="", additional_user_includes="")
 If you pass in User_Defined, then the generator will create C++ stubs that you have to befill manually.
 
 postprocess_updated_cell_after_Runge_Kutta_step (self)
 
 postprocess_updated_cell_after_final_linear_combination (self)
 
 postprocess_updated_cell_after_Runge_Kutta_step (self, kernel)
 Define a postprocessing routine over the data.
 
 postprocess_updated_cell_after_final_linear_combination (self, kernel)
 Define a postprocessing routine over the data.
 
 switch_storage_scheme (self, Storage cell_data_storage, Storage face_data_storage)
 By default, we hold all data on the call stacks.
 

Protected Attributes

 _name
 
 _rk_order
 
 _initialisation_sweep_guard
 
 _first_iteration_after_initialisation_guard
 
 _primary_sweeps_of_Runge_Kutta_step_on_cell
 
 _secondary_sweeps_of_Runge_Kutta_step_on_cell
 
 _primary_sweeps_of_Runge_Kutta_step_on_face
 
 _secondary_sweeps_of_Runge_Kutta_step_on_face
 
 _any_primary_sweep_of_a_Runge_Kutta_step_on_cell
 
 _any_secondary_sweep_of_a_Runge_Kutta_step_on_cell
 
 _any_primary_sweep_of_a_Runge_Kutta_step_on_face
 
 _any_secondary_sweep_of_a_Runge_Kutta_step_on_face
 
 _solver_template_file_class_name
 
- Protected Attributes inherited from exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG
 _name
 
 _rk_order
 
 _basis
 
 _face_projections
 
 _volumetric_compute_kernel_call
 
 _volumetric_compute_kernel_call_stateless
 
 _Riemann_compute_kernel_call
 
 _Riemann_compute_kernel_call_stateless
 
 _pde_terms_without_state
 
 _add_solver_contributions_call
 
 _multiply_with_inverted_mass_matrix_call
 
 _kernel_namespace
 
 _use_var_shortcut
 
 _variable_names
 
 _variable_pos
 
 _unknowns
 
 _auxiliary_variables
 
 _min_cell_h
 
 _max_cell_h
 
 _plot_grid_properties
 
 _solver_constants
 
 _user_action_set_includes
 
 _user_solver_includes
 
 _solver_template_file_class_name
 
 _action_set_postprocess_solution
 
 _action_set_preprocess_solution
 
 _compute_eigenvalue
 
 _compute_time_step_size
 
 _compute_new_time_step_size
 
 _preprocess_cell
 
 _postprocess_updated_cell_after_Runge_Kutta_step
 
 _postprocess_updated_cell_after_final_linear_combination
 
 _flux_implementation
 
 _ncp_implementation
 
 _eigenvalues_implementation
 
 _source_term_implementation
 
 _point_sources_implementation
 
 _boundary_conditions_implementation
 
 _refinement_criterion_implementation
 
 _initial_conditions_implementation
 
 _abstract_solver_user_declarations
 
 _abstract_solver_user_definitions
 
 _solver_user_declarations
 
 _solver_user_definitions
 
 _start_time_step_implementation
 
 _finish_time_step_implementation
 
 _constructor_implementation
 
 _cell_data_storage
 
 _face_data_storage
 
 _baseline_action_set_descend_invocation_order
 
 _current_time_step
 
 _rhs_estimates
 
 _linear_combination_of_estimates
 
 _estimate_projection
 
 _old_solution_projection
 
 _Riemann_solution
 
 _cell_label
 
 _face_label
 
 _action_set_initial_conditions
 
 _action_set_initial_conditions_for_grid_construction
 
 _action_set_AMR
 
 _action_set_AMR_commit_without_further_analysis
 
 _action_set_AMR_throughout_grid_construction
 
 _action_set_linear_combination_of_estimates
 
 _action_set_project_linear_combination_onto_faces
 
 _action_set_solve_volume_integral
 
 _action_set_handle_boundary
 
 _action_set_solve_Riemann_problem
 
 _action_set_add_volume_and_face_solution
 
 _action_set_compute_final_linear_combination_and_project_solution_onto_faces
 
 _action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement
 
 _action_set_update_face_label
 
 _action_set_update_cell_label
 

Additional Inherited Members

- Data Fields inherited from exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG
 plot_description
 
 select_dofs_to_print
 
- Protected Member Functions inherited from exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG
 _query_fine_grid_cell_in_action_set_if_it_holds_solution (self)
 
 _provide_cell_data_to_compute_kernels_default_guard (self)
 
 _provide_face_data_to_compute_kernels_default_guard (self)
 
 _store_cell_data_default_guard (self)
 Extend the guard via ands only.
 
 _load_cell_data_default_guard (self)
 Extend the guard via ands only.
 
 _store_face_data_default_guard (self)
 Extend the guard via ands only.
 
 _load_face_data_default_guard (self)
 Extend the guard via ands only.
 
 _unknown_identifier (self)
 
 _get_default_includes (self)
 
 _init_dictionary_with_default_parameters (self, d)
 This one is called by all algorithmic steps before I invoke add_entries_to_text_replacement_dictionary().
 

Detailed Description

Probably the simplest solver you could think off.

We run over the grid twice per Runge-Kutta step. In the first step, we compute the linear reconstruction, project this one onto the faces and also compute the volumetric prediction. In the second step, we solve the Riemann problem and add it to the prediction.

In the attribute terminology, we call the two runs over the grid sweeps, i.e., we work with two grid sweeps per Runge-Kutta step.

Definition at line 14 of file SeparateSweeps.py.

Constructor & Destructor Documentation

◆ __init__()

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.__init__ ( self,
name,
rk_order,
polynomial_basis,
number_of_face_projections,
unknowns,
auxiliary_variables,
min_cell_h,
max_cell_h,
plot_grid_properties,
pde_terms_without_state )

Member Function Documentation

◆ create_action_sets()

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_action_sets ( self)

We invoke the superclass which creates all the action sets, and then we set the appropriate guards.

  • _action_set_update_face_label - can be done always
  • _action_set_update_cell_label - can be done always
  • _action_set_linear_combination_of_estimates - primary sweeps only, as these kick off the Runge-Kutta step.
  • _action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement - primary only, as the secondary step is a sole clean-up
  • _action_set_project_linear_combination_onto_faces - only required in primary sweep. In the secondary, we collect the results together, i.e., we don't immediately need the boundary data anymore.
  • _action_set_solve_volume_integral - only done in the primary sweep.
  • _action_set_handle_boundary - only in secondary sweep, as we now have access to the left and right face data and hence can invoke the Riemann solver.
  • _action_set_solve_Riemann_problem - secondary sweep. See discussion of previous item.
  • _action_set_add_volume_and_face_solution - secondary sweep. The Riemann solve plugs into the first touch of a face in the secondary sweep, so now we can sum up the solutions.
  • _action_set_compute_final_linear_combination_and_project_solution_onto_faces - very last secondary sweep.
  • _action_set_AMR - very last secondary sweep, i.e., after we have the final solution.
  • _action_set_postprocess_solution - same as for item above.

    :: Guards around linear combination of estimates

    We rely on the action set LinearCombination as it is initialised in the superclass. So the only thing we have to do is to ensure that the linear combination over the estimates is computed if and only if this is required. For the separate sweeps, we compute the linear combinations if the cell holds data, i.e., is on the finest level, and if it is the primary of the two sweeps which realise a RK step, i.e., the one where we later on project onto the faces.

Reimplemented from exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.

Reimplemented in exahype2.solvers.rkdg.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking.

Definition at line 112 of file SeparateSweeps.py.

References exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_add_volume_and_face_solution, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_compute_final_linear_combination_and_project_solution_onto_faces, exahype2.solvers.aderdg.ADERDG.ADERDG._action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement, exahype2.solvers.fv.FV.FV._action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement, exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement, exahype2.solvers.aderdg.ADERDG.ADERDG._action_set_handle_boundary, exahype2.solvers.fv.FV.FV._action_set_handle_boundary, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_handle_boundary, exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._action_set_handle_boundary, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_linear_combination_of_estimates, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_project_linear_combination_onto_faces, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_solve_Riemann_problem, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._action_set_solve_volume_integral, SBH.Limiter._name, dastgen2.attributes.Attribute.Attribute._name, dastgen2.attributes.BooleanArray.BooleanArray._name, dastgen2.attributes.Enumeration.Enumeration._name, exahype2.solvers.aderdg.ADERDG.ADERDG._name, exahype2.solvers.elliptic.AMRMarker.AMRMarker._name, exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells._name, exahype2.solvers.fv.EnclaveTasking.EnclaveTasking._name, exahype2.solvers.fv.FV.FV._name, exahype2.solvers.limiting.PosterioriLimiting.PosterioriLimiting._name, exahype2.solvers.limiting.StaticLimiting.StaticLimiting._name, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._name, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._name, exahype2.solvers.rkdg.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._name, exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._name, exahype2.solvers.rkfd.OneSweepPerRungeKuttaStep.OneSweepPerRungeKuttaStep._name, exahype2.solvers.rkfd.SeparateSweeps.SeparateSweeps._name, exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._name, peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray._name, peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray._name, solvers.api.Solver.Solver._name, mghype::matrixfree::solvers::Solver._name, api.solvers.Solver.Solver._name, tarch::services::ServiceRepository::ServiceEntry._name, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._primary_sweeps_of_Runge_Kutta_step_on_cell, exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._primary_sweeps_of_Runge_Kutta_step_on_cell, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._primary_sweeps_of_Runge_Kutta_step_on_face, exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._primary_sweeps_of_Runge_Kutta_step_on_face, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._secondary_sweeps_of_Runge_Kutta_step_on_cell, exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._secondary_sweeps_of_Runge_Kutta_step_on_cell, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._secondary_sweeps_of_Runge_Kutta_step_on_face, exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._secondary_sweeps_of_Runge_Kutta_step_on_face, SBH.Limiter._store_cell_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._store_cell_data_default_guard(), exahype2.solvers.fv.FV.FV._store_cell_data_default_guard(), exahype2.solvers.limiting.PosterioriLimiting.PosterioriLimiting._store_cell_data_default_guard(), exahype2.solvers.limiting.StaticLimiting.StaticLimiting._store_cell_data_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._store_cell_data_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._store_cell_data_default_guard(), exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_action_sets(), exahype2.solvers.aderdg.ADERDG.ADERDG.get_name_of_global_instance(), exahype2.solvers.elliptic.AMRMarker.AMRMarker.get_name_of_global_instance(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.get_name_of_global_instance(), exahype2.solvers.fv.FV.FV.get_name_of_global_instance(), exahype2.solvers.limiting.PosterioriLimiting.PosterioriLimiting.get_name_of_global_instance(), exahype2.solvers.limiting.StaticLimiting.StaticLimiting.get_name_of_global_instance(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.get_name_of_global_instance(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.get_name_of_global_instance(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.number_of_Runge_Kutta_steps(), and exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.number_of_Runge_Kutta_steps().

Referenced by mgccz4.MGCCZ4Solver.add_derivative_calculation(), exahype2.solvers.aderdg.ADERDG.ADERDG.add_kernel_optimisations(), ccz4.CCZ4Solver.add_Psi4W(), exahype2.solvers.fv.FV.FV.auxiliary_variables(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.auxiliary_variables(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.auxiliary_variables(), exahype2.solvers.elliptic.AMRMarker.AMRMarker.couple_with_FV_solver(), exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_action_sets(), exahype2.solvers.fv.FV.FV.interpolation(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.interpolation(), exahype2.solvers.fv.FV.FV.overlap(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.overlap(), exahype2.solvers.fv.FV.FV.patch_size(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.patch_size(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.postprocess_updated_cell(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.postprocess_updated_cell_after_final_linear_combination(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.postprocess_updated_cell_after_Runge_Kutta_step(), exahype2.solvers.aderdg.ADERDG.ADERDG.postprocess_updated_patch(), exahype2.solvers.fv.FV.FV.postprocess_updated_patch(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.postprocess_updated_patch(), exahype2.solvers.aderdg.ADERDG.ADERDG.preprocess_reconstructed_patch(), exahype2.solvers.fv.FV.FV.preprocess_reconstructed_patch(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.preprocess_reconstructed_patch(), exahype2.solvers.fv.FV.FV.restriction(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.restriction(), exahype2.solvers.aderdg.ADERDG.ADERDG.set_implementation(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.set_implementation(), exahype2.solvers.aderdg.ADERDG.ADERDG.switch_storage_scheme(), exahype2.solvers.fv.FV.FV.switch_storage_scheme(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.switch_storage_scheme(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.switch_storage_scheme(), exahype2.solvers.fv.FV.FV.unknowns(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.unknowns(), and exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.unknowns().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ create_data_structures()

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_data_structures ( self)

First, call the superclass' create_data_structures() to ensure that all the data structures are in place.

The linear combination is to be computed if and only if

Reimplemented from exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.

Reimplemented in exahype2.solvers.rkdg.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking.

Definition at line 89 of file SeparateSweeps.py.

References exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._any_primary_sweep_of_a_Runge_Kutta_step_on_face, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._any_secondary_sweep_of_a_Runge_Kutta_step_on_face, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._estimate_projection, exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._linear_combination_of_estimates, exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._primary_sweeps_of_Runge_Kutta_step_on_cell, exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._primary_sweeps_of_Runge_Kutta_step_on_cell, SBH.Limiter._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.fv.FV.FV._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.limiting.PosterioriLimiting.PosterioriLimiting._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.limiting.StaticLimiting.StaticLimiting._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._Riemann_solution, and exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_data_structures().

Referenced by mgccz4.MGCCZ4Solver.add_derivative_calculation(), exahype2.solvers.aderdg.ADERDG.ADERDG.add_kernel_optimisations(), ccz4.CCZ4Solver.add_Psi4W(), exahype2.solvers.fv.FV.FV.auxiliary_variables(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.auxiliary_variables(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.auxiliary_variables(), exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_data_structures(), exahype2.solvers.fv.FV.FV.interpolation(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.interpolation(), exahype2.solvers.fv.FV.FV.overlap(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.overlap(), exahype2.solvers.fv.FV.FV.patch_size(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.patch_size(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.postprocess_updated_cell(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.postprocess_updated_cell_after_final_linear_combination(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.postprocess_updated_cell_after_Runge_Kutta_step(), exahype2.solvers.aderdg.ADERDG.ADERDG.postprocess_updated_patch(), exahype2.solvers.fv.FV.FV.postprocess_updated_patch(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.postprocess_updated_patch(), exahype2.solvers.aderdg.ADERDG.ADERDG.preprocess_reconstructed_patch(), exahype2.solvers.fv.FV.FV.preprocess_reconstructed_patch(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.preprocess_reconstructed_patch(), exahype2.solvers.fv.FV.FV.restriction(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.restriction(), exahype2.solvers.aderdg.ADERDG.ADERDG.set_implementation(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.set_implementation(), exahype2.solvers.aderdg.ADERDG.ADERDG.switch_storage_scheme(), exahype2.solvers.fv.FV.FV.switch_storage_scheme(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.switch_storage_scheme(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.switch_storage_scheme(), exahype2.solvers.fv.FV.FV.unknowns(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.unknowns(), and exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.unknowns().

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ _any_primary_sweep_of_a_Runge_Kutta_step_on_cell

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._any_primary_sweep_of_a_Runge_Kutta_step_on_cell
protected

Definition at line 67 of file SeparateSweeps.py.

◆ _any_primary_sweep_of_a_Runge_Kutta_step_on_face

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._any_primary_sweep_of_a_Runge_Kutta_step_on_face
protected

◆ _any_secondary_sweep_of_a_Runge_Kutta_step_on_cell

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._any_secondary_sweep_of_a_Runge_Kutta_step_on_cell
protected

Definition at line 68 of file SeparateSweeps.py.

◆ _any_secondary_sweep_of_a_Runge_Kutta_step_on_face

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._any_secondary_sweep_of_a_Runge_Kutta_step_on_face
protected

◆ _first_iteration_after_initialisation_guard

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._first_iteration_after_initialisation_guard
protected

◆ _initialisation_sweep_guard

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._initialisation_sweep_guard
protected

◆ _name

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._name
protected

Definition at line 42 of file SeparateSweeps.py.

Referenced by exahype2.solvers.aderdg.ADERDG.ADERDG.__str__(), exahype2.solvers.elliptic.AMRMarker.AMRMarker.__str__(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.__str__(), exahype2.solvers.fv.FV.FV.__str__(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.__str__(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.__str__(), solvers.api.Solver.Solver.__str__(), exahype2.solvers.fv.EnclaveTasking.EnclaveTasking._enclave_task_name(), exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking._enclave_task_name(), dastgen2.attributes.Enumeration.Enumeration._enum_name(), exahype2.solvers.aderdg.ADERDG.ADERDG._generate_kernels(), exahype2.solvers.aderdg.ADERDG.ADERDG._init_dictionary_with_default_parameters(), exahype2.solvers.fv.FV.FV._init_dictionary_with_default_parameters(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._init_dictionary_with_default_parameters(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._init_dictionary_with_default_parameters(), exahype2.solvers.aderdg.ADERDG.ADERDG._interpolate_face_data_default_guard(), exahype2.solvers.aderdg.SingleSweep.SingleSweep._interpolate_face_data_default_guard(), SBH.Limiter._load_cell_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._load_cell_data_default_guard(), exahype2.solvers.fv.FV.FV._load_cell_data_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._load_cell_data_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._load_cell_data_default_guard(), SBH.Limiter._load_face_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._load_face_data_default_guard(), exahype2.solvers.fv.FV.FV._load_face_data_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._load_face_data_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._load_face_data_default_guard(), SBH.Limiter._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.fv.FV.FV._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._provide_cell_data_to_compute_kernels_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._provide_face_data_to_compute_kernels_default_guard(), exahype2.solvers.fv.FV.FV._provide_face_data_to_compute_kernels_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._provide_face_data_to_compute_kernels_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._provide_face_data_to_compute_kernels_default_guard(), exahype2.solvers.aderdg.SingleSweep.SingleSweep._restrict_face_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._store_boundary_data_default_guard(), SBH.Limiter._store_cell_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._store_cell_data_default_guard(), exahype2.solvers.fv.FV.FV._store_cell_data_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._store_cell_data_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._store_cell_data_default_guard(), SBH.Limiter._store_face_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._store_face_data_default_guard(), exahype2.solvers.fv.FV.FV._store_face_data_default_guard(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._store_face_data_default_guard(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._store_face_data_default_guard(), exahype2.solvers.aderdg.ADERDG.ADERDG._unknown_identifier(), exahype2.solvers.elliptic.AMRMarker.AMRMarker._unknown_identifier(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells._unknown_identifier(), exahype2.solvers.fv.FV.FV._unknown_identifier(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG._unknown_identifier(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences._unknown_identifier(), exahype2.solvers.fv.FV.FV.add_actions_to_checkpoint_solution(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.add_actions_to_checkpoint_solution(), exahype2.solvers.fv.EnclaveTasking.EnclaveTasking.add_actions_to_create_grid(), exahype2.solvers.fv.EnclaveTasking.EnclaveTasking.add_actions_to_init_grid(), exahype2.solvers.aderdg.ADERDG.ADERDG.add_actions_to_plot_solution(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.add_actions_to_plot_solution(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.add_actions_to_plot_solution(), exahype2.solvers.fv.FV.FV.add_actions_to_plot_solution(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.add_actions_to_plot_solution(), exahype2.solvers.fv.EnclaveTasking.EnclaveTasking.add_entries_to_text_replacement_dictionary(), exahype2.solvers.rkdg.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking.add_entries_to_text_replacement_dictionary(), exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking.add_entries_to_text_replacement_dictionary(), exahype2.solvers.aderdg.ADERDG.ADERDG.add_implementation_files_to_project(), exahype2.solvers.elliptic.AMRMarker.AMRMarker.add_to_Peano4_datamodel(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.add_to_Peano4_datamodel(), SBH.Limiter.create_action_sets(), exahype2.solvers.aderdg.SingleSweep.SingleSweep.create_action_sets(), exahype2.solvers.fv.rusanov.LocalTimeStepWithEnclaveTasking.LocalTimeStepWithEnclaveTasking.create_action_sets(), exahype2.solvers.fv.rusanov.SubcyclingAdaptiveTimeStepWithEnclaveTasking.SubcyclingAdaptiveTimeStepWithEnclaveTasking.create_action_sets(), exahype2.solvers.fv.rusanov.SubcyclingFixedTimeStep.SubcyclingFixedTimeStep.create_action_sets(), exahype2.solvers.fv.rusanov.SubcyclingFixedTimeStepWithEnclaveTasking.SubcyclingFixedTimeStepWithEnclaveTasking.create_action_sets(), exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps.create_action_sets(), exahype2.solvers.fv.SingleSweep.SingleSweep.create_data_structures(), exahype2.solvers.rkfd.OneSweepPerRungeKuttaStep.OneSweepPerRungeKuttaStep.create_data_structures(), exahype2.solvers.rkfd.SeparateSweeps.SeparateSweeps.create_data_structures(), exahype2.solvers.rkfd.SeparateSweepsWithEnclaveTasking.SeparateSweepsWithEnclaveTasking.create_data_structures(), dastgen2.attributes.Attribute.Attribute.get_accessor_name(), dastgen2.attributes.BooleanArray.BooleanArray.get_constructor_arguments(), peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray.get_constructor_arguments(), peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray.get_constructor_arguments(), api.solvers.CollocatedLowOrderDiscretisation.AssemblePetscMatrix.get_constructor_body(), dastgen2.attributes.BooleanArray.BooleanArray.get_first_plain_C_attribute(), dastgen2.attributes.DoubleArray.DoubleArray.get_first_plain_C_attribute(), dastgen2.attributes.IntegerArray.IntegerArray.get_first_plain_C_attribute(), peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray.get_first_plain_C_attribute(), peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray.get_first_plain_C_attribute(), dastgen2.attributes.Boolean.Boolean.get_method_body(), dastgen2.attributes.BooleanArray.BooleanArray.get_method_body(), dastgen2.attributes.Double.Double.get_method_body(), dastgen2.attributes.DoubleArray.DoubleArray.get_method_body(), dastgen2.attributes.Enumeration.Enumeration.get_method_body(), dastgen2.attributes.Integer.Integer.get_method_body(), dastgen2.attributes.IntegerArray.IntegerArray.get_method_body(), dastgen2.attributes.String.String.get_method_body(), dastgen2.attributes.UserDefinedType.UserDefinedType.get_method_body(), peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray.get_method_body(), peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray.get_method_body(), dastgen2.attributes.BooleanArray.BooleanArray.get_methods(), dastgen2.attributes.DoubleArray.DoubleArray.get_methods(), dastgen2.attributes.IntegerArray.IntegerArray.get_methods(), peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray.get_methods(), peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray.get_methods(), exahype2.solvers.aderdg.ADERDG.ADERDG.get_name_of_global_instance(), exahype2.solvers.elliptic.AMRMarker.AMRMarker.get_name_of_global_instance(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.get_name_of_global_instance(), exahype2.solvers.fv.FV.FV.get_name_of_global_instance(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.get_name_of_global_instance(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.get_name_of_global_instance(), dastgen2.attributes.Boolean.Boolean.get_plain_C_attributes(), dastgen2.attributes.BooleanArray.BooleanArray.get_plain_C_attributes(), dastgen2.attributes.Double.Double.get_plain_C_attributes(), dastgen2.attributes.DoubleArray.DoubleArray.get_plain_C_attributes(), dastgen2.attributes.Integer.Integer.get_plain_C_attributes(), dastgen2.attributes.IntegerArray.IntegerArray.get_plain_C_attributes(), dastgen2.attributes.String.String.get_plain_C_attributes(), dastgen2.attributes.UserDefinedType.UserDefinedType.get_plain_C_attributes(), peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray.get_plain_C_attributes(), peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray.get_plain_C_attributes(), dastgen2.attributes.String.String.get_setter_getter_name(), dastgen2.attributes.Boolean.Boolean.get_to_string(), dastgen2.attributes.BooleanArray.BooleanArray.get_to_string(), dastgen2.attributes.Double.Double.get_to_string(), dastgen2.attributes.DoubleArray.DoubleArray.get_to_string(), dastgen2.attributes.Enumeration.Enumeration.get_to_string(), dastgen2.attributes.Integer.Integer.get_to_string(), dastgen2.attributes.IntegerArray.IntegerArray.get_to_string(), dastgen2.attributes.UserDefinedType.UserDefinedType.get_to_string(), peano4.dastgen2.Peano4DoubleArray.Peano4DoubleArray.get_to_string(), peano4.dastgen2.Peano4IntegerArray.Peano4IntegerArray.get_to_string(), dastgen2.attributes.Attribute.Attribute.name(), exahype2.solvers.elliptic.ConstrainedPoissonEquationForMarkerOnCells.ConstrainedPoissonEquationForMarkerOnCells.name(), exahype2.solvers.fv.FV.FV.name(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.name(), solvers.api.Solver.Solver.name(), api.solvers.Solver.Solver.name(), solvers.api.Solver.Solver.typename(), and api.solvers.Solver.Solver.typename().

◆ _primary_sweeps_of_Runge_Kutta_step_on_cell

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._primary_sweeps_of_Runge_Kutta_step_on_cell
protected

◆ _primary_sweeps_of_Runge_Kutta_step_on_face

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._primary_sweeps_of_Runge_Kutta_step_on_face
protected

◆ _rk_order

◆ _secondary_sweeps_of_Runge_Kutta_step_on_cell

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._secondary_sweeps_of_Runge_Kutta_step_on_cell
protected

◆ _secondary_sweeps_of_Runge_Kutta_step_on_face

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._secondary_sweeps_of_Runge_Kutta_step_on_face
protected

◆ _solver_template_file_class_name

exahype2.solvers.rkdg.SeparateSweeps.SeparateSweeps._solver_template_file_class_name
protected

The documentation for this class was generated from the following file: