SOR Gauge
The SOR Gauge node () handles settings for the SOR gauge iterative method. This is a method of SOR-type with added functionality, useful as preconditioner/smoother for, for example, 3D magnetostatics in the AC/DC Module discretized with vector elements. In short, the added functionality consists of divergence cleaning for degrees of freedom discretized with vector elements. This node can be used together with the Iterative, Krylov Preconditioner, Presmoother, Postsmoother, or Coarse Solver nodes.
Also see The SSOR Gauge, SOR Gauge, and SORU Gauge Algorithms.
Main
Settings When Used With Any Attribute Node
Use the Solver list to specify which variant of the SOR Gauge algorithm to use. Each variant first performs one ordinary SOR iteration followed by one or several divergence cleaning iterations. Select:
SSOR gauge (the default) to perform an ordinary SSOR iteration followed by divergence cleaning.
SOR gauge to perform an ordinary SOR iteration followed by divergence cleaning.
SORU gauge to perform an ordinary SORU iteration followed by divergence cleaning.
Settings When Not Used with Coarse Solver
Enter the Number of iterations to perform when this node is used as a preconditioner or smoother. This setting is not considered when the attribute is used as a linear system solver (with the Use preconditioner option in the Solver list of the Iterative attribute node). The solver then iterates until the relative tolerance specified by the corresponding operation node is fulfilled rather than performing a fixed number of iterations.
Settings When Used With a Coarse Solver
If this node is used with a Coarse Solver, select a Termination technique to determine how to terminate the solver. Select Fixed number of iterations to perform a fixed number of iterations each time the Coarse Solver is used, or Use tolerance to terminate the Coarse Solver when a tolerance is fulfilled.
If Fixed number of iterations is selected, enter a value for the Number of iterations to perform. The default is 10.
If Use tolerance is selected, enter a value for each of the following:
Relative tolerance to specify the termination tolerance. The default is 0.1.
Maximum number of iterations that the solver is allowed to take. When this number of iterations has been performed without reaching the tolerance specified in the Relative tolerance field, the solver is automatically stopped with an error message.
Specify a scalar Relaxation factor ω. The allowed values of this factor are between 0 and 2 (default: 1). See About the Relaxation Factor for more information.
The Blocked version check box is selected by default and it uses a version of the SOR Gauge 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 SOR method. If you have selected that check box, the Reuse sparsity pattern check box is available. It is elected by default to store the sparsity patterns of the assembled matrices and try to reuse them for successive assembly processes within the same solution process. In many cases, the sparsity pattern of the system matrices does not change from one nonlinear iteration or time step to the others. Reusing the sparsity pattern from the previous iteration or step can then improve the solution performance at the cost of a usually small amount of memory.
Use the Variables list to specify variables to include in the divergence cleaning phase of an SOR Gauge iteration. By default, all vector degrees of freedom are included.
Settings with and Without a Coarse Solver
If used with a Coarse Solver, select a Termination technique. These are described for the SCGS attribute under Settings When Used With a 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 is used as a preconditioner or smoother (default: 2). In addition to the initial divergence cleaning, the method performs a number of cleaning iterations in each linear solver iteration. Control the number of such divergence cleaning iterations in the Number of secondary iterations field.
Secondary
Use the Number of secondary iterations field to specify the number of divergence cleaning iterations to perform for each main iteration (default: 1).