Mantle convection is the principal control on the thermal and geological evolution of the Earth. Its modeling involves solution of the mass, momentum, and energy equations for a viscous, creeping, incompressible non-Newtonian fluid at high Rayleigh and Peclet numbers. We are developing the parallel adaptive mantle convection code Rhea, which builds on our Adaptive Large-scale Parallel Simulations (ALPS) framework.
The numerical simulation of mantle convection requires the solution of a stationary, highly variable-viscosity Stokes system at each time step. The Stokes equation is discretized using trilinear finite elements for both velocity and pressure, and polynomial pressure projection is used to stabilize this equal-order approximation. For the solution of the discrete Stokes saddle point system we use the preconditioned minimal residual (MINRES) method. The preconditioner is based on an approximate Schur complement for the pressure component and involves a solve with a positive definite operator for the velocity filed. This block solve is approximated with one V-cycle of algebraic multigrid. Results obtained with the parallel AMG libraries BoomerAMG from hypre and with ML from Trilinos will be shown. We discuss the parallel scalability of the solver on up to 16K cores, as well as its dependence on viscosity variations and boundary conditions.