Matrix-free implementation of the non-nested multigrid method
Marco Feder, Luca Heltai, Martin Kronbichler, Peter Munch
TL;DR
This work develops a parallel, matrix-free non-nested geometric multigrid method for continuous Lagrange finite elements, enabling arbitrarily overlapping and independently partitioned levels within deal.II. It introduces a matrix-free intergrid transfer operator $\mathcal{P}^{(c,f)}$ and uses adaptive coarse-grid solvers, including polynomial multigrid with $p^{(c)}=p^{(f)}-1$ and AMG on the coarsest level. A detailed implementation addresses distributed geometric search, efficient evaluation at transfer points via sum-factorization, and boundary-curvature issues, with extensive 2D/3D numerical experiments (Poisson and linear elasticity) validating robustness and performance. Compared to nested MG and AMG/pMG baselines, the non-nested approach delivers competitive or superior performance at higher polynomial orders, highlighting the potential for flexible hierarchies and future extensions to more aggressive coarsening and enhanced transfer operators.
Abstract
Traditionally, the geometric multigrid method is used with nested levels. However, the construction of a suitable hierarchy for very fine and unstructured grids is, in general, highly non-trivial. In this scenario, the non-nested multigrid method could be exploited in order to handle the burden of hierarchy generation, allowing some flexibility on the choice of the levels. We present a parallel, matrix-free, implementation of the non-nested multigrid method for continuous Lagrange finite elements, where each level may consist of independently partitioned triangulations. Our algorithm has been added to the multigrid framework of the C++ finite-element library deal.II. Several 2D and 3D numerical experiments are presented, ranging from Poisson problems to linear elasticity. We test the robustness and performance of the proposed implementation with different polynomial degrees and geometries.
