SCGS
The SCGS node () is an attribute that handles the SCGS (symmetrically coupled Gauss-Seidel) solver, which is useful as a preconditioner for solving the Navier-Stokes equations and similar fluid flow problems. See The SCGS Solver for more information.
The Settings window includes the following sections:
Main
Settings When Not Used with Coarse Solver
If a Coarse Solver is not used, enter the Number of iterations to specify a fixed number of iterations to perform when this attribute node is being used as a preconditioner or smoother (default: 2).
Settings When Used with Coarse Solver
Use the Termination technique list to select how to terminate the solver. Select:
Fixed number of iterations (the default) to perform a fixed number of iterations each time the Coarse Solver is used.
Use tolerance to terminate the Coarse Solver when a tolerance is fulfilled.
Iterations or tolerance to terminate when the estimated tolerance is smaller than a specified tolerance or after a specified number of iterations, whichever comes first.
Further options that apply to the selection (as indicated at each bullet) made in the Termination technique list are:
Number of iterations (available when Termination technique is set to Fixed number of iterations or Iterations or tolerance). Use this field to specify the fixed number of iterations to perform (default: 10).
Relative tolerance (available when Termination technique is set to Use tolerance or Iterations or tolerance). Use this field to specify the termination tolerance (default: 0.1).
Maximum number of iterations (only available when Termination technique is set to Use tolerance). Use this field to enter a maximum number of iterations that the solver is allowed to take (default: 500). When this number of iterations has been performed without reaching the tolerance specified in the Relative tolerance field, the solver automatically stops with an error message.
Settings When Used with Any Attribute Node
Use the Relaxation factor field to specify a scalar relaxation factor ω. The allowed values of this factor are between 0 and 2 (default: 0.8). See About the Relaxation Factor for more information.
Use the Block solver list to specify how to solve the Vanka block linear systems by selecting one of these options:
Direct, stored factorization (the default) to store the factorization. If two SCGS smoothers are used as presmoother and postsmoother of a Multigrid solver, with similar enough settings, they share the same stored factorization, which means that they only use half the memory.
Direct to use a direct solver. The direct solver is slower than the default option to store the factorization, but it uses less memory.
Iterative, GMRES to use the iterative method GMRES.
The Iterative, GMRES option in the Block solver list can be useful if you use the FGMRES method as a linear system solver because it can handle preconditioners that are not stationary. The GMRES option can also be useful if you use the SCGS algorithm as a smoother to a multigrid solver because GMRES can in some cases be faster than the direct solver if set to a high tolerance, although this advantage is less pronounced with SCGS than Vanka due to the smaller block size used by SCGS.
When GMRES has been selected in the Block solver list, the following options become available. Use the Tolerance field to specify the termination tolerance of GMRES (default: 0.02). Use the Number of iterations before restart field to specify how many iterations the solver should take between each restart (default: 100).
From the Method list, select one of the following methods (see above):
Mesh element lines and vertices (the default)
Mesh elements
Mesh element lines
Select the Vanka check box and then use the Variables list to specify variables to include in a Vanka block approach.
Select the Blocked version check box (selected by default) to use a version of the SCGS method that is optimized for parallel computations.
Select the Reuse data check box (selected by default) to reuse the data in the blocks that define the SCGS method. SCGS is a mesh-based method, so formally this performance enhancement is possible as soon as the mesh is the same.
Secondary
Use the Number of secondary iterations field to specify the number of SSOR iterations (default: 1) to perform for degrees of freedom not involved in the SCGS blocks.
Use the Relaxation factor field to specify a scalar relaxation factor for the iterations specified in the Number of secondary iterations field (default: 1). The allowed values of this factor are between 0 and 2 (default: 0.5). See About the Relaxation Factor for more information.