Next Article in Journal
An Application of Total-Colored Graphs to Describe Mutations in Non-Mendelian Genetics
Next Article in Special Issue
Nonlinear Spatiotemporal Viral Infection Model with CTL Immunity: Mathematical Analysis
Previous Article in Journal
A Class of Sheffer Sequences of Some Complex Polynomials and Their Degenerate Types
Previous Article in Special Issue
Well-Posedness Results for the Continuum Spectrum Pulse Equation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Numerical Simulation of Feller’s Diffusion Equation

1
Univ. Grenoble Alpes, Univ. Savoie Mont Blanc, CNRS, LAMA, 73000 Chambéry, France
2
LAMA, UMR 5127 CNRS, Université Savoie Mont Blanc, Campus Scientifique, F-73376 Le Bourget-du-Lac CEDEX, France
Mathematics 2019, 7(11), 1067; https://doi.org/10.3390/math7111067
Submission received: 12 September 2019 / Revised: 2 November 2019 / Accepted: 4 November 2019 / Published: 6 November 2019
(This article belongs to the Special Issue The Application of Mathematics to Physics and Nonlinear Science)

Abstract

:
This article is devoted to Feller’s diffusion equation, which arises naturally in probability and physics (e.g., wave turbulence theory). If discretized naively, this equation may represent serious numerical difficulties since the diffusion coefficient is practically unbounded and most of its solutions are weakly divergent at the origin. In order to overcome these difficulties, we reformulate this equation using some ideas from the Lagrangian fluid mechanics. This allows us to obtain a numerical scheme with a rather generous stability condition. Finally, the algorithm admits an elegant implementation, and the corresponding Matlab code is provided with this article under an open source license.
PACS:
02.30.Jr (primary); 02.60.Cb; 02.50.Cw (secondary)
MSC:
35K20 (primary); 65M06; 65M75 (secondary)

1. Introduction

The celebrated Feller equation was introduced in two seminal papers published by William Feller (1951/1952) in Annals of Mathematics [1,2]. These publications studied mathematically (and, henceforth, gave the name) the following equation (To be more accurate, W. Feller studied the following equation [1]:
p t = a x u x x ( c + b x ) u x ,
where a > 0 and 0 < x < + .).
p t + F x = 0 , F ( p , x , t ) : = def x · γ p + η p x ,
where the subscripts t , x denote the partial derivatives, i.e., ( · ) t : = def ( · ) t , ( · ) x : = def ( · ) x . Two parameters γ and η > 0 can be time-dependent in some physical applications, even if in this study we assume they are constants, for the sake of simplicity (The numerical method we are going to propose can be straightforwardly generalized for this case when γ = γ ( t ) and η = η ( t ) . Moreover, Feller’s processes with time-varying coefficients were studied recently in [3].). Equation (1) can be seen as the FokkerPlanck (or the forward Kolmogorov) equation, with γ x being the drift and η x being the diffusion coefficients (see [4] for more information on the FokkerPlanck equation). One can notice also that Equation (1) becomes singular at x = 0 and x = + . We remind that practically important solutions to Feller’s equation might be unbounded near x = 0 . In order to attempt solving Equation (1), one has to prescribe an initial condition p ( x , 0 ) = p 0 ( x ) , presumably with a boundary condition at x = 0 . A popular choice is to prescribe the homogeneous boundary condition p ( 0 , t ) 0 . For this choice of the boundary condition, it is not difficult to show that the Feller equation dynamics would preserve solution positivity provided that p 0 ( x ) 0 (see Appendix A for a proof). The solution norm is also preserved (see Appendix B). Moreover, using the Laplace transform techniques, Feller has shown in [1] that the initial condition p 0 ( x ) determines uniquely the solution. In other words, no boundary condition at x = 0 should be prescribed. This conclusion might appear, perhaps, to be counter-intuitive.
The great interest in Feller’s equation can be explained by its connection to Feller’s processes, which can be described by the following stochastic differential Langevin equation (The stochastic differential equations are understood in the sense of Itō.):
d X t = γ X t d t + 2 η X t d W t ,
where W t is the standard Wiener process, i.e., ξ ( t ) : = def d W t d t is zero-mean Gaussian white noise, i.e.,
ξ ( t ) = 0 , ξ ( t ) ξ ( s ) = δ ( t s ) ,
where the brackets · denote an ensemble averaging operator. Then, the Probability Density Function (PDF) p ( x , t ; x 0 ) of the process X ( t ) , i.e.,
P x < X ( t ) < x + d x | X ( 0 ) = x 0 p ( x , t ; x 0 ) d x ,
satisfies Equation (1) with the following initial condition [5]:
p 0 ( x ) = δ ( x x 0 ) , x 0 R + .
The point x = 0 is a singular boundary that the process X ( t ) cannot cross. The Feller process is a continuous representation of branching and birth–death processes, which never attains negative values. This property makes it an ideal model not only in physical, but also in biological and social sciences [3,6,7].
As a general comprehensive reference on generalized Feller’s equations, we can mention the book [8]. Since at least a couple of years ago there has again been a growing interest for studying Equation (1). Some singular solutions to Feller’s equation with constant coefficients were constructed in [6] via spectral decompositions. Feller’s equation and Feller’s processes with time-varying coefficients were studied analytically (always using the Laplace transform) and asymptotically in [3].
The Feller (and FokkerPlanck) equation ’has already made its appearance in optical communications [9]. Recently, the Feller equation was derived in the context of the weakly interacting random waves dominated by four-wave interactions [10]. Wave Turbulence (We could define the Wave Turbulence (WT) as a physical and mathematical study of systems where random and coherent waves coexist and interact [11].) WT is a common name for such processes [11]. In WT, the Feller equation governs the PDF of squared Fourier wave amplitudes, i.e., x | a | 2 . In [10], some steady solutions to this equation with finite flux in the amplitude space were constructed (There is probably a misprint in ([10] p. 366). To obtain mathematically correct solutions, one has to define n k : = def η γ on the line below Equation (14)). See also [12], Chapter 11 for a detailed discussion and interpretations. Recently, the Feller equation has been studied analytically in [13]. The authors applied the Laplace transform to it in space (this computation can be found even earlier in [1], Equation (3.1)) and the resulting non-homogeneous hyperbolic equation was solved using the method of characteristics along the lines presented in ([1], Section §3) (see ([1], Equation (3.9)) for the general analytical solution).
The behaviour of solutions p ( x , t ) for large x describes the appearance probability of extreme waves. In the context of ocean waves, these extreme events are known as rogue (or freak) waves [14]. In the WT literature, any noticeable deviation from the Rayleigh distribution for x 1 is referred to as the anomalous probability distribution of large amplitude waves [10]. For Gaussian wave fields, all statistical properties can be derived from the spectrum. However, the PDFs and other higher order moments are compulsory tools to study such deviations.
The present study focuses on the numerical discretization and simulation of Feller equation. The naive approach to solve this equation numerically encounters notorious difficulties. The first question that arises is what is the (numerical) boundary condition to be imposed at x = 0 ? Moreover, one can notice that Equation (1) is posed on a semi-infinite domain. There are three main strategies to tackle this difficulty:
  • Map R + on a finite interval [ 0 , ] ;
  • Use spectral expansions on R + (e.g., Laguerre or associated Laguerre polynomials);
  • Replace (truncate) R + to [ 0 , L ] , with L 1 .
In most studies, the latter option is retained by imposing some appropriate boundary conditions at the artificial boundary x = L . In our study, we shall propose a method that is able to handle the semi-infinite domain R + without any truncations or simplifications. Finally, the diffusion coefficient in the Feller Equation (1) is unbounded. If the domain is truncated at x = L , then the diffusion coefficient takes the maximal value ν max : = def η L 1 , which depends on the truncation limit L and can become very large in practice. We remind also that explicit schemes for diffusion equations are subject to the so-called CourantFriedrichsLewy (CFL) stability conditions [15]:
Δ t Δ x 2 2 ν max .
Taking into account the fact that ν max can be arbitrarily large, no explicit scheme can be usable with Feller equation in practice. Moreover, the dynamics of the Feller equation spread over the space R + even localized initial conditions. In general, one can show that the support of p ( x , t ) , t > 0 is strictly larger (Using modern analytical techniques, it is possible to show even sharper results on the solution support, see e.g., [16].) than the one of p ( x , 0 ) . It is the so-called retention property. Thus, longer simulation times require larger domains. For all these reasons, it becomes clear that numerical discretization of the Feller equation requires special care.
In this study, we demonstrate how to overcome this assertion as well. The main idea behind our study is to bring together PDEs and Fluid Mechanics. First, we observe that the classical Eulerian description is not suitable for this equation, even if the problem is initially formulated in the Eulerian setting. Consequently, the Feller equation will be recast in special material or the so-called Lagrangian variables (It is known that both Eulerian and Lagrangian descriptions were proposed by the same person, Leonhard Euler), which make the resolution easier and naturally adaptive ([17], Chapter 7).
The present manuscript is organized as follows. The symmetry analysis of Equation (1) is performed in Section 2. Then, the governing equation is reformulated in Lagrangian variables in Section 3. The numerical results are presented in Section 4. Finally, the main conclusions and perspectives are outlined in Section 5.

2. Symmetry Analysis

In general, a linear PDE admits an infinity of conservation laws, with integrating multipliers being solutions to the adjoint PDE [18]. Here, we provide an interesting conservation law, which was found using the GeM Maple package [19]:
E 1 γ x η p t + 𝔊 x = 0 ,
where E 1 ( z ) : = def 1 + e t z t d t is the so-called exponential integral function [20] and the flux 𝔊 is defined as
𝔊 ( x , p ) : = def η e γ x η p x γ E 1 γ x η p + η E 1 γ x η p x .
The symmetry group of point transformations can be computed using GeM package as well. The infinitesimal generators are given below:
ξ 1 = D t , ξ 2 = p D p , ξ 3 = e γ t γ D t + e γ t x D x e γ t p D p , ξ 4 = e γ t γ D t + e γ t x D x γ e γ t η x p D p , ξ 5 = e ( γ + c ) t 1 + c γ , 1 , γ x η e γ x η D p , ξ 6 = e ( γ + c ) t 𝒰 1 + c γ , 1 , γ x η e γ x η D p ,
where c R , ( a , b , z ) and 𝒰 ( a , b , z ) are Kummer special functions [20,21] (see also Appendix C). The corresponding point transformations, which map solutions of (1) into other solutions, can be readily obtained by integrating several ODE systems (we do not provide integration details here):
t , x , p t + ε 1 , x , p ,
t , x , p t , x , e ε 2 p ,
t , x , p 1 γ ln ε 3 γ + e γ t , e γ t ε 3 γ + e γ t x , 1 + ε 3 γ e γ t p ,
t , x , p t 1 γ ln 1 ε 4 γ e γ t , x 1 ε 4 γ e γ t , e ε 4 γ 2 x e γ t η ( 1 ε 4 γ e γ t ) · p ,
t , x , p t , x , p + ε 5 1 + c γ , 1 , γ x η e γ x η + ( γ + c ) t ,
t , x , p t , x , p + ε 6 𝒰 1 + c γ , 1 , γ x η e γ x η + ( γ + c ) t .
The first symmetry is the time translation. The second one is the scaling of the dependent variable (the governing equation is linear). Symmetries 3 and 4 are exponential scalings. Two last symmetries express the fact that we can always add to the solution a particular solution to the homogeneous equation to obtain another solution. For instance, the solutions invariant under time translations ( ξ 1 ) are steady states and their general form is the following:
p ( x ) = e γ x η C 1 E 1 γ x η + C 2 ,
where C 1 , 2 are ‘arbitrary’ constants, which have to be determined from imposed conditions. Of course, they should be chosen so that the resulting steady solution is a valid probability distribution. It is not difficult to check that the imposed flux F on the steady state solution is equal to C 1 η . Some properties of the exponential integral function are reminded in Appendix D.
We provide here also the general solutions invariant under the symmetry ( ξ 3 ) :
p ( x , t ) = C 2 C 1 t + C 1 γ ln x e γ x η
and under symmetry ( ξ 4 ) :
p ( x , t ) = C 1 + C 2 t + C 2 γ ln x e γ t .
These solutions might be used, for example, to validate numerical codes.
Remark 1.
As a byproduct of this analysis, we obtain two new exact solutions to theFellerEquation (1):
p ( x , t ) = 1 + c γ , 1 , γ x η e γ x η + ( γ + c ) t , p ( x , t ) = 𝒰 1 + c γ , 1 , γ x η e γ x η + ( γ + c ) t ,
for some constant c R .

3. Reformulation

By following the lines of ([17], Chapter 7), we are going to rewrite Feller’s Equation (1) with the so-called Lagrangian or material variables. The main advantage of this formulation is due to the fact that we can handle infinite domains without any truncations, transformations, etc. It becomes possible to carry computations in infinite domains. Our domain is semi-infinite ( x R + ), with the left boundary x = 0 being a reflection point.
As the first step, we introduce the distribution function associated to the probability density p ( x , t ) :
P ( x , t ) : = def 0 x p ( ξ , t ) d ξ .
The same can be done for the initial condition as well:
P 0 ( x ) : = def 0 x p 0 ( ξ ) d ξ , p 0 W l o c 1 , 1 ( R + ) .
We notice also two obvious properties of the function P ( x , t ) :
x P ( x , t ) p ( x , t ) , lim x 0 P ( x , t ) = 0 , lim x + P ( x , t ) = 1 .
Due to the positivity preservation property (see Appendix A), the function P ( x , t ) is nondecreasing in variable x . Thus, we can define its pseudo-inverse (This mapping is sometimes called in the literature as the reciprocal mapping [17] or an order preserving string [22].):
X : [ 0 , 1 ] × R + R + ,
which can be computed as
X ( P ¯ , t ) : = def inf { ξ R + | P ( ξ , t ) = P ¯ } .
The operation of taking the pseudo-inverse can be also seen as a generalized hodograph transformation ( x , t ; P ) ( P , t ; x ) proposed presumably for the first time by Sir W.R. Hamilton [23]. Similarly, the initial condition does possess a pseudo-inverse as well:
X 0 ( P ¯ ) : = def inf { ξ R + | P 0 ( ξ ) = P ¯ } ,
such that X ( P ¯ , 0 ) X 0 ( P ¯ ) .
If Feller Equation (1) holds in the sense of distributions, then the following equation holds as well:
P t x γ P + η P x x = 0 .
along with the initial condition
P ( x , 0 ) = P 0 ( x ) .
Equation (5) can be readily obtained by exploiting the obvious property p ( x , t ) = x P ( x , t ) . In Appendix A, we show that zero value of the solution p ( x , t ) is repulsive. Thus, x P ( x , t ) p ( x , t ) > 0 , ( x , t ) R + 2 . Thus, the implicit function theorem [24,25] guarantees the existence of derivatives of the inverse mapping X ( P ¯ , t ) . Let us compute them by differentiating, with respect to P ¯ and t, the following obvious identity:
P ( X ( P ¯ , t ) , t ) P ¯ .
Thus, one can easily show that
X P = 1 x P , X t = t P x P .
Using these expressions of partial derivatives, we derive the following evolution equation for the inverse mapping X ( P , · ) :
e γ t X t + X · η e γ t X P 1 P = 0 .
The last equation can be rewritten also by introducing a new dynamic variable:
Y ( P , t ) : = def e γ t X ( P , t ) , Y ( P , 0 ) X ( P , 0 ) .
It is not difficult to see that Equation (6) becomes
Y t + Y · η e γ t Y P 1 P = 0 .
The last equation will be solved numerically in the following Section.
Remark 2.
We would like to underline the fact that, by our assumptions, Y P as well as X P cannot vanish. Thus, there is no problem in dividing by Y P in Equation (8).

Numerical Discretization

Earlier, we derived Equation (6), which governs the dynamics of the pseudo-inverse mapping X ( P , · ) . The initial condition for Equation (6) is given by the pseudo-inverse (4) of the initial condition P 0 ( x ) . We discretize Equation (6) with an explicit discretization in time since it yields the most straightforward implementation.
The first step in our algorithm consists of choosing the initial sampling interval. We make this choice depending on the provided initial condition. Typically, we want to sample only where it is needed. Thus, it seems reasonable to choose the initial segment [ 0 , 0 ] , with 0 being the leftmost location such that
1 P 0 ( 0 ) < tol .
In simulations presented below, we chose tol 𝒪 ( 10 5 ) . Then, we chose the initial sampling X k 0 k = 0 N [ 0 , 0 ] R + , with X 0 0 = 0 and X N 0 = 0 . It is desirable that the initial sampling be adapted to the initial condition, since errors made initially cannot be corrected later. One of the possible strategies for the initial grid generation can be found in ([26], Section 2.3.1). We define also P k = P 0 ( X k 0 ) . We stress that P k k = 0 N stand for a discrete cumulative mass variable and, thus, they are time independent.
More generally, we introduce the following notation:
X k n : = def X ( P k , t n ) , k = 0 , 1 , , N ,
with t n : = def n Δ t , n N and Δ t > 0 being a chosen time step. (We present our algorithm with a constant time step for the sake of simplicity. However, in realistic simulations presented in Section 4, the time step will be chosen adaptively and automatically to meet the stability and accuracy requirements prescribed by the user.) We introduce also similar notation for the dynamic variable:
Y k n : = def Y ( P k , t n ) , Y k 0 X k 0 , k = 0 , 1 , , N .
Now, we can state the fully discrete scheme for Equation (8):
Y k n + 1 Y k n Δ t + η e γ t n Y k n Δ P k Δ P k + 1 2 Y k + 1 n Y k n Δ P k 1 2 Y k n Y k 1 n ,
with n 0 , k = 0 , 1 , , N 1 and
Δ P k + 1 2 : = def P k + 1 P k , Δ P k 1 2 : = def P k P k 1 .
The quantity Δ P k can be defined as the arithmetic or geometric mean of two neighbouring discretization steps Δ P k ± 1 2 :
Δ P k : = def Δ P k + 1 2 + Δ P k 1 2 2 , Δ P k : = def Δ P k + 1 2 · Δ P k 1 2 .
To be specific, in our code, we implemented the arithmetic mean. The fully discrete scheme can be easily rewritten under the form of a discrete dynamical system:
Y k n + 1 = Y k n η Δ t e γ t n Y k n Δ P k Δ P k + 1 2 Y k + 1 n Y k n Δ P k 1 2 Y k n Y k 1 n , n 0 .
Remark 3.
We would like to say a few words about the implementation of boundary conditions. First of all, no boundary condition is required on the left side, where X 0 n = Y 0 n 0 . On the right boundary, we prefer to impose the infiniteNeumann-type boundary condition (i.e., Y P ), which yields the exact ‘mass’ conservation at the discrete level as well. Namely, at the rightmost cell, we have the following fully discrete scheme:
Y N n + 1 = Y N n + η Δ t e γ t n Y N n Δ P N · Δ P N 1 2 Y N n Y N 1 n , n 0 ,
with Δ P N : = def P N P N 2 2 . As a result, we obtain the exact conservation of ‘mass’ at the discrete level:
k = 0 N Δ P k X k n k = 0 N Δ P k X k 0 , n N .
To summarize, our numerical strategy consists of the following steps:
  • We compute the pseudo-inverse of the initial data p 0 ( x ) to obtain X ( P , 0 ) Y ( P , 0 ) .
  • This initial condition Y ( P , 0 ) is evolved in (discrete) time using an explicit marching scheme in order to obtain numerical approximation to Y ( P , t ) , t > 0 .
  • The variable X ( P , t ) is recovered by inverting (7), i.e.,
    X ( P , t ) = e γ t Y ( P , t ) .
  • Thanks to (3), we can deduce the values of p X ( P , t ) , t [ 0 , 1 ] by applying a favorite finite difference formula (In our code, we employed the simplest forward finite differences, and it led satisfactory results. This point can be easily improved when necessary.).
Working with the pseudo-inverse allows us to overcome the issue of the retention phenomenon, which manifests as the expanding support of p ( x , t ) for positive (and possibly large) times t > 0 , t 1 , since the computational domain was transformed to [ 0 , 1 ] . This method is the Lagrangian counterpart of the moving mesh technique in the Eulerian setting [26,27].
A simple Matlab code, which implements the scheme we described above, is freely available for reader’s convenience at [28].

4. Numerical Results

In this Section, we validate and illustrate the application of the proposed algorithm on several examples. However, first, we begin with a straightforward validation test. The only difference with the proposed algorithm above is that we are using a higher-order adaptive time stepping for our practical simulations. The explicit first-order scheme was used to simplify the presentation. In practice, much more sophisticated time steppers can be used. For instance, we shall employ the explicit embedded DormandPrince RungeKutta pair ( 4 , 5 ) [29] implemented in Matlab under the ode45 routine [30]. Conceptually, this method is similar to the explicit Euler scheme presented above. It conserved all good properties we showed, but it provides additionally the higher accuracy order and totally automatic adaptivity of the time step, which matches very well with adaptive features of the Lagrangian scheme in space. The values of absolute and relative tolerances used in the time step choice are systematically reported below.

4.1. Steady State Preservation

In order to validate the numerical algorithm, we have at our disposal a family of steady state solutions (2). Hence, if we take such a solution as an initial condition, normally the algorithm has to keep it intact under the discretized dynamics. The parameters η , γ of the equation, those of the steady solution, and numerical parameters used in our computation are reported in Table 1. The initial condition at t = 0 along with the final state at t = T are shown in Figure 1. Up to graphical resolution they coincide completely. We can easily check that during the whole simulation the points barely moved, i.e.,
X ( · , T ) X ( · , 0 ) 0.008577
We can check also other quantities. For instance, P ( , t ) is preserved up to the machine precision. If we reconstruct the probability distribution p ( x , t ) , we obtain
p ( · , T ) p ( · , 0 ) 0.003051
The last error comes essentially from the fact that we apply simple first-order finite difference to reconstruct the variable p ( x , t ) from its primitive P ( x , t ) . We can improve this point, but even this simple reconstruction seems to be consistent with the overall scheme accuracy. Thus, this example shows that our implementation of the proposed algorithm is also practically well-balanced [17], since steady state solutions are well preserved.

4.2. Transient Computations

In this Section, we present a couple of extra truly unsteady computations in order to illustrate the capabilities of our method. Namely, we shall simulate the probability distributions emerging from a family of initial conditions (normalized to have the following probability distribution):
p 0 ( x ) = e x σ 1 + e x x 0 σ 2 σ 1 + σ 2 e x 0 σ 2 .
The primitive of the last distribution can be easily computed as well:
P ( x ) = 1 σ 1 e x σ 1 + σ 2 e x x 0 σ 2 σ 1 + σ 2 e x 0 σ 2 .
We design two different experiments in silico to show two completely different behaviour of solutions to Feller Equation (1) depending on the sign of the drift coefficient γ . These will constitute additional tests for the proposed numerical method. In both cases, the initial positions of particles are chosen according to the logarithmic distribution (logspace function in Matlab) on the segment [ 0 , 20 ] . This choice is made to represent more accurately the exponentially decaying initial condition since the errors made in the initial condition cannot be corrected in the dynamics.

4.2.1. Expanding Drift

If the drift coefficient γ < 0 , this term will cause Feller’s Equation (1) to transport information in the rightward direction. This situation is quite uncomfortable from the numerical point of view since the initial condition expands quickly towards the (positive) infinity. We submitted our method to this case. All numerical and physical parameters are provided in Table 2 (the middle column). The initial condition along with the probability distribution at the end of our simulation are shown simultaneously in Figure 2a,b in Cartesian and semilogarithmic coordinates correspondingly. As expected, the support of the initial condition more than triples from t = 0 to t = T = 3.0 . We remind that the diffusion and drift coefficients are proportional to x, and the scheme handles the growth of these terms automatically. The smooth decay of the solution on the semilogarithmic plot (see Figure 2b) shows the absence of any numerical instabilities. The trajectory of grid nodes is shown in Figure 2c. One can see that points follow the expansion of the solution. Nevertheless, they concentrate in the areas where the probability takes significant values.

4.2.2. Confining Drift

In the case of the positive drift coefficient γ > 0 , the Feller dynamics get even more interesting since we have two competing effects:
  • Positive drift moving information towards the origin x = 0 ;
  • Diffusion spreading solution towards the positive infinity.
It might happen that both effects balance each other and result in a steady solution. Such a simulation is presented in this Section. The numerical and physical parameters are given in Table 2 (the right column). The initial condition along with the probability distribution at the end of our simulations are shown simultaneously in Figure 3a,b in Cartesian and semilogarithmic coordinates, respectively. The trajectories of grid nodes are shown in Figure 2c. One can see the rapid initial expansion stage, which is followed by a stabilization process, when we almost achieved the expected steady state. Again, the grid nodes trajectories show excellent adaptive features of the numerical scheme—at the end of the simulation, the relative density of nodes turns out to be preserved. The semilogarithmic plot shown in Figure 3b shows that the numerical solution is free of numerical instabilities. The obtained steady solution will be preserved by discrete dynamics thanks to the well-balanced property demonstrated in Section 4.1.

5. Discussion

Above, we presented some rationale about the discretization, existence, and uniqueness theory for Feller’s equation. The main conclusions and perspectives are outlined below.

5.1. Conclusions

The celebrated Feller equation was studied mathematically in two seminal papers published by William Feller (1951/1952) in Annals of Mathematics [1,2]. In particular, the uniqueness was shown in [2] without any boundary condition required at x = 0 . This result is notable and we use it in our study. The main goal of our work was to present an efficient numerical scheme, which is able to handle the unbounded diffusion inherent to Equation (1). Moreover, the retention phenomenon causes the solution support to expand all the time. Thus, if we wait a sufficiently long time, it will reach the computational domain boundaries (since R + x was truncated to a finite segment to make the in silico simulation possible). To overcome this difficulty, we proposed a simple and explicit Lagrangian scheme using the notion of the pseudo-inverse. In this way, we obtained a stable numerical scheme (under not so stringent stability conditions), which turns out to be naturally adaptive as well, since particles move together with the growing support (the rightmost particle position defines the support) and tend to concentrate where it is really needed. The performance of our scheme was illustrated in several examples. We share also the Matlab code so that anybody can check the claims we made above and use it to solve numerically the Feller equation in their applications: https://github.com/dutykh/Feller/.

5.2. Perspectives

All the numerical schemes and results presented in this paper were in one ‘spatial’ dimension. The Feller equation considered here is 1D as well. However, it seems interesting (regardless of the physical applications) to consider generalized Feller equations in higher space dimensions and to extend the proposed numerical strategy to the multidimensional case as well. Another possible extension direction consists of proposing higher-order schemes to capture numerical solutions with better accuracy with the same number of degrees of freedom. On the more theoretical side, we would like to obtain an alternative well-posedness theory for Feller equation by taking a continuous limit in our numerical scheme.

Funding

This research was not supported by any external funding.

Acknowledgments

The author would like to thank Laurent Gosse (CNR–IAC Rome, Italy) for his invaluable help in understanding his first book. I thank also Francesco Fedele (Georgia Tech, Atlanta, USA) for pointing out to me this interesting problem.

Conflicts of Interest

There is no conflict of interests.

Abbreviations

The following abbreviations are used in this manuscript:
CFLCourant Friedrichs Lew
GeMA Maple module for the computation of symmetries and conservation laws of differential equations
ODEOrdinary Differential Equation
PDFProbability Density Function
PDEPartial Differential Equation
WTWave Turbulence

Appendix A. Positivity Preservation

In this Appendix, we show the positivity preservation property of the solution p ( x , t ) to Equation (1). We suppose that initially the solution is non-negative, i.e.,
p ( x , 0 ) = p 0 ( x ) 0 , x R + .
Let us assume that at some positive time t = t * > 0 and in some point x = x * R + the solution attains zero value, i.e.,
p ( x * , t * ) = 0 .
This situation is schematically depicted in Figure A1.
Figure A1. A schematic representation of the situation where the solution p ( x , t ) attains a zero value at some point x > 0 .
Figure A1. A schematic representation of the situation where the solution p ( x , t ) attains a zero value at some point x > 0 .
Mathematics 07 01067 g0a1
Equation (1) can be rewritten in the nonconservative form:
p t = x γ p x + η p x x + γ p + η p x .
Taking into account the fact that the point x is a local minimum ( p x | x = 0 ), where the solution takes zero value ( p | x = 0 ), the last equation greatly simplifies at this point:
p t | x = x η p x x | x > 0 ,
since in the minimum p x x | x > 0 . Thus, zero values of the solution are repulsive and for (at least small) times t > t , the function t p ( x , t ) will be increasing.

Appendix B. ‘Mass’ conservation

It is straightforward to show that the L 1 norm of the solution to Equations (1) is preserved. Indeed, taking into account that the solution p ( x , t ) > 0 is positive for all times t > 0 provided that the initial condition p 0 ( x ) 0 , x R + , we have | p ( x , t ) | p ( x , t ) . By integrating Equation (1), we have
t R + p ( x , t ) d x + R + F x d x = 0 .
Taking into account that F | x = 0 0 and the solution p ( x , t ) is decaying sufficiently fast, as x + together with its derivative, we obtain
t R + p ( x , t ) d x 0 .
In other words,
p ( · , t ) L 1 = const .
The last constant can be in general taken equal to one after the appropriate rescaling (provided that the initial condition is nontrivial). It is this scaling which is assumed throughout the whole text above. This renormalization is consistent, with the ‘physical sense’ of the variable p being the density of a probability distribution.

Appendix C. Kummer’s Functions

The Kummer functions ( a , b , z ) and 𝒰 ( a , b , z ) are two linearly independent solutions of the following ordinary differential equation:
z d y 2 d z 2 + ( b z ) d y d z a y = 0 .
This equation admits two singular points: z = 0 (regular) and z = + (irregular). There exists a connection between Kummer and hypergeometric functions [20].

Appendix D. Exponential Integral

Notice also an important property of the exponential integral function E 1 ( x ) , which is useful in manipulating its values for negative arguments:
lim δ 0 E 1 ( x ± i δ ) = E 1 ( x ) i π Ei ( x ) i π , x < 0 ,
where Ei ( z ) is the following exponential integral:
Ei ( z ) : = def z e t t d t .
Thus, Ei ( x ) E 1 ( x ) for x < 0 . The last relation can be also extended to the entire complex plain as follows:
Ei ( z ) E 1 ( z ) + 1 2 ln z 1 2 ln 1 z ln ( z ) , z 𝕔 .
More properties of the exponential integral can be found in the specialized literature (see e.g., ([20], Chapter 5)).

References

  1. Feller, W. Two Singular Diffusion Problems. Ann. Math. 1951, 54, 173. [Google Scholar] [CrossRef]
  2. Feller, W. The Parabolic Differential Equations and the Associated Semi-Groups of Transformations. Ann. Math. 1952, 55, 468. [Google Scholar] [CrossRef]
  3. Masoliver, J. Nonstationary Feller process with time-varying coefficients. Phys. Rev. E 2016, 93, 012122. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  4. Risken, H.; Till, F. The Fokker-Planck Equation: Methods of Solution and Applications, 2nd ed.; Springer Series in Synergetics; Springer: Berlin/Heidelberg, Germany, 1996; Volume 18. [Google Scholar]
  5. Gardiner, C. Handbook of Stochastic Methods: for Physics, Chemistry and the Natural Sciences, 3rd ed.; Springer: Berlin/Heidelberg, Germany, 2004. [Google Scholar]
  6. Gan, X.; Waxman, D. Singular solution of the Feller diffusion equation via a spectral decomposition. Phys. Rev. E 2015, 91, 012123. [Google Scholar] [CrossRef] [PubMed]
  7. Murray, J.D. Mathematical Biology: I. An Introduction; Springer: Berlin/Heidelberg, Germany, 2007. [Google Scholar]
  8. Lehnikg, S.H. The Generalized Feller Equation and Related Topics; Longman Scientific & Technical: Harlow, Essex, UK, 1993. [Google Scholar]
  9. McKinstrie, C.; Lakoba, T. Probability-density function for energy perturbations of isolated optical pulses. Opt. Express 2003, 11, 3628–3648. [Google Scholar] [CrossRef] [PubMed]
  10. Choi, Y.; Lvov, Y.V.; Nazarenko, S.; Pokorni, B. Anomalous probability of large amplitudes in wave turbulence. Phys. Lett. A 2005, 339, 361–369. [Google Scholar] [CrossRef] [Green Version]
  11. Zakharov, V.E.; Lvov, V.S.; Falkovich, G. Kolmogorov Spectra of Turbulence I. Wave Turbulence; Series in Nonlinear Dynamics; Springer: Berlin, Germany, 1992. [Google Scholar]
  12. Nazarenko, S. Wave Turbulence; Springer Series Lecture Notes in Phyics; Springer: Berlin, Germany, 2011; Volume 825. [Google Scholar]
  13. Choi, Y.; Jo, S.; Kwon, Y.-S.; Nazarenko, S. Nonstationary distributions of wave intensities in wave turbulence. J. Phys. A Math. Gen. 2017, 50, 355502. [Google Scholar] [CrossRef] [Green Version]
  14. Dysthe, K.B.; Krogstad, H.E.; Muller, P. Oceanic rogue waves. Ann. Rev. Fluid Mech. 2008, 40, 287–310. [Google Scholar] [CrossRef]
  15. Courant, R.; Friedrichs, K.; Lewy, H. Über die partiellen Differenzengleichungen der mathematischen Physik. Math. Ann. 1928, 100, 32–74. [Google Scholar] [CrossRef]
  16. Carrillo, J.A.; Gualdani, M.P.; Toscani, G. Finite speed of propagation in porous media by mass transportation methods. C. R. Mathématique 2004, 338, 15–818. [Google Scholar] [CrossRef]
  17. Gosse, L. Computing Qualitatively Correct Approximations of Balance Laws: Exponential-Fit, Well-Balanced and Asymptotic-Preserving, 1st ed.; Volume 2 of SIMAI Springer Series; Springer: Milan, Italy, 2013. [Google Scholar]
  18. Bluman, G.W.; Cheviakov, A.F.; Anco, S.C. Applications of Symmetry Methods to Partial Differential Equations; Springer: New York, NY, USA, 2010. [Google Scholar]
  19. Cheviakov, A.F. GeM software package for computation of symmetries and conservation laws of differential equations. Comput. Phys. Comm. 2007, 176, 48–61. [Google Scholar] [CrossRef]
  20. Abramowitz, M.; Stegun, I.A. Handbook of Mathematical Functions; Dover Publications: Mineola, NY, USA, 1972. [Google Scholar]
  21. Kummer, E.E. De integralibus quibusdam definitis et seriebus infinitis. J. Für Die Reine Und Angew. Math. 1837, 17, 228–242. [Google Scholar]
  22. Brenier, Y. Order preserving vibrating strings and applications to electrodynamics and magnetohydrodynamics. Methods Appl. Anal. 2004, 11, 512–532. [Google Scholar] [CrossRef]
  23. Hamilton, R.W. The Hodograph, or a New Method of Expressing in Symbolic Language the Newtonian Law of Attraction. Proc. R. Irish Acad. 1847, 3, 344–353. [Google Scholar]
  24. Zorich, V.A. Mathematical Analysis I, 2nd ed.; Springer Verlag: Berlin/Heidelberg, Germany; New York, NY, USA, 2008. [Google Scholar]
  25. Zorich, V.A. Mathematical Analysis II, 2nd ed.; Springer Verlag: Berlin/Heidelberg, Germany; New York, NY, USA, 2008. [Google Scholar]
  26. Khakimzyanov, G.S.; Dutykh, D.; Mitsotakis, D.; Shokina, N.Y. Numerical simulation of conservation laws with moving grid nodes: Application to tsunami wave modelling. Geosciences 2019, 9, 197. [Google Scholar] [CrossRef]
  27. Khakimzyanov, G.; Dutykh, D. On supraconvergence phenomenon for second order centered finite differences on non-uniform grids. J. Comput. Appl. Math. 2017, 326, 1–14. [Google Scholar] [CrossRef] [Green Version]
  28. Dutykh, D. 2019. Available online: https://github.com/dutykh/Feller/ (accessed on 1 November 2019).
  29. Dormand, J.R.; Prince, P.J. A family of embedded Runge-Kutta formulae. J. Comput. Appl. Math. 1980, 6, 19–26. [Google Scholar] [CrossRef] [Green Version]
  30. Shampine, L.F.; Reichelt, M.W. The MATLAB ODE Suite. SIAM J. Sci. Comput. 1997, 18, 1–22. [Google Scholar] [CrossRef] [Green Version]
Figure 1. Comparison of a steady state solution of class (2) at t = 0 and at t = T = 10 . They are indistinguishable up to the graphical resolution, which validates the solver.
Figure 1. Comparison of a steady state solution of class (2) at t = 0 and at t = T = 10 . They are indistinguishable up to the graphical resolution, which validates the solver.
Mathematics 07 01067 g001
Figure 2. Numerical result of the expanding experiment with negative drift γ = 0.1 > 0 : (a) initial and terminal states of the numerical discretized solution; (b) initial and terminal states of the numerical discretized solution in semilogarithmic coordinates; and (c) trajectories of grid nodes. All numerical parameters for this computation are reported in Table 2 (middle column).
Figure 2. Numerical result of the expanding experiment with negative drift γ = 0.1 > 0 : (a) initial and terminal states of the numerical discretized solution; (b) initial and terminal states of the numerical discretized solution in semilogarithmic coordinates; and (c) trajectories of grid nodes. All numerical parameters for this computation are reported in Table 2 (middle column).
Mathematics 07 01067 g002aMathematics 07 01067 g002b
Figure 3. Numerical result of the confining experiment with positive drift γ = 0.5 > 0 : (a) initial and terminal states of the numerical discretized solution; (b) initial and terminal states of the numerical discretized solution in semilogarithmic coordinates; and (c) trajectories of grid nodes. All numerical parameters for this computation are reported in Table 2 (right column).
Figure 3. Numerical result of the confining experiment with positive drift γ = 0.5 > 0 : (a) initial and terminal states of the numerical discretized solution; (b) initial and terminal states of the numerical discretized solution in semilogarithmic coordinates; and (c) trajectories of grid nodes. All numerical parameters for this computation are reported in Table 2 (right column).
Mathematics 07 01067 g003
Table 1. Numerical parameters used in the steady state computations.
Table 1. Numerical parameters used in the steady state computations.
ParameterValue
Drift coefficient, γ 1.0
Diffusion coefficient, η 1.0
Integration constant, C 1 0.0
Integration constant, C 2 η γ 1.0
Final simulation time, T 10.0
Number of discretization points, N500
Absolute tolerance, tol a 10 5
Relative tolerance, tol r 10 5
Table 2. Numerical parameters used in unsteady computations.
Table 2. Numerical parameters used in unsteady computations.
ParameterExpanding ExperimentConfining Experiment
Drift coefficient, γ 0.1 0.5
Diffusion coefficient, η 1.0 1.0
Final simulation time, T 3.0 12.0
Number of discretization points, N100100
Initial condition parameter, σ 1 2.0 2.0
Initial condition parameter, σ 2 1.0 1.0
Initial condition parameter, x 0 3.0 3.0
Absolute tolerance, tol a 10 5 10 5
Relative tolerance, tol r 10 5 10 5

Share and Cite

MDPI and ACS Style

Dutykh, D. Numerical Simulation of Feller’s Diffusion Equation. Mathematics 2019, 7, 1067. https://doi.org/10.3390/math7111067

AMA Style

Dutykh D. Numerical Simulation of Feller’s Diffusion Equation. Mathematics. 2019; 7(11):1067. https://doi.org/10.3390/math7111067

Chicago/Turabian Style

Dutykh, Denys. 2019. "Numerical Simulation of Feller’s Diffusion Equation" Mathematics 7, no. 11: 1067. https://doi.org/10.3390/math7111067

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop