# A Finite Difference Scheme for Compressible Miscible Displacement Flow in Porous Media on Grids with Local Refinement in Time

Authors: Wei Liu
Journal: Abstract and Applied Analysis
 (2013)

---

## Abstract

Considering two-dimensional compressible miscible displacement flow in porous media, finite difference schemes on grids with local refinement in time are constructed and studied. The construction utilizes a modified upwind approximation and linear interpolation at the slave nodes. Error analysis is presented in the maximum norm and numerical examples illustrating the theory are given.


---

## Body

## 1. Introduction

Numerical models of percolation flow are almost built up on a basis of the finite difference method to solve the system of partial differential equations. Usually, grids that we used are thinner, then the truncation error is smaller and the computing accuracy is higher. In order to assure certain computation accuracy, the grid number cannot be too little. But on the other hand, along with the increment of the grid number, the computation cost is greatly increased and the algebraic system which is formed finally cannot be resolved, even with the largest of today’s supercomputers. Actually, we only need to refine grids around wells, cracks, obstacles, domain boundaries, and so forth, where the pressure changes radically. But because the finite difference grid is composed of straight lines and the grid density cannot be varied with space, it limits the simulating scale and the simulating accuracy. For the local grid refinement technique, we still make use of the finite difference grid system and divide partial grids which are needed to be refined into fine grids. In this way, we can resolve problems, such as small well spacing, fault, and boundary, and we can improve the simulating accuracy and extend the simulating scale [1].Ewing et al. construct some finite difference approximations on grids with local refinement in space for the ellipse equation and obtain error estimates in theH1-norm [2]. Cai et al. analyze stationary local grid refinement for the diffusion equation [3, 4]. Ewing et al. derive implicit schemes on the basis of a finite volume approach by approximation of the balance equation. This approach leads to schemes that are locally conservative and are absolutely stable [5]. Ewing et al. construct and study finite difference schemes for transient convection-diffusion problems on grids with local refinement in time and space. The proposed schemes are unconditionally stable and use linear interpolation along the interface [6]. Respectively for incompressible miscible displacement flow in porous media and the semiconductor device problem, authors discuss discrete schemes, error estimates, and numerical examples on composite triangular grids [7, 8].In this paper, we study a finite difference scheme on grids with local refinement in time for two-dimensional compressible miscible displacement flow in porous media. The pressure equation is approximated by a five-point difference scheme, and the saturation equation is discretized by a modified upwind scheme. At the slave nodes, the construction utilizes linear interpolation. Finally, error analysis in the maximum norm is derived and numerical examples are given to support the numerical method and its convergence.The paper is organized as follows. In Sections2 and 3, we formulate the problem and introduce the necessary notations. In Section 4 the construction of the finite difference scheme is presented. The error analysis is addressed in Section 5. Finally, in Section 6 we present numerical experiments that conform our theoretical results.


## 2. Problem Formulation

We will consider a system of three nonlinear partial differential equations in a bounded domainΩ⊂R2, which forms a basic model of compressible miscible displacement flow in porous media [9–11]:
(1)(a)d(c)∂p∂t+∇·u=q(x,t),x=(x1,x2)∈Ω,mmmmmmmmmmmmlmmmmmmalt∈J=[0,T],(b)u=-a(c)∇p,(x,t)∈Ω×J,(c)ϕ(x)∂c∂t+b(c)∂p∂t+u·∇c-∇·(D∇c)=f(x,t,c),mmmmmmmmmmmmmmlmmmmmmmal(x,t)∈Ω×J,
where
(2)c=c1=1-c2,a(c)=a(x,c)=k(x)μ(c),d(c)=d(x,c)=ϕ(x)∑j=12Zjcj,ci(i=1,2) is the saturation of the ith component in mixed liquid, Zj is the jth component of compression constant factor, ϕ is the porosity of the rock, k is the permeability of the rock, μ is the viscosity of the fluid, D=ϕ(x)dmI which is the 2×2 diffusion matrix, dm is the diffusion coefficient, and I is the unit matrix. The unknowns are the pressure function p(x,t) and the saturation function c(x,t).In addition, we have boundary conditions(3)p=e(x,t),x∈∂Ω,t∈J,c=h(x,t),x∈∂Ω,t∈J,
and initial conditions
(4)p(x,0)=p0(x),x∈Ω,c(x,0)=c0(x),x∈Ω,
where Ω is a plane bounded domain and ∂Ω is the boundary of Ω.Usually this question is positive. Suppose the coefficients of (1) satisfy
(5)0<a*≤a(c)≤a*,0<d*≤d(c)≤d*,0<D*≤D(x)≤D*,|∂a∂c(x,c)|≤K*,
where a*, a*, d*, d*, D*, D*, K* are positive constants and d(c), b(c), and f(c) are Lipschitz continuous in the ε0 neighborhood of the solution.We suppose that the exact solutions of (1) are distributed smoothly; p and c satisfy
(6)p,c∈L∞(0,T;W4,∞(Ω)),∂2p∂t2,∂2c∂t2∈L∞(0,T;L∞(Ω)).
Throughout this paper, the notations Ki(i=0,1,…,M) are used to denote generic constants.


## 3. Grids, Grid Functions, and Associated Notations

First,Ω=[0,1]2 is discretized using a regular grid with a parameter h. The spatial nodes of the grid on Ω are then defined by x=(x1,x2)=(n1h,n2h), where n1=0,…,N, n2=0,…,N,h=1/N. Next, we introduce closed domains {Ωk}k=1M, which are subsets of Ω with boundaries aligned with the spatial discretization already defined. Further, it is required that ⋃k=1MΩk⊂Ω, and we set Ω0=Ω∖⋃k=1MΩk. In order to avoid unnecessary complications, for i,  j>0, we assume that dist(Ωi,Ωj)≥lh, where l>1 is an integer.With each subdomainΩi, we associate corresponding sets of nodal points: ωi is defined to be the set of all nodes of the discretization of Ω that are in Ωi. We require ωi⋂ωj=∅, for i≠j, i,j=0,…,M. And assume that there is no spatial refinement. In each ωi, i=0,…,M, we define a subset of boundary nodes γi as the nodes which have at least one neighbor not in ωi. Then set ω=⋃i=0Mωi.A discrete time-stepτi is associated with each Ωi such that, for integers mi,
(7)τ0=miτi,i=0,…,M,m0=1.
Consequently, discrete time levels tij for Ωi are defined by tij=jτi, j=1,2,…,[T/τi]. Finally, we define the grid points g by setting
(8)gi=⋃x∈ωij=1,2,…(x,jτi),i=0,…,M,g=⋃i=0Mgi.
We continue by specifying the nodes in gi between time levels t0l and t0l+1 as
(9)gil=⋃x∈ωij=0mi(x,t0l+jτi)=⋃x∈ωij=0mi(x,til,j),til,j=t0l+jτi,i=0,…,M.
Correspondingly, the boundary nodes of gil are defined by
(10)∂gil=⋃x∈γij=0mi(x,til,j),i=0,…,M.The grid functiony(x,t) is a function defined at the grid points of g. we denote the nodal values of a grid function y(x,t) between time levels t0l and t0l+1 as
(11)y(x,t)=y(x1,x2,til,j)=yn1,n2l,j,
for x∈ωi, i>0, j=0,…,mi. For x∈ω0 we define
(12)y(x,t)=y(x1,x2,t0l+1)=yn1,n2l+1.δx1, δx-1 and δx2, δx-2 are the divided forward and backward difference operators, respectively, in x1 and x2 direction. Also define the divided backward time difference by
(13)δτ0y0l(x)=y0l(x)-y0l-1(x)τ0,x∈ω0,δτiyil,j(x)=yil,j(x)-yil,j-1(x)τi,x∈ωi,j=1,2,…,mi,i=1,…,M.


## 4. Construction of the Finite Difference Schemes

LetP, U, and C be the numerical approximations to the pressure p, the velocity u, and the saturation c, respectively. The approximation for the pressure and the concentration approximation are done on composite grids in time.First for the pressure equation, we let(14)A0l(x1+h2,x2)=12[a(x,C0l(x))+a(x1+h,x2,C0l(x1+h,x2))].
Similarly we define A0l(x1,x2+h/2), then let
(15)δx-1(A0lδx1P0l+1)(x)=h-2[A0l(x1+h2,x2)(P0l+1(x1+h,x2)-P0l+1(x))=h-2m-A0l(x1-h2,x2)(P0l+1(x)-P0l+1(x1-h,x2))],δx-2(A0lδx2P0l+1)(x)=h-2[A0l(x1,x2+h2)(P0l+1(x1,x2+h)-P0l+1(x))=h-2m-A0l(x1,x2-h2)(P0l+1(x)-P0l+1(x1,x2-h))],∇h(A0l∇hP0l+1)(x)=δx-1(A0lδx1P0l+1)(x)∇h(A0l∇hP0l+1)(x)=+δx-2(A0lδx2P0l+1)(x).For regular coarse grids, the five-point difference scheme is(16)d(C0l(x))δτ0P0l+1(x)-LhpP0l+1(x)=q0l+1(x),x∈g0l,
where the difference operator LhpP0l+1(x)=-∇h(A0l∇hP0l+1)(x). The Darcy velocity Ul=(U1,0l,U2,0l) is computed as follows:
(17)U1,0l(x)=-12[A0l(x1+h2,x2)δx1P0l+1(x)=-12m+A0l(x1-h2,x2)δx-1P0l+1(x)].U2,0l corresponds to another direction, and the computational formula is similar to U1,0l.Next we consider the saturation equation (1)(c). The positive and negative of the function v are defined as v+=(1/2)(v+|v|)≥0 and v-=(1/2)(v-|v|)≤0. For regular coarse grids, the upwind difference scheme of the saturation equation is
(18)ϕ(x)δτ0C0l+1(x)-LhcC0l+1(x)=f(x,t0l,C0l(x))-b(C0l(x))δτ0P0l+1(x),x∈g0l,
where
(19)LhcC0l+1(x)=(1+h2|U1,0l|D-1)-1δx-1(Dδx1C0l+1)(x)+(1+h2|U2,0l|D-1)-1δx-2(Dδx2C0l+1)(x)-δU1,0l,x1Cl+1(x)-δU2,0l,x2Cl+1(x),δU1,0l,x1C0l+1(x)=U1,0l(x)×{H(U1,0l(x))D-1Dx1-h/2,x2δx-1C0l+1(x)×k+(1-H(U1,0l(x)))D-1Dx1+h/2,x2δx1C0l+1(x)},δU2,0l,x2C0l+1(x)=U2,0l(x)×{H(U2,0l(x))D-1Dx1,x2-h/2δx-2C0l+1(x)×k+(1-H(U2,0l(x)))D-1Dx1,x2+h/2δx2C0l+1(x)},H(z)={1,z≥0,0,z<0.In the region that is refined in time, we can construct finite difference schemes similar to (16)–(18). It is obvious that at time til,j=lτ0+jτi, j=1,…,mi, when the difference operators defined above are applied to the points of γi, not all space-time positions required correspond to actual nodes in g. For such cases, we define
(20)P(x,til,j)=jmiP(x,t0l+1)+mi-jmiP(x,t0l),C(x,til,j)=jmiC(x,t0l+1)+mi-jmiC(x,t0l).
In Figure 1, the slave nodes represent the missing space-time positions in the stencil of nodes in ∂qil,i>0. The values there are computed by the interpolation formula (20).Figure 1
Grid with local refinement in time.The discretization schemes of (1)–(4) on composite grids are given by
(21)d(C0l(x))δτ0P0l+1(x)-LhpP0l+1(x)=q0l+1(x),x∈g0l,d(Cil,j(x))δτiPil,j+1(x)-LhpPil,j+1(x)=qil,j+1(x),x∈gil,i=1,…,M,P(x,t)=e(x,t),x∈∂Ω,(22)U1,0l(x)=-12[A0l(x1+h2,x2)∂x1P0l+1(x)=-12k+A0l(x1-h2,x2)∂x-1P0l+1(x)],x∈g0l,U1,il,j(x)=-12[Ail,j(x1+h2,x2)∂x1Pil,j+1(x)=-12k+Ail,j(x1-h2,x2)∂x-1Pil,j+1(x)],=mmmkx∈gil,i=1,…,M,m=1,2.U2,0l, U2,il,j correspond to another direction, and computational formulae are similar to (22).
(23)ϕ(x)δτ0C0l+1(x)-LhcC0l+1(x)=f(x,t0l,C0l(x))-b(Cl(x))δτ0P0l+1(x),x∈g0l,ϕ(x)δτiCil,j+1(x)-LhcCil,j+1(x)=f(x,til,j,Cil,j(x))-b(Cil,j(x))δτ0Pil,j+1(x),x∈gil,i=1,…,M,C(x,t)=h(x,t),x∈∂Ω.


## 5. Error Analysis

The discrete inner product andL2-norm of grid functions are defined, respectively, by
(24)(y,v)=∑x∈ωh2y(x)v(x),∥y∥0,ω=(y,y)1/2.
We also use the standard notation for the discrete H1-norm of a grid function in the Sobolev space H01(ω):
(25)∥y∥1,ω2=∥y∥0,ω2+∑i=12∥δx-iy∥0,ω2.Define the error of the above scheme by(26)π0l(x)=p0l(x)-P0l(x),ξ0l(x)=c0l(x)-C0l(x),x∈ω0,πil,j(x)=pil,j(x)-Pil,j(x),ξil,j(x)=cil,j(x)-Cil,j(x),x∈ωi,i=1,…,M.Firstly consider the pressure equation. Using (1)(a) and (21), we get the error equation:
(27)(a)π(x,t)=0,x∈∂Ω,(b)d(C0l(x))δτ0π0l+1(x)-Lhpπ0l+1(x)(b)=K0(h2+τ0+ξ0l(x)),x∈g0l,(c)d(Cil,j(x))δτiπil,j+1(x)-Lhpπil,j+1(x)(c)=Ki(h2+τi+ξil,j(x)),x∈gil∖∂gil,aaaaammmmmmmmmmmmmkki=1,…,M,(d)d(Cil,j(x))δτiπil,j+1(x)-Lhpπil,j+1(x)(d)=Ki(h+τi+τ02h2+ξil,j(x)),x∈∂gil,mmmammmmmmmmmmmmmami=1,…,M.
Using (27)(b), we can get
(28)π0l+1(x)=π0l(x)+τ0d(C0l(x))Lhpπ0l+1(x)+K0τ0(h2+τ0+ξ0l(x)).
Then using the maximum principle
(29)maxx|π0l+1(x)|≤maxx|π0l(x)|+K0τ0(h2+τ0+maxx|ξ0l(x)|).
With the method of recursion and noticing that π00(x)=0, we obtain the error estimate:
(30)maxx|π0l+1(x)|≤K0τ0(h2+τ0+∑k=0lmaxx|ξ0k(x)|).Similarly using (27)(c) and (27)(d),
(31)maxx|πil,j+1(x)|≤Kiτi(h2+τi+∑k=0jmaxx|ξil,k(x)|),maxx|πil,j+1(x)|≤Kiτi(h+τi+τ02h2+∑k=0jmaxx|ξil,k(x)|).Then we consider the saturation equation. Suppose that(32)|Um,0l|≤U-,|Um,il,j|≤U-,m=1,2,h→0,
where U- is a positive constant. In the end of error analysis, we will prove the supposition (32). Under the supposition (32), we can prove the discretizations (23) satisfy the following property.Theorem 1.
The finite difference schemes (23) comply with the requirements of the maximum principle and the difference operator Lhc is coercive in H01, that is, ∃μ>0 such that
(33)-(Lhcφ,φ)≥μ∥φ∥1,ω2,∀φ∈H01(ω).Considering(34)um,0l-Um,0l=K0(ξ0l+∇hπ0l+h2),um,il,j-Um,il,j=Ki(ξil,j+∇hπil,j+h2),m=1,2,i=1,2,…,M,
and using (1)(c), (23), we can get the error equation of the saturation equation
(35)ξ(x,t)=0,x∈∂Ω,ϕ(x)δτ0ξ0l+1-Lhcξ0l+1+b(C0l+1(x))d(C0l+1(x))Lhpπ0l+1=K0(τ0+h2+ξl+1+∇hπl+1),x∈g0l,ϕ(x)δτiξil,j+1-Lhcξil,j+1+b(Cil,j+1(x))d(Cil,j+1(x))Lhpπil,j+1=Ki(τi+h2+ξil,j+1+∇hπil,j+1),x∈gil∖∂gil,mmmmmmmmmmmmmmmmmmmi=1,…,M,ϕ(x)δτiξil,j+1-Lhcξil,j+1+b(Cil,j+1(x))d(Cil,j+1(x))Lhpπil,j+1=Ki(τi+h+τ02h2+ξil,j+1+∇hπil,j+1),x∈∂gil,mmmmmmammmmmmmmmmmmlki=1,…,M.We need an induction hypothesis. Letτ0=O(h), we assume that
(36)|ξ0l|=O(|logh|1/2h),|ξil,j|=O(|logh|1/2h),h→0,
for 0≤l≤n-, 0≤j≤n-. When n-=0, we can obtain (36) by using (4) and (23). At the end of error analysis, we will prove (36) for l=n-+1, j=n-+1.From error estimates of the pressure equation (30) and (31) and the induction hypothesis (36), we have
(37)ξ(x,t)=0,x∈∂Ω,ϕ(x)δτ0ξ0l+1-Lhcξ0l+1=K0(τ0+h2+|logh|1/2h),x∈g0l,ϕ(x)δτiξil,j+1-Lhcξil,j+1=Ki(τi+h2+|logh|1/2h),x∈gil∖∂gil,lllllllllllllllllllllllllllllllllllllllllllli=1,…,M,ϕ(x)δτiξil,j+1-Lhcξil,j+1=Ki(τi+h+τ02h2+|logh|1/2h),mmmammllx∈∂gil,i=1,…,M.In order to get an estimate for the errorξ(x,t), we need two types of auxiliary functions ψi and φi. The grid functions {ψi(x)}i=0M and {φi(x)}i=1M, respectively, satisfy
(38)-Lhcψi(x)=χi(x),ψi(x)|∂Ω=0,-Lhcφi(x)=αi(x),φi(x)|∂Ω=0,
where χi(x) is the characteristic function of ωi∖γi, χ0(x) is the characteristic function of ω0, and αi(x) is the characteristic function of γi. On condition that Lhc is coercive in H01, Ewing et al. have proved ψi and φi satisfy the following lemma [6].Lemma 2.
{
ψ
i
(
x
)
}
i
=
0
M and {φi(x)}i=1M exist and are nonnegative, and the following estimates hold:
(39)maxωψi(x)≤C|logh|1/2,maxωφi(x)≤Ch|logh|1/2.Theorem 3.
Let the exact solutionsc(x,t) of (1) satisfy the condition (6), then the discretization scheme (23) is stable, and if τ0=O(h) the following estimate for the error holds:
(40)maxg|ξ|≤|logh|1/2∑i=0M{(hτi+τ02h+|logh|1/2h2)Ci(τi+h2+|logh|1/2h)≤|logh|1/2mmll+Ii(hτi+τ02h+|logh|1/2h2)}.Proof.
Define(41)η(x)=∑i=0Mψi(x)Ci(τi+h2+|logh|1/2h)+∑i=1Mφi(x)Ii(τi+h+τ02h2+|logh|1/2h),
where Ci=maxgil∖∂gil|Ki(x,t)|, Ii=max∂gil|Ki(x,t)|. Using induction over l, it easy to observe that
(42)ϕ(x)δτ0(η(x)-ξl+1(x))-Lhc(η(x)-ξl+1(x))≥0,x∈g0l,ϕ(x)δτi(η(x)-ξil,j+1(x))-Lhc(η(x)-ξil,j+1(x))≥0,x∈gil,i=1,…,M.
Moreover,
(43)(η(x)-ξ(x,t))|∂Ω≥0,∀t≥0.
Using the maximum principle, it follows that
(44)ξ0l≤η(x),x∈ω0,ξil,j(x)≤η(x),x∈ωi,i=1,…,M,j=1,2,…,mi.
Similarly,
(45)-ξ0l≤η(x),x∈ω0,-ξil,j(x)≤η(x),x∈ωi,i=1,…,M,j=1,2,…,mi.
Therefore,
(46)maxg|ξ|≤η(x),x∈ωi,i=0,…,M.
Then in view of (39), we conclude (40).
It remains to check (32) and the induction hypothesis (36) for l=n-+1. From τ0=O(h) and the error estimate (40), it is easy to obtain (36). Then using (30) and (31), (34), and (40), we can obtain the supposition (32). The proof of Theorem 3 is complete.


## 6. Numerical Results

We consider a system of coupled partial differential equations:(47)∂p∂t+∂u∂x=q(x,t),(x,t)∈Ω×J,u=-∂p∂x,(x,t)∈Ω×J,∂c∂t+∂p∂t+u·∂c∂x-D(x)∂2c∂x2=f(c,x,t),(x,t)∈Ω×J,c(x,0)=c0(x),x∈Ω,c(0,t)=cl(t),c(1,t)=cr(t),t∈J,
where Ω=[0,2]2, J=[0,T]. The following functions are used as exact solutions of (47):
(48)p=exp(t-t2)exp(-35x2+40x-10),c=exp(t)exp(-37x2+45x-16).
When t=0.5 and t=1, exact solutions of (47) are shown in Figures 2 and 3. Specific forms of c0, cl, cr, q, and f are derived by exact solutions.Figure 2
The exact solutionp.Figure 3
The exact solutionc.From Figures2 and 3, we can see exact solutions of (47) possess highly localized properties in [0.2,1]2. First, Ω is discretized using a regular grid. Let the space-step h=1/160 and the time-step τ0=h. Then choose the subregion Ω1=[0,1.3]2, which is refined in time. Let the discretization parameters τ′=τ0/m in the refined region Ω1, where m is a positive integer. We denote by C the numerical approximation to c obtained by (23). And let the error estimate in maximum norm γ=maxg|c-C|.Example 4.
LetD(x)=1. Choosing m=1,2,4,8, computational results obtained by (23) are shown in Figures 4 and 5 and Table 1.Table 1
Error estimate in maximum norm whenD(x)=1.
m
t
=
0.5
t
=
1
Computational cost
γ
Reduction
Computational cost
γ
Reduction
1
0.1560
0.0159
0.3130
0.0356
2
0.5780
0.0062
2.56
1.1560
0.0137
2.60
4
2.3440
0.0026
2.38
4.6080
0.0058
2.36
8
9.2810
0.0012
2.17
18.6800
0.0026
2.23Figure 4
Error|c-C| when t=0.5.Figure 5
Error|c-C| when t=1.Example 5.
LetD(x)=x. Choosing m=1,2,4,8, computational results obtained by (23) are shown in Table 2.Table 2
Error estimate in maximum norm whenD(x)=x.
m
t
=
0.5
t
=
1
Computational cost
γ
Reduction
Computational cost
γ
Reduction
1
0.1710
0.0535
0.3270
0.1342
2
0.5920
0.0254
2.11
1.1680
0.0641
2.10
4
2.3840
0.0124
2.05
4.6590
0.0313
2.05
8
9.8810
0.0061
2.03
19.7440
0.0154
2.03From Figures4 and 5 and Tables 1 and 2, we can see that numerical results produced by using the local refinement technique are more accurate than those produced without refinement. From Tables 1 and 2, we observe a monotonic improvement of the accuracy in maximum norm when using difference refinement factors m. These results are of great importance for the research on numerical simulation of the fluid flow problem and also indicate that the method proposed in this paper can be widely applied to some application fields, such as energy numerical simulation and environmental science.



---

*Source: 521835-2013-02-07.xml*