22 #ifndef _aspect_time_stepping_interface_h
23 #define _aspect_time_stepping_interface_h
118 std::pair<Reaction, double>
191 template <
class Archive>
232 const std::string &description,
280 #define ASPECT_REGISTER_TIME_STEPPING_MODEL(classname,name,description) \
281 template class classname<2>; \
282 template class classname<3>; \
283 namespace ASPECT_REGISTER_TIME_STEPPING_MODEL_ ## classname \
285 aspect::internal::Plugins::RegisterHelper<aspect::TimeStepping::Interface<2>,classname<2>> \
286 dummy_ ## classname ## _2d (&aspect::TimeStepping::Manager<2>::register_time_stepping_model, \
287 name, description); \
288 aspect::internal::Plugins::RegisterHelper<aspect::TimeStepping::Interface<3>,classname<3>> \
289 dummy_ ## classname ## _3d (&aspect::TimeStepping::Manager<3>::register_time_stepping_model, \
290 name, description); \
virtual double execute()=0
virtual std::pair< Reaction, double > determine_reaction(const TimeStepInfo &info)
bool should_repeat_time_step() const
void serialize(Archive &ar, const unsigned int)
static void declare_parameters(ParameterHandler &prm)
bool should_refine_mesh() const
double get_next_time_step_size() const
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)())
bool need_checkpoint_on_terminate() const
Reaction current_reaction
bool do_checkpoint_on_terminate
void parse_parameters(ParameterHandler &prm) override
double next_time_step_size
static void write_plugin_graph(std::ostream &output_stream)
double minimum_time_step_size
TerminationCriteria::Manager< dim > termination_manager
bool should_simulation_terminate_now() const
void initialize_simulator(const Simulator< dim > &simulator_object) override
double next_time_step_size
bool reduced_by_termination_plugin