![]() |
Peano
|
CCZ4 solver using finite volumes and global adaptive time stepping incl enclave tasking. More...
Public Member Functions | |
__init__ (self, name, patch_size, min_volume_h, max_volume_h, pde_terms_without_state) | |
Constructor. | |
add_tracer (self, name, coordinates, project, number_of_entries_between_two_db_flushes, data_delta_between_two_snapsots, time_delta_between_two_snapsots, clear_database_after_flush, tracer_unknowns) | |
Add tracer to project. | |
![]() | |
enable_second_order (self) | |
add_all_solver_constants (self) | |
Add domain-specific constants. | |
add_makefile_parameters (self, peano4_project, path_of_ccz4_application) | |
Add include path and minimal required cpp files to makefile. | |
![]() | |
set_implementation (self, flux=None, ncp=None, eigenvalues=None, boundary_conditions=None, refinement_criterion=None, initial_conditions=None, source_term=None, memory_location=None, use_split_loop=False, 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. | |
user_action_set_includes (self) | |
Add further includes to this property, if your action sets require some additional routines from other header files. | |
![]() | |
create_data_structures (self) | |
Call the superclass' create_data_structures() to ensure that all the data structures are in place, i.e., each cell can host a patch, that each face hosts patch overlaps, and so forth. | |
create_action_sets (self) | |
Call superclass routine and then reconfigure the update cell call. | |
add_entries_to_text_replacement_dictionary (self, d) | |
d: Dictionary of string to string in/out argument | |
![]() | |
__str__ (self) | |
get_min_number_of_spacetree_levels (self, domain_size) | |
get_max_number_of_spacetree_levels (self, domain_size) | |
get_coarsest_number_of_patches (self, domain_size) | |
get_finest_number_of_patches (self, domain_size) | |
get_coarsest_number_of_finite_volumes (self, domain_size) | |
get_finest_number_of_finite_volumes (self, domain_size) | |
get_coarsest_volume_size (self, domain_size) | |
get_finest_volume_size (self, domain_size) | |
create_readme_descriptor (self, domain_offset, domain_size) | |
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 Peano 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, restart_from_checkpoint=False) | |
Add all the action sets to init grid. | |
add_actions_to_create_grid (self, step, evaluate_refinement_criterion) | |
The boundary information is set only once. | |
plot_description (self) | |
plot_description (self, description) | |
Add a proper description to the plots. | |
add_actions_to_plot_solution (self, step, output_path, restart_from_checkpoint=False) | |
Add action sets to plot solution step. | |
add_actions_to_checkpoint_solution (self, step, output_path, restart_from_checkpoint=False) | |
Add action sets to plot solution step. | |
add_actions_to_perform_time_step (self, step) | |
Add action sets to time step. | |
add_implementation_files_to_project (self, namespace, output, dimensions, subdirectory="", abstract_overwrite=True) | |
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) | |
patch_size (self) | |
auxiliary_variables (self) | |
patch_size (self, value) | |
unknowns (self, value) | |
auxiliary_variables (self, value) | |
preprocess_reconstructed_patch (self) | |
preprocess_reconstructed_patch (self, kernel) | |
Set a new processing kernel. | |
name (self) | |
postprocess_updated_patch (self) | |
postprocess_updated_patch (self, kernel) | |
Define a postprocessing routine over the data. | |
overlap (self) | |
overlap (self, value) | |
interpolation (self) | |
interpolation (self, value) | |
restriction (self) | |
restriction (self, value) | |
switch_storage_scheme (self, Storage cell_data_storage, Storage face_data_storage) | |
By default, we hold all data on the heap using smart pointers. | |
CCZ4 solver using finite volumes and global adaptive time stepping incl enclave tasking.
Please consult CCZ4Solver_FV_GlobalAdaptiveTimeStepWithEnclaveTasking.
Definition at line 291 of file CCZ4Solver.py.
CCZ4Solver.CCZ4Solver_FV_GlobalAdaptiveTimeStep.__init__ | ( | self, | |
name, | |||
patch_size, | |||
min_volume_h, | |||
max_volume_h, | |||
pde_terms_without_state ) |
Constructor.
Initialise the two dictionaries with default values (which work).
Reimplemented from CCZ4Solver.AbstractCCZ4Solver.
Definition at line 302 of file CCZ4Solver.py.
References CCZ4Solver.AbstractCCZ4Solver._add_standard_includes(), CCZ4Solver.AbstractCCZ4Solver._FO_formulation_unknowns, CCZ4Solver.construct_FV_eigenvalues(), CCZ4Solver.construct_FV_ncp(), CCZ4Solver.construct_FV_postprocessing_kernel(), CCZ4Solver.construct_FV_source_term(), ccz4.CCZ4Solver.postprocess_updated_patch, ccz4_archived.CCZ4Solver.postprocess_updated_patch, ccz4_archived_24_01_19.CCZ4Solver.postprocess_updated_patch, kernel_testbed.CCZ4Solver.postprocess_updated_patch, performance_testbed.CCZ4Solver.postprocess_updated_patch, 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.postprocess_updated_patch(), exahype2.solvers.fv.FV.FV.postprocess_updated_patch(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences.postprocess_updated_patch(), exahype2.solvers.fv.EnclaveTasking.EnclaveTasking.set_implementation(), exahype2.solvers.fv.SingleSweep.SingleSweep.set_implementation(), exahype2.solvers.aderdg.ADERDG.ADERDG.set_implementation(), exahype2.solvers.rkfd.OneSweepPerRungeKuttaStep.OneSweepPerRungeKuttaStep.set_implementation(), exahype2.solvers.rkfd.SeparateSweeps.SeparateSweeps.set_implementation(), exahype2.solvers.rkdg.rusanov.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), exahype2.solvers.fv.musclhancock.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.fv.musclhancock.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), exahype2.solvers.fv.rusanov.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.fv.rusanov.GlobalAdaptiveTimeStepWithEnclaveTasking.GlobalAdaptiveTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.fv.rusanov.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), exahype2.solvers.fv.rusanov.GlobalFixedTimeStepWithEnclaveTasking.GlobalFixedTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.fv.rusanov.LocalTimeStepWithEnclaveTasking.LocalTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.fv.rusanov.SubcyclingAdaptiveTimeStepWithEnclaveTasking.SubcyclingAdaptiveTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.fv.rusanov.SubcyclingFixedTimeStep.SubcyclingFixedTimeStep.set_implementation(), exahype2.solvers.fv.rusanov.SubcyclingFixedTimeStepWithEnclaveTasking.SubcyclingFixedTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.aderdg.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.aderdg.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG.set_implementation(), exahype2.solvers.rkdg.rusanov.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.rkdg.rusanov.GlobalAdaptiveTimeStepWithEnclaveTasking.GlobalAdaptiveTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalAdaptiveTimeStepWithEnclaveTasking.GlobalAdaptiveTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), exahype2.solvers.fv.riemann.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.fv.riemann.GlobalAdaptiveTimeStepWithEnclaveTasking.GlobalAdaptiveTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.fv.riemann.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), and exahype2.solvers.fv.riemann.GlobalFixedTimeStepWithEnclaveTasking.GlobalFixedTimeStepWithEnclaveTasking.set_implementation().
CCZ4Solver.CCZ4Solver_FV_GlobalAdaptiveTimeStep.add_tracer | ( | self, | |
name, | |||
coordinates, | |||
project, | |||
number_of_entries_between_two_db_flushes, | |||
data_delta_between_two_snapsots, | |||
time_delta_between_two_snapsots, | |||
clear_database_after_flush, | |||
tracer_unknowns ) |
Add tracer to project.
Consult exahype2.tracer.DumpTracerIntoDatabase for an explanation of some of the arguments. Most of them are simply piped through to this class.
project: exahype2.Project
Reimplemented from CCZ4Solver.AbstractCCZ4Solver.
Definition at line 329 of file CCZ4Solver.py.
References CCZ4Solver.add_tracer_to_FV_solver().