ASPECT
|
Static Public Member Functions | |
static void | declare_parameters (ParameterHandler &prm) |
static void | write_plugin_graph (std::ostream &output_stream) |
static void | register_time_stepping_model (const std::string &name, const std::string &description, void(*declare_parameters_function)(ParameterHandler &), std::unique_ptr< Interface< dim >>(*factory_function)()) |
Static Public Member Functions inherited from aspect::Plugins::InterfaceBase | |
static void | declare_parameters (ParameterHandler &prm) |
Static Public Member Functions inherited from aspect::SimulatorAccess< dim > | |
static void | get_composition_values_at_q_point (const std::vector< std::vector< double >> &composition_values, const unsigned int q, std::vector< double > &composition_values_at_q_point) |
Private Attributes | |
Reaction | current_reaction |
double | next_time_step_size |
double | minimum_time_step_size |
bool | do_checkpoint_on_terminate |
TerminationCriteria::Manager< dim > | termination_manager |
Additional Inherited Members | |
Protected Attributes inherited from aspect::Plugins::ManagerBase< Interface< dim > > | |
std::list< std::unique_ptr< Interface< dim > > > | plugin_objects |
std::vector< std::string > | plugin_names |
A class to handle computation of the next time step (as desired by the user) and checking if the simulation is finished.
Definition at line 148 of file simulator_access.h.
|
overridevirtual |
Override initialize_simulator() so that we can also initialize the contained termination_manager.
Reimplemented from aspect::SimulatorAccess< dim >.
|
overridevirtual |
Update the current state and determine what needs to happen based on the last computed solution (see functions below). This computes the size of the next time step potentially taking into account the current solution (convection time step, conduction time step), settings from parameters, and termination criteria (to hit the end time exactly).
Reimplemented from aspect::Plugins::InterfaceBase.
double aspect::TimeStepping::Manager< dim >::get_next_time_step_size | ( | ) | const |
Return the next step size as computed from update().
bool aspect::TimeStepping::Manager< dim >::should_repeat_time_step | ( | ) | const |
If true, a plugin requested to redo the last computed time step. Updated when calling update().
bool aspect::TimeStepping::Manager< dim >::should_refine_mesh | ( | ) | const |
If true, execute a mesh refinement step now (potentially before repeating the current time step).
bool aspect::TimeStepping::Manager< dim >::need_checkpoint_on_terminate | ( | ) | const |
If true, the simulator should perform a checkpoint before terminating.
bool aspect::TimeStepping::Manager< dim >::should_simulation_terminate_now | ( | ) | const |
Check if the simulation is ready to terminate successfully.
|
static |
Declare the parameters of all known termination criteria plugins, as well as of ones this class has itself.
|
overridevirtual |
Read the parameters this class declares from the parameter file. This determines which termination criteria objects will be created; then let these objects read their parameters as well.
Reimplemented from aspect::Plugins::InterfaceBase.
|
static |
For the current plugin subsystem, write a connection graph of all of the plugins we know about, in the format that the programs dot and neato understand. This allows for a visualization of how all of the plugins that ASPECT knows about are interconnected, and connect to other parts of the ASPECT code.
output_stream | The stream to write the output to. |
|
static |
A function that is used to register time stepping model objects in such a way that the Manager can deal with all of them without having to know them by name. This allows the files in which individual plugins are implemented to register these plugins, rather than also having to modify the Manager class by adding the new plugin class.
name | A string that identifies the model |
description | A text description of what this model does and that will be listed in the documentation of the parameter file. |
declare_parameters_function | A pointer to a function that can be used to declare the parameters that this model wants to read from input files. |
factory_function | A pointer to a function that can create an object of this model. |
|
private |
The current Reaction computed by update().
Definition at line 236 of file interface.h.
|
private |
The next time step size computed by update().
Definition at line 241 of file interface.h.
|
private |
The minimum time step size specified by the user (in seconds).
Definition at line 246 of file interface.h.
|
private |
Whether to do a final checkpoint before termination. This is specified in the parameters.
Definition at line 252 of file interface.h.
|
private |
The termination manager keeps track of the termination plugins and we use it to determine the time_step size in the final time step.
Definition at line 258 of file interface.h.