26 #include <boost/property_tree/ptree.hpp>
29 namespace TimeEvolver {
41 assert( cd.
Check() &&
"CoreData not ok.");
51 auto tup1 = housekeeper();
53 bool is_stationary = get<1>(tup1);
60 timings.
Merge(get<0>(tup2));
61 is_stationary = is_stationary && get<1>(tup2);
66 return make_tuple(timings, is_stationary);
Core data with mesh, parameters, random engine and time data.
Time evolver for Housekeeping only.
Namespace for components of the Default model group.
Utility class to record durations in a cumulative manner.
Growth and division time evolution algorithm.
std::tuple< SimTimingTraits::CumulativeTimings, bool > operator()(double time_slice=0.0, SimPhase phase=SimPhase::NONE)
Take a time evolution step.
HousekeepGrow(const CoreData &cd)
Initializing constructor.
void Initialize(const CoreData &cd)
Initialize or re-initialize.
Housekeep time step algorithm.
void Merge(const CumulativeRecords< U > &extra)
Merge an extra set of records (casting durations if required).
Time evolver for Housekeep plus Grow.
Time evolver for Grow only.
bool Check() const
Verify all pointers non-null.