Articles | Volume 17, issue 10
https://doi.org/10.5194/se-17-1167-2026
https://doi.org/10.5194/se-17-1167-2026
Method article
 | 
19 Oct 2026
Method article |  | 19 Oct 2026

Efficient Uzawa algorithms with projection strategies for geodynamic Stokes flow

Deok-Kyu Jang, Kyeong-Min Lee, Cedric Thieulot, Whan-Hyuk Choi, and Byung-Dal So
Abstract

Stokes equations are often difficult to handle in geodynamic modelling because they form a saddle-point system and involve strong variations in viscosity. In this work, we reformulate the Uzawa iteration through finite element variational principles, replacing the standard algebraic residual with a weighted L2 form that yields a robust preconditioned conjugate gradient iteration for the Schur complement system. Residuals are evaluated in weak form, giving an effect similar to that of a mass-matrix preconditioner. We also add a projection step so that the velocity field remains nearly divergence-free. These updates made the solver converge faster and behave more stably than the standard Uzawa method. This reformulation provides a complementary algorithmic perspective on Schur complement preconditioning within the finite element variational framework. The modified approach was tested in several cases, including ABC flow, SolCx, SolKz, mantle convection, block sinking, multisinker, and compressible convection under the Anelastic Liquid Approximation.

Share
1 Introduction

Geodynamic modelling of the mantle and lithosphere is concerned with processes such as subduction (Gerya, 2022; Li and Gurnis, 2023; Sime et al., 2024), continental rifting (Huismans et al., 2001; Brune et al., 2012; So and Yuen, 2015), mantle plume upwelling (Ismail-Zadeh et al., 2006; Negredo et al., 2022; Kim and So, 2020), and lithospheric buckling (Do et al., 2023; Xie et al., 2024). The mantle has a viscosity on the order of 1019–1023 Pa s, and the associated flows occur at low Reynolds number. As a result, inertial terms are negligible, and the Navier–Stokes equations reduce to the elliptic Stokes system. This formulation produces large and sparse saddle-point systems that are challenging to solve, especially when viscosity varies by several orders of magnitude and complex rheologies are present (Moresi and Gurnis, 1996; Zhong et al., 2000).

The spatial discretisation of the Stokes equations in geodynamics is frequently performed using finite element (FEM), finite difference (FDM) procedures, or finite volume (FVM) techniques. These algebraic systems retain the saddle-point structure of the velocity–pressure formulation. For this reason, direct solvers are not a realistic method for three-dimensional problems due to memory and computational expense. Due to this reason, iterative Krylov subspace approaches such as the conjugate gradient (CG) method for symmetric positive definite systems (Hestenes and Stiefel, 1952) and the generalized minimal residual method (GMRES) or its flexible variant (FGMRES) for nonsymmetric systems (Saad and Schultz, 1986; Saad, 2003) are often used for large-scale simulations. In the absence of suitable preconditioning, such methods progress slowly, especially when strong viscosity contrasts reduce the conditioning of the operator.

A common strategy is to eliminate the velocity variables and form a reduced Schur complement system for the pressure. The standard Uzawa algorithm (Arrow et al., 1958) applies Richardson-type iterations to this system and recomputes velocity at each step. The method is simple but converges slowly and is sensitive to the relaxation parameter, which limits its use in geodynamic applications. Later studies proposed variants with preconditioning and inexact solves, such as block preconditioners and mass-matrix approximations, to improve efficiency and stability (Cahouet and Chabard, 1988; Elman and Golub, 1994; Chen, 1998; Bai and Wang, 2008). Explicit formulations of adaptive Uzawa and conjugate-directions Uzawa have been presented, showing their relation to gradient and conjugate gradient iterations (Braess, 2001). In geodynamics, Uzawa-type updates have been implemented in mantle convection codes such as CitcomS (Zhong et al., 2000), and scalability studies have evaluated their performance on large parallel systems (Gmeiner et al., 2016). More generally, Schur complement systems can be solved using Krylov methods combined with suitable preconditioners, and much work has focused on block preconditioners, multigrid methods, and algebraic strategies for Stokes flow (Silvester and Wathen, 1994; May and Moresi, 2008; Kronbichler et al., 2012), including the weighted BFBT (w-BFBT) preconditioner that incorporates viscosity directly into the Schur complement approximation (Rudi et al., 2017). These approaches are now widely adopted in large-scale mantle convection modelling.

This study revisits the Uzawa framework from a variational perspective. The key observation is that defining residuals through weighted L2 inner products in the finite element space recasts the Uzawa iteration as a preconditioned conjugate gradient method for the Schur complement system. Since the entire algorithm is expressed through inner products and variational forms, it naturally leverages the matrix assembly and parallel solver infrastructure available in general-purpose finite element libraries coupled with PETSc. Based on this reformulation, we propose two extensions. The first is a viscosity-weighted residual formulation that serves as a Schur complement preconditioner and whose convergence can be systematically improved. The second is a projection post-processing step that improves the divergence-free constraint at minimal additional cost.

The first extension changes how residuals are updated in the pressure space using inner products, which works the same as applying a mass-matrix preconditioner. This connects the L2-projected residual update to preconditioned conjugate gradient (PCG) iterations and brings mass-matrix stabilization into the Uzawa framework (Elman and Golub, 1994; Ramage and Wathen, 1994; Chen, 1998; Benzi et al., 2005). We also introduce a viscosity-weighted variant where the mass matrix is replaced by an η-weighted version. This idea relates to earlier work on Schur complement preconditioners for variable-viscosity Stokes flow (May and Moresi, 2008). Unlike block preconditioning, our method puts viscosity weighting directly into the Uzawa iteration, making it a preconditioned conjugate gradient scheme with a preconditioner that better matches the true Schur complement spectrum. This gives faster and more stable convergence when viscosity contrasts are large.

The second extension is a post-processing projection step that projects velocity variable onto the constraint-satisfying subspace. For incompressible flow, this is the discrete Helmholtz–Hodge decomposition. This method was first introduced for time-dependent Navier-Stokes equations (Chorin, 1967), and later refined for better stability and accuracy (Bell et al., 1989; Guermond and Quartapelle, 1998; Brown et al., 2001; Pyo and Shen, 2007). These methods are standard in unsteady fluid dynamics but have received little attention for elliptic Stokes problems in geodynamics. We use projection after Uzawa iterations to reduce constraint residuals.

The remainder of this paper is organized as follows. Section 2 presents the mathematical formulation, including the Stokes equations, the saddle-point system, Uzawa-type algorithms, residual representations, and the Helmholtz–Hodge projection. Section 3 reports numerical experiments using manufactured benchmarks, incompressible and compressible mantle convection, and block sinking problems. Section 4 summarizes the main results and outlines future work.

2 Mathematical formulation

2.1 Stokes equations and saddle-point formulation

We consider the incompressible Stokes equations relevant to mantle convection. Because the Prandtl number of mantle materials is effectively infinite (Pr ≈ 1023), inertial terms in the Navier–Stokes equations can be neglected, and the governing system reduces to the elliptic Stokes equations (Schubert et al., 2001).

In a bounded domain Ω ⊂ Rnd (nd = 2, 3), these are

∇⋅σ+ρg=0,∇⋅u=0,

where u is velocity, p is pressure, ρ is density, and g is gravitational acceleration. The Cauchy stress tensor is

σ=-pI+2ηD(u),D(u)=12∇u+∇uT,

with η the dynamic viscosity and D(u) the strain-rate tensor.

In compact form, the Stokes equations then become

∇⋅η∇u+∇uT-∇p+ρg=0,∇⋅u=0.

In the case of constant viscosity with Dirichlet boundary conditions, the momentum equation reduces to a vector Laplacian.

Discretization with stable finite element pairs (Babuška, 1973; Brezzi, 1974; Silvester and Wathen, 1994; Logg et al., 2012) gives the saddle-point system

KGGT0up=fh,

where K is the discrete viscosity matrix (symmetric positive definite) and G is the discrete gradient operator. The system is symmetric but indefinite, and efficient iterative solvers are required.

Eliminating velocity gives the Schur complement system

Sp=GTK-1f-h,S=GTK-1G.

The Schur complement S is symmetric positive definite under the standard inf-sup stability condition. Forming S explicitly is too expensive, since each multiplication requires solving with K−1, which is costly for large problems with variable viscosity. In practice, S is applied implicitly within iterative methods, together with suitable preconditioners.

The standard Uzawa algorithm applies Richardson-type iterations to update the pressure and recompute the velocity, with relaxation parameter ω > 0. The scheme is simple, but its convergence is sensitive to the choice of ω and deteriorates with large viscosity contrasts.

Algorithm 1Standard Uzawa.

Initialization: Set p0=0
Iteration (k≥0):
Velocity update: Find uk+1 satisfying Kuk+1=f-Gpk
Pressure update: Compute pk+1=pk+ω(GTuk+1-h)

To reduce this sensitivity, the relaxation parameter is updated adaptively at each step. This improves robustness compared with the fixed-ω method.

Algorithm 2Adaptive Uzawa.

Initialization: Set p0=0
Initial solve: Find u1 satisfying Ku1=f-Gp0
Initial residual: Compute q1=h-GTu1
Iteration (k≥1):
Auxiliary solve: Find zk satisfying Kzk=Gqk
Step-size selection: Compute ωk=(qk)Tqk/(Gqk)Tzk
Pressure update: Compute pk+1=pk-ωkqk
Velocity update: Compute uk+1=uk+ωkzk
Residual update: Compute qk+1=h-GTuk+1

The CD-U method accelerates convergence by constructing conjugate directions, in analogy with the conjugate gradient method. The explicit coefficients αk and βk highlight the connection with CG. By exploiting information from previous steps, CD-U achieves faster and more stable convergence, especially for problems with strong viscosity contrasts or heterogeneous coefficients.

Algorithm 3Conjugate-Directions Uzawa (CD-U).

Initialization: Set p0=0
Initial solve: Find u1 satisfying Ku1=f-Gp0
Initial residual: Compute q1=h-GTu1,   set   d1=-q1
Iteration (k≥1):
Direction solve: Find zk satisfying Kzk=Gdk
Step-size selection: Compute αk=(qk)Tqk/(Gdk)Tzk
Pressure update: Compute pk+1=pk+αkdk
Velocity update: Compute uk+1=uk-αkzk
Residual update: Compute qk+1=h-GTuk+1
Conjugate direction: Compute βk=(qk+1)Tqk+1/(qk)Tqk,   set   dk+1=-qk+1+βkdk

2.2 Residual representation in Uzawa iterations

The definition of the residual is central to Uzawa-type algorithms. In the Schur complement formulation, the discrete residual is

qk=h-GTuk,

which measures the violation of the incompressibility constraint. In its standard (vector) form, qk is assembled directly as a discrete vector. This is simple but suffers from poor conditioning, and small singular values of GT can lead to unstable step-size choices and slow convergence, especially with large viscosity contrasts.

An alternative is to define the residual variationally in the L2 inner product on the pressure space Q:

(1) 〈 q k , r 〉 = 〈 h + ∇ ⋅ u k , r 〉 , ∀ r ∈ Q .

In discrete form this corresponds to solving a mass-matrix system,

Mpqk=Mph+b(uk),

where b(uk) denotes the discrete constraint term. This formulation shows that Uzawa iterations implicitly apply the pressure mass matrix as a preconditioner (Cahouet and Chabard, 1988; Elman and Golub, 1994; Chen, 1998; Benzi et al., 2005). The resulting L2-projected residual is smoother and scale-independent, and yields more robust convergence at modest extra cost.

With this modification, the overall update structure of the standard, adaptive, and CD-U algorithms remains the same. Only the scalar coefficients change, as summarized below.

Standard Uzawa.

(2) 〈 p k + 1 , r 〉 = 〈 p k , r 〉 - ω 〈 q k + 1 , r 〉 , ∀ r ∈ Q .

Adaptive Uzawa. Using the L2 residual definition in Eq. (1), the step size is updated as

(3) ω k + 1 = 〈 q k + 1 , q k + 1 〉 〈 ∇ q k + 1 , z k + 1 〉 .

Conjugate-directions Uzawa (CD-U). With qk defined in Eq. (1), the coefficients are

(4) α k = 〈 q k , q k 〉 〈 ∇ d k , z k 〉 , β k = 〈 q k + 1 , q k + 1 〉 〈 q k , q k 〉 .

Conjugate-directions Uzawa with η-weighted residuals (CD-U-η). The standard L2 residual in Eq. (1) can be extended by replacing the mass matrix with an inverse-viscosity-weighted version, which we refer to as η-weighted for brevity. This introduces a viscosity scaling in the pressure space, which more closely reflects the spectrum of the true Schur complement for variable-viscosity problems. The resulting scheme is a preconditioned conjugate-gradient iteration in which both the residual qk and its preconditioned form wk appear in the update formulas.

Algorithm 4Conjugate-Directions Uzawa with η-weighted residuals (CD-U-η).

Initialization: Set p0=0
Initial solve: Find u1 satisfying Ku1=f-Gp0
Initial residual: Find q1 satisfying 〈q1,r〉=〈h+∇⋅u1,r〉  ∀r∈Q
Preconditioning: Find w1 satisfying 〈1ηw1,r〉=〈q1,r〉   ∀r∈Q,   set d1=-w1
Iteration (k≥1):
Direction solve: Find zk satisfying Kzk=Gdk
Step-size selection: Compute αk=〈qk,wk〉/〈∇dk,zk〉
Pressure update: Compute pk+1=pk+αkdk
Velocity update: Compute uk+1=uk-αkzk
Residual update: Find qk+1 satisfying 〈qk+1,r〉=〈h+∇⋅uk+1,r〉   ∀r∈Q
Preconditioning: Find wk+1 satisfying 〈1ηwk+1,r〉=〈qk+1,r〉   ∀r∈Q
Conjugate direction: Compute βk=〈qk+1,wk+1〉/〈qk,wk〉,   set   dk+1=-wk+1+βkdk

This iteration can be interpreted as a Preconditioned Conjugate Gradient (PCG) method applied to the Schur complement system. Here qk denotes the residual in the pressure space, and wk its preconditioned form. The search directions dk and coefficients αk, βk are then defined from inner products such as 〈qk,wk〉, following the standard PCG structure.

With the L2 formulation, the preconditioner is the pressure mass matrix Mp, which is spectrally close to the identity. In this case wk = qk, and the scheme reduces to a Conjugate Gradient iteration with a trivial preconditioner. In the η-weighted formulation, the preconditioner is the viscosity-weighted mass matrix, so that wk ≠ qk and both quantities appear in the iteration. Note that the relation between qk and wk cannot be expressed pointwise as wk=ηqk, since η(x) varies spatially. Instead, wk is defined variationally by

〈1ηwk,r〉=〈qk,r〉,∀r∈Q,

which  ensures that wk  belongs to the pressure space Q  and serves as the Riesz representative of qk under the η-weighted inner product. This formulation provides a consistent SPD preconditioner in the finite element setting.

In practice, at high resolution or extreme viscosity contrasts, the conjugate gradient iteration may stagnate when the denominators in the step-size and conjugacy coefficients become too small. To address this, we introduce an adaptive scaling parameter AAR that modifies the preconditioner weights from 1/η(x) to AAR / η(x). Starting from AAR = 1.0, the parameter is progressively reduced whenever stagnation is detected. To prevent numerical instability in high-viscosity regions where the scaled weights become excessively small, we enforce a pointwise lower bound minx(AAR/η(x))≥ϵ for a prescribed threshold ϵ. The specific reduction strategy and the threshold ϵ are reported together with the numerical experiments.

In summary, while the L2 formulation corresponds to a CG iteration with a trivial mass-matrix preconditioner, the η-weighted Uzawa method is a genuine PCG scheme with a physically motivated preconditioner that better reflects the spectral properties of the Schur complement, particularly under strong viscosity contrasts (May and Moresi, 2008). The adaptive AAR strategy ensures robust convergence of this scheme across a wide range of resolutions and viscosity ratios.

2.3 Helmholtz–Hodge projection as post-processing

Uzawa-type iterations reduce the constraint violation only asymptotically, so the discrete constraint remains slightly violated after a finite number of steps. To enforce the constraint explicitly, we apply a projection step as a post-processing. The idea is to correct an intermediate velocity u^ by adding a gradient field so that the updated velocity satisfies the discrete constraint operator

C(u)=h,

where 𝒞(u) = ∇⋅u for the incompressible case, and 𝒞(u) = ∇⋅(ρ‾u) under the anelastic liquid approximation (ALA).

For the incompressible case, 𝒞(u) = ∇⋅u, the projection requires solving a scalar Poisson problem

-Δϕ=h+∇⋅u^,uk+1=u^+∇ϕ.

This corresponds to the discrete Helmholtz–Hodge decomposition, which states that any vector field can be uniquely decomposed into a solenoidal part and a gradient part,

u*=u+∇ϕ,∇⋅u=0.

Equivalently, the projection operator can be written as

P=I-G(GTG)-1GT,

which is symmetric and idempotent.

In variational form, the correction is obtained by solving

〈∇ϕ,∇ψ〉=〈h+∇⋅u^,ψ〉,∀ψ∈Q,

and updating the velocity consistently in the finite element space,

〈uk+1,w〉=〈u^,w〉+〈∇ϕ,w〉,∀w∈V.

This weak formulation is important: a direct discrete update uk+1 = u^ + Gϕ does not yield the same accuracy, whereas the variational form ensures consistency and better convergence. In practice, the projection can also be implemented component-wise to avoid assembling a large coupled system.

For the compressible case, 𝒞(u) = ∇⋅(ρ‾u), and the projection takes the weighted form

-∇⋅ρ‾∇ϕ=h+∇⋅ρ‾u^,uk+1=u^+∇ϕ,

so that ∇⋅(ρ‾uk+1) = h is satisfied exactly. This weighted projection is the natural extension of the Helmholtz–Hodge decomposition to density-dependent flows.

Although projection methods of this type are standard in computational fluid dynamics, they have not been used previously as post-processing corrections in geodynamics. As we show in Sect. 3, this step reduces accumulated divergence errors and improves the long-term accuracy of mantle convection benchmarks.

A related approach in particle-in-cell methods is the conservative velocity interpolation (CVI) scheme (Wang et al., 2015), which enforces local mass conservation during interpolation but follows a different formulation from the projection-based correction used here. The CVI approach is specifically designed for quadrilateral Q1P0 elements, whereas our projection method is element-independent and applicable to general finite element discretizations.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-g01

3 Numerical Implementation

3.1 Finite Element Framework and Parallel Environment

We implemented the proposed algorithms using the open-source finite element library FEniCS (version 2019.2.0.13) (Logg et al., 2012; Alnæs et al., 2015). FEniCS provides a Python interface that simplifies variational form expression and automates finite element matrix assembly, which is useful in geodynamics where PDE systems often involve strongly variable rheologies (Zhamaletdinov et al., 2011; Vynnytska et al., 2013; Wilson et al., 2017; Lee et al., 2024). To solve the large sparse linear systems from discretizing the Stokes equations, we coupled FEniCS with PETSc (Balay et al., 2024). We used GMRES and CG with algebraic multigrid (AMG) preconditioning. Solver configurations were adjusted through PETSc runtime parameters.

All algorithms were implemented within the standard FEniCS–PETSc environment without custom code. This portability shows that the approach is reproducible, extendable, and transferable to other platforms, in line with current practices in large-scale geodynamic modeling.

3.2 Solver configuration and benchmark setup

Each Uzawa iteration with projection requires solving three linear systems: (i) the momentum equation for velocity, (ii) an L2-projection in the pressure space for residual representation and scalar potential projection, and (iii) a Poisson system for velocity correction.

The L2-projection system was solved with CG preconditioned by block Jacobi, which works well for the diagonally dominant mass matrices from finite element discretizations. The Poisson system for velocity correction was also solved with CG and BoomerAMG. All solvers used relative and absolute tolerances of 10−10 and 10−12, so that the convergence behavior observed in our benchmarks is governed by the outer Uzawa iteration rather than by inner solver accuracy. For reference, the ASPECT code (Kronbichler et al., 2012) uses default inner solve tolerances of 10−2 for the velocity block and 10−6 for the Schur complement block.

Uzawa iterations were terminated using a normalized divergence residual

Rdiv=‖∇⋅uk‖L2‖uk‖L2,

which measures how well the continuity constraint is satisfied. We used relaxed thresholds in long mantle convection runs to balance efficiency and accuracy.

All benchmarks were discretized with Taylor–Hood (P2-P1) finite elements. Geodynamic models often use quadrilateral or hexahedral meshes, but we used structured triangular and tetrahedral meshes generated by splitting each cell along its diagonals. In two dimensions, this diagonal subdivision yields a symmetric “union-jack” pattern that preserves benchmark symmetry. This configuration provides robust velocity-pressure stability and straightforward implementation in FEniCS. Further discussion on finite element selection for geodynamic Stokes modeling can be found in (Thieulot and Bangerth, 2025). Viscosity η is represented as a finite-element field and evaluated at quadrature points during local assembly of element matrices.

To evaluate accuracy, we report the relative L2 errors:

Eu=‖u-uexact‖L2‖uexact‖L2,Ep=‖p-pexact‖L2‖pexact‖L2.

3.3 Baseline comparison of Uzawa variants

We first establish a baseline solver among the three Uzawa variants: standard Uzawa (S-U), adaptive Uzawa (A-U), and conjugate-directions Uzawa (CD-U). For this comparison, we use two complementary tests. The ABC flow with constant viscosity assesses convergence behavior in an ideal setting and is used to compare S-U, A-U, and CD-U directly. The SolCx problem with a viscosity contrast of 106 provides a stress test under strong heterogeneity; here we focus on CD-U and contrast three residual formulations – vector (algebraic), L2 inner-product, and the viscosity-weighted CD-U-η – to examine robustness. In both tests, we track the relative L2 errors in velocity and pressure and the normalized divergence residual over iterations, and select the most effective configuration for the remainder of the paper.

3.3.1 ABC Flow (smooth analytical solution)

The ABC (Arnold–Beltrami–Childress) flow (Zhao et al., 1993) is used as a smooth manufactured benchmark to compare the three Uzawa variants (S-U, A-U, CD-U) and to select a baseline solver. With constant viscosity (η = 1.0), all residual formulations reduce to the trivial case wk = qk. This setting isolates the algorithmic differences among the variants without interference from viscosity contrasts.

The exact velocity and pressure fields are

u(x,y,z)=sin(πz)+cos(πy)sin(πx)+cos(πz)sin(πy)+cos(πx),p(x,y,z)=sin(πx)cos(πy)cos(πz).

Figure 1 shows the relative velocity and pressure errors together with the normalized continuity residual Rdiv as functions of iteration count. S-U converges very slowly and is highly sensitive to the relaxation parameter. A-U improves robustness but stagnates at higher error levels. CD-U, in contrast, converges rapidly and monotonically for all quantities. These results support choosing CD-U as the baseline solver for the following benchmarks.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f01

Figure 1ABC flow benchmark on a 32 × 32 × 32 mesh with P2-P1 elements. (a) Relative velocity error Eu, (b) relative pressure error Ep, and (c) normalized continuity residual Rdiv as functions of iteration count for the S-U, A-U, and CD-U algorithms.

Download

3.3.2 SolCx (viscosity contrast benchmark)

The SolCx problem (Zhong, 1996) is a standard two-dimensional benchmark for testing solver performance under strong viscosity contrasts. It is posed on Ω = [0,1]2 with a discontinuous viscosity,

η(x,y)=1,x≤0.5,106,x>0.5,

and a density field ρ(x,y) = sin (πy)cos (πx). A gravitational acceleration of unit magnitude (|g| = 1) was applied in the vertical direction, and reference solutions were taken from Underworld (Mansour et al., 2020; Moresi et al., 2007).

This benchmark poses a challenging test for Uzawa-type solvers. Here we compare three variants of the Conjugate-Directions Uzawa method. The first is the discrete residual update (Algorithm 3), where the residual is updated in purely algebraic (vector) form. The second is the L2 inner-product formulation, in which the residual is defined variationally as in Eq. (1), and the update coefficients are computed using the inner-product relations in Eq. (4). Finally, we consider the viscosity-weighted extension CD-U-η (Algorithm 4), which realizes a preconditioned conjugate-gradient method on the Schur complement with a physically motivated η-weighted mass matrix.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f02

Figure 2SolCx benchmark with P2-P1 elements. (a) Relative velocity error Eu, (b) relative pressure error Ep, and (c) normalized divergence residual Rdiv as functions of iteration count for CD-U with discrete update, L2 inner-product update, and η-weighted update.

Download

Figure 2 shows that the discrete CD-U update converges slowly and stagnates at high pressure error. The L2 inner-product version achieves faster convergence but with oscillations in Rdiv. The η-weighted variant provides the most rapid initial reduction of velocity and pressure errors and reaches much lower Rdiv within a few iterations. At later steps, Rdiv shows a mild increase. This occurs when conjugacy – the orthogonality of successive search directions in the preconditioned Schur complement inner product – degrades due to inexact inner solves for Kzk = Gdk and Mηwk = qk. Loss of conjugacy means that a new step partly points back toward earlier directions. Progress measured in the physical L2 divergence can be reversed locally, even though the preconditioned CG energy still decreases.

In our numerical experiments, we found that restarts or periodic reinitialization could alleviate this effect. We did not apply them here because the iteration counts are not large enough to require it. Subsequent benchmarks remain stable without reinitialization. The small increase in Rdiv is a characteristic of the baseline η-weighted formulation rather than a practical limitation.

3.3.3 Multisinker benchmark

The multisinker problem consists of multiple high-viscosity circular inclusions embedded in a low-viscosity medium, driven downward by a gravity-like body force. Unlike the SolCx benchmark with its single planar viscosity discontinuity, the multisinker configuration produces localized viscosity jumps at multiple locations, generating irregular and multiscale flow fields representative of geodynamic settings such as subducting slabs or cratonic roots. We follow the problem setup described in (Rudi et al., 2017).

We consider this problem in two dimensions on the domain Ω = [0,1]2 with 8 high-viscosity sinkers centered at prescribed locations ci, i=1,…,8. The viscosity field is defined as

η(x)=ηmax-ηmin1-χ8(x)+ηmin,

where the indicator function χ8 accumulates the sinker regions through a product of smoothed Gaussian functions,

χ8(x)=∏i=181-exp-δmax0,|ci-x|-ω2,

with δ = 200 controlling the sharpness of the viscosity transition and ω = 0.05 the radius of each sinker. Inside the sinkers χ8≈0 and η≈ηmax, while in the background χ8≈1 and η≈ηmin. The dynamic ratio DR(η) = ηmax/ηmin was varied from 102 to 1010, with ηmin = DR-1/2 and ηmax = DR1/2. The body force f(x) = (0,β(χ8(x)-1)) with β = 105 acts only inside the sinkers, driving them downward through the lighter, low-viscosity medium. The domain was discretized with 256 × 256 triangular P2-P1 Taylor–Hood elements, and reference solutions were computed using the MUMPS direct solver. Figure 3 shows the viscosity field and the vertical component of the body force for DR(η) = 1010.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f03

Figure 3Multisinker benchmark configuration with 8 sinkers and DR(η) = 1010. (a) Viscosity field and (b) vertical component of the body force.

Download

Since this problem has no analytical solution, convergence was evaluated by measuring relative errors in velocity and pressure against the MUMPS reference solution. Figure 4 shows the convergence history of the CD-U-η solver across dynamic ratios from 102 to 1010.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f04

Figure 4Multisinker benchmark with P2-P1 elements on a 256 × 256 mesh. Convergence of the CD-U-η solver across dynamic ratios from 102 to 1010. (a) Relative velocity error Eu and (b) relative pressure error Ep as functions of iteration count.

Download

Figure 4 shows that at low dynamic ratios (DR = 102), the solver converges rapidly. As the dynamic ratio increases, an extended plateau develops in the early iterations before convergence accelerates. This is characteristic of conjugate gradient methods with a poor initial guess. In all experiments, the initial pressure was set to zero, which is far from the true solution for high-viscosity-contrast problems. A better initial pressure estimate could reduce this plateau, but developing such strategies is beyond the scope of this work. For DR ≥ 106, the convergence curves nearly overlap, indicating that the solver becomes insensitive to further increases in viscosity contrast. The pressure error consistently lags behind the velocity error during the initial phase. The adaptive AAR strategy was triggered only for DR = 108 and 1010 near the final iterations. For this benchmark, stagnation was detected when |Rdivk+1-Rdivk|<10-8 for two consecutive iterations, with a reduction factor of 0.01 and pointwise lower bound ϵ = 10−8.

3.4 Post-processing strategies for incompressible problems

We next examine the effect of the post-processing correction in two incompressible tests: linear mantle convection with variable viscosity and the block sinking problem with sharp density and viscosity contrasts. In both tests the mesh, boundary conditions, and time stepping are kept identical; the only change is in the Stokes solver. Results from CD-U-η are compared with those from CD-U-η combined with post-processing. Reference solutions are obtained with the direct LU solver MUMPS (Amestoy et al., 2000), which solves the discrete system to near machine precision.

Performance is evaluated by the relative L2 errors of velocity and scalar fields (temperature, composition, or density) and by the normalized continuity residual Rdiv. A breakdown of solver cost is also reported, showing that the post-processing step adds little to the total runtime, while momentum solves remain the dominant cost.

3.4.1 Linear mantle convection

The linear mantle convection benchmark was solved on Ω = [0,2] × [0,1] using a 320 × 160 structured grid, subdivided into triangular P2-P1 Taylor–Hood elements for velocity and pressure. Viscosity followed a depth- and temperature-dependent exponential law (Blankenbach et al., 1989),

η(x,y)=exp-bTΔT+c(1-y),b=log(2.5),c=log(2.0).

The body force in the Stokes equations was given by thermal and compositional buoyancy,

f=(RaTT+Raϕϕ)g^,g^=(0,-1),

with Rayleigh numbers

RaT=Raϕ=106.

Initial temperature was prescribed from boundary-layer theory (van Keken, 1997), and the composition field ϕ was initialized as a dense basal layer (Tan and Gurnis, 2005). Boundary conditions were no-slip at the bottom and free-slip elsewhere for velocity; T = 1 at the bottom and T = 0 at the top with insulating sidewalls; and ϕ = 1 at the bottom with homogeneous Neumann elsewhere. The transport equations for temperature T and composition ϕ are

∂tT+u⋅∇T-∇⋅(κ∇T)=0,∂tϕ+u⋅∇ϕ=0,

where κ = k/(ρcp) denotes the thermal diffusivity, with k the thermal conductivity, ρ the density, and cp the specific heat capacity. For this benchmark, we set κ = 1. Both fields were discretized with P1 discontinuous Galerkin elements using upwind fluxes. Time integration employed the second-order BDF2 scheme, initialized by backward Euler. The Stokes system was solved at each step with CD-U-η or CD-U-η + Post-processing. Iterations were stopped once the normalized continuity residual Rdiv fell below 10−3.

Figure 5 shows that the post-processing step improves accuracy in all fields. Velocity errors remain smaller at every stage, and the normalized continuity residual Rdiv is consistently lower. Since the composition and temperature fields are advected by the velocity, they also benefit and show clear error reductions. Over 5000 steps, these corrections accumulate, yielding higher long-term accuracy compared with the baseline solver.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f05

Figure 5Mantle convection benchmark over 5000 time steps (Δt = 10−6). Comparison of CD-U-η with and without projection post-processing: (a) relative velocity error, (b) composition error, (c) temperature error, and (d) normalized divergence residual Rdiv.

Download

Figure 6 shows composition and temperature errors at the final step. CD-U-η alone produces noticeable errors near the interface, especially in the composition field. With post-processing, these localized errors are reduced, and the solution is closer to the reference from the direct LU solver MUMPS, which is effectively exact for the discrete system. This demonstrates that post-processing improves accuracy and aligns the iterative solution more closely with that of a direct solver.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f06

Figure 6Mantle convection benchmark at time step 5000. Reference fields: (a) composition and (b) temperature. Absolute errors for CD-U-η: (c) composition and (d) temperature. Absolute errors for CD-U-η with projection: (e) composition and (f) temperature.

Download

Table 1 summarizes the solver cost for CD-U and CD-U-η with post-processing. The viscosity-weighted variant reduces the average number of momentum solves per step (2.40 vs. 3.05) under the same tolerance, leading to an overall runtime reduction of about 10 %. The extra mass-matrix operations in CD-U-η (two solves per iteration instead of one) are inexpensive, contributing only about 1 %–2 % of the total cost. Similarly, the post-processing corrections, consisting of a Poisson solve and velocity update, account for only a small fraction of the runtime compared with the dominant momentum solves. The main benefit of CD-U-η is therefore the reduction in momentum iterations, while the additional scalar operations have a negligible impact on efficiency.

Table 1Cost breakdown for 5000 steps (Δt = 10−6, tolerance 10−3, 32 cores). Only solver execution time is included. Both CD-U and CD-U-η are shown with post-processing.

Download Print Version | Download XLSX

3.4.2 Block sinking problem

The block sinking benchmark (Gerya, 2019) is a two-material Stokes flow test designed to evaluate solver robustness under sharp density and viscosity contrasts. A dense, low-viscosity block sinks into a lighter and more viscous fluid. The interface was represented by a DG0 level-set field (ϕ), positive inside the block, negative outside, and zero on the interface. The level-set was advected in time without reinitialization.

The domain Ω = [0,1]2 was discretized with 256 × 256 triangular P2-P1 Taylor–Hood elements for velocity and pressure. The block initially occupied 0.4 ≤ x ≤ 0.6, 0.7 ≤ y ≤ 0.9. Material properties showed strong contrasts: density 4200 vs. 2800, viscosity 0.1 vs. 100. All sides had free-slip boundaries, and the pressure was initialized uniformly. The body force was buoyancy,

f=ρ(x,y)g^,g^=(0,-1),

with ρ defined by the block geometry. The level-set was advanced using a Crank–Nicolson scheme.

Solver iterations used a relaxed stopping condition Rdiv < 0.2 due to the strong viscosity contrasts and interface-driven complexity. This avoided excessive momentum solves under a strict tolerance while still allowing an effective test of the post-processing step. The reference solution was computed with the direct LU solver MUMPS.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f07

Figure 7Block sinking benchmark over 1500 time steps (Δt = 5 × 10−6). Comparison of CD-U-η with and without projection: (a) relative velocity error Eu, (b) density error Eρ, (c) level-set error Eϕ, and (d) normalized divergence residual Rdiv.

Download

Figure 7 shows errors in velocity, density, level-set, and Rdiv for the block sinking problem. Post-processing decreases both velocity and density errors and suppresses divergence. The irregular pattern in the density error comes from discontinuities along the block interface introduced by the DG0 scheme. The level-set error profile appears smoother. We observed that this reflects the nearly uniform field inside and outside the block. Post-processing helps maintain mass balance and improves agreement with the direct solver.

Figure 8 shows the density and level-set fields at the final step. Large density errors indicate loss of mass conservation, while post-processing reduces these errors and brings the results closer to the reference solution.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f08

Figure 8Block sinking benchmark at the final step (1500, Δt = 5 × 10−6). Density field: (a) reference (MUMPS), (b) CD-U-η, and (c) CD-U-η with projection. Level-set field: (d) reference (MUMPS), (e) CD-U-η, and (f) CD-U-η with projection.

Download

Table 2 compares the solver cost for CD-U and CD-U-η with post-processing in the block sinking problem. The viscosity-weighted variant reduces the average number of momentum solves per step from 22.2 to 8.35, lowering the total runtime from 4168 to 1735 s. The extra mass-matrix solves in CD-U-η are inexpensive, contributing only 1 %–2 % of the total. Post-processing corrections and level-set advection also remain minor. The main benefit of CD-U-η is therefore the smaller iteration count in the momentum equations, while the additional scalar operations add little overhead.

Table 2Solver cost breakdown for the block sinking simulation (1500 steps, Δt = 5 × 10−6, tolerance 0.2, 32 cores). Only solver execution time is included.

Download Print Version | Download XLSX

3.5 Compressible mantle convection

We next consider mantle convection under the Anelastic Liquid Approximation (ALA) (Schubert et al., 2001; King et al., 2008), which incorporates depth-dependent density while filtering out fast acoustic modes. This benchmark follows (King et al., 2008) with Rayleigh number Ra = 105 and dissipation number Di = 0.5. This case extends the projection-based correction to compressible formulations, where mass conservation is weighted by the background density profile.

Under ALA, mass conservation is expressed as

∇⋅(ρ‾u)=0,ρ‾(z)=ρ0expDi(1-z)γ0.

The momentum equation is

∇⋅τ(u)-∇p′+Raρ‾αTk^-(Diγ0cpcv)ρ‾χTp′k^=0,

where

τ(u)=2με(u)-23μ(∇⋅u)I,ε(u)=12(∇u+∇u⊤).

The temperature equation, including advection, diffusion, adiabatic heating, and viscous dissipation, is

ρ‾cp∂tT+ρ‾cpu⋅∇T-∇⋅(κ∇(T‾+T))+αρ‾DiuyT-DiRaσ(u):∇u=0,

with the background profile

T‾(z)=T0exp(Di(1-z)).

Time discretization used a second-order Crank–Nicolson scheme. Since viscosity is constant, CD-U and CD-U-η coincide; the focus here is therefore on testing the robustness of the projection-based correction under compressible mass conservation.

To enforce the weighted continuity constraint after each Uzawa iteration, a ρ‾-weighted velocity correction was applied. Given an intermediate velocity u^, we solved

-∇⋅(ρ‾∇ϕ)=∇⋅(ρ‾u^),u=u^+∇ϕ,

ensuring ∇⋅(ρ‾u)=0 at the discrete level.

The computational domain Ω = [0,1]2 was discretized into 160 × 160 triangular Taylor–Hood (P2-P1) elements for velocity and pressure, and P1 discontinuous Galerkin elements for temperature. Viscosity was constant (η = 1). Free-slip boundaries were imposed on the horizontal sides and no-slip on the vertical sides. The temperature was fixed at the bottom (T ≈ 0.09) and top (T = 0), with insulated sidewalls. Initial conditions included sinusoidal perturbations of the background temperature, and pressure was initialized to zero. The Uzawa method with conjugate directions (CD-U) was used as the baseline solver, with convergence tolerance Rdivρ‾ < 10−3, and was compared against CD-U with projection-based correction. Reference solutions were computed using the direct solver MUMPS.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f09

Figure 9Compressible mantle convection under ALA over 5000 time steps (Δt = 10−6). (a) Relative velocity error Eu and (b) relative temperature error Et, comparing CD-U-η with and without ρ‾-weighted velocity correction.

Download

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f10

Figure 10Compressible mantle convection at the final step (5000, Δt = 10−6). (a) Reference temperature field (MUMPS), (b) absolute temperature error for CD-U-η, and (c) absolute temperature error for CD-U-η with ρ‾-weighted correction.

Download

Figure 9 shows that with constant viscosity the CD-U solver alone is already robust, but the ρ‾-weighted correction further reduces errors in velocity and temperature. Figure 10 confirms improved accuracy near steep thermal gradients.

In terms of cost, the constant-viscosity ALA setup required only about 2–3 momentum solves per step on average, making it considerably cheaper than variable-viscosity cases. The ρ‾-weighted correction added less than 20 % to the runtime, confirming that its accuracy benefits come at modest overhead.

4 Conclusions

We revisited Uzawa-type algorithms for Stokes equations in geodynamics and propose two enhancements. The residual calculation was reformulated in variational form, which provides a natural preconditioner. We then extended this to a viscosity weighting version (CD-U-η). This can be interpreted as a preconditioned conjugate gradient method for the Schur complement. The second enhancement applies a Helmholtz–Hodge projection as post-processing to the velocity field. This enforces the constraint more accurately. Through several benchmark tests, we confirmed that these two approaches help the algorithm obtain more accurate solutions.

Our benchmarks include smooth analytical flows, high-contrast SolCx, SolKz, multisinker, linear mantle convection, block sinking with multiphase interfaces, and compressible mantle convection under ALA. CD-U-η converged faster and stayed robust under large viscosity contrasts. The projection step improved constraint satisfaction and enhanced long-term accuracy. In time-dependent simulations, small corrections at each step accumulated and substantially improved transported fields such as temperature, composition, and density.

In our benchmark tests, the additional cost of L2 residual and projection corrections was modest – less than 5 % of total solver time. Momentum solves remained the dominant component. The enhancements do not significantly change the overall cost. As the problem size increases, the relative cost of these corrections should decrease further since momentum solves become more dominant. Additionally, the viscosity-weighted variant helps reduce momentum iterations, further improving computational efficiency.

It is important to note that the projection step only corrects the velocity field and does not directly enhance pressure convergence. This highlights an inherent limitation of projection-based strategies, which are designed to enforce incompressibility. Since pressure plays a critical role in many geodynamic applications, its convergence remains governed by the underlying Uzawa iteration. Our focus here was to improve velocity and advected fields. Improving pressure convergence represents an important direction for future research.

In conclusion, projection-enhanced Uzawa solvers provide an algorithmic perspective on Schur complement preconditioning grounded in finite element variational principles. Since the entire formulation relies on inner products and variational forms, it naturally fits within general-purpose FEM libraries coupled with PETSc, and works across different platforms. The method performs well for both incompressible and compressible mantle convection problems with strong rheological complexity. These findings suggest that projection-enhanced Uzawa solvers can serve as a useful baseline for future work in geodynamic modeling.

Appendix A: Mesh refinement study using the SolKz benchmark

One of the most important properties of a numerical method is its behavior under mesh refinement, which verifies that the discrete solution converges to the continuous solution at the expected rate. All experiments in the main body use a fixed discretization, so we present here a systematic mesh refinement study.

We use the SolKz benchmark (Duretz et al., 2011), a two-dimensional Stokes problem on the unit square Ω = [0,1]2 with a smooth, exponentially varying viscosity η(y) = exp (cy) and a dynamic ratio of 106. The body force is chosen so that the analytical solution is known. We chose SolKz over the SolCx benchmark presented in Sect. 3 because the discontinuous viscosity in SolCx reduces solution regularity and prevents observation of optimal convergence rates with P2-P1 Taylor–Hood elements. The domain was discretized with structured triangular meshes from 32 × 32 to 1024 × 1024 using P2-P1 Taylor–Hood elements, and reference solutions were obtained from the Underworld software (Mansour et al., 2020).

Table A1 reports the relative errors and the corresponding convergence orders. The method achieves the optimal convergence rates for P2-P1 Taylor–Hood elements: third order for velocity and second order for pressure. These rates are maintained consistently across all resolutions.

Table A1Mesh refinement results for the SolKz benchmark using CD-U-η.

Download Print Version | Download XLSX

For resolutions up to 256 × 256, the solver converged with AAR = 1.0 without requiring adaptation. At 512 × 512, AAR adjustment occurred occasionally. At 1024 × 1024, the adaptive AAR strategy described in Sect. 2.2 was essential for convergence. For this benchmark, stagnation was detected when |Rdivk+1-Rdivk|<10-10 for two consecutive iterations, and the AAR parameter was reduced by a factor of 0.1 at each trigger. The pointwise lower bound was set to ϵ = 10−6.

Appendix B: Projection post-processing vs. additional iterations

In time-dependent geodynamic simulations, the Stokes system must be solved at every time step. Iterating to tight convergence tolerances at each step is computationally expensive, since the dominant cost is the momentum solve. In practice, relaxed tolerances are often used to reduce runtime. However, the divergence residual that remains after each solve accumulates over thousands of time steps, degrading the accuracy of advected fields such as temperature, composition, and density. The projection post-processing introduced in Sect. 2.3 offers a potential remedy by enforcing the divergence-free constraint at the cost of only one additional Poisson solve per time step. An alternative strategy is simply to perform additional Uzawa iterations per step. To compare these two approaches in terms of cost and accuracy, we tested both on the mantle convection and block sinking benchmarks from Sect. 3.

In the results below, CD-U-η(niter) denotes n iterations of the CD-U-η solver per time step, and +Proj indicates projection post-processing. Numbers in parentheses show the projection overhead.

Table B1 shows results for the mantle convection benchmark over 5000 steps with Δt = 10−6.

Table B2 shows results for the block sinking benchmark over 1500 steps with Δt = 5 × 10−6. For this benchmark, the initial step iterates to tolerance, while subsequent steps use fixed iteration counts with the previous solution as an initial guess.

Table B1Cost and accuracy comparison for the mantle convection benchmark.

Download Print Version | Download XLSX

Table B2Cost and accuracy comparison for the block sinking benchmark.

Download Print Version | Download XLSX

Both benchmarks show that projection adds only a small fraction of the total runtime while substantially improving accuracy. This efficiency comes from the cost difference between the two strategies: each additional Uzawa iteration requires solving the momentum equation, which is the most expensive component, whereas projection requires only one Poisson solve per time step. Moreover, since projection operates as a post-processing step, it is not limited to the Uzawa framework and can be combined with any iterative Stokes solver.

Appendix C: Three-dimensional thermochemical convection

To verify that the CD-U-η algorithm and the projection post-processing operate correctly in three dimensions, we extend the two-dimensional thermochemical convection benchmark of Sect. 3.4.1 by adding a unit-depth lateral dimension. This test also demonstrates the algorithm with Mini elements (P1+Bubble/P1), which satisfy the LBB stability condition independently of the Taylor–Hood elements used in all two-dimensional experiments. Since Mini elements carry fewer degrees of freedom per element than P2-P1 Taylor–Hood elements, they allow finer meshes to be used within the same computational budget, which is particularly advantageous in three dimensions.

The physical setup follows Sect. 3.4.1, extended to the three-dimensional domain [0,2] × [0,1] × [0,1] discretized with a 100 × 50 × 50 structured tetrahedral mesh. Free-slip boundary conditions were applied on the additional sidewalls (y = 0 and y = 1), with insulating conditions for temperature and homogeneous Neumann for composition. All other parameters, including the Rayleigh numbers, viscosity law, initial conditions, and transport discretization, are identical to Sect. 3.4.1. We adopted a fixed time step of Δt = 10−5, ten times larger than in the two-dimensional case, since the purpose of this test is to verify the algorithmic behavior rather than to assess solution accuracy, and the BDF2 time integration remains stable at this step size. The solution was advanced to the same target time t = 5 × 10−3. The Stokes system was solved at each step with CD-U-η, with and without projection post-processing. Iterations were stopped once the normalized continuity residual Rdiv fell below 10−3.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f11

Figure C1Three-dimensional thermochemical convection at t = 5 × 10−3 solved with CD-U-η + projection on a 100 × 50 × 50 Mini element mesh. (a) Composition field showing entrainment of the basal dense layer. (b) Normalized temperature field.

Download

Since a direct solver reference solution is not feasible at this mesh resolution in three dimensions, the comparison focuses on the effect of the projection strategy rather than on accuracy relative to a reference.

Figure C1 shows the composition and temperature fields at t = 5 × 10−3, where thermal plumes and entrainment of the basal dense layer are consistent with the two-dimensional results.

Figure C2a and b show that the projection suppresses the divergence error throughout the domain, with the localized concentrations near the plume regions in (a) largely eliminated in (b). The Rdiv history in Fig. C2c confirms that this reduction is maintained consistently across all time steps, with the projection lowering Rdiv by approximately a factor of two, consistent with the two-dimensional results.

https://se.copernicus.org/articles/17/1167/2026/se-17-1167-2026-f12

Figure C2Spatial distribution of ∇⋅u at t = 5 × 10−3 for (a) CD-U-η only and (b) CD-U-η + projection. (c) Evolution of the normalized weak divergence residual Rdiv over 501 time steps for CD-U-η only and CD-U-η + projection.

Download

Code availability

The numerical benchmarks used in this study (ABC flow, SolCx, SolKz, multisinker, mantle convection, block sinking, and compressible convection) are publicly available and documented in the cited references. All simulations were performed using the open-source finite element library FEniCS (version 2019.2.0.13) coupled with PETSc. The implementation code is available at https://doi.org/10.5281/zenodo.22135967 (Jang et al., 2026). Specific solver configurations and benchmark parameters are described in Sect. 3.

Author contributions

D.-K. J. designed the algorithms, implemented the software, and prepared the first draft of the manuscript.

K.-M. L. carried out the numerical experiments, performed the data analysis and contributed to the review of the manuscript.

C. T. contributed substantially to shaping the core ideas of the paper through revisions and provided major input during the manuscript editing process.

W.-H. C. assisted in numerical implementation, provided feedback on data interpretation, and contributed to securing financial support.

B.-D. S. supervised the project, acquired funding, and revised the manuscript.

All authors discussed the results and contributed to the final version of the paper.

Competing interests

The contact author has declared that none of the authors has any competing interests.

Disclaimer

Publisher's note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. The authors bear the ultimate responsibility for providing appropriate place names. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.

Acknowledgements

This work was supported by the National Research Foundation of Korea (NRF) grants funded by the Korea government (no. RS-2025-00519120 to Deok-Kyu Jang, nos. RS-2025-25415913 and NRF-2022R1C2011689 to Whan-Hyuk Choi, and nos. RS-2019-NR040076, RS-2023-00256330 and RS-2025-02293161 to Byung-Dal So).

Financial support

This research has been supported by the National Research Foundation of Korea (grant nos. RS-2025-00519120, RS-2025-25415913, NRF-2022R1C2011689, RS-2019-NR040076, RS-2023-00256330, and RS-2025-02293161).

Review statement

This paper was edited by Taras Gerya and reviewed by G. Stadler and Stefan Markus Schmalholz.

References

Alnæs, M., Blechta, J., Hake, J., Johansson, A., Kehlet, B., Logg, A., Richardson, C., Ring, J., Rognes, M. E., and Wells, G. N.: The FEniCS project version 1.5, Archive of Numerical Software, 3, https://doi.org/10.11588/ans.2015.100.20553, 2015. a

Amestoy, P. R., Duff, I. S., L'Excellent, J.-Y., and Koster, J.: MUMPS: a general purpose distributed memory sparse solver, in: International Workshop on Applied Parallel Computing, Springer, 121–130, https://doi.org/10.1007/3-540-70734-4_16, 2000. a

Arrow, K. J., Hurwicz, L., Uzawa, H., Chenery, H. B., Johnson, S., and Karlin, S.: Studies in linear and non-linear programming, vol. 2, Stanford University Press Stanford, 229 pp., 1958. a

Babuška, I.: The finite element method with Lagrangian multipliers, Numer. Math., 20, 179–192, https://doi.org/10.1007/BF01436561, 1973. a

Bai, Z.-Z. and Wang, Z.-Q.: On parameterized inexact Uzawa methods for generalized saddle point problems, Linear Algebra Appl., 428, 2900–2932, https://doi.org/10.1016/j.laa.2008.01.018, 2008. a

Balay, S., Abhyankar, S., Adams, M. F., Benson, S., Brown, J., Brune, P., Buschelman, K., Constantinescu, E. M., Dalcin, L., Dener, A., Eijkhout, V., Faibussowitsch, J., Gropp, W. D., Hapla, V., Isaac, T., Jolivet, P., Karpeev, D., Kaushik, D., Knepley, M. G., Kong, F., Kruger, S., May, D. A., McInnes, L. C., Mills, R. T., Mitchell, L., Munson, T., Roman, J. E., Rupp, K., Sanan, P., Sarich, J., Smith, B. F., Suh, H., Zampini, S., Zhang, H., Zhang, H., and Zhang, J.: PETSc/TAO Users Manual Revision 3.22, Tech. rep., ANL-21/39 Rev. 3.22, Argonne National Laboratory (ANL), Argonne, IL, United States, 2024. a

Bell, J. B., Colella, P., and Glaz, H. M.: A second-order projection method for the incompressible Navier-Stokes equations, J. Comput. Phys., 85, 257–283, https://doi.org/10.1016/0021-9991(89)90151-4, 1989. a

Benzi, M., Golub, G. H., and Liesen, J.: Numerical solution of saddle point problems, Acta Numer., 14, 1–137, https://doi.org/10.1017/S0962492904000212, 2005. a, b

Blankenbach, B., Busse, F., Christensen, U., Cserepes, L., Gunkel, D., Hansen, U., Harder, H., Jarvis, G., Koch, M., Marquart, G., Moore, D., Olson, P., Schmeling, H., and Schnaubelt, T.: A benchmark comparison for mantle convection codes, Geophys. J. Int., 98, 23–38, https://doi.org/10.1111/j.1365-246X.1989.tb05511.x, 1989. a

Braess, D.: Finite elements: Theory, fast solvers, and applications in solid mechanics, 2nd edn., ISBN 978-0-521-01195-2, Cambridge University Press, 2001. a

Brezzi, F.: On the existence, uniqueness and approximation of saddle-point problems arising from Lagrangian multipliers, RAIRO Anal. Numér., 8, 129–151, https://doi.org/10.1051/m2an/197408R201291, 1974. a

Brown, D. L., Cortez, R., and Minion, M. L.: Accurate projection methods for the incompressible Navier–Stokes equations, J. Comput. Phys., 168, 464–499, https://doi.org/10.1006/jcph.2001.6715, 2001. a

Brune, S., Popov, A. A., and Sobolev, S. V.: Modeling suggests that oblique extension facilitates rifting and continental break-up, J. Geophys. Res.-Sol. Ea., 117, https://doi.org/10.1029/2011JB008860, 2012. a

Cahouet, J. and Chabard, J.-P.: Some fast 3D finite element solvers for the generalized Stokes problem, Int. J. Numer. Meth. Fl., 8, 869–895, https://doi.org/10.1002/fld.1650080802, 1988. a, b

Chen, X.: On preconditioned Uzawa methods and SOR methods for saddle-point problems, J. Computat. Appl. Math., 100, 207–224, https://doi.org/10.1016/S0377-0427(98)00197-6, 1998. a, b, c

Chorin, A. J.: The numerical solution of the Navier-Stokes equations for an incompressible fluid, B. Am. Math. Soc., 73, 928–931, https://doi.org/10.1090/S0002-9904-1967-11853-6, 1967. a

Do, S.-H., So, B.-D., Kim, Y.-G., and Kim, G.-B.: Lithospheric strength inferred from modeling of buckling structure: Implications for stress state of the East Sea (Japan Sea), Tectonophysics, 858, 229859, https://doi.org/10.1016/j.tecto.2023.229859, 2023. a

Duretz, T., May, D. A., Gerya, T., and Tackley, P.: Discretization errors and free surface stabilization in the finite difference and marker-in-cell method for applied geodynamics: A numerical study, Geochem. Geophy. Geosy., 12, https://doi.org/10.1029/2011GC003567, 2011. a

Elman, H. C. and Golub, G. H.: Inexact and preconditioned Uzawa algorithms for saddle point problems, SIAM J. Numer. Anal., 31, 1645–1661, https://doi.org/10.1137/0731085, 1994. a, b, c

Gerya, T.: Introduction to numerical geodynamic modelling, Cambridge University Press, https://doi.org/10.1017/9781316534243, 2019. a

Gerya, T.: Numerical modeling of subduction: State of the art and future directions, Geosphere, 18, 503–561, https://doi.org/10.1130/GES02416.1, 2022. a

Gmeiner, B., Huber, M., John, L., Rüde, U., and Wohlmuth, B.: A quantitative performance study for Stokes solvers at the extreme scale, J. Comput. Sci., 17, 509–521, https://doi.org/10.1016/j.jocs.2016.06.006, 2016. a

Guermond, J.-L. and Quartapelle, L.: On the approximation of the unsteady Navier–Stokes equations by finite element projection methods, Numer. Math., 80, 207–238, https://doi.org/10.1007/s002110050366, 1998. a

Hestenes, M. R. and Stiefel, E.: Methods of conjugate gradients for solving linear systems, J. Res. Nat. Bur. Stand., 49, 409–436, https://doi.org/10.6028/jres.049.044, 1952. a

Huismans, R. S., Podladchikov, Y. Y., and Cloetingh, S.: Dynamic modeling of the transition from passive to active rifting, application to the Pannonian basin, Tectonics, 20, 1021–1039, https://doi.org/10.1029/2001TC900010, 2001. a

Ismail-Zadeh, A., Schubert, G., Tsepelev, I., and Korotkii, A.: Three-dimensional forward and backward numerical modeling of mantle plume evolution: Effects of thermal diffusion, J. Geophys. Res.-Sol. Ea., 111, https://doi.org/10.1029/2005JB003782, 2006. a

Jang, D.-K., Lee, K.-M., Thieulot, C., Choi, W.-H., and So, B.-D.: Efficient Uzawa Algorithms with Projection Strategies for Geodynamic Stokes Flow, Zenodo [code], https://doi.org/10.5281/zenodo.22135967, 2026. a

Kim, D.-H. and So, B.-D.: Effects of rheology and mantle temperature structure on edge-driven convection: Implications for partial melting and dynamic topography, Phys. Earth Planet. In., 303, 106487, https://doi.org/10.1016/j.pepi.2020.106487, 2020. a

King, S., Lee, C., Leng, W., Zhong, S., van Keken, P., Tan, E., Gurnis, M., and Tosi, N.: A Community Benchmark for 2D Cartesian Compressible Convection, AGU Fall Meeting Abstracts, 2008, DI31A–1772, 2008. a, b

Kronbichler, M., Heister, T., and Bangerth, W.: High accuracy mantle convection simulation through modern numerical methods, Geophys. J. Int., 191, 12–29, https://doi.org/10.1111/j.1365-246X.2012.05609.x, 2012. a, b

Lee, K.-M., Kim, H.-I., Jang, D.-K., and So, B.-D.: A comparative study of 2D numerical simulations using vector and potential methods for extending 3D modeling of planetary evolution, Geosci. J., 28, 465–481, https://doi.org/10.1007/s12303-024-0013-5, 2024. a

Li, Y. and Gurnis, M.: A simple force balance model of subduction initiation, Geophys. J. Int., 232, 128–146, https://doi.org/10.1093/gji/ggac332, 2023. a

Logg, A., Mardal, K.-A., and Wells, G. (Eds.): Automated solution of differential equations by the finite element method: The FEniCS book, vol. 84, Springer Science & Business Media, https://doi.org/10.1007/978-3-642-23099-8, 2012. a, b

Mansour, J. A., Giordani, J., Moresi, L., Beucher, R., Kaluza, O., Velic, M., Farrington, R., Quenette, S., and Beall, A.: Underworld2: Python geodynamics modelling for desktop, HPC and cloud, Journal of Open Source Software, 5, 1797, https://doi.org/10.21105/joss.01797, 2020. a, b

May, D. A. and Moresi, L.: Preconditioned iterative methods for Stokes flow problems arising in computational geodynamics, Phys. Earth Planet. In., 171, 33–47, https://doi.org/10.1016/j.pepi.2008.07.036, 2008. a, b, c

Moresi, L. and Gurnis, M.: The accuracy of finite element solutions of Stokes flow with strongly varying viscosity, Phys. Earth Planet. In., 97, 83–94, https://doi.org/10.1016/0031-9201(96)03163-9, 1996. a

Moresi, L., Quenette, S., Lemiale, V., Meriaux, C., Appelbe, B., and Mühlhaus, H.-B.: Computational approaches to studying non-linear dynamics of the crust and mantle, Phys. Earth Planet. In., 163, 69–82, https://doi.org/10.1016/j.pepi.2007.06.009, 2007. a

Negredo, A. M., van Hunen, J., Rodríguez-González, J., and Fullea, J.: On the origin of the Canary Islands: Insights from mantle convection modelling, Earth Planet. Sc. Lett., 584, 117506, https://doi.org/10.1016/j.epsl.2022.117506, 2022. a

Pyo, J.-H. and Shen, J.: Gauge–Uzawa methods for incompressible flows with variable density, J. Computat. Phys., 221, 181–197, https://doi.org/10.1016/j.jcp.2006.06.013, 2007. a

Ramage, A. and Wathen, A. J.: Iterative solution techniques for the Stokes and Navier-Stokes equations, Int. J. Numer. Meth. Fl., 19, 67–83, https://doi.org/10.1002/fld.1650190106, 1994. a

Rudi, J., Stadler, G., and Ghattas, O.: Weighted BFBT preconditioner for Stokes flow problems with highly heterogeneous viscosity, SIAM J. Sci. Comput., 39, S272–S297, https://doi.org/10.1137/16M108450X, 2017. a, b

Saad, Y.: Iterative methods for sparse linear systems, SIAM, https://doi.org/10.1137/1.9780898718003, 2003. a

Saad, Y. and Schultz, M. H.: GMRES: A generalized minimal residual algorithm for solving nonsymmetric linear systems, SIAM J. Sci. Stat. Comp., 7, 856–869, https://doi.org/10.1137/0907058, 1986. a

Schubert, G., Turcotte, D. L., and Olson, P.: Mantle Convection in the Earth and Planets, Cambridge University Press, https://doi.org/10.1017/CBO9780511612879, 2001. a, b

Silvester, D. and Wathen, A.: Fast iterative solution of stabilised Stokes systems Part II: Using general block preconditioners, SIAM J. Numer. Anal., 31, 1352–1367, https://doi.org/10.1137/0731070, 1994. a, b

Sime, N., Wilson, C. R., and van Keken, P. E.: Thermal modeling of subduction zones with prescribed and evolving 2D and 3D slab geometries, Progress in Earth and Planetary Science, 11, 14, https://doi.org/10.1186/s40645-024-00611-4, 2024. a

So, B.-D. and Yuen, D. A.: Generation of tectonic over-pressure inside subducting oceanic lithosphere involving phase-loop of olivine–wadsleyite transition, Earth Planet. Sc. Lett., 413, 59–69, https://doi.org/10.1016/j.epsl.2014.12.048, 2015. a

Tan, E. and Gurnis, M.: Metastable superplumes and mantle compressibility, Geophys. Res. Lett., 32, https://doi.org/10.1029/2005GL024190, 2005.  a

Thieulot, C. and Bangerth, W.: On the choice of finite element for applications in geodynamics – Part 2: A comparison of simplex and hypercube elements, Solid Earth, 16, 457–476, https://doi.org/10.5194/se-16-457-2025, 2025. a

van Keken, P.: Evolution of starting mantle plumes: a comparison between numerical and laboratory models, Earth Planet. Sc. Lett., 148, 1–11, https://doi.org/10.1016/S0012-821X(97)00042-3, 1997. a

Vynnytska, L., Rognes, M. E., and Clark, S.: Benchmarking FEniCS for mantle convection simulations, Comput. Geosci., 50, 95–105, https://doi.org/10.1016/j.cageo.2012.05.012, 2013. a

Wang, H., Agrusta, R., and van Hunen, J.: Advantages of a conservative velocity interpolation (CVI) scheme for particle-in-cell methods with application in geodynamic modeling, Geochem. Geophy. Geosy., 16, 4148–4166, https://doi.org/10.1002/2015GC005824, 2015. a

Wilson, C. R., Spiegelman, M., and van Keken, P. E.: Terra FERMA: The Transparent Finite Element Rapid Model Assembler for multiphysics problems in Earth sciences, Geochem. Geophy. Geosy., 18, 769–810, https://doi.org/10.1002/2016GC006702, 2017. a

Xie, R., Chen, L., Morgan, J. P., and Chen, Y. J.: Various lithospheric deformation patterns derived from rheological contrasts between continental terranes: insights from 2-D numerical simulations, Solid Earth, 15, 789–806, https://doi.org/10.5194/se-15-789-2024, 2024. a

Zhamaletdinov, A., Shevtsov, A., Korotkova, T., Kopytenko, Y. A., Ismagilov, V. S., Petrishev, M. S., Efimov, B. V., Barannik, M. B., Kolobov, V. V., Prokopchuk, P. I., Smirnov, M. Yu., Vagin, S. A., Pertel, M. I., Tereshchenko, E. D., Vasil’ev, A. N., Grigoryev, V. F., Gokhberg, M. B., Trofimchik, V. I., Yampolsky, Yu. M., Koloskov, A. V., Fedorov, A. V., and Korja, T.: Deep electromagnetic sounding of the lithosphere in the Eastern Baltic (Fennoscandian) shield with high-power controlled sources and industrial power transmission lines (FENICS experiment), Izvestiya, Physics of the Solid Earth, 47, 22, https://doi.org/10.1134/S1069351311010149, 2011. a

Zhao, X.-H., Kwek, K.-H., Li, J.-B., and Huang, K.-L.: Chaotic and resonant streamlines in the ABC flow, SIAM J. Appl. Math., 53, 71–77, https://doi.org/10.1137/0153005, 1993. a

Zhong, S.: Analytic solutions for Stokes' flow with lateral variations in viscosity, Geophys. J. Int., 124, 18–28, https://doi.org/10.1111/j.1365-246X.1996.tb06349.x, 1996. a

Zhong, S., Zuber, M. T., Moresi, L., and Gurnis, M.: Role of temperature-dependent viscosity and surface plates in spherical shell models of mantle convection, J. Geophys. Res.-Sol. Ea., 105, 11063–11082, https://doi.org/10.1029/2000JB900003, 2000. a, b

Download
Short summary
We developed faster methods for simulating Earth's interior dynamics. Standard iterative algorithms struggle to solve these equations efficiently. We introduced two improvements. First, we reformulated how calculation errors are measured. Second, we added a mass conservation correction. The first reduces the number of expensive solves, and the second improves accuracy over long simulations. We tested the method on several benchmarks, and both improvements come at little extra cost.
Share