|
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) | |
| Construct solver with enclave tasking and adaptive time stepping. | |
| 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. | |
Public Member Functions inherited from CCZ4Solver.AbstractCCZ4Solver | |
| 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. | |
Public Member Functions inherited from exahype2.solvers.fv.rusanov.GlobalAdaptiveTimeStepWithEnclaveTasking.GlobalAdaptiveTimeStepWithEnclaveTasking | |
| 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. | |
| create_data_structures (self) | |
| This routine does not really add new data, but it heavily tailors when data are stored, exchanged, ... Each generator has some guard attributes, i.e., some guards, which control when data is stored, sent, received. | |
| user_action_set_includes (self) | |
| Add further includes to this property, if your action sets require some additional routines from other header files. | |
Public Member Functions inherited from exahype2.solvers.fv.EnclaveTasking.EnclaveTasking | |
| create_action_sets (self) | |
| Adaptive mesh handing. | |
| add_entries_to_text_replacement_dictionary (self, d) | |
| d: Dictionary of string to string in/out argument | |
| add_actions_to_create_grid (self, step, evaluate_refinement_criterion) | |
| The boundary information is set only once. | |
| add_actions_to_init_grid (self, step) | |
| Add all the action sets to init grid. | |
| add_actions_to_perform_time_step (self, step) | |
| Add enclave aspect to time stepping. | |
| add_implementation_files_to_project (self, namespace, output, dimensions, subdirectory="") | |
| The ExaHyPE project will call this operation when it sets up the overall environment. | |
| switch_storage_scheme (self, Storage cell_data_storage, Storage face_data_storage) | |
| By default, we hold all data on the heap using smart pointers. | |
Public Member Functions inherited from exahype2.solvers.fv.FV.FV | |
| __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. | |
| 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. | |
| 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) | |
CCZ4 solver using finite volumes and global adaptive time stepping incl enclave tasking.
The constructor of this classs is straightforward and realises the standard steps of any numerical implementation of the CCZ4 scheme:
Definition at line 438 of file CCZ4Solver.py.
| CCZ4Solver.CCZ4Solver_FV_GlobalAdaptiveTimeStepWithEnclaveTasking.__init__ | ( | self, | |
| name, | |||
| patch_size, | |||
| min_volume_h, | |||
| max_volume_h, | |||
| pde_terms_without_state ) |
Construct solver with enclave tasking and adaptive time stepping.
Reimplemented from CCZ4Solver.AbstractCCZ4Solver.
Reimplemented in SBH.Limiter, and SBH.FVSolver.
Definition at line 464 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(), kernel_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.GlobalAdaptiveTimeStepWithEnclaveTasking.GlobalAdaptiveTimeStepWithEnclaveTasking.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalFixedTimeStep.GlobalFixedTimeStep.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalAdaptiveTimeStep.GlobalAdaptiveTimeStep.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalAdaptiveTimeStepInExaGRyPE.GlobalAdaptiveTimeStepInExaGRyPE.set_implementation(), exahype2.solvers.rkfd.fd4.GlobalAdaptiveTimeStepInExaGRyPEWithEnclaveTasking.GlobalAdaptiveTimeStepInExaGRyPEWithEnclaveTasking.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_GlobalAdaptiveTimeStepWithEnclaveTasking.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 502 of file CCZ4Solver.py.
References CCZ4Solver.add_tracer_to_FV_solver().
