24 #include <boost/exception/detail/error_info_impl.hpp> 25 #include <boost/exception/info.hpp> 90 else DebugOut().fmt(
"Method 'initialize' of '{}' is not implemented.\n",
typeid(*this).name());
101 if (
equation_empty_)
DebugOut().fmt(
"Calling 'zero_time_step' of empty equation '{}'.\n",
typeid(*this).name());
102 else DebugOut().fmt(
"Method 'zero_time_step' of '{}' is not implemented.\n",
typeid(*this).name());
118 if (
equation_empty_)
DebugOut().fmt(
"Calling 'update_solution' of empty equation '{}'.\n",
typeid(*this).name());
119 else DebugOut().fmt(
"Method 'update_solution' of '{}' is not implemented.\n",
typeid(*this).name());
204 {
OLD_ASSERT(0,
"If using, needs to be implemented in ancestors!"); };
211 {
OLD_ASSERT(0,
"If using, needs to be implemented in ancestors!"); };
218 else DebugOut().fmt(
"Method 'output_data' of '{}' is not implemented.\n",
typeid(*this).name());
virtual void zero_time_step()
virtual void set_time_lower_constraint(double dt, std::string message)
Container for various descendants of FieldCommonBase.
double estimate_time() const
virtual void initialize()
double fix_dt_until_mark()
Fixing time step until fixed time mark.
int set_lower_constraint(double lower, std::string message)
Sets lower constraint for the next time step estimating.
virtual void set_time_upper_constraint(double dt, std::string message)
Basic time management functionality for unsteady (and steady) solvers (class Equation).
virtual void choose_next_time()
virtual void output_data()
Write computed fields.
Basic time management class.
Global macros to enhance readability and debugging, general constants.
TimeMark::Type equation_mark_type() const
std::shared_ptr< Balance > balance_
object for calculation and writing the mass balance to file.
virtual void get_parallel_solution_vector(Vec &vector)
virtual void get_solution_vector(double *&vector, unsigned int &size)
virtual void set_time_governor(TimeGovernor &time)
int set_upper_constraint(double upper, std::string message)
Sets upper constraint for the next time step estimating.
bool equation_empty_
flag is true if only default constructor was called
virtual void update_solution()
Input::Record input_record_
TimeMark::Type mark_type()
#define DebugOut()
Macro defining 'debug' record of log.