1. Introduction
Diffusive flows, possibly with reaction, play an important role in a number of fields, such as fluid dynamics in porous media and percolation, as well as seepage and groundwater hydraulics; see, e.g., [
1,
2,
3,
4]. However, the celebrated Darcy’s law, along with the assumption of continuity of the seepage flow in heterogeneous media and the ensuing diffusion partial differential equation (PDE), is not valid in the general case of real flows. In 1998, J. He [
5] proposed a generalized version of the Darcy’s law, containing fractional Riemann–Liouville (RL) derivatives,
where
is the pressure,
is the fluid velocity,
is the percolation tensor (here assumed to be diagonal), and
. In this paper, we chose to follow He’s idea in order to model seepage flows in porous media, adopting fractional Riemann–Liouville derivatives, even though several other kinds of fractional derivative exist. The Riemann–Liouville fractional derivative of order
of
is defined by
where
is such that
, see [
6], e.g., the literature concerning Fractional Calculus is still rapidly increasing. We only mention [
7] for some review on progresses in this field, in particular concerning RL operators, and [
8] for reviewing some general basic properties of fractional operators, in particular, RL operators.
Therefore, the more general equation for seepage flow with fractional Riemann–Liouville derivatives that was proposed by J. He [
5] reads
Here,
is the specific storage coefficient (that is assumed to be constant),
is a “source” or “sink term”,
is a given open bounded domain of
, with piecewise smooth boundary, where the seepage or percolation takes place,
t is time, and
,
, with
, for
, see [
2]. In (
2), the operator
denotes the fractional Riemann–Liouville derivative of order
with respect to
x. Note that, when the source term,
f, depends on
p, the fractional partial differential equation (fPDE) in (
2) is a reaction–diffusion, rather than a pure diffusion equation. The boundary and initial conditions
are imposed, with
and
being suitable prescribed functions.
In this paper, we consider, rather, fractional diffusions in the nonconservative form,
where all of the space fractional derivatives are of the RL type, defined as in (
1), the set
,
, for
i = 1, 2, 3. Below, we construct a “fractional Alternating Direction Implicit” (fADI) scheme in order to numerically solve such a problem. We will consider such a fractional reaction–diffusion equation with (positive) constant percolation coefficients,
, in (
2), with boundary and initial conditions, as above.
Unlike the case of classical (integer order) derivatives, the two model Equations (
2) and (
4) do not coincide, even when the coefficients
,
, and
are constants. In fact, it is not true, in general, that, e.g.,
This is only true under some conditions, for instance, when
(i.e., is sufficiently smooth) and
for some
,
, see [
9]. This restriction on the fractional orders is quite serious, since we expect that
and
, in order to obtain an anomalous (sub-)diffusion equation. Otherwise, one should just face the fPDE in (
2), even when taking out of the derivatives the constants
K, and keeping it as it is. There is a name for such fractional equations, which is “
sequential fractional differential equations”, see, e.g., ([
6],
Section 4.2).
Other definitions of fractional derivative exist. One of the most useful in practice has been proven to be Caputo’s definition. The Caputo fractional derivative is given by
where
,
. Moreover, the Grünwald–Letnikov fractional derivative is particularly relevant for us, in view of the ensuing numerical treatment. It is defined as [
2,
6],
while the so-called shifted Grünwald–Letnikov derivative is given by
where
denotes the integer part of
x, with
h being the step size to be used in the numerical schemes [
6], and
is the Gamma function. The “normalized” Grünwald weights are defined as
. These coefficients will be used in the numerical approximation of the Grünwald–Letnikov fractional discrete operator in (
7) or (
8); see
Section 2.
When applied to smooth functions, for example functions with continuous
th-order derivatives and integrable
nth-order derivatives, all of these definitions are known to coincide [
6]. Therefore, in this paper, we consider all fractional derivatives appearing in the fPDEs in the sense of Caputo, while the discretizations will be made according to the shifted Grünwald–Letnikov definition.
Given the interest for models that are based on fPDEs and, needless to say, analytic solutions to most fPDEs are usually not available, a number of authors have proposed, over the years, a few numerical methods to solve them, see, e.g., [
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28]. However, numerical methods that are capable of handling high-dimensional fPDEs seem to be rather few in the existing literature, not to mention their performance. It should be observed that, being the fractional derivatives nonlocal operators, discretizing fPDEs can be expected to be more demanding in terms of memory storage and CPU time, as compared to classical PDEs. All of this calls for devising effective numerical methods in order to solve fPDE problems already in dimension 2 and 3.
In this paper, we consider the three-dimensional (3D) fractional seepage flow equation in (
2), on the bounded domain,
, and the time interval
. Moreover, we assume that such an initial-boundary value problem equation has a unique, sufficiently smooth solution, when the (homogeneous) Dirichlet boundary conditions and initial condition
for some given functions,
and
are imposed.
A new, well “balanced”, fractional version of the Alternating Direction Implicit (ADI) method is introduced, in order to numerically solve 3D diffusion and reaction-diffusion fPDEs. We call our algorithm “balanced”, since it distributes the source term effect in an equal amount among the three equations of the ADI scheme, instead of putting the full source on the right-hand side of the first equation only, see
Section 2. This choice seems to be effective, especially when the model presents some degree of anisotropy, and it allows us to increase the space accuracy. In [
2], Liu et al. derived a scheme that is accurate to the second order in space, resorting to a Richardson extrapolation, but our balanced scheme turns out to perform better, see Table 12 below.
Our method is shown to be unconditionally stable for every fractional order of space derivatives, second-order accurate in space, and third-order accurate in time. This latter property is established in this paper adopting an extrapolation technique along with an optimization strategy that is realized through Google’s
PageRank algorithm. The method followed here to do this for the 3D case is similar to that used for the two-dimensional (2D) case in [
29].
Here is the plan of the paper. In
Section 2, we formulate a typical problem, and discuss some fractional versions of the ADI (fADI) 3D schemes. In
Section 3, we establish the convergence and stability of our algorithm, while, in
Section 4, some details regarding optimization and extrapolation are given, and a few numerical examples are presented.
Section 5 contains the conclusions of the paper, briefly highlighting its main points.
2. Fractional Diffusion and Seepage Flow in Homogeneous Media
In order to construct our fADI scheme on a bounded domain, we first discretize space and time, as usual, setting , for , with ; , for , with ; , for , with ; and, , for , . Here, , and N are positive integers, while , , , and are the space and time step sizes, respectively. The numerical approximation to provided by the scheme at such points will be then denoted by . Similarly, we write in order to denote an approximation of for the source term, for , the initial value, and , , , , and , for the boundary conditions.
We discretize the fPDE, approximating the first-order derivative
in (
4) by forward finite differences. Assuming that the solution,
p, has a first-order continuous space derivative and that its second-order space derivatives are integrable, the operators
,
, and
in (
4) can be discretized while using the shifted fractional Grünwald–Letnikov derivative in (
8). Thus, we obtain the implicit finite-difference scheme
It is known that the fractional discrete operator
provides an
approximation to the Grünwald–Letnikov shifted fractional derivative of order
[
20]. Similarly, the discrete operators
provide, respectively,
and
approximations to the Grünwald–Letnikov shifted fractional derivatives of order
and
. Using such operators, the implicit difference scheme in (
10) can be rewritten in a more compact form, as
Note that, evaluating
on the right-hand side at time
, makes the case simpler when
f depends on
p, which is when the fPDE is a reaction–diffusion rather than a diffusion equation. In
Section 3, we will show that this scheme is characterized by a local truncation error of the order
, and it is unconditionally stable. However, adopting suitable strategies, we have been able to improve such orders, attaining the order
.
Equation (
13) (or (
10)) yields a linear system of equations satisfied by
. he corresponding system’s matrix, however, is neither sparse nor band structured, as it happens in the corresponding classical ADI method. This implies that the scheme in (
13) requires, at each step, the solution of a large dense linear system of equations. Therefore, we are facing a computationally demanding numerical problem, which calls for constructing suitable efficient numerical schemes, possibly unconditionally stable.
To this purpose, we exploit the idea of the classical ADI method in order to design an implicit difference scheme for each direction, but now in the framework of fractional differential equations. Indeed, we split the computations into three steps, each requiring a reduced computational load. On the first step, we solve the problem in the x-direction, on the second one, we solve it in the y-direction, and in the third one, in the z-direction.
In order to devise such a splitting, we add an extra higher-order term to the left-hand side of (
13), so that we are able to factor the operator into three factors,
into three factors, without affecting the overall convergence rate, thus obtaining the scheme
Now, splitting (
15) in the three dimensions, we obtain the unbalanced version of the scheme, which provides the solution at time
,
and turns out to be of the first order in space [
2]. However, we can choose to distribute the effect of the source term among the three steps in a more balanced way, obtaining, from (
15), the fADI scheme
which also provide the solution at time
. As in all classical ADI schemes, the system in (
17) is not equivalent to that in (
15), but it does within an error that is of order higher that that provided by the scheme.
The algorithm (
17) now performs better, as it will be shown in
Section 3, below.
The “unbalanced” scheme is accurate to the first order in space and it requires a little shorter computing time, as compared to the better “balanced” scheme. The latter however is accurate to the second order in space, see Theorem 1, below.
The idea of using a more balanced scheme, which equally affects all (the three) directions, results in a better method, which is clearly uneffective when . The algorithm seems to be new, even within the framework of 3D classical (i.e., non-fractional) ADI methods.
Summarizing, the computations are split into three (time) fractional steps, in each of which a one-dimensional equation is solved at time, as follows:
Step 1. Solve the problem in the
x-direction (for each fixed pair
, in order to obtain the intermediate value of the solution, say
, from the first equation in (
17).
Step 2. Solve the problem in the
y-direction (for each fixed pair
, in order to obtain the intermediate value
, from the second equation in (
17), while using the results that were obtained at Step 1.
Step 3. Solve the problem in the
z-direction (for each fixed pair
, from the third equation in (
17), using the results of Step 2.
Taking the boundary values
and
into account, we can construct the coefficients of the matrix
of the linear system in (
17): for each fixed
, we have
Subsequently, using the boundary values
and
, we obtain the matrix
of the linear system in the second equation of (
17). For each fixed
, such a matrix turns out to be similar to
A (as given in (
18)). Finally, while using the boundary values
and
, we obtain the matrix
of the linear system in the third equation in (
17), which, again, for each fixed
, is similar to
A.
Of course, as in the classical ADI Peaceman–Rachford algorithm [
30], used to solve “integer-order” (i.e., non-fractional) PDEs, it is necessary to provide certain boundary values to be associated to the diffusion in the
x-direction, which is
and
, as well as
and
, associated to the diffusion along
y, and similarly for the diffusion along
z, when solving the systems with the coefficient matrices
A,
B, and
C. For instance, we need the boundary values
,
, which can be obtained from
for
,
,
, and
,
, which can be obtained from
for
,
,
.
Examining the three matrices A, B, and C, above, it can be seen that, at each time step, it is merely required to solve, for each fixed pair (at each x-level), a linear upper triangular system of size , or, for each fixed pair (at each y-level), a linear upper triangular system of size , or, for each fixed pair (at each z-level) a linear upper triangular system of size .