Next Article in Journal
Pointwise Reconstruction of Wave Functions from Their Moments through Weighted Polynomial Expansions: An Alternative Global-Local Quantization Procedure
Previous Article in Journal
A Cohomology Theory for Commutative Monoids
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Fast O(N log N) Finite Difference Method for the One-Dimensional Space-Fractional Diffusion Equation

Department of Mathematics, Occidental College, Los Angeles, CA 90041, USA
Mathematics 2015, 3(4), 1032-1044; https://doi.org/10.3390/math3041032
Submission received: 4 August 2015 / Accepted: 15 October 2015 / Published: 27 October 2015

Abstract

:
This paper proposes an approach for the space-fractional diffusion equation in one dimension. Since fractional differential operators are non-local, two main difficulties arise after discretization and solving using Gaussian elimination: how to handle the memory requirement of O ( N 2 ) for storing the dense or even full matrices that arise from application of numerical methods and how to manage the significant computational work count of O ( N 3 ) per time step, where N is the number of spatial grid points. In this paper, a fast iterative finite difference method is developed, which has a memory requirement of O ( N ) and a computational cost of O ( N log N ) per iteration. Finally, some numerical results are shown to verify the accuracy and efficiency of the new method.

1. Introduction

The history of fractional calculus is almost as long as integer calculus, however it is only in the last few decades that it has gained much importance. The modeling of a variety of non-classic phenomena, i.e., anomalous diffusion using fractional differential equations have proven to be promising to describe processes with memory and hereditary in geophysics [1], physics [2], chemistry [3], biology [4] and even finance and economics [5]. The primary advantage of such modeling lies in the introduction of a parameter, namely the fractional order of the equation, which can be used to model non-Markovian behavior of spatial or temporal processes. While analytical methods, such as the Fourier transform method, the Laplace transform methods, and the Mellin transform method, have been developed to seek closed-form analytical solutions for fractional partial differential equations [6], there are very few cases in which the closed-form analytical solutions are available, just like in the case of integer-order partial differential equations. Numerical methods for the fractional partial differential equations, such as finite difference methods [7], finite element methods [8,9], spectral methods [10], and discontinuous Galerkin methods [11,12] have recently been developed and remains a relatively new topic of research because of the difficulties encountered.
Due to the non-local nature of fractional differential operators, numerical methods for fractional diffusion equations [9,13,14] raise numerical difficulties that were not encountered in the numerical methods for second-order diffusion equations. A significant obstacle that is the direct result of this non-local behavior is that these methods generate discrete systems with full or dense coefficient matrices. Meerschaert and Tadjeran [15,16] utilized a shifted Grünwald-Letnikov difference approximation to develop an implicit Euler finite difference method for space-fractional diffsuion equation in one-dimension. Further, they proved that the method is unconditionally stable and has first-order convergence in space and time. However, these methods were solved via Gaussian elimination, consequently O ( N 3 ) account of operations and O ( N 2 ) account of storage are required to solve a problem of size N.
This work focuses on the development of a fast iterative finite difference method for the accurate and efficient solution of the one-dimensional space-fractional diffusion equation. The immense computational cost and storage requirement for the one-dimensional space fractional diffusion equation was broken down recently by the authors of [17]. In [17] they proved that the stiffness matrix of [15,16] can be decomposed as a sum of diagonal matrix multiplied by a Toepltiz matrix. They utilize this decomposition and applied an operator splitting technique to the one-dimensional space-fractional diffusion equation to develop a fast operator-splitting finite difference method for the space-fractional diffusion equation in one space dimension. However, this method has a computational work account of O ( N log 2 N ) per iteration and has a memory need of O ( N log N ) per time step, due to the use of the banded coefficient matrix. While this is a vast improvement from the traditional methods solved via Gaussian elimination, there is room for improvement. In this paper the proposed method retains the same accuracy as the regular finite difference methods solved via Gaussian elimination and the resulting fast algorithm has a computational cost of O ( N log N ) per iteration at each time step and a memory requirement of only O ( N ) per time step.
The rest of this paper is organized as follows. Section 2 outlines the space-fractional diffusion equation we attempt to solve and presents the corresponding Meerschaert-Tadjeran finite difference method. Section 3, begins by discussing the impact of the significantly increased computational work and memory requirement of the traditional implicit finite difference method. Then we continue with the development of the fast conjugate gradient squared finite difference formulation. This section concludes by describing how to efficiently store the stiffness matrix and how to implement a fast matrix-vector multiplication to speed up the iterative scheme. Our work in this section establishes that the fast method has a computational work of O ( N log N ) per iteration and a memory requirement of O ( N ) per time step, while retaining the same accuracy as the traditional finite difference methods. This is followed by numerical experiments in Section 4 and concluding remarks in Section 5.

2. The Implicit Finite Difference Method for Time-Dependent Space Fractional Diffusion Equation

Fractional order partial differential equations are generalizations of classical partial differential equations. Fractional derivatives in space are used to model anomalous diffusion, where particles spread either faster or slower than the classical model predicts. When a fractional derivative of order α replaces the second derivative in a diffusion model, it leads to enhanced diffusion if 1 < α < 2 (a process known as superdiffusion) or leads to subdiffusion, if 0 < α < 1 .
For a one-dimensional fractional diffusion model with constant coefficients, analytic solutions are available [18] using Fourier transform methods. However many practical problems require a model with variable coefficients [19,20]. In [18], a space-fractional diffusion equation was used to describe Lévy flights.
We now proceed to develop a fast numerical method for space-fractional diffusion equations. Consider the following initial-boundary value problem of a class of time-dependent space-fractional diffusion of order 1 < α < 2 [15,16,18]
u ( x , t ) t - d + ( x , t ) α u ( x , t ) + x α - d - ( x , t ) α u ( x , t ) - x α = f ( x , t ) x L < x < x R , 0 < t T u ( x L , t ) = 0 , u ( x R , t ) = 0 , 0 t T u ( x , 0 ) = u 0 ( x ) , x L x x R
The case 1 < α < 2 has useful applications [21]. It is also a physically meaningful case, as explained in [22]. A two-sided fractional partial differential equation allows modeling different flow regime impacts from either side. Here the left-sided (+) and the right-sided (−) fractional derivatives α u ( x , t ) + x α and α u ( x , t ) - x α can be defined in the (computationally feasible) Grünwald-Letnikov form [23]
α u ( x , t ) + x α = lim h 0 + 1 h α k = 0 ( x - x L ) / h g k ( α ) u ( x - k h , t ) α u ( x , t ) - x α = lim h 0 + 1 h α k = 0 ( x R - x ) / h g k ( α ) u ( x + k h , t )
where x represents the floor of x and g k ( α ) = ( - 1 ) k α k with α k being the fractional binomial coefficients. We note that the Grünwald weights g k ( α ) can be evaluated using the recurrence relation
g 0 ( α ) = 1 , g k ( α ) = 1 - α + 1 k g k - 1 ( α ) for k 1
and satisfy the following properties [15,16,23]
g 0 ( α ) = 1 , g 1 ( α ) = - α < 0 , 1 g 2 ( α ) g 3 ( α ) 0 k = 0 g k ( α ) = 0 , k = 0 m g k ( α ) 0 ( m 1 )
We also note that the left-handed fractional derivative of u at a point depends on all function values to the left of that point. Similarly, the right-handed fractional derivatives of u at a point depends on all function values to the right of this point. In other words, fractional derivatives are non-local operators.
This paper focuses on the development of a fast numerical method for problem Equation (1). We refer to [24], for the existence and uniqueness of the weak solution to fractional partial differential equations.
Let N and M be positive integers and h = ( x R - x L ) / N and Δ t = T / M be the sizes of spatial grid and time step, respectively. We define a spatial and temporal partition x i = x L + i h for i = 0 , 1 , , N and t m = m Δ t for m = 0 , 1 , , M . Let u i m = u ( x i , t m ) , d + , i m = d + ( x i , t m ) , d - , i m = d - ( x i , t m ) , and f i m = f ( x i , t m ) .
We discertize the first-order time derivative in Equation (1) by a standard first-order time difference quotient, but for the discretization of the fractional spatial derivative we use the shifted Grünwald approximations. Meerschaert and Tadjeran [15,16] showed that a fully implicit finite difference scheme with a direct truncation of the series in Equation (2) turns out to be unstable! Using the following shifted Grünwald approximations
α u ( x i , t m ) + x α = 1 h α k = 0 i + 1 g k ( α ) u i - k + 1 m + O ( h ) α u ( x i , t m ) - x α = 1 h α k = 0 N - i + 1 g k ( α ) u i + k - 1 m + O ( h )
they proved that the corresponding implicit finite difference scheme
u i m + 1 - u i m Δ t - d + , 1 m + 1 h α k = 0 i + 1 g k ( α ) u i - k + 1 m + 1 - d - , 1 m + 1 h α k = 0 N - i + 1 g k ( α ) u i + k - 1 m + 1 = f i m + 1
is unconditionally stable and convergent. Numerical experiments show that this scheme generates very satisfactory numerical approximations.
Let u m = [ u 1 m , u 2 m , , u N - 1 m ] T , f m = [ f 1 m , f 2 m , , f N - 1 m ] T , A m = [ a i , j m ] i , j = 1 N - 1 , and I be the identity matrix of order N - 1 . Then the numerical scheme Equation (6) can be expressed in the following matrix form
( I + Δ t h α A m + 1 ) u m + 1 = u m + Δ t f m + 1
Here the entries of matrix A m + 1 are given by
a i , j m + 1 = - ( d + , i m + 1 + d - , i m + 1 ) g 1 ( α ) , j = i - ( d + , i m + 1 g 2 ( α ) + d - , i m + 1 g 0 ( α ) ) , j = i - 1 - ( d + , i m + 1 g 0 ( α ) + d - , i m + 1 g 2 ( α ) ) , j = i + 1 - d + , i m + 1 g i - j + 1 ( α ) , j < i - 1 - d - , i m + 1 g j - i + 1 ( α ) , j > i + 1
It is clear that a i , j m + 1 0 for all i j . We further conclude from Equations (4) and (8) that the coefficient matrix I + Δ t h α A m + 1 is a nonsingular, strictly diagonally dominant M-matrix.
Equation (8) implies that the scheme has a dense coefficient matrix, which has a memory requirement of O ( N 2 ) and computational work of O ( N 3 ) per time step. Thus the non-local nature of the fractional derivatives results in a full coefficient matrix of the system. This is in contrast to numerical methods for second-order diffusion equations which usually generate banded coefficient matrices of O ( N ) nonzero entries and can be solved by fast solution methods such as multigrid methods, domain decomposition methods, and wavelet methods. Therefore the development of fast and robust numerical methods with efficient storage for the space-fractional diffusion equation is crucial for the applications of fractional diffusion equations.

3. The Fast Conjugate Gradient Squared Method

Since the stiffness matrix A m + 1 is dense, solving Equation (7) using Gaussian elimination requires computational work of O ( N 3 ) operations per iteration and memory storage of O ( N 2 ) per time step. For example, each time we reduce the size of the spatial mesh by half, the total number of unknowns per time step is doubled. As a result, the required memory increases 4 times, and the computational work increases 8 times. If the time step size is reduced by half too, then we would expect the overall consumed CPU time for solving the finite difference method to increases 16 times. Because of the significantly increased computational work and memory requirement of the numerical schemes for space-fractional diffusion equations, development of fast and reliable numerical methods with efficient storage mechanism has been of recent interest.
The goal of this paper is to develop a fast solution technique for the one-dimensional space-fractional diffusion equation via finite difference method Equation (6). Let us begin by recalling the conjugate gradient squared iterative scheme to solve the system Equation (7): ( I + Δ t h α A m + 1 ) u m + 1 = u m + Δ t f m + 1 which can be expressed as follows
 
At each time step t m + 1 , we choose u ( 0 ) = u m
Compute r ( 0 ) = u m + Δ t f m + 1 - ( u ( 0 ) + Δ t h α A m + 1 u ( 0 ) )
Choose r ˜ (for example, r ˜ = r ( 0 ) )
for i = 1 , 2 ,
ρ i - 1 = r ˜ T r ( i - 1 )
 if ρ i - 1 = 0 the method fails
  if i = 1
    w ( 1 ) = r ( 0 )
    p ( 1 ) = w ( 1 )
  else
    ν i - 1 = ρ i - 1 / ρ i - 2
    w ( i ) = r ( i - 1 ) + ν i - 1 q ( i - 1 )
    p ( i ) = w ( i ) + ν i - 1 ( q ( i - 1 ) + ν i - 1 p ( i - 1 ) )
  end if
   v ^ = p ( i ) + Δ t h α A m + 1 p ( i )
 
   μ i = ρ i - 1 / r ˜ T v ^
   q ( i ) = w ( i ) - μ i v ^
   u ( i ) = u ( i - 1 ) + μ i ( w ( i ) + q ( i ) )
   q ^ = ( w ( i ) + q ( i ) ) + Δ t h α A m + 1 ( w ( i ) + q ( i ) )
   r ( i ) = r ( i - 1 ) - μ i q ^
   δ = u m + Δ t f m + 1 - ( u ( i ) + Δ t h α A m + 1 u ( i ) )
  Check for convergence; continue if necessary
end
u m + 1 = u ( i )
Since the finite difference method has a nonsymmetric coefficient matrix in general, we need to use a nonsymmetric conjugate gradient method. Here we take the conjugate gradient squared method to solve the implicit Euler finite difference method Equation (6).
Notice that in the above algorithm, at each time step t m + 1 , the evaluation of the matrix-vector multiplication A m + 1 p ( i ) , A m + 1 ( w ( i ) + q ( i ) ) and A m + 1 u ( i ) costs O ( N 2 ) operations, while all others are already of optimal order computational cost O ( N ) . Further, the storage of the stiffness matrix A m + 1 requires O ( N 2 ) of memory, while all other operations require only O ( N ) of memory. Our immediate goal is to develop a fast conjugate gradient squared method for the efficient solution and storage of the system Equation (7).
In light of our goal, the rest of this section addresses the following important issues: (i) an efficient storage of the coefficient matrix A m + 1 with memory requirement of O ( N ) and (ii) how to perform an efficient matrix-vector multiplication A m + 1 u with a general vector u in O ( N log N ) operations.

3.1. An Efficient O ( N ) Storage of the Stiffness Matrix

To develop a fast solution method with minimal memory requirement, we carefully explore the structure of the coefficient matrices.
Theorem 1. 
The total memory requirement for storing the coefficient matrix A m + 1 is O ( N ) .
Proof. 
We conclude from Equation (8) that the stiffness matrix A m + 1 can be decomposed as follows
A m + 1 = - diag d + m + 1 A L - diag d - m + 1 A R
Here diag d + m + 1 , diag d - m + 1 , are diagonal matrices of order N - 1 with their ith entries d + , i m + 1 , d - , i m + 1 , for i = 1 , 2 , , N - 1 . The matrices A L and A R are matrices of order N - 1 and are defined by
A L = g 1 ( α ) g 0 ( α ) 0 0 0 g 2 ( α ) g 1 ( α ) g 0 ( α ) 0 g 2 ( α ) g 1 ( α ) 0 g N - 2 ( α ) g 1 ( α ) g 0 ( α ) g N - 1 ( α ) g N - 2 ( α ) g 2 ( α ) g 1 ( α ) A R = g 1 ( α ) g 2 ( α ) g N - 2 ( α ) g N - 1 ( α ) g 0 ( α ) g 1 ( α ) g 2 ( α ) g N - 2 ( α ) 0 g 0 ( α ) g 1 ( α ) 0 0 g 1 ( α ) g 2 ( α ) 0 0 0 g 0 ( α ) g 1 ( α )
Thus, instead of storing the full matrix A m + 1 which have ( N - 1 ) 2 parameters we need only store the 3 N - 2 parameters, d + m + 1 = d + , 1 m + 1 , d + , 2 m + 1 , , d + , N - 1 m + 1 T , d - m + 1 = d - , 1 m + 1 , d - , 2 m + 1 , , d - , N - 1 m + 1 T , and g ( α ) = g 0 ( α ) , g 1 ( α ) , , g N - 1 ( α ) T . In particular, the fractional binomial coefficient vector g ( α ) depends only on the size of the spatial partition and the order of the anomalous diffusion but is independent of time or space. So it can be preprocessed and stored in advance. ☐

3.2. Toeplitz and Circulant Matrix

In order to explain the fast algorithm, we define the terms Toeplitz matrix and circulant matrix. A Toeplitz matrix is a matrix in which each descending diagonal from left to right is constant. Clearly, both matrices A L and A R are Toeplitz matrices. Also, A R = ( A L ) T is the transpose of A L .
A circulant matrix is a matrix in which each row vector is rotated one element to the right relative to the preceding row vector. It is clear that a circulant matrix is a Toeplitz matrix, but the converse is not true. Note that the Toeplitz matrices A L and A R can be embedded into ( 2 N - 2 ) × ( 2 N - 2 ) circulant matrices C 2 N - 2 , L and C 2 N - 2 , R as:
C 2 N - 2 , L = A L B L B L A L , C 2 N - 2 , R = A R B R B R A R
where
B L = 0 g N - 1 ( α ) g 3 ( α ) g 2 ( α ) 0 0 g N - 1 ( α ) g 3 ( α ) 0 0 0 0 0 0 g N - 1 ( α ) g 0 ( α ) 0 0 0 0
and
B R = 0 0 0 0 g 0 ( α ) g N - 1 ( α ) 0 0 0 g N - 2 ( α ) g N - 1 ( α ) 0 0 g 3 ( α ) 0 0 0 g 2 ( α ) g 3 ( α ) 0 g N - 1 ( α ) 0 .
Again, note that B R = ( B L ) T is the transpose of B L .
It is known that a circulant matrix C n can be decomposed as follows [25,26]
C n = F n - 1 diag ( F n c ) F n
where c = [ c 0 , c n - 1 , c n - 2 , , c 2 , c 1 ] T is the first column vector of C n and F n is the n × n discrete Fourier transform matrix in which the ( j , l ) -entry F n ( j , l ) of the matrix F n is given by
F n ( j , l ) = 1 n exp - 2 π   i   j   l n 0 j , l n - 1
where i = - 1 .
We make use of the above decomposition property of circulant matrices to efficiently execute all matrix-vector multiplications A m + 1 p ( i ) , A m + 1 ( w ( i ) + q ( i ) ) and A m + 1 u ( i ) of the conjugate gradient squared method above.

3.3. A Fast O ( N log N ) Matrix-Vector Multiplication Algorithm

We now shift our focus to the efficient operation of the numerical scheme. To efficiently execute the matrix-vector multiplications A m + 1 p ( i ) , A m + 1 ( w ( i ) + q ( i ) ) and A m + 1 u ( i ) of the conjugate gradient squared method, we use the following O ( N log N ) algorithm, based on the decomposition Equation (9) of the matrix A m + 1 , the diagonalization Equation (14) of a circulant matrix and the embedding Equation (11).
Theorem 2. 
Let A m + 1 be the stiffness matrix as Equation (8). Let u be any N dimensional vector. Then A m + 1 u can be performed in O ( N log N ) operations.
Proof. 
We explain the operation count of O ( N log N ) by executing the following steps:
  • Introduce two ( 2 N - 2 ) × ( 2 N - 2 ) matrices and one 2 N - 2 vector
    C 2 N - 2 , L = A L B L B L A L , C 2 N - 2 , R = A R B R B R A R , u 2 N - 2 = u 0
    Here B L and B R are defined as in Equation (12) and Equation (13) and A L and A R as in Equation (10) respectively. It is clear that
    C 2 N - 2 , L u 2 N - 2 = A L u B L u , C 2 N - 2 , R u 2 N - 2 = A R u B R u
    Thus, the matrix-vector products A L u and A R u can be obtained as the first half of the matrix-vector products C 2 N - 2 , L u 2 N - 2 and C 2 N - 2 , R u 2 N - 2 , respectively.
  • Evaluate the matrix-vector products w 2 N - 2 = F 2 N - 2 u 2 N - 2 in O ( N log N ) operations. In fact, F 2 N - 2 u 2 N - 2 is the discrete Fourier transform of u 2 N - 2 , which can be achieved in O ( ( 2 N ) log ( 2 N ) ) = O ( N log N ) operations via the fast Fourier transform (FFT).
  • Similarly evaluate v 2 N - 2 , L = F 2 N - 2 c 2 N - 2 , L and v 2 N - 2 , R = F 2 N - 2 c 2 N - 2 , R in O ( N log N ) operations, where c 2 N - 2 , L and c 2 N - 2 , R are the first column vectors of C 2 N - 2 , L and C 2 N - 2 , R , respectively.
  • Evaluate the Hadamard products z 2 N - 2 , L = w 2 N - 2 · v 2 N - 2 , L = [ w 1 v 1 , L , ,   w 2 N - 2 v 2 N - 2 , L ] T and z 2 N - 2 , R = w 2 N - 2 · v 2 N - 2 , R = [ w 1 v 1 , R , , w 2 N - 2 v 2 N - 2 , R ] T in O ( N ) operations.
  • Evaluate y 2 N - 2 , L = F 2 N - 2 - 1 z 2 N - 2 , L and y 2 N - 2 , R = F 2 N - 2 - 1 z 2 N - 2 , R in O ( N log N ) operations via inverse FFT. Combining Equation (16) and Equation (17) yields that
    y 2 N - 2 , L = y L y L = C 2 N - 2 , L u 2 N - 2 = A L u B L u y 2 N - 2 , R = y R y R = C 2 N - 2 , R u 2 N - 2 = A R u B R u
  • Evaluate the Hadamard products u L = d + m + 1 · y L and u R = d - m + 1 · y R in O ( N ) operations. Use Equation (9) to evaluate A m + 1 u = - u L - u R in O ( N ) operations.

4. Numerical Experiments

In this section we carry out numerical experiments to study the performance of the fast conjugate gradient squared finite difference method developed in this paper and to compare its performance with the finite difference methods with full coefficient matrices which were developed in [15,16].
We consider the fractional diffusion equation Equation (1) with an anomalous diffusion of order α = 1 . 8 and the left-sided and right-sided diffusion coefficients
d + ( x , t ) = 1 . 32 Γ ( 1 . 2 ) x 1 . 8 , d - ( x , t ) = 1 . 32 Γ ( 1 . 2 ) ( 1 - x ) 1 . 8
The spatial domain is [ x L , x R ] = [ 0 , 1 ] , the time interval is [ 0 , T ] = [ 0 , 1 ] . The source term and the initial condition are given by
f ( x , t ) = - 16 e 1 - t [ x 2 ( 1 - x 2 ) + 2 . 64 ( x 2 + ( 1 - x ) 2 ) - 13 . 2 ( x 3 + ( 1 - x ) 3 ) + 12 ( x 4 + ( 1 - x ) 4 ) ] u 0 ( x ) = 16 e x 2 ( 1 - x ) 2
The true solution to the corresponding fractional diffusion equation Equation (1) is given by [16]
u ( x , t ) = 16 e 1 - t x 2 ( 1 - x ) 2
In the numerical experiments, we solve the problem by both the fast conjugate squared (iterative) finite difference method and the regular finite difference method Equation (6) and denote their solutions by u F I F D m and u F D m , respectively. Let u m be the numerical solution u F I F D m or u F D m at time step t m and u ( x , t m ) be the true solution to problem Equation (1).
In Table 1 we present the errors u F I F D M - u ( · , t M ) L and u F D M - u ( · , t M ) L for different spatial mesh sizes and time steps. These results are very encouraging and show that fast conjugate gradient squared finite difference method developed in this paper generates numerical solutions with same accuracy as the regular finite difference method, despite the fact that the former has significantly reduced the storage and computational cost of the latter from O ( N 2 ) and O ( N 3 ) to O ( N ) and O ( N log N ) , respectively. We also present a representative plot with N = M = 128 in Figure 1, which shows that the fast conjugate gradient squared finite difference solution and the regular finite difference solution both sit on the curve of the true solution without stark differences.
The numerical experiment carried out in this section shows the significant reduction in computational time which coincides with the theoretical analysis. For example, with N = 1024 nodes the fast conjugate gradient finite difference scheme developed in this paper has about 280 times of CPU reduction than the standard finite difference scheme solved with Gaussian elimination. This is on top of the significant reduction in storage. This demonstrates the strong potential of the method.
Table 1. Comparison of the fast iterative finite difference (FIFD) method with the regular finite difference (FD) method in the simulation of the fractional diffusion problem with a known analytical solution.
Table 1. Comparison of the fast iterative finite difference (FIFD) method with the regular finite difference (FD) method in the simulation of the fractional diffusion problem with a known analytical solution.
N = M ERROR · L CPU (Seconds)
FD 2 6 1 . 38160 × 10 - 2 7 . 41
2 7 6 . 46640 × 10 - 3 5 . 79 × 10
2 8 3 . 07995 × 10 - 3 4 . 38 × 10 2
2 9 1 . 41210 × 10 - 3 3 . 52 × 10 3
2 10 6 . 60815 × 10 - 4 2 . 27 × 10 4
FIFD 2 6 4 . 91910 × 10 - 3 . 04
2 7 2 . 46266 × 10 - 3 1 . 30
2 8 1 . 23210 × 10 - 3 5 . 12
2 9 6 . 16248 × 10 - 4 20 . 14
2 10 3 . 08172 × 10 - 4 80 . 89
Figure 1. The true solution u (marked by “—”), the fast iterative finite difference solution u F I F D (marked by “*”), in §4 at time T = 1 with h = 1 128 and Δ t = 1 128 .
Figure 1. The true solution u (marked by “—”), the fast iterative finite difference solution u F I F D (marked by “*”), in §4 at time T = 1 with h = 1 128 and Δ t = 1 128 .
Mathematics 03 01032 g001

5. Concluding Remarks and Future Work

This paper develops a fast solution method for the implicit finite difference scheme Equation (6) for the one-dimensional space-fractional diffusion equation developed by Meerschaert and Tadjeran in [15,16]. The fast method consists of carefully analyzing the structure of the coefficient matrix resulting from the finite difference method, delicately decomposing the coefficient matrix into a combination of sparse and structured dense matrices and applying an iterative scheme, in this case the conjugate gradient squared method. Over the past decade many numerical methods have been developed for space-fractional diffusion equations, however all of them present major computational obstacles in realistic numerical simulation because of the significant computational cost and memory requirement. The fast conjugate gradient squared method developed in this paper keeps the same accuracy as the finite difference method [15,16] with Guassian elimination but has a memory requirement of only O ( N ) per time step and a computational work of O ( N log N ) per iteration.
Numerical computations were carried out using MATLAB. Furthermore, in order to use the fast conjugate gradient squared finite difference method, users need only rewrite a module to replace the matrix-vector multiplication module in traditional conjugate gradient method software. And this fast matrix-vector multiplication is based on FFT, which is readily available in MATLAB. Thus, the fast method virtually does not require any additional coding work to implement.
The idea of fast solution developed in this paper can be applied to other numerical methods. A fast solution method for a second-order Crank-Nicolson finite difference method was developed in [27] for space-fractional diffusion equations in one dimension.
The reader should also note that a large diffusion coefficient could potentially lead to a large condition number of the coefficient matrix. This would in turn increase the number of iterations in the conjugate gradient squared method. Circulant preconditioners [28,29] and multigrid methods [30] have been developed for some model problems which have shown significant improvements, under special conditions. The trade-off in forming and applying a preconditioner also needs to be examined. This can be an avenue for further research for this class of problems.

Acknowledgments

The author would like to express sincere thanks to the referees for their very helpful comments and suggestions, which greatly improved the quality of this work.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Ganti, V.; Meerschaert, M.M.; Georgiou, E.F.; Viparelli, E.; Parker, G. Normal and anomalous diffusion of gravel tracer particles in rivers. J. Geophys. Res. 2010, 115. [Google Scholar] [CrossRef]
  2. Debnath, L.; Bhatta, D. Solutions to few linear fractional inhomogenous partial differential equations in fluid mechanics. Fract. Calc. Appl. Anal. 2004, 7, 22–36. [Google Scholar]
  3. Kirchner, J.W.; Feng, X.; Neal, C. Fractal stream chemistry and its implications for containant transport in catchments. Nature 2000, 403, 524–526. [Google Scholar] [CrossRef] [PubMed]
  4. Gal, N.; Weihs, D. Experimental evidence of strong anomalous diffusion in living cells. Phys. Rev. E 2010, 81. [Google Scholar] [CrossRef]
  5. Raberto, M.; Scalas, E.; Mainardi, F. Waiting-times and returns in high-frequency financial data: An empirical study. Physica 2002, 314, 749–755. [Google Scholar] [CrossRef]
  6. Debnath, L. Linear Partial Differential Equations for Scientists and Engineers, 4rth ed.; Birkhäuser: Boston, MA, USA; Basel, Switzerland; Berlin, Germany, 2007. [Google Scholar]
  7. Sousa, E. Finite difference approximates for a fractional advection diffusion problem. J. Comput. Phys. 2009, 228, 4038–4054. [Google Scholar] [CrossRef]
  8. Deng, W. Finite element method for the space and time fractional Fokker-Planck equation. SIAM J. Numer. Anal. 2008, 47, 204–226. [Google Scholar] [CrossRef]
  9. Roop, J.P. Computational aspects of FEM approximation of fractional advection dispersion equations on bounded domains in R2. J. Comput. Appl. Math. 2006, 193, 243–268. [Google Scholar] [CrossRef]
  10. Lin, Y.; Xu, C. Finite difference/spectral approximations for the time-fractional diffusion equation. J. Comput. Phys. 2007, 225, 1533–1552. [Google Scholar] [CrossRef]
  11. Mustapha, K.; McLean, W. Superconvergence of a discontinuous Galerkin method for fractional diffusion and wave equations. SIAM J. Numer. Anal. 2013, 51, 491–515. [Google Scholar] [CrossRef]
  12. Xu, Q.; Hesthaven, J.S. Discontinuous Galerkin method for fractional convection-diffusion equations. SIAM J. Numer. Anal. 2013, 52, 405–423. [Google Scholar] [CrossRef]
  13. Ervin, V.J.; Heuer, N.; Roop, J.P. Numerical approximation of a time dependent, nonlinear, space-fractional diffusion equation. SIAM J. Numer. Anal. 2007, 45, 572–591. [Google Scholar] [CrossRef]
  14. Meerschaert, M.M.; Scheffler, H.P.; Tadjeran, C. Finite difference methods for two-dimensional fractional dispersion equation. J. Comput. Phys. 2006, 211, 249–261. [Google Scholar] [CrossRef]
  15. Meerschaert, M.M.; Tadjeran, C. Finite difference approximations for fractional advection-dispersion flow equations. J. Comput. Appl. Math. 2004, 172, 65–77. [Google Scholar] [CrossRef]
  16. Meerschaert, M.M.; Tadjeran, C. Finite difference approximations for two-sided space-fractional partial differential equations. Appl. Numer. Math. 2006, 56, 80–90. [Google Scholar] [CrossRef]
  17. Wang, H.; Wang, K.; Sircar, T. A direct O(N log2 N) finite difference method for fractional diffusion equations. J. Comput. Phys. 2010, 229, 8095–8104. [Google Scholar] [CrossRef]
  18. Chaves, A. Fractional diffusion equation to describe Lévy flights. Phys. Lett. A 1998, 239, 13–16. [Google Scholar] [CrossRef]
  19. Barkai, E.; Metzler, R.; Klafter, J. From continuous time random walks to the fractional Fokker-Plank equation. Phy. Rev. E 2000, 61, 132–138. [Google Scholar] [CrossRef]
  20. Chechkin, A.V.; Klafter, J.; Sokolov, I.M. Fractional Fokker-Plank equation for ultra-slow kinetics. Europhys. Lett. 2003, 63, 326–332. [Google Scholar] [CrossRef]
  21. Benson, D.; Wheatcraft, S.W.; Meerschaert, M.M. Application of a fractional advection-dispersion equation. Water Resour. Res. 2000, 36, 1403–1413. [Google Scholar] [CrossRef]
  22. Schumer, R.; Benson, D.A.; Meerschaert, M.M.; Wheatcraft, S.W. Eulerian derivation of the fractional advection-dispersion equation. J. Contam. Hydrol. 2001, 38, 69–88. [Google Scholar] [CrossRef]
  23. Podlubny, I. Fractional Differential Equations; Academic Press: New York, NY, USA, 1999. [Google Scholar]
  24. Li, X.; Xu, C. The existence and uniqueness of the week solution of the space-time fractional diffusion equation and a spectral method approximation. Commun. Comput. Phys. 2010, 8, 1016–1051. [Google Scholar]
  25. Davis, P.J. Circulant Matrices; Wiley-Intersciences: New York, NY, USA, 1979. [Google Scholar]
  26. Gray, R.M. Toeplitz and Circulant Matrices: A Review. Found. Trends Commun. Inf. Theory 2006, 2, 155–239. [Google Scholar] [CrossRef]
  27. Basu, T.S.; Wang, H. A fast second-order finite difference method for space-fractional diffusion equations. Int. J. Numer. Anal. Model. 2012, 9, 658–666. [Google Scholar]
  28. Lei, S.L.; Sun, H.W. A circulant preconditioner for fractional diffusion equations. J. Comput. Phys. 2013, 242, 715–725. [Google Scholar] [CrossRef]
  29. Pan, J.; Ke, R.; Ng, M.; Sun, H.W. Preconditioning Techniques for Diagonal-Times-Toeplitz Matrices in Fractional Diffusion Equations. SIAM J. Sci. Comput. 2014, 36, 2698–2719. [Google Scholar] [CrossRef]
  30. Pang, H.; Sun, H.W. Multigrid method for fractional diffusion equations. J. Comput. Phys. 2012, 231, 693–703. [Google Scholar] [CrossRef]

Share and Cite

MDPI and ACS Style

Basu, T. A Fast O(N log N) Finite Difference Method for the One-Dimensional Space-Fractional Diffusion Equation. Mathematics 2015, 3, 1032-1044. https://doi.org/10.3390/math3041032

AMA Style

Basu T. A Fast O(N log N) Finite Difference Method for the One-Dimensional Space-Fractional Diffusion Equation. Mathematics. 2015; 3(4):1032-1044. https://doi.org/10.3390/math3041032

Chicago/Turabian Style

Basu, Treena. 2015. "A Fast O(N log N) Finite Difference Method for the One-Dimensional Space-Fractional Diffusion Equation" Mathematics 3, no. 4: 1032-1044. https://doi.org/10.3390/math3041032

Article Metrics

Back to TopTop