Visual MODFLOW Flex supports the Algebraic Multigrid Methods for Systems Solver (SAMG) Package developed by the Fraunhofer Institute for Algorithms and Scientific Computing (FhG-SCAI).
Please Note: the SAMG solver is only compatible with the MODFLOW-2000, -2005 and -LGR flow engines. The SAMG solver is available in single-core mode in Visual MODFLOW PRO and in multi-core mode in Visual MODFLOW Premium.
The Algebraic Multigrid (AMG) Package solver may be obtained from the Fraunhofer Institute for Algorithms and Scientific Computing (FhG-SCAI) for research purposes only.
The SAMG solver package is a complete multi-level framework, designed to overcome the high memory requirements of previous AMG-based solvers, while maintaining the scalability and rapid execution times. Testing of the SAMG solver vs. the PCG2 solver using several models generated using Visual MODFLOW demonstrated solution times to be faster by a factor of between 2.4 and 11.3. The SAMG Package has some distinct advantages over other solvers available with MODFLOW for problems with large grids (more than about 40,000 cells) and/or a highly variable hydraulic-conductivity field. The advantages of multigrid methods over the other iterative solvers mentioned are (1) the effectiveness of the multigrid solver is not dependent on the initial head distribution, and (2) for many problems of interest, the rate of convergence scales approximately linearly with the size of the domain, unlike the other solvers where the rate of convergence increases nonlinearly (Demmel, 1997).
The Solver settings window contains a number of user-defined solver settings which can influence the speed and effectiveness of the AMG solver.
•Max. Iterations (MXITER): [Default = 50] MXITER is the maximum number of times that the AMG routines will be called to obtain a solution. MXITER is never less than 2, and rarely more than 50. MXITER often equals 2 when the problem is linear (all layers are confined, and no boundary conditions are nonlinear; the Evapotranspiration, Drain, and River Packages, for example, produce nonlinear boundary conditions). For nonlinear problems, MXITER generally is 50 or less; however values near 50 and sometimes even larger are needed for more severely nonlinear problems.
•Max. Cycles (MXCYC): [Default = 50] For each call to the solver, AMG cycles through one or more sequences of coarsening and refinement. The solver is limited to a maximum of MXCYC cycles per call to the solver. For most problems, convergence for each iteration is achieved in less than 50 cycles, so that generally MXCYC can be less than 50. For highly nonlinear problems, however, better performance may be achieved by limiting the solver to a small number of cycles, and increasing the maximum number of iterations (MXITER). This prevents the solver from needlessly finding very accurate solutions at early iterations of these highly nonlinear problems.
•Residual Convergence Criterion (RCLOSE) for the inner iteration. Typically RCLOSE is set to the same value as HCLOSE. If RCLOSE is set too high, then additional outer iterations may be required due to the linear equation not being solved with sufficient accuracy. Likewise, a too restrictive setting for RCLOSE for nonlinear problems may force an unnecessarily accurate linear solution. This may be alleviated with the MXCYC parameter or with damping.
•Note: In the new SAMG package, RCLOSE and HCLOSE replace BCLOSE
•Damping Factor (DAMP): [Default = 1] The damping factor can be used to restrict the head change from one iteration to the next, which commonly is useful in very nonlinear problems. DAMP makes the solution change slowly, thus avoiding spurious deviations prompted by nonlinear effects at intermediate solutions. Values of DAMP less than 1.0 restrict the head change (under-relaxation), while values greater than 1.0 accelerate the head change (over-relaxation). For linear problems, no damping is necessary, and DAMP should be set equal to 1.0. For non-linear problems, restricting the head change (DAMP < 1.0) may be necessary to achieve convergence, and values of DAMP between 0.5 and 1.0 are generally sufficient.
For some nonlinear problems, imposing a fixed value of DAMP for every iteration can hinder convergence. One remedy for this condition is to adjust the amount of damping depending on how the head solution progresses. The AMG Package provides two adaptive damping strategies; (1) Cooley’s method with Huyakorn’s modification, and (2) the relative reduced residual method. These methods are described in detail in the U.S. Geological Open-File Report 01-177. A DAMP value of -1 will utilize the first method, and a DAMP value of -2 will utilize the second method.
•Max. Damping Factor (DUP): [Default = 1] The upper limit for DAMP when an adaptive damping strategy is used.
•Min. Damping Factor (DLOW): [Default = 0.2] The lower limit for DAMP when an adaptive damping strategy is used
•Head Change Convergence Criterion (HCLOSE), similar as described for previous solvers
•Perform Conjugate Gradient Iterations (ICG): [Default = checked] In some cases, AMG can perform poorly as a result of a small number of error components that are not reduced during the AMG cycling. A few iterations of a conjugate gradient solver can often reduce these error components and thus help convergence (Cleary and others, 2000). In these cases, the parameter ICG can be set to 1 to perform conjugate gradient iterations at the end of each multigrid cycle. Activating this option can decrease execution times for some problems, but it will also increase the amount of memory used by the solver.
•The Print Flag (IOUTAMG) frame allows you to select between various print options.
•CONTROL Parameter [Default = 2]
•1 - reuse of the setup phase is not used
•2 - reuse of the setup phase will be used (Recommended)
•3 - reuse of the setup phase will be used, and SSC will be used