Simulation Stopping Criterion
Internally, the solvers in FlowDict solve several equations for values of pressure and velocity at each voxel by using iterative solvers. The basic idea of an iterative method is to:
The iterative process is controlled by setting the values and activation for Error Bound, Tolerance, Residual, Maximal Iterations, and Maximal Run Time (h).
While Maximal Iterations and Maximal Run Time can be selected simultaneously with all other stopping criteria, only one of the three criteria available from the pull-down menu can be selected at once.
The default stopping criterion for the SimpleFFT and LIR FlowDict solvers is Error Bound. For EJ the default stopping criterion is Tolerance.
The Error Bound stopping criterion uses the result of previous iterations and predicts the final solution based on linear and quadratic extrapolation. Error Bound is available for the LIR and SimpleFFT solver. The solver stops if the relative difference in regard to the prediction is smaller than the specified error bound. The stopping criterion recognizes oscillations in the convergence behavior and prevents premature stopping at local minima or maxima. A damped convergence curve is fit through the oscillating curve and the solver stops then regarding the damped convergence curve.
The Tolerance stopping criterion looks for stagnation of the method when the process becomes stationary, i.e. the improvement in the permeability value becomes extremely small from iteration to iteration. Tolerance is available for all solvers.
The iteration is stopped if the relative change is smaller than the value entered for Tolerance. When there is doubt about the quality of the solution, decrease the Tolerance value by a factor of ten for that solver. The drawback of this criterion is that flow solvers sometimes stop too early in case of slow convergence rate or at local extrema of oscillatory convergence curves.
Additionally, for the Error Bound and Tolerance stopping criterion, it is possible to choose if the stopping criterion should consider the permeability only in flow direction or in both flow and tangential directions. For flow simulations where the permeability in flow direction converges much faster than the permeability in tangential directions, it is recommended to change from Flow permeability to Flow & tangential permeability.
By setting the stopping criterion to Residual, the computations terminate as soon as the relative norm drops below the selected residual threshold. Residual is only available for SimpleFFT and EJ. The relative norm of the Schur Complement residual is computed and displayed in the console window during the calculations. The console is visible by clicking the double arrow button in the progress dialog.
The recommendation to choose Tolerance or Residual for the EJ solver is based on the structure’s porosity. Both give similar results for highly porous structures. For dense structures, if using the Schur Complement Residual, the relative norm of the residual may be small even though the correct permeability has not been reached. So, when in doubt, use the Tolerance criteria – the default option.
For the SimpleFFT and LIR solver it is recommended using Error Bound, as this stopping criterion approximates the “relative deviation from the final solution”.
When the solver does not stop due to the stopping criterion Error Bound, Tolerance, or Residual and instead, stops because the Maximal Iterations value or the Maximal Run Time (h) has been reached, no guarantee on the quality of solution can be given.
Which stopping criterion has occurred can be seen in the result file (*.gdr).