Peano
Loading...
Searching...
No Matches
exahype2.solvers.aderdg.GlobalFixedTimeStep.GlobalFixedTimeStep Class Reference
Inheritance diagram for exahype2.solvers.aderdg.GlobalFixedTimeStep.GlobalFixedTimeStep:
Collaboration diagram for exahype2.solvers.aderdg.GlobalFixedTimeStep.GlobalFixedTimeStep:

Public Member Functions

 __init__ (self, name, order, unknowns, auxiliary_variables, min_cell_h, max_cell_h, normalised_time_step_size, flux=PDETerms.User_Defined_Implementation, ncp=PDETerms.None_Implementation, eigenvalues=PDETerms.User_Defined_Implementation, boundary_conditions=PDETerms.User_Defined_Implementation, refinement_criterion=PDETerms.Empty_Implementation, initial_conditions=PDETerms.User_Defined_Implementation, source_term=PDETerms.None_Implementation, point_source=0, material_parameters=PDETerms.None_Implementation, plot_grid_properties=False)
 set_implementation (self, flux=None, ncp=None, eigenvalues=None, boundary_conditions=None, refinement_criterion=None, initial_conditions=None, source_term=None, point_source=0, material_parameters=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.
Public Member Functions inherited from exahype2.solvers.aderdg.SingleSweep.SingleSweep
 __init__ (self, name, order, unknowns, auxiliary_variables, min_cell_h, max_cell_h, plot_grid_properties=False, split_sweeps=False)
 create_data_structures (self)
 create_action_sets (self)
 get_user_action_set_includes (self)
Public Member Functions inherited from exahype2.solvers.aderdg.ADERDG.ADERDG
 __init__ (self, name, order, unknowns, auxiliary_variables, min_cell_h, max_cell_h, plot_grid_properties=False)
 __str__ (self)
 create_readme_descriptor (self, domain_offset, domain_size)
 get_user_solver_includes (self)
 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_use_data_statements_to_Peano4_solver_step (self, step)
 add_actions_to_init_grid (self, step)
 add_actions_to_create_grid (self, step, evaluate_refinement_criterion)
 add_actions_to_plot_solution (self, step, output_path)
 add_actions_to_perform_time_step (self, step)
 set_plot_description (self, description)
 add_implementation_files_to_project (self, namespace, output, dimensions, subdirectory="")
 The ExaHyPE2 project will call this operation when it sets up the overall environment.
 set_solver_constants (self, datastring)
 add_solver_constants (self, datastring)
 order (self)
 unknowns (self)
 auxiliary_variables (self)
 preprocess_reconstructed_patch (self)
 preprocess_reconstructed_patch (self, kernel)
 postprocess_updated_patch (self)
 postprocess_updated_patch (self, kernel)
 add_entries_to_text_replacement_dictionary (self, d)
 add_kernel_optimisations (self, is_linear=False, polynomials=Polynomials.Gauss_Legendre, use_libxsmm=False, precision=False, predictor_computation_precisions=False, corrector_computation_precision=False, solution_persistent_storage_precision=False, precompute_picard_precision=False, precision_criterion_implementation=PDETerms.User_Defined_Implementation, riemann_solver_implementation=PDETerms.None_Implementation, architecture="noarch", initialise_patches=False)
 switch_storage_scheme (self, Storage cell_data_storage, Storage face_data_storage)
 By default, we hold all data on the heap using smart pointers.

Protected Attributes

 _normalised_time_step_size = normalised_time_step_size
Protected Attributes inherited from exahype2.solvers.aderdg.SingleSweep.SingleSweep
str _solver_template_file_class_name = "SingleSweep"
 _split_sweeps = split_sweeps
Protected Attributes inherited from exahype2.solvers.aderdg.ADERDG.ADERDG
 _name = name
 _order = order
bool _use_var_shortcut = False
list _variable_names = []
list _variable_pos = [0]
 _unknowns = sum(unknowns.values())
 _auxiliary_variables = sum(auxiliary_variables.values())
 _min_cell_h = min_cell_h
 _max_cell_h = max_cell_h
bool _is_linear = False
 _polynomials = Polynomials.Gauss_Legendre
 _basis = GaussLegendreBasis(order + 1)
str _architecture = "noarch"
bool _use_libxsmm = False
bool _initialise_patches = False
list _predictor_computation_precisions = [PrecisionType["double"]]
 _corrector_computation_precision = PrecisionType["double"]
 _solution_persistent_storage_precision = PrecisionType["double"]
bool _precompute_picard_precision = False
bool _use_half_precision = False
 _plot_grid_properties = plot_grid_properties
str _solver_constants = ""
str _compute_time_step_size = "#error Not yet defined"
str _compute_new_time_step_size = "#error Not yet defined"
 _flux_implementation = PDETerms.None_Implementation
 _ncp_implementation = PDETerms.None_Implementation
 _source_term_implementation = PDETerms.None_Implementation
 _point_sources_implementation = PDETerms.None_Implementation
 _eigenvalues_implementation = PDETerms.None_Implementation
 _material_param_implementation = PDETerms.None_Implementation
 _refinement_criterion_implementation = PDETerms.None_Implementation
 _initial_conditions_implementation = PDETerms.None_Implementation
 _boundary_conditions_implementation = PDETerms.None_Implementation
 _precision_criterion_implementation = PDETerms.None_Implementation
 _riemann_solver_implementation = PDETerms.None_Implementation
int _number_of_point_sources = 0
str _abstract_solver_user_declarations = ""
str _abstract_solver_user_definitions = ""
str _solver_user_declarations = ""
str _solver_user_definitions = ""
str _start_time_step_implementation = ""
str _finish_time_step_implementation = ""
str _constructor_implementation = ""
str _destructor_implementation = ""
list _cflAder
float _cflSafetyFactor = 0.0
 _action_set_postprocess_solution = None
str _preprocess_reconstructed_patch = ""
str _postprocess_updated_patch = ""
int _number_of_face_projections = 1
 _current_time_step
 _previous_time_step
 _rhs_estimates_projection
 _flux_estimates_projection
 _cell_data_storage = Storage.CallStack:
 _face_data_storage = Storage.CallStack:
 _cell_label = exahype2.grid.create_cell_label(self._name)
 _face_label = exahype2.grid.create_face_label(self._name)
 _action_set_update_face_label = exahype2.grid.UpdateFaceLabel(self._name)
 _action_set_update_cell_label = exahype2.grid.UpdateCellLabel(self._name)
 _action_set_initial_conditions
 _action_set_initial_conditions_for_grid_construction
 _action_set_handle_boundary
 _action_set_couple_resolution_transitions_and_handle_dynamic_mesh_refinement
 _action_set_correction
 _action_set_prediction
 _action_set_prediction_on_hanging_cells
 _action_set_AMR
 _action_set_AMR_commit_without_further_analysis
 _action_set_AMR_throughout_grid_construction

Additional Inherited Members

Data Fields inherited from exahype2.solvers.aderdg.SingleSweep.SingleSweep
tuple initialisation_sweep_guard
tuple first_iteration_after_initialisation_guard
Data Fields inherited from exahype2.solvers.aderdg.ADERDG.ADERDG
str plot_description = ""
str plot_metadata = ""
 select_dofs_to_print = None
str user_action_set_includes = ""
str user_solver_includes = ""
Protected Member Functions inherited from exahype2.solvers.aderdg.SingleSweep.SingleSweep
 _store_boundary_data_default_guard (self)
 _delete_face_data_default_guard (self)
 _restrict_face_data_default_guard (self)
 _interpolate_face_data_default_guard (self)
 _init_dictionary_with_default_parameters (self, d)
Protected Member Functions inherited from exahype2.solvers.aderdg.ADERDG.ADERDG
 _store_cell_data_default_guard (self)
 _provide_cell_data_to_compute_kernels_default_guard (self)
 _provide_face_data_to_compute_kernels_default_guard (self)
 _load_cell_data_default_guard (self)
 _store_face_data_default_guard (self)
 _load_face_data_default_guard (self)
 _unknown_identifier (self)
 _get_default_includes (self)
 _generate_kernels (self, namespace, output, subdirectory, dimensions)

Detailed Description

Definition at line 13 of file GlobalFixedTimeStep.py.

Constructor & Destructor Documentation

◆ __init__()

exahype2.solvers.aderdg.GlobalFixedTimeStep.GlobalFixedTimeStep.__init__ ( self,
name,
order,
unknowns,
auxiliary_variables,
min_cell_h,
max_cell_h,
normalised_time_step_size,
flux = PDETerms.User_Defined_Implementation,
ncp = PDETerms.None_Implementation,
eigenvalues = PDETerms.User_Defined_Implementation,
boundary_conditions = PDETerms.User_Defined_Implementation,
refinement_criterion = PDETerms.Empty_Implementation,
initial_conditions = PDETerms.User_Defined_Implementation,
source_term = PDETerms.None_Implementation,
point_source = 0,
material_parameters = PDETerms.None_Implementation,
plot_grid_properties = False )

Definition at line 14 of file GlobalFixedTimeStep.py.

References __init__().

Referenced by __init__().

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

Member Function Documentation

◆ set_implementation()

exahype2.solvers.aderdg.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation ( self,
flux = None,
ncp = None,
eigenvalues = None,
boundary_conditions = None,
refinement_criterion = None,
initial_conditions = None,
source_term = None,
material_parameters = 0,
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.

If you pass in None_Implementation, it will create nop, i.e., no implementation or defaults. Any other string is copied 1:1 into the implementation. If you pass in None, then the set value so far won't be overwritten.

Reimplemented from exahype2.solvers.aderdg.ADERDG.ADERDG.

Definition at line 58 of file GlobalFixedTimeStep.py.

References exahype2.solvers.aderdg.ADERDG.ADERDG._corrector_computation_precision, exahype2.solvers.aderdg.ADERDG.ADERDG._predictor_computation_precisions, and set_implementation().

Referenced by ccz4.CCZ4Solver.__init__(), CCZ4Solver.CCZ4Solver_FD4_GlobalAdaptiveTimeStep.__init__(), CCZ4Solver.CCZ4Solver_FD4_GlobalAdaptiveTimeStepWithEnclaveTasking.__init__(), CCZ4Solver.CCZ4Solver_FV_GlobalAdaptiveTimeStep.__init__(), CCZ4Solver.CCZ4Solver_FV_GlobalAdaptiveTimeStepWithEnclaveTasking.__init__(), CCZ4Solver.CCZ4Solver_FV_MUSCL_GlobalAdaptiveTimeStep.__init__(), CCZ4Solver.CCZ4Solver_RKDG_GlobalAdaptiveTimeStep.__init__(), CCZ4Solver.CCZ4Solver_RKDG_GlobalAdaptiveTimeStepWithEnclaveTasking.__init__(), SBH.FVSolver.__init__(), and set_implementation().

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

Field Documentation

◆ _normalised_time_step_size


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