Abstract
We present a constrained pressure residual (CPR) two-stage preconditioner applied to a discontinuous Galerkin discretization of a two-phase flow in strongly heterogeneous porous media. We consider a fully implicit, locally conservative, higher order discretization on adaptively generated meshes. The implementation is based on the open-source PDE software framework Dune and its PETSc binding.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
1 Introduction
The significant geologic complexity involved in multi-phase flow and the treatment of strongly heterogeneous soil properties need efficient preconditioning strategies for fully implicit formulations. Multilevel techniques such as the constrained pressure residual (CPR) two-stage preconditioner allow to exploit the algebraic properties of the Jacobian matrix of the system. The two-stage CPR preconditioner was introduced by Wallis [2, 3] from the previous work of Behie and Vinsome [4] on combinative preconditioners in reservoir engineering. Lacroix et al. [5] combined a first stage preconditioner on the pressure subsystem with Algebraic Multigrid (AMG) and a second stage preconditioner on the full system with ILU-0. The CPR-AMG has proven to be efficient for the simulation of complex problems in reservoir engineering [6,7,8,9] and in basin modeling [10]. The CPR impact on h and hp adaptive DG schemes is still not well understood as most of the work with regards to the CPR has so far mainly focused on finite volume methods. To our knowledge this is the first time the CPR-AMG is applied within an adaptive DG discretization framework.
This work is organized as follows: Sect. 2 provides a description of the Jacobian matrix arising from a fully implicit discretization of a two-phase flow problem. Section 3 sets out the formulation of the CPR-AMG method. Section 4 provides numerical tests implemented within Dune [1].
2 Structure of the Jacobian Matrix
We consider a domain \(\Omega \in \mathbb {R}^d\), d ∈{2, 3}. The phases α = {w, n} are incompressible and immiscible. Unknown variables are the pressure p w and the saturation s n.
In order to have a complete system we add appropriate boundary and initial conditions. For a more thorough description of the complete system and its DG discretization see [11,12,13,14].
The development of effective and robust preconditioning techniques requires to fully understand and exploit the algebraic properties of each individual block of the Jacobian matrix J G stemming from the fully-implicit and fully-coupled DG discretization of the two-phase flow system (1). Following [11], let J G X = b be the linear system to solve and r = b − J G X the residual, where X = (X p, X s) is the unknown and \(b=(b_p,b_s)^{\intercal }\) the right-hand side. The Jacobian matrix J G is expressed as
Here, \(J^{pp} \in \mathbb {R}^{n_p \times n_p}\) is the pressure block, \(J^{ss} \in \mathbb {R}^{n_s \times n_s}\) is the saturation block. \(J^{ps} \in \mathbb {R}^{n_p \times n_s}\) and \(J^{sp} \in \mathbb {R}^{n_s \times n_p}\) are the coupling blocks. The term G p (resp. G s) denotes the discretization of the first (resp. second) equation of system (1).
We consider in our implementation a dof-based re-ordering of variables where J G is reformulated as
Above, n p is the number of dofs for the pressure and n s is the number of dofs for the saturation. (J)i,j represents the coupling between two dofs.
3 Constrained Pressure Residual Preconditioner
This section provides an extended insight into the structures and the different stages involved in the construction of the CPR preconditioner.
3.1 Method Description
The CPR belongs to the family of two-stage preconditioners, first it extracts and solves a pressure subsystem. The residual associated with this solution is subsequently corrected with an additional preconditioning step that recovers part of the global information contained in the original system. The elliptic feature exhibited by the pressure subsystem allows it to be handled well by multigrid methods. The other equation is usually degenerate parabolic and might be handled by an ILU preconditioner. Figure 1 provides a sketch of the CPR preconditioning.
Definition 1
The general formulation of a two-stage preconditioner is:
where \(M^{-1}_{1}\) (resp. \(M^{-1}_{2}\)) corresponds to the first (resp. second) stage of the preconditioner and the operator \(\tilde J\) is such that
Here D 1 and D 2 are decoupling operators, different choices of D i, i ∈{1, 2} generate different first stage preconditioners [6]. We provide more details concerning the decoupling operators in the next section.
For the CPR, the first stage in (4) corresponds to
where C T and C are respectively, restriction and prolongation operators. In particular, C is given by
The second stage in (4) is
where \(M^{-1}_{ILU}\) is an ILU preconditioner.
3.1.1 CPR Procedure
The CPR preconditioning step \(\delta =M^{-1}_{CPR}r\) can be outlined as follows:
-
1.
Weakening of the coupling between the pressure and non pressure blocks:
$$\displaystyle \begin{aligned} D_{1}^{-1} J_G = \tilde J=\begin{pmatrix} \tilde J_{pp}& \tilde J_{ps}\\ &\\ \tilde J_{sp} & \tilde J_{ss} \end{pmatrix};{} \end{aligned} $$(8) -
2.
Compute the pressure subsystem residual:
$$\displaystyle \begin{aligned} r_p= C^{T} D_{1}^{-1} r; \end{aligned} $$(9) -
3.
Solve the pressure system (e.g. with an AMG preconditioner or as a solver):
$$\displaystyle \begin{aligned} \tilde J_{pp} \delta_{p}=r_p; \end{aligned} $$(10) -
4.
Expand the pressure solution to the full system:
$$\displaystyle \begin{aligned} \gamma= C \delta_{p}=\begin{pmatrix}\delta_p \\0 \end{pmatrix}; \end{aligned} $$(11) -
5.
Compute the new residual:
$$\displaystyle \begin{aligned} \hat r=r - \tilde J \gamma ; \end{aligned} $$(12) -
6.
Prediction and correction step:
$$\displaystyle \begin{aligned} \delta= M_2^{-1} \hat r + \gamma . {} \end{aligned} $$(13)
Here δ = (δ p, δ s)t denotes the correction obtained after the two stages and for the sake of simplicity, we set \(D_{2}^{-1}=I\) for the decoupling step (i.e. (8)).
Remark 1
More robust preconditioners can be formulated with the inclusion of the convective-diffusive block [6],
3.2 Decoupling Operators
The decoupling introduced in (5) is a very important preprocessing step allowing to weaken the coupling between the pressure and non-pressure blocks while preserving the good algebraic properties for the extracted pressure subsystem [10, and references therein]. The main decoupling strategies usually considered in the literature are the Alternate-Block Factorization (ABF) procedure [15], the Quasi-IMPES procedure [5, 10] and the True-IMPES procedure [16].
Definition 2
Following Bank et al. [15], the ABF method is defined such that
Remark 2
Considering a dof-wise re-ordering, the ABF method corresponds to a simple to block diagonal scaling with
In this work we only focus on the ABF method owing to its structural simplicity and ease of implementation. We might although expect some potential drawbacks because \(\tilde J_{pp}\) may be “strongly” non-symmetric compared to J pp. It is also important to emphasize the fact that computing the exact inverse of \(\tilde J_{pp} \) not feasible for large scale settings. It is therefore crucial to calibrate carefully inner and outer tolerances within the nested iterative procedure defined from (5) to (13).
4 CPR Preconditioner Performances
In this section, we analyze the performance of the two stage CPR preconditioner. We consider the 3d heterogeneous model in Fig. 2 introduced in [11]. We use a GMRES PetSc solver with a relative residual norm of 10−7 and a Newton tolerance of 5 × 10−7. The computations are done in serial on a standard Intel workstation. Figure 3 and Table 1 summarize the results of this test case.
The performances of the CPR and AMG are quite comparable with respect to the total CPU time. Indeed, the AMG is slightly faster up to 300,000 dofs. The relative residuals with respect to the average number of linear iterations per Newton step are depicted in Fig. 4, it illustrates the typical rate of convergence of the two preconditioners (here the Newton tolerance is 10−7). In order to converge to a residual norm of less than 10−13, AMG is slightly faster than CPR. However, the convergence rate of CPR is better than that of AMG.
5 Conclusion
The performances of the CPR for DG discretizations of porous media multiphase flow are not yet quite satisfactory compared to classical preconditioners such as AMG or ILU. One way to improve the performances of the CPR might consist in loosening the relative residual tolerances for the solution of the pressure subsystem as suggested in [17]. Another alternative consists in implementing more efficient decoupling operators such as the True-Impes and the Quasi-Impes [5, 6, 10, 16].
References
A. Dedner, R. Klöfkorn, M. Nolte, and M. Ohlberger. A Generic Interface for Parallel and Adaptive Scientific Computing: Abstraction Principles and the DUNE-FEM Module. Computing, 90 (3–4): 165–196, 2010. https://doi.org/10.1007/s00607-010-0110-3.
JR Wallis et al. Incomplete Gaussian elimination as a preconditioning for generalized conjugate gradient acceleration. In SPE Reservoir Simulation Symposium. Society of Petroleum Engineers, 1983.
JR Wallis, RP Kendall, TE Little, et al. Constrained residual acceleration of conjugate residual methods. In SPE Reservoir Simulation Symposium. Society of Petroleum Engineers, 1985.
A Behie, PKW Vinsome, et al. Block iterative methods for fully implicit reservoir simulation. Society of Petroleum Engineers Journal, 22 (05): 658–668, 1982.
Sébastien Lacroix, Yuri V Vassilevski, and Mary F Wheeler. Decoupling preconditioners in the implicit parallel accurate reservoir simulator (ipars). Numerical linear algebra with applications, 8 (8): 537–549, 2001.
Klaus Stueben, Tanja Clees, Hector Klie, Bo Lu, Mary Fanett Wheeler, et al. Algebraic multigrid methods (amg) for the efficient solution of fully implicit formulations in reservoir simulation. In SPE Reservoir Simulation Symposium. Society of Petroleum Engineers, 2007.
Sebastian Gries, Klaus Stüben, Geoffrey L Brown, Dingjun Chen, David A Collins, et al. Preconditioning for efficiently applying algebraic multigrid in fully implicit reservoir simulations. SPE Journal, 19 (04): 726–736, 2014.
Larry SK Fung, Ali H Dogru, et al. Parallel unstructured-solver methods for simulation of complex giant reservoirs. SPE Journal, 13 (04): 440–446, 2008.
J-M Gratien, J-F Magras, PHILIPPE Quandalle, and OLIVIER Ricois. Introducing a new generation of reservoir simulation software. In ECMOR IX-9th European Conference on the Mathematics of Oil Recovery, 2004.
Robert Scheichl, R Masson, and J Wendebourg. Decoupling and block preconditioning for sedimentary basin simulations. Computational Geosciences, 7 (4): 295–318, 2003.
Birane Kane. Using dune-fem for adaptive higher order discontinuous galerkin methods for strongly heterogenous two-phase flow in porous media. Archive of Numerical Software, 5 (1), 2017. https://doi.org/10.11588/ans.2017.1.28068.
Birane Kane, Robert Klöfkorn, and Christoph Gersbacher. hp–Adaptive Discontinuous Galerkin Methods for Porous Media Flow. In Clément Cancès and Pascal Omnes, editors, Finite Volumes for Complex Applications VIII - Hyperbolic, Elliptic and Parabolic Problems, pages 447–456, Cham, 2017. Springer International Publishing. ISBN 978-3-319-57394-6. https://doi.org/10.1007/978-3-319-57394-6_47.
Andreas Dedner, Birane Kane, Robert Klöfkorn, and Martin Nolte. Python framework for hp-adaptive discontinuous galerkin methods for two-phase flow in porous media. Applied Mathematical Modelling, 67: 179–200, 2019.
Birane Kane, Robert Klöfkorn, and Andreas Dedner. Adaptive discontinuous galerkin methods for flow in porous media. In Florin Adrian Radu, Kundan Kumar, Inga Berre, Jan Martin Nordbotten, and Iuliu Sorin Pop, editors, Numerical Mathematics and Advanced Applications ENUMATH 2017, pages 367–378, Cham, 2019. Springer International Publishing. ISBN 978-3-319-96415-7.
Randolph E Bank, Tony F Chan, William M Coughran, and R Kent Smith. The alternate-block-factorization procedure for systems of partial differential equations. BIT Numerical Mathematics, 29 (4): 938–954, 1989.
Matteo Cusini, Alexander A Lukyanov, Jostein Natvig, and Hadi Hajibeygi. Constrained pressure residual multiscale (cpr-ms) method for fully implicit simulation of multiphase flow in porous media. Journal of Computational Physics, 299: 472–486, 2015.
Louis J Durlofsky and Khalid Aziz. Advanced techniques for reservoir simulation and modeling of nonconventional wells. Technical report, Stanford University (US), 2004.
Acknowledgements
The author acknowledges the German Research Foundation through the Cluster of Excellence in Simulation Technology (EXC310) at the University of Stuttgart for support.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Kane, B. (2021). Multistage Preconditioning for Adaptive Discretization of Porous Media Two-Phase Flow. In: Vermolen, F.J., Vuik, C. (eds) Numerical Mathematics and Advanced Applications ENUMATH 2019. Lecture Notes in Computational Science and Engineering, vol 139. Springer, Cham. https://doi.org/10.1007/978-3-030-55874-1_56
Download citation
DOI: https://doi.org/10.1007/978-3-030-55874-1_56
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-55873-4
Online ISBN: 978-3-030-55874-1
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)