23.7.3. Algebraic Multigrid (AMG)

This algorithm is referred to as an "algebraic" multigrid scheme because, as we shall see, the coarse level equations are generated without the use of any geometry or re-discretization on the coarse levels; a feature that makes AMG particularly attractive for use on unstructured meshes. The advantage being that no coarse meshes have to be constructed or stored, and no fluxes or source terms need to be evaluated on the coarse levels. This approach is in contrast with FAS (sometimes called "geometric") multigrid in which a hierarchy of meshes is required and the discretized equations are evaluated on every level. In theory, the advantage of FAS over AMG is that the former should perform better for non-linear problems since non-linearities in the system are carried down to the coarse levels through the re-discretization; when using AMG, once the system is linearized, non-linearities are not "felt" by the solver until the fine level operator is next updated.

23.7.3.1. AMG Restriction and Prolongation Operators

The restriction and prolongation operators used here are based on the additive correction (AC) strategy described for structured meshes by Hutchinson and Raithby  [265]. Inter-level transfer is accomplished by piecewise constant interpolation and prolongation. The defect in any coarse level cell is given by the sum of those from the fine level cells it contains, while fine level corrections are obtained by injection of coarse level values. In this manner the prolongation operator is given by the transpose of the restriction operator

(23–123)

The restriction operator is defined by a coarsening or "grouping" of fine level cells into coarse level ones. In this process each fine level cell is grouped with one or more of its "strongest" neighbors, with a preference given to currently ungrouped neighbors. The algorithm attempts to collect cells into groups of fixed size, typically two or four, but any number can be specified.

By default, the “strongest” neighbor is evaluated as the neighbor of the current cell for which the coefficient is largest. For sets of coupled equations is a block matrix and the measure of its magnitude is simply taken to be the magnitude of its first element. In addition, the set of coupled equations for a given cell are treated together and not divided amongst different coarse cells. This results in the same coarsening for each equation in the system.

You have the option of enabling a conservative coarsening scheme that tunes the multigrid coarsening based on coefficient strengths and partitioning, as well as an aggressive coarsening scheme that is optimized for higher coarsening rates. Alternatively, you can enable Laplace coarsening so that Ansys Fluent uses Laplace coefficients as the strength factors in determining the coarsening. For details, refer to Coarsening Parameters in the Fluent User's Guide.

23.7.3.2. AMG Coarse Level Operator

The coarse level operator is constructed using a Galerkin approach. Here we require that the defect associated with the corrected fine level solution must vanish when transferred back to the coarse level. Therefore we may write

(23–124)

Upon substituting Equation 23–116 and Equation 23–122 for and we have

(23–125)

Now rearranging and using Equation 23–116 once again gives

(23–126)

Comparison of Equation 23–126 with Equation 23–121 leads to the following expression for the coarse level operator:

(23–127)

The construction of coarse level operators therefore reduces to a summation of diagonal and corresponding off-diagonal blocks for all fine level cells within a group to form the diagonal block of that group’s coarse cell.

23.7.3.3. The F Cycle

The multigrid F cycle is essentially a combination of the V and W cycles described in The V and W Cycles.

Recall that the multigrid cycle is a recursive procedure. The procedure is expanded to the next coarsest grid level by performing a single multigrid cycle on the current level. Referring to Figure 23.9: V-Cycle Multigrid and Figure 23.10: W-Cycle Multigrid, this means replacing the square on the current level (representing a single cycle) with the procedure shown for the 0-1 level cycle (the second diagram in each figure). We see that a V cycle consists of:

(23–128)

and a W cycle:

(23–129)

An F cycle is formed by a W cycle followed by a V cycle:

(23–130)

As expected, the F cycle requires more computation than the V cycle, but less than the W cycle. However, its convergence properties turn out to be better than the V cycle and roughly equivalent to the W cycle. The F cycle is the default AMG cycle type for the coupled equation set and for the scalar energy equation.

23.7.3.4. The Flexible Cycle

For the flexible cycle, the calculation and use of coarse grid corrections is controlled in the multigrid procedure by the logic illustrated in Figure 23.11: Logic Controlling the Flex Multigrid Cycle. This logic ensures that coarser grid calculations are invoked when the rate of residual reduction on the current grid level is too slow. In addition, the multigrid controls dictate when the iterative solution of the correction on the current coarse grid level is sufficiently converged and should therefore be applied to the solution on the next finer grid. These two decisions are controlled by the parameters and shown in Figure 23.11: Logic Controlling the Flex Multigrid Cycle, as described in detail below. Note that the logic of the multigrid procedure is such that grid levels may be visited repeatedly during a single global iteration on an equation. For a set of 4 multigrid levels, referred to as 0, 1, 2, and 3, the flex-cycle multigrid procedure for solving a given transport equation might consist of visiting grid levels as 0-1-2-3-2-3-2-1-0-1-2-1-0, for example.

Figure 23.11: Logic Controlling the Flex Multigrid Cycle

Logic Controlling the Flex Multigrid Cycle

The main difference between the flexible cycle and the V and W cycles is that the satisfaction of the residual reduction tolerance and termination criterion determine when and how often each level is visited in the flexible cycle, whereas in the V and W cycles the traversal pattern is explicitly defined.

23.7.3.4.1. The Residual Reduction Rate Criteria

The multigrid procedure invokes calculations on the next coarser grid level when the error reduction rate on the current level is insufficient, as defined by

(23–131)

Here is the absolute sum of residuals (defect) computed on the current grid level after the th relaxation on this level. The above equation states that if the residual present in the iterative solution after relaxations is greater than some fraction, (between 0 and 1), of the residual present after the th relaxation, the next coarser grid level should be visited. Thus is referred to as the residual reduction tolerance, and determines when to "give up" on the iterative solution at the current grid level and move to solving the correction equations on the next coarser grid. The value of controls the frequency with which coarser grid levels are visited. The default value is 0.7. A larger value will result in less frequent visits, and a smaller value will result in more frequent visits.

23.7.3.4.2. The Termination Criteria

Provided that the residual reduction rate is sufficiently rapid, the correction equations will be converged on the current grid level and the result applied to the solution field on the next finer grid level.

The correction equations on the current grid level are considered sufficiently converged when the error in the correction solution is reduced to some fraction, (between 0 and 1), of the original error on this grid level:

(23–132)

Here, is the residual on the current grid level after the th iteration on this level, and is the residual that was initially obtained on this grid level at the current global iteration. The parameter , referred to as the termination criterion, has a default value of 0.1. Note that the above equation is also used to terminate calculations on the lowest (finest) grid level during the multigrid procedure. Thus, relaxations are continued on each grid level (including the finest grid level) until the criterion of this equation is obeyed (or until a maximum number of relaxations has been completed, in the case that the specified criterion is never achieved).

23.7.3.5. The Coupled and Scalar AMG Solvers

The scalar AMG solver is used for the solution of linear systems obtained from the discretization of the individual transport equations.

(23–133)

where the above equation contains scalar variables.

The coupled AMG solver is used to solve linear transport equations using implicit discretization from coupled systems such as flow variables for the density-based solver, pressure-velocity variables for the coupled pressure-based schemes and inter-phase coupled individual equations for Eulerian multiphase flows.

(23–134)

where the influence of a cell on a cell has the form

(23–135)

and the unknown and source vectors have the form

(23–136)

(23–137)

The above resultant system of equations is solved in Ansys Fluent using either the Gauss-Seidel smoother or the Incomplete Lower Upper decomposition (ILU) smoother. If a scalar system of equations is to be solved then the point-method (Gauss-Seidel or ILU) smoother is used, while for a coupled system of equations the block-method (Gauss-Seidel or ILU) smoother is used.

23.7.3.5.1. Gauss-Seidel

The Gauss-Seidel method is a technique for solving a linear system of equations one at a time and in sequence. It uses the previously computed results as soon as they become available. It performs two sweeps on the unknowns in forward and backward directions. Both point or block method Gauss-Seidel smoothers are available in Ansys Fluent to solve for either the scalar AMG system of equations or the coupled AMG system of equations.

The Gauss-Seidel procedure can be illustrated using the scalar system, Equation 23–133. The forward sweep can be written as:

(23–138)

where N is the number of unknowns. The forward sweep is followed by a backward sweep that can be written as:

(23–139)

Following from Equation 23–138 and Equation 23–139, symmetric Gauss-Seidel can be expressed in matrix form as a two-step recursive solution of the system

(23–140)

where , , and represent diagonal, lower tridiagonal, and upper tridiagonal parts of matrix , respectively.

Symmetric Gauss-Seidel has a somewhat limited rate of smoothing of residuals between levels of AMG, unless the coarsening factor is set to 2.

23.7.3.5.2. Incomplete Lower Upper (ILU)

A more effective AMG smoother is based on the ILU decomposition technique. In general, any iterating method can be represented as

(23–141)

where matrix M is some approximation of the original matrix A from

(23–142)

should be close to A and the calculation of should have a low operation count. We consider as an incomplete lower upper factorization of the matrix A such that

(23–143)

where and are the lower tridiagonal and upper tridiagonal parts of matrix A. The diagonal matrix D is calculated in a special way to satisfy the following condition for diagonal of matrix M:

(23–144)

In this case, the th element of the diagonal of D will be calculated using

(23–145)

The calculation of the new solution is then performed in two symmetric recursive sweeps, similar to Gauss-Seidel sweeps. Diagonal elements of the ILU decomposition are calculated during the construction of levels and stored in the memory. ILU smoother is slightly more expensive compared to Gauss-Seidel, but has better smoothing properties, especially for block-coupled systems solved by coupled AMG. In this case, coarsening of levels can be more aggressive using coarsening factors between 8 and 12 for 3D problems compared to 2 for Gauss-Seidel.


Important:  When solving the coupled systems, shorter solution times and more robust performance can be obtained by using the default ILU smoother, rather than the Gauss-Seidel smoother, which is the default for scalar systems. ILU is recommended whenever the coupled AMG solver is used. It is used by default for the coupled equations and, when a pseudo time method is selected, for the scalar equations.