The runTimeControl function object can activate further function objects using
triggers. Previously the trigger index could only advance; this change set
allows users to set smaller values to enable function object recycling, e.g.
Repeat for N cycles:
1. average the pressure at a point in space
2. when the average stabilises, run for a further 100 iterations
3. set a new patch inlet velocity
- back to (1)
- Removes old default behaviour that only permitted an increase in the
trigger level. This type of 'ratcheting' mechanism (if required) is
now the responsibility of the derived function object.
- useful when used in a batch process to trap the exit signal,
e.g. stop the run when the velocity magnitude exceeds a given
threshold:
runTimeControl
{
type runTimeControl;
libs ("libutilityFunctionObjects.so");
nWriteStep 1;
// Optional end 'action'
satisfiedAction abort; // end; // setTrigger
conditions
{
maxU
{
type minMax;
functionObject MinMax;
fields ("max(mag(U))");
value 1e6;
mode maximum;
}
}
}
- previously introduced `getOrDefault` as a dictionary _get_ method,
now complete the transition and use it everywhere instead of
`lookupOrDefault`. This avoids mixed usage of the two methods that
are identical in behaviour, makes for shorter names, and promotes
the distinction between "lookup" access (ie, return a token stream,
locate and return an entry) and "get" access (ie, the above with
conversion to concrete types such as scalar, label etc).