diff --git a/src/OpenFOAM/db/Time/Time.C b/src/OpenFOAM/db/Time/Time.C index 0051d23153104f301817f973b09f813bc0de8932..20fca2c4dbea7ff8eb8836600be3ff375697c239 100644 --- a/src/OpenFOAM/db/Time/Time.C +++ b/src/OpenFOAM/db/Time/Time.C @@ -212,6 +212,21 @@ void Foam::Time::setControls() { timeIndex_ = startTimeIndex_; } + + scalar timeValue; + if (timeDict.readIfPresent("value", timeValue)) + { + if (mag(timeValue - value()) > SMALL) + { + IOWarningIn("Time::setControls()", timeDict) + << "Time read from time dictionary " << timeValue + << " differs from actual time " << value() << '.' << nl + << " This may cause unexpected database behaviour." + << " If you are not interested" << nl + << " in preserving time state delete the time dictionary." + << endl; + } + } } diff --git a/src/OpenFOAM/db/Time/TimeIO.C b/src/OpenFOAM/db/Time/TimeIO.C index 9ed963127d8f7eba9b3dbf92189cd64b2b7075a9..fcf0a969e2d31f3542a92ce9defb4b41fb6b8ff3 100644 --- a/src/OpenFOAM/db/Time/TimeIO.C +++ b/src/OpenFOAM/db/Time/TimeIO.C @@ -307,6 +307,7 @@ bool Foam::Time::writeObject ) ); + timeDict.add("value", value()); timeDict.add("index", timeIndex_); timeDict.add("deltaT", deltaT_); timeDict.add("deltaT0", deltaT0_);