UPC to improve PRV stability
When multiple PRVs in a network are connected in series, stability can be an issue. This is most likely to occur when the PRVs are supplying a variable demand like a reservoir. You may observe the valve pressure and flow oscillating between timesteps, or the simulation convergence errors.
PRVs causing problems can be identified as follows:
-
Enable the simulation option: Additional diagnostic messages in log file.
-
After the run, inspect the log file, search for messages of the form "Unstable continuous PRV/PSV regulator".
-
PRVs and PSVs are identified by name at relevant timesteps. These valves could be treated as described below.
A variable can be added to the Valve UPC script, which can dampen this effect by reducing how frequently the valve updates its opening position.
In the UPC script of a valve, the following variable can be specified:
VAR ITERSTEP NUMBER = 10
This has two effects:
-
If ITERSTEP > 0, then the PRV prioritises flow balance over regulator balance.
-
If ITERSTEP = N, where N > 1, then the PRV will only change its setting every Nth iteration step.
For a chain of PRVs, you might increase this number with each PRV to reduce the interaction between them. This is best combined with the simulation option Enforce Valve/PST Regulation Tolerance.