49 currentTime_(startTime_),
54 lastSaved_(startTime_),
67 checkForOutputToFile();
79 dict.getVal<
real>(
"dt")
81 startTime_(startTime),
84 currentTime_(startTime_),
85 saveInterval_(saveInterval),
86 lastSaved_(startTime_),
90 dict.getValOrSet(
"timePrecision", 4)
92 managedExternaly_(true),
93 timeName_(startTimeName),
97 dict.getValOrSet(
"timersReportInterval", 0.04)
105 if(managedExternaly_)
108 return currentTimeWord();
113 if( currentTime_ >= endTime_ )
return true;
114 if(
abs(currentTime_-endTime_) < 0.5*dt_ )
return true;
120 if( currentTime_ >= stopAt_ )
return true;
121 if(
abs(currentTime_-stopAt_) < 0.5*dt_ )
return true;
129 if(managedExternaly_)
131 if(
abs(currentTime_-writeTime_) < 0.5*dt_)
134 lastSaved_ = currentTime_;
139 if (
abs(currentTime_ - lastSaved_ - saveInterval_) < 0.5 * dt_ )
141 lastSaved_ = currentTime_;
144 else if(
abs(currentTime_ - lastSaved_) <
min(
pow(10.0,-1.0*timePrecision_), 0.5 *dt_) )
146 lastSaved_ = currentTime_;
152 outputToFile_ = save;
159 if(currentIter_<=1)
return false;
160 return timersReportInterval_.isMember(currentTime_, dt_);
165 const word& timeName)
167 if(managedExternaly_)
169 outputToFile_ = saveToFile;
170 timeName_ = timeName;
177 if( reachedStopAt() )
return false;
182 if(screenReport() && !managedExternaly_)
187 checkForOutputToFile();