In FLOW-3D1 there are three linear solvers (as of Version 9.2) with which to solve for pressure from the linear system of continuity equations throughout the domain: the successive over-relaxation (SOR) algorithm, the alternating direction implicit (ADI) algorithm and the generalized minimal residual (GMRES) solver. With GMRES, the system of equations is solved simultaneously throughout the domain by an iterative technique. This is quite unlike the approach used in the SOR algorithm, which adjusts the pressure on a cell-by-cell basis to enforce the continuity equation, or the ADI algorithm, which adjusts the pressures along each mesh column, whose direction alternates through the chosen directions. Although the SOR algorithm is very simple and memory efficient—no extra information from each cell needs to be stored—it can require a large number of iterations to converge, especially for problems where nearly uniform pressure adjustments must be made over a large region of the domain. However, it will always eventually converge so long as the relaxation parameter Ω is less than or equal to 1.
With GMRES, the number of iterations required for convergence is typically much smaller (less than 10) than for SOR; however, it does not always converge. Therefore, for many problems the GMRES algorithm is computationally much more efficient because it is able to converge with far fewer iterations than other solver schemes. This is especially true for problems where the pressures over a large region of the domain are intimately coupled; examples are incompressible flow through a piping network, compressing a gas within a storage tank and most confined flow problems. SOR still may be more computationally efficient for fairly shallow free-surface problems where the pressure is more or less controlled by the location of the free surface—the pressure between two points in the liquid are not strongly coupled.