49 currentTime_(startTime_),
54 lastSaved_(startTime_),
75 checkForOutputToFile();
87 dict.getVal<
real>(
"dt")
89 startTime_(startTime),
92 currentTime_(startTime_),
93 saveInterval_(saveInterval),
94 lastSaved_(startTime_),
98 dict.getValOrSet(
"timePrecision", 4)
100 managedExternaly_(true),
101 timeName_(startTimeName),
102 timersReportInterval_
105 dict.getValOrSet(
"timersReportInterval", 0.04)
109 dict.getValOrSet(
"performSorting",
Logical(
"No"))
114 dict.getValOrSet(
"sortingInterval", static_cast<
real>(1.0))
122 if(managedExternaly_)
125 return currentTimeWord();
130 if( currentTime_ >= endTime_ )
return true;
131 if(
abs(currentTime_-endTime_) < 0.5*dt_ )
return true;
137 if( currentTime_ >= stopAt_ )
return true;
138 if(
abs(currentTime_-stopAt_) < 0.5*dt_ )
return true;
146 if(managedExternaly_)
148 if(
abs(currentTime_-writeTime_) < 0.5*dt_)
151 lastSaved_ = currentTime_;
156 if (
abs(currentTime_ - lastSaved_ - saveInterval_) < 0.5 * dt_ )
158 lastSaved_ = currentTime_;
161 else if(
abs(currentTime_ - lastSaved_) <
min(
pow(10.0,-1.0*timePrecision_), 0.5 *dt_) )
163 lastSaved_ = currentTime_;
169 outputToFile_ = save;
176 if(currentIter_<=1)
return false;
177 return timersReportInterval_.isMember(currentTime_, dt_);
182 return performSorting_()&&sortingInterval_.isMember(currentTime_,dt_);
187 const word& timeName)
189 if(managedExternaly_)
191 outputToFile_ = saveToFile;
192 timeName_ = timeName;
199 if( reachedStopAt() )
return false;
204 if(screenReport() && !managedExternaly_)
209 checkForOutputToFile();