functionObject::timeControl: Added runTimes option to execute/write at specified list of run times

With
    executeControl  runTimes;
    executeTimes    (0.1 0.2 0.3);

the functionObject will be executed at 0.1s, 0.2s and 0.3s only.

With
    writeControl    runTimes;
    writeTimes      (0.1 0.2 0.3);

the functionObject will write at 0.1s, 0.2s and 0.3s only.
This commit is contained in:
Henry Weller
2023-06-14 17:31:52 +01:00
parent 3eed5c0c99
commit 09a2da22b2
11 changed files with 105 additions and 35 deletions

View File

@ -278,7 +278,7 @@ bool Foam::functionObjectList::end()
}
Foam::scalar Foam::functionObjectList::timeToNextWrite()
Foam::scalar Foam::functionObjectList::timeToNextAction()
{
scalar result = vGreat;
@ -291,7 +291,7 @@ Foam::scalar Foam::functionObjectList::timeToNextWrite()
forAll(*this, oi)
{
result = min(result, operator[](oi).timeToNextWrite());
result = min(result, operator[](oi).timeToNextAction());
}
}