89 if (equation_empty_)
DebugOut().fmt(
"Calling 'initialize' of empty equation '{}'.\n",
typeid(*this).name());
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());
131 {time_->fix_dt_until_mark();}
137 {time_->set_upper_constraint(dt, message);}
143 {time_->set_lower_constraint(dt, message);}
150 OLD_ASSERT( time_,
"Time governor was not created.\n");
165 {
return time_->estimate_time(); }
171 {
return time_->t(); }
195 OLD_ASSERT(eq_data_,
"The equation %s did not set eq_data_ pointer.\n", input_record_.address_string().c_str());
204 {
OLD_ASSERT(0,
"If using, needs to be implemented in ancestors!"); };
211 {
OLD_ASSERT(0,
"If using, needs to be implemented in ancestors!"); };
217 if (equation_empty_)
DebugOut().fmt(
"Calling 'output_data' of empty equation '{}'.\n",
typeid(*this).name());
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.
virtual void initialize()
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.
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)
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.