What To Do if the Solver Gets Stuck in GSC
Figure 1 of the Introduction to the GSC Module depicts the logic of how the Hydraulic Solver and Numerical Optimizer work together. Discussed elsewhere is the issue of physically unrealistic goals. Occasionally the user may have specified a goal which is in fact physically realistic, but in the process of going from a physically realistic starting point to a similarly physically realistic goal, a physically unrealistic system may be proposed by the Numerical Optimizer. What happens in such cases?
When performing goal seeking with the GSC module, AFT Arrow has been designed to gracefully handle such cases. One of two things will typically happen:
-
The Hydraulic Solver will experience a computational error
-
The Hydraulic Solver will not be able to converge
In the first case, AFT Arrow does not stop and tell the user of the error, but instead sets an internal flag that the system used for the particular iteration that caused the error was a poor system and should not be considered further by the Numerical Optimizer. In other words, it skips the system that caused the error. This will happen in a way which is transparent to the user and requires no intervention.
The second case is of more interest here. In this case the Hydraulic Solver gets stuck on one of the systems proposed by the Numerical Optimizer and cannot progress. The Hydraulic Solver will continue trying to converge until it reaches the iteration limit. Once it reaches that limit, it will react in a similar way to the first case above – it will set a flag and skip that system.
However, the default maximum number of iterations is 50,000 (specified in the Iterations panel). It is perfectly fine for one to wait until this limit is reached and allow the AFT Arrow to handle the situation automatically, but depending on the size of the model it may take awhile to get to 50,000 iterations. In such cases it may be desirable to allow AFT Arrow to more quickly conclude the model will not converge by reducing the maximum iterations to something like 5,000.
Tip: If the Hydraulic Solver appears to get stuck while performing a GSC run, you can pause the Solver, open the Steady Solution Control group from the Other Actions menu, and reduce the Maximum Iterations. The default value is 50,000. Depending on the model size, a reduced value of 5,000 may be appropriate.