Multigrid as a Preconditioner
Using a single multigrid cycle to precondition a Krylov solver, combining multigrid speed with Krylov robustness.
Two ways to use multigrid
Multigrid can be used as a standalone solver, iterating V-cycles until convergence, or as a preconditioner inside a Krylov method, applying just one cycle per Krylov step. The preconditioner role is often preferred because it combines the near-optimal error reduction of multigrid with the robustness of a Krylov method, which can compensate for imperfections in the multigrid components.
Why the combination is powerful
A textbook-efficient multigrid method converges in a handful of cycles on its own, but real problems (anisotropy, jumping coefficients, complex geometry) can degrade its convergence or even cause it to stall. Wrapping multigrid in a Krylov method rescues these cases: the Krylov acceleration handles the few error components that multigrid smooths poorly, while multigrid handles the vast majority efficiently. The result converges even when neither method alone would perform well.
- One multigrid V-cycle serves as the preconditioner application per Krylov step
- Symmetric multigrid cycles keep the preconditioner valid for conjugate gradient
- Geometric or algebraic multigrid can both play this role
- Krylov acceleration masks minor deficiencies in the multigrid hierarchy
Keeping the preconditioner symmetric
For use with conjugate gradient, the preconditioner must be symmetric positive definite. A multigrid V-cycle is symmetric only if its pre- and post-smoothing are arranged symmetrically (for example, forward Gauss-Seidel down, backward Gauss-Seidel up). Getting this detail right lets a single V-cycle serve as a valid CG preconditioner; for nonsymmetric problems, GMRES lifts the requirement.
Where it is used
Multigrid-preconditioned Krylov solvers are the standard for large elliptic problems: pressure Poisson solves, electrostatic and magnetostatic potentials, and the elliptic pieces of implicit MHD. The pairing of algebraic multigrid with a Krylov method is a default combination in large-scale scientific computing precisely because it is both fast and robust across a wide range of problems.