Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2026 Apr 22.
Published in final edited form as: J Comput Appl Math. 2026 Mar 16;485:117587. doi: 10.1016/j.cam.2026.117587

A fourth-order exponential time differencing scheme with real and distinct poles rational approximation for solving non-linear reaction-diffusion systems

W K Attipoe a, A Kleefeld b,c, E O Asante-Asamani a,*
PMCID: PMC13089768  NIHMSID: NIHMS2157664  PMID: 42006450

Abstract

A novel fourth-order, L-stable, exponential time differencing Runge–Kutta type scheme is developed to solve non-linear systems of reaction–diffusion equations, particularly with non-smooth data. The new scheme, ETDRK4RDP, is constructed by approximating the matrix exponentials in the ETDRK4 scheme with a fourth-order, L-acceptable, non-Padé rational function having real and distinct poles. The L-acceptable rational approximation ensures efficient damping of spurious oscillations arising from non-smooth initial and/or boundary conditions. The real and distinct poles of the rational function eliminate the presence of complex arithmetic in the solution of linear systems and thus make the scheme more attractive for parallelization in low-level languages like Fortran and C++. We verify empirically that the new ETDRK4RDP scheme is fourth-order accurate for several reaction diffusion systems with Dirichlet and Neumann boundary conditions and show it to be more efficient than competing exponential time differencing schemes when implemented in parallel, with up to five times speed-up in CPU time.

Keywords: Exponential time differencing, semilinear parabolic problems, non-Padé rational approximation, reaction diffusion systems, fourth-order time stepping

1. Introduction

Time-dependent reaction-diffusion equations (RDEs) are mathematical models that describe the spatio-temporal dynamics of substances as they react and diffuse in a fluid medium. They are used as classical models of biological pattern formation [1, 2], following pioneering work by Alan Turing. With the inclusion of an advection term, RDEs have been used to model the movement of pollutants through surface and ground water [3, 4] as well as monitoring the onset and progression of tumors [5, 6, 7].

Mathematically, RDEs are described by a system of partial differential equations of the form

u(x,t)t=DΔux,t+fux,t,t,inΩT,u(x,t)=gx,t,onΓT, (1)

where Ω describes a bounded open subset of Rd,d{1,2,3} and ΩTΩ×(0,T] is a cylindrical domain with parabolic boundary ΓTΩT¯ΩT. The solution to the system u:ΩT¯Rs, describes the spatio-temporal change in the concentration of s–species, defined to be g(x,t) on the parabolic boundary and interacting through the nonlinear reaction function f:ΩTRs, assumed to be sufficiently smooth. The species also diffuse at rates determined by the coefficient matrix D=diagd1,d2,,ds,di>0i.

A classical approach for solving Eq. (1) uses the method of lines, where the Laplacian is initially discretized with md points to obtain the system of ordinary differential equations

dUdt+AU=FUt,t,URs×md,U(x,0)=U0x, (2)

which can then be solved with an appropriate time-discretization scheme. Here, the matrix ARs×md×s×md represents the spatial discretization of the diffusion operator DΔ,U(t)=u1(t),u2(t),,us(t),,us×md(t) is the time-dependent solution vector and FRs×md a nonlinear map approximating f on the spatial grid.

There are a host of time-stepping methods that solve the resulting stiff ODE systems in Eq. (2). Popular among them are the Backward Euler, IMEX, and Explicit Runge-Kutta methods. These methods have various challenges that can make their computation expensive. They may be fully implicit, which requires an iterative solver at each time step; multistep, which requires a history of solutions which must be computed accurately or are explicit and require relatively small time steps to improve stability. Recently, high order IMEX Runge-Kutta methods as well as methods based on integrating factors have been developed that can preserve physical structures of interest in stiff system [29, 30, 31, 32, 33].

The family of exponential time differencing (ETD) schemes seeks to address some of these challenges. ETD schemes are developed from the exact solution to Eq. (2), given by the integral equation

Ut=eAtt0U0+t0teAtτFUτ,τdτ,tt0,T, (3)

obtained through Duhamel’s principle. The significance of these schemes is in the accurate treatment of the linear (diffusion) term via matrix exponential leading to stable evolution of stiff problems [8]. The challenge is in integrating the nonlinear function F which depends on the unknown solution U. In 2002, Cox and Matthews introduced the class of ETD Runge-Kutta (ETDRK) schemes [9] which approximate the integral in Eq. (3) by first interpolating the non-linear function F with high-order polynomials and then integrating the resulting expression. The resulting scheme still suffered from numerical instability and inefficiencies resulting from the computation of the matrix exponential and high powers of matrix inverses. Kassam and Trefthan [10] attempted to resolve these instabilities via contour integration, however the resulting scheme required the precomputation of a considerable number of matrix inverses.

A subclass of ETDRK schemes, developed to improve on the computational efficiency of ETDRK schemes use rational functions to approximate the matrix exponentials and eliminate terms involving high powers of matrices through algebraic simplification. A number of these schemes use the standard Padé rational approximations ([11] [12] [13] [14]) while others use non-Padé rational functions having real and distinct poles (RDP) [15]. Desirable rational approximations to the exponential ez should have modulus bounded by 1 when Re(z)<0 (A-acceptable) and approach zero asymptotically as |z| (L-acceptable). The class of L-acceptable Padé rational functions tend to have complex poles which require the programming of complex arithmetic on lower-level programming languages such as Fortran or C++. Complex arithmetic requires special treatment on such platforms and is known to increase the computational cost of solving linear systems of equation. The attraction of the class of RDP rational functions is that they are L-acceptable and have real and distinct poles, leading to schemes devoid of complex arithmetic and thus have more efficient linear solves. Whereas schemes involving Padé rational functions are parallelizable, the absence of complex arithmetic in RDP schemes make them more attractive for designing parallel algorithms.

In 2016, Asante-Asamani, Khaliq and Wade [15] developed the first class of ETDRK schemes using an RDP rational function to approximate the matrix exponential. The scheme is however of second order, limiting its application to RDEs discretized with higher order spatial discretization schemes such as spectral methods. Later in 2020, a more computationally efficient form of the scheme was introduced for multidimensional problems [8]. In this work, we develop a fourth-order ETD scheme referred to as ETDRK4RDP, which uses a fourth-order RDP rational function, developed by Voss and Khaliq in 1996 [16], to approximate the matrix exponentials in the ETDRK4 scheme. Empirical convergence analysis supports the fourth-order accuracy of the scheme across various scalar and multidimensional RDEs with Dirichlet and Neumann boundary conditions. Comparison with the competing L-stable, fourth-order ETDRK4P04 scheme, which employs the Padé (0,4) rational function, shows improved efficiency for multidimensional systems of RDEs and a significant speed up in CPU time when implemented in parallel.

In Section 2 we present a fourth-order finite difference scheme used to discretize the Laplacian, in order to obtain the diffusion matrix A. In Section 3 we introduce the RDP rational function and its properties, and present the derivation of the ETDRK4RDP scheme. In Section 4, we show and discuss the numerical experiments to validate the convergence and efficiency of serial and parallel versions of the scheme on various test problems. We share some concluding remarks and future work in Section 5.

2. Spatial Discretization

We begin by discretizing the second-order spatial derivatives in 1D and extend the results using the Kronecker product of matrices to problems in 2D. To do this, consider Eq. (1) and discretize the Laplacian Δ on the domain [a,b]. Define a uniform mesh of size h=bam+1 and divide the domain into m+2 points with m3, with each point on the grid set to xj=a+jh with j=0,1,2,,m+1. To ensure the overall scheme is fourth-order, we approximate the second-order partial derivatives using a standard fourth-order central difference scheme ([17], p. 339). By writing wj=wxj, for a given function w(x),w:[a,b]R, we can approximate its second-order derivatives with respect to x at xj as

wxj=112h2wj2+16wj130wj+16wj+1wj+2+𝒪h4, (4)
j=2,3,,m1.

The approximation used at the nodes j=0,1,m and m+1 depends on the boundary conditions imposed. For homogeneous Dirichlet boundary conditions, since the values at the endpoints x0 and xm+1 are known, we extrapolate the values w1 and wm+2 using a fourth-degree Lagrange interpolating polynomial centered at x0 and xm+1. The formulas for the derivatives at x1 and xm can be summarized as

wx1=112h211w020w1+6w2+4w3w4,wxm=112h2wm3+4wm2+6wm120wm+11wm+1. (5)

For homogeneous Neumann boundary conditions, the value of the function at w1 and wm+1 are unknown hence, we consider Eq. (4) and set w1=w1 and wm=wm+2 from the boundary condition

w1w12h=0w1=w1andwmwm22h=0wm=wm+2.

Thus, the approximation at the boundaries summarizes to

wx1112h216w031w1+16w2w3,wxm112h2wm2+16wm130wm+16wm+1wm+2. (6)

The derivatives at x0 and xm+1 are set to

wx0112h230w0+32w12w2,wxm+1112h22wm1+32wm30wm+1. (7)

A similar discretization has been used in [18] to achieve fourth-order accuracy on irregular domains. Let Ip be a p-dimensional identity matrix and Bp the matrix obtained from the 1D discretization of the Laplacian using Eq. (4). For systems in 2D, we make use of the Kronecker product for the discrete Laplacian presented in [19] to formulate the system matrix. In particular, for discrete Laplacian A in 2D, we have that A=A1+A2, where

A1=BpIpandA2=IpBp, (8)

with Bp and Ip as the one-dimensional finite difference discretization of the second derivative and identity matrix of equivalent dimension p, respectively. For Dirichlet boundary conditions and s–species, p=s×m, whereas p=s×(m+2) for Neumann boundary conditions.

3. Development of the ETDRK4RDP scheme

3.1. Background

Cox–Matthews [9] and Kassam–Trefethen [10] in 2002 developed a class of fourth-order ETD Runge-Kutta (ETDRK4) schemes which approximate the integral in the exact solution Eq. (3) by interpolating the non-linear function F with higher-order polynomials. The scheme is most preferred due to the accurate treatment of the linear (diffusion) term via matrix exponential leading to stable evolution of stiff problems. The approximation is given by the recurrence relation,

Un+1=ekAUn+1k2(A)34I+kA+ekA4I+3kA+k2A2Fun,tn+2k2(A)32IkAekA2I+kA)Fan,tn+k/2+Fbn,tn+h/2+1k2(A)34I+3kAk2A2+ekA4I+kAFcn,tn+k (9)

where,

an=ekA/2UnA1ekA/2IFun,tn
bn=ekA/2UnA1ekA/2IFan,tn+k/2
cn=ekA/2anA1ekA/2I2Fbn,tn+k/2Fun,tn.

The presence of higher powers of matrix inverses and the matrix exponentials, coupled with the reciprocal of the time step (k) in the scheme, makes it computationally expensive and unstable. Some authors [8, 14, 12, 13], have derived fourth-order ETDRK4 schemes using fourth-order Padé (0,4) and Padé (2,2) rational functions to approximate the matrix exponential. While Padé (0,4) rational functions are L-acceptable they have complex poles, making their algebraic computations less efficient. On the other hand Padé (2,2) rational functions are only A-acceptable, and thus are unable to efficiently damp spurious oscillations for problems with mismatched initial and boundary conditions without the application of presmoothing steps [8]. To curb these issues, we require a rational function that is both L-acceptable and has real and distinct poles to approximate the matrix exponential.

To make the scheme easy to develop, we make the following substitutions to Eq. (9),

an=ek2AUn+P~(kA)FUn,tnbn=ek2AUn+P~(kA)Fan,tn+k2cn=ek2Aan+P~(kA)2Fbn,tn+k2FUn,tnUn+1=ekAUn+P1(kA)FUn,tn+2P2(kA)Fan,tn+k2+Fbn,tn+k2+P3(kA)Fcn,tn+k, (10)

with

P1(kA)=1k2(A)34I+kA+ekA4I+3kA+k2A2. (11)
P2(kA)=1k2(A)32IkAekA2I+kA. (12)
P3(kA)=1k2(A)34I+3kAk2A2+ekA4I+kA. (13)
P~kA=A1(ek2AI). (14)

3.2. Real and distinct pole rational function for the matrix exponential

To approximate the matrix exponentials in Eq. (10), we consider the fourth-order RDP rational approximation to ez developed by D. A. Voss and A. Q. M. Khaliq in [16] in 1996. The compact form of the rational function is

R(z)=N(z)D(z)=1+a1z+a2z2+a3z31b1z1b2z1b3z1b4z, (15)

where ai,biR. Note that the motivation for requiring the poles and coefficients to be real is to eliminate the need for complex arithmetic within the final scheme and its associated linear systems with the expectation to speed up run time. The choice of repeated poles, i.e. bi=b leads to a partial fraction decomposition of the form

R(z)=i=14wi1biz (16)

which was suggested by Khaliq and Voss to result in essentially serial schemes [16]. Requiring the poles to be distinct leads to the partial fraction decomposition

Rz=i=14wi1biz, (17)

where the expansion coefficients are estimated using, wi=limz1bk1bkzR(z). Such separation of poles results in independent backward Euler-type linear systems which admit a natural parallelization, as will be shown in the sections that follow.

In order for the rational approximation R(z) in Eq. 15 to be A-acceptable (ie. |R(z)|<1 when Re(z)<0,zC) it suffices to choose the coefficients bi>0 and ai,bi such that E(y)|D(iy)|2|N(iy)|20,yR. This follows from the maximum principle and the fact that bi>0 ensures that R(z) is analytic on the left-half complex plane. L-acceptablity (A-acceptable and |R(z)|0 as z) follows from the fact that the degree of the numerator N(z) is greater than that of the denominator D(z). In addition to these constraints, the requirement that the rational fraction be a fourth order approximation to the exponential led to the coefficients given in Table. 1. Note that the weights wi refer to the partial fraction form of R(z) in Eq. 17. The superiority of the RDP rational functions, over L-acceptable Padé schemes of similar order, lies in its real and distinct poles which avoid complex arithmetic in the solution of linear systems. The graph of R(z) using the parameters in Table 1 is shown in Figure 1.

Table 1:

Parameter values: Partial fraction decomposition of the RDP rational function

k bk wk ak
1 0.4751834017787114 20.10707940496431 1.579627631895178
2 1.0000000000000000 0.5229558818011362 0.303085087930133
3 0.3888888888888889 −15.21083750434353 −0.324250474367700
4 0.7155553412275962 −4.419197782421921

Figure 1:

Figure 1:

Approximation of ez with R(z)

To derive the ETDRK4RDP scheme, we define a corresponding rational approximation of the matrix exponential. Recall from Cauchy’s integral formula for matrix functions that if f(z) is a complex analytic function inside and on a simple closed contour Γ, and A is a square matrix whose spectrum lies entirely inside Γ, then the function of the matrix f(A) defined by:

f(A)=12πiΓf(z)(zIA)1dz, (18)

is well-defined by integrating around the eigenvalues of A [20, 21]. The corresponding matrix notation of the RDP for the matrix exponential is given as

R(kA)=Ia1kA+a2k2A2a3k3A3i=14I+bikA1, (19)

with corresponding partial fraction decomposition of the form

R(kA)=i=14wiI+bikA1. (20)

The RDP approximation to ek2A in matrix notation is given by

R(kA/2)=Ik2a1A+k24a2A2k38a3A3i=14I+bi2kA1, (21)

with partial fraction decomposition of the form

R(kA/2)=i=14wiI+bi2kA1. (22)

3.3. Derivation of the ETDRK4RDP scheme

We begin the derivation by considering each of the approximations an,bn,cn and Un+1 separately and simplify their results when the matrix exponentials are substituted with the corresponding RDP approximation. Consider P~(kA) as defined in Eq. (14) and substitute the RDP approximation R(kA/2) in Eq. (21) with ekA/2. We have

P~kA=A1ek2AI.

That is,

P~(kA)=A1(R(kA/2)I)=A1Ik2a1A+k24a2A2k38a3A3i=14I+bi2kA1I.

Then, we factor out the matrix inverses and simplify algebraically and write the partial fraction decomposition of P~(kA) as

P~kA=i=14qiI+bi2kA1, (23)

where

qi=kμ12μ2bi+4μ3bi28μ4bi3j=1,ji41bjbii=1,2,3,4.

and,

μ1=12a1b1+b2+b3+b4,μ2=14a2b1b2+b3b4+b1+b2b3+b4,
μ3=18a3b1+b2b3b4+b3+b4b1b2,μ4=116b1b2b3b4.

To simplify an, we substitute the partial fraction decomposition of P~(kA) in Eq. (23) into Eq. (10) and the RDP approximation R(kA/2) in Eq. (22) with ekA/2. Thus,

an=e(kA/2)Un+P~(kA)FUn,tn=R(kA/2)Un+P~(kA)FUn,tn=i=14wiI+bi2kA1Un+i=14qiI+bi2kA1FUn,tn.

Next, we factor out the sum of the matrix inverse and simplify the resulting term in partial fraction form as

an=i=14Jia, (24)

where,

Jia=I+bi2kA1wiUnqiFUn,tn.

Similarly for bn, we substitute the partial fraction decomposition of P~(kA) in Eq. (23) into Eq. (10) and the RDP approximation R(kA/2) in Eq. (22) with ekA/2.

bn=ek2AUn+P~(kA)Fan,tn+k2=R(kA/2)Un+P~(kA)Fan,tn+k2=i=14wiI+bi2kA1Un+i=14qiI+bi2kA1Fan,tn+k2.

Again, we factor out the matrix inverses and simplify the resulting term in partial fraction form as,

bn=i=14Jib, (25)

where,

Jib=I+bi2kA1wiUnqiFan,tn+k/2.

Similarly, for cn we substitute P~(kA) in Eq. (23) into Eq. (10) and the RDP approximation R(kA/2) in Eq. (22) with ekA/2. The resulting equation is,

cn=ek2Aan+P~(kA)2Fbn,tn+k/2FUn,tn=R(kA/2)an+P~(kA)2Fbn,tn+k/2FUn,tn=i=14wiI+bi2kA1an+i=14qiI+bi2kA12Fbn,tn+k/2FUn,tn.

We again factor out the matrix inverses and simplify the resulting term in partial fraction form as,

cn=i=14Jic, (26)

where

Jic=I+bi2kA1wianqi2Fbn,tn+k/2FUn,tn.

Finally, to evaluate Un+1, we begin by substituting the RDP approximation R(kA) in Eq. (19) with ekA and simplify the coefficients of each of the terms in the expression independently. To begin, observe that

I+b1kAI+b2kAI+b3kAI+b4kA=I+αkA+βk2A2+γk3A3+ρk4A4,

where

α=b1+b2+b3+b4,β=b1b2+b3b4+b1+b2b3+b4,γ=b1+b2b3b4+b3+b4b1b2,ρ=b1b2b3b4.

Consider P1(kA) and substitute ekA with R(kA) as defined in Eq. (22), thus

P1(kA)=1k2(A)34+kA+R(kA)4+3kA+k2A2=1k2(A)34+kA+I+a1kA+a2k2A2+a3k3A3i=14I+bikA1×4+3kA+k2A2.

Next, factor out the product of the matrix inverse and simplify the resulting algebraic expression,

P1(kA)=w1kI+w2k2A+w3k3A2i=14I+bikA1.

Next, we write this rational function in partial fraction form as

P1kA=i=14riI+bikA1, (27)

where,

ri=w1w2bi+w3bi2kj=1,ji41bjbi,i=1,2,3,4,

with

w1=4γβa13a24a3,w2=4ργa23a3,w3=ρa3.

Similar to how we obtained P1(kA), we simplify P2(kA) as,

P2(kA)=i=14giI+bikA1, (28)

where,

gi=l1l2bi+l3bi2kj=1,ji41bjbi,i=1,2,3,4

with,

l1=2γβ2a3+a2,l2=2ργa3,l3=ρ.

Finally, we simplify P3(kA) in a similar procedure as,

P3(kA)=i=14hiI+bikA1, (29)

where,

hi=m1m2bi+m3bi2m4bi3kj=1,ji41bjbi,i=1,2,3,4

with,

m1=4γ+3βα+a2+4a3,m2=4ρ+3γβ+a3,m3=(3ργ),m4=ρ.

Substituting the simplified coefficients P1(kA), P2(kA) and P3(kA) in Eq. (27), Eq. (28), and Eq. (29) respectively, into the final approximation Un+1 in Eq. (9), we have that

Un+1=i=14wiI+bikA1Un+i=14riI+bikA1FUn,tn+2i=14giI+bikA1Fan,tn+k/2+Fbn,tn+k/2+i=14hiI+bikA1Fcn,tn+k.

We then group the terms with similar quotients and summarize as follows

Un+1=i=14(I+bikA)1wiUn+riFUn,tn+2giFan,tn+k/2+Fbn,tn+k/2+hiFcn,tn+k.

Rewriting the solution Un+1 as a linear system, we solve for Yi for i=1,2,3,4 in the following systems

I+bikAYi=wiUn+riFUn,tn+2giFan,tn+k/2+Fbn,tn+k/2+hiFcn,tn+k,

and obtain Un+1 as

Un+1=i=14Yi.

3.4. Implementation of the ETDRK4RDP algorithm

Putting all the results together, the ETDRK4RDP scheme can be implemented as follows:

  1. Solve: I+bi2kAJia=wiUnqiFUn,tn, for i=1,2,3,4

  2. Set an=i=14Jia.

  3. Solve: I+bi2kAJib=wiUnqiFan,tn+k/2, for i=1,2,3,4.

  4. Set bn=i=14Jib.

  5. Solve: I+bi2kAJic=wianqi2Fbn,tn+k/2FUn,tn, for i=1,2,3,4.

  6. Set cn=i=14Jic.

  7. Solve: I+bikAYi=wiUn+riFUn,tn+2giFan,tn+k/2+Fbn,tn+k/2+hiFcn,tn+k, for i=1,2,3,4

  8. Set Un+1=i=14Yi.

Notice that computing each stage value an,bn,cn as well as the final solution Un+1 requires four independent linear solves. Thus, the algorithm can be implemented in parallel using four processors to solve the linear systems associated with each stage concurrently. We will compare the serial and parallel performance of our ETDRK4RDP scheme with the existing fourth-order ETDRK4P22 and ETDRK4P04 schemes. The algorithms for the respective schemes are provided below.

3.5. Implementation of the ETDRK4P04 algorithm

The algorithm for ETDRK4P04 is as follows. For each time step:

  1. Solve: kAc~iIani=w~iUn+kΩ~iFUn,tn,i=1,2.

  2. Set: an=2i=12Reani

  3. Solve: kAc~iIbni=w~iUn+kΩ~iFan,tn+k2,i=1,2.

  4. Set: bn=2i=12Rebni

  5. Solve: kAc~iIcni=w~ian+kΩ~2Fbn,tn+k2FUn,tn,i=1,2.

  6. Set: cn=2i=12Recni

  7. Solve: kAcˆiun1=wˆiUn+wˆ1ikFUn,tn+2kwˆ21Gan,bn,tn+k2+kwˆ3iFcn,tn+k,i=1,2.

  8. Set: Un+1=2i=12Reuni.

The exact values for c~i,cˆi,w~i,Ω~i,wˆli,l=1,2,3 can be found in [13] Pg. 126–127. Notice that computing each stage value an,bn,cn as well as the final solution Un+1 requires two independent linear solves. Thus, the algorithm can be implemented in parallel using two processors for solve the linear systems.

3.6. Implementation of the ETDRK4P22 algorithm

The algorithm for ETDRK4P22 is as follows. For each time step:

  1. Solve: kAc~2Ian1=2w11Un+24w51kFUn,tn

  2. Set: an=Un+2Rean1

  3. Solve: kAc~2Ibn1=2w11Un+24w51kFan,tn+k2

  4. Set: bn=Un+2Rebn1

  5. Solve: kAc~2Icn1=2w11an+24w51k2Fbn,tn+k2FUn,tn

  6. Set: cn=an+2Recn1

  7. Solve: kAc~1Iun1=w11Un+w21kFUn,tn+4w31kG(an,bn,tn+k2)+w41kFcn,tn+k.

  8. Set: Un+1=Un+2Reun1.

The precise values for c~i,wijC are given in [14], Pg 381. Observe that computing each stage value an,bn,cn as well as the final solution Un+1 requires one linear solve. Thus, the algorithm is inherently serial.

4. Numerical Experiments and Results

The ETDRK scheme on which our new ETDRK4RDP scheme is based is a fourth-order accurate method [9]. Since the matrix exponential in the ETDRK scheme has been replaced with a fourth-order rational approximation in ETDRK4RDP, we expect the new scheme to be fourth-order accurate. Additionally, we have discretized our spatial derivatives using a fourth-order accurate finite difference scheme, thus we expect the fully discrete scheme to be fourth-order accurate in both space and time. We will verify the order of accuracy empirically here, and defer a full theoretical analysis to future work.

To investigate the order of accuracy and efficiency of the proposed scheme, we tested the performance of the scheme on a variety of test problems with various initial and boundary conditions. We compared the accuracy of the new scheme with existing fourth-order ETDRK4P22 and ETDRK4P04 schemes developed in [13] and [8], respectively. The ETDRK4P22 scheme developed by M. Yousuf for semilinear parabolic problems uses the Padé(2,2) rational function, which is not L-acceptable while the ETDRK4P04 uses the Padé(0,4) scheme to approximate the matrix exponentials in the ETDRK4 scheme developed by Cox and Matthews [9]. We evaluate the performance of the schemes on problems in two spatial dimensions as well as for scalar and systems of reaction–diffusion equations with homogeneous Dirichlet and Neumann boundary conditions. The error, E(k) at time step k, is measured with the L– norm and the estimated order of convergence is calculated using the formula

p=log[E(k)/E(k/2)]log2.

For problems with known exact solution, we estimate the error as E(k)=U(k)Uˆ(k), where Uˆ(k) and U(k) denote the approximate grid solution and exact solutions, respectively at the final time T using a temporal step size of k. The spatial derivatives are approximated with a fourth-order finite difference scheme on a mesh with spacing h described in Section 2. By setting kh, we were able to derive the correct order of convergence of the fully discretized system. For problems with unknown exact solution, we use the numerical solution on the next level of refinement as the reference solution for computing errors and the order of convergence, p~. We only evaluated the convergence of the time discretization by fixing the spatial mesh size, h. The errors are computed by using the numerical solution on the next fine mesh as the reference solution. For a grid refinement study with temporal step sizes k,k/2,k/4,k/8 we use the formula

p~=log[E~(k)/E~(k/2)]log2,

where, E~(k)=Uˆ(k)Uˆ(k/2). It’s been shown in [1] that the estimation of the error this way determines the correct order of convergence of the scheme for sufficiently small k.

Numerical experiments involving serial implementation of all algorithms were run in MATLAB R2023b on a Dell Latitude 5440 with 13th Gen Intel(R) Core(TM) i7–1355U 1.70 GHz with 32 GB RAM. Parallel versions of the algorithms were run in Fortran using OpenMP with 2–4 processors on a PC with 32 × 12th Gen Intel Core i9–14900 with 32 GiB of RAM and 1.0TB of memory running Ubuntu 22.04. Linear systems were solved using UMFPACK package (see [22]) by first storing sparse matrices in compressed column storage format (see [23]). A similar implementation has been used in [24] to achieve similar results. We chose to implement parallelization in Fortran because efforts to do this in MATLAB produced less efficient schemes. We believe this is primarily because MATLAB uses multithreading to solve linear sytsems efficiently. Efforts to directly parallelize the solution of independent linear systems limits multithreading to a single processor, leading to reduced performance. The MATLAB and Fortran codes for implementing ETDRK4RDP for the respective test problems have been made publicly available and can be accessed at https://github.com/wisdomattipoe/ETDRK4RDP-Scheme-Serial.git.

4.1. Model problem with a Dirichlet boundary condition

We investigate the performance of the proposed scheme by considering the following two-dimensional reaction–diffusion equation with corresponding homogeneous Dirichlet boundary and initial condition,

ut=Δuu,π2<x,y<π2,t[0,T].u(x,y,0)=cos(x)cos(y). (30)

The exact solution is given by u(x,y,t)=e3tcos(x)cos(y). We discretize each dimension of the spatial domain with m+2 nodes with spatial step size h=πm+1. The spatial discretization is performed as discussed in Section 2. As seen in Figure 2 the numerical solution mimics the exact solution profile. The convergence plot in Figure 3A and grid refinement study in Table 2 confirm the fourth-order accuracy of the fully discrete scheme, since we vary both the time step (k) and spatial mesh size (h) in our analysis. For all time steps examined, the serial implementation of ETDRK4RDP scheme in MATLAB is less accurate compared to ETDRK4P04 and ETDRK4P22 schemes and requires more CPU time (See Figure 3 and Table 2). The better accuracy observed for ETDRK4P04 and the ETDRK4P22 can be attributed to smaller error constants in their corresponding rational approximations, with Padé(2,2) having the smallest error constant.

Figure 2: Solution profiles.

Figure 2:

(A) Exact solution and (B) Numerical solution using ETDRK4RDP for test-problem 4.1

Figure 3:

Figure 3:

Convergence and efficiency plots for Example 4.1. (A) Convergence and (B) Efficiency of the new fourth-order ETDRK4RDP scheme compared with the existing fourth-order ETDRK4P22, and ETDRK4P04 schemes.

Table 2:

Convergence table showing fourth-order convergence of the new ETDRK4RDP scheme compared with the existing ETDRK4P04 and ETDRK4P22 schemes for the model test problem in Example 4.1 with T=1. Table also displays the CPU time for serial implementation of all schemes in MATLAB as well as single core (1-core) and multicore implementation in Fortran.

Method k h Error p CPU Time MATLAB 1-core Multicore
ETDRK4RDP 0.10 0.08 1.50 × 10−5 0.066 0.031 0.010
0.05 0.04 1.07 × 10−6 3.80 0.808 0.381 0.143
0.025 0.02 7.23 × 10−8 3.89 12.056 4.842 2.391
0.0125 0.01 4.66 × 10−9 3.96 178.107 53.832 27.501
ETDRK4P04 0.10 0.08 4.12 × 10−6 0.069 0.032 0.016
0.05 0.04 2.73 × 10−7 3.92 0.724 0.432 0.216
0.025 0.02 1.76 × 10−8 3.96 9.791 5.112 2.556
0.0125 0.01 1.11 × 10−9 3.98 140.289 56.136 30.285
ETDRK4P22 0.10 0.08 9.07 × 10−7 0.025 0.018
0.05 0.04 5.62 × 10−8 4.01 0.301 0.190
0.025 0.02 3.50 × 10−9 4.01 4.659 3.294
0.0125 0.01 2.12 × 10−10 4.03 69.603 33.342

It is noteworthy that the ETDRK4RDP scheme performs twice the number of linear solves as the ETDRK4P04 scheme and four times the number of linear solves as the ETDRK4P22 but only increases the CPU time by 26% compared with ETDRK4P04 and 158% compared with ETDRK4P22, which are both well below expectation and suggests that ETDRK4RDP is more efficiently in solving each linear systems. This is not surprising since our scheme is designed without complex arithmetic, which is known to increase the complexity of solving linear systems. These results suggest a potential to significantly improve the CPU time of ETDRK4RDP through parallelization.

As noted earlier, we implemented parallel algorithms in Fortran because MATLAB’s use of multithreading to solve linear systems was restricted by our efforts to dedicate single processors to solve independent linear systems through direct parallelization. Observe from Table 2 that a serial implementation of all algorithms run significantly faster in Fortran compared to MATLAB with a 3 times speed up for ETDRK4RDP, 2.5 times speed up for ETDRK4P04 and 2 times speed up for ETDRK4P22.

Since ETDRK4P22 is inherently a serial algorithm no parallelization was necessary. We implemented the remaining schemes in parallel within Fortran with four processors for ETDRK4RDP and two processors for ETDRK4P04, as required by their respective parallel algorithms. As can be observed from Table 2, parallelization of ETDRK4RDP results in a two times speed up in its CPU time at the finest time resolution (k=0.0125) (compared with the serial implementation in Fortran). A similar speed up was observed for ETDRK4P04. Comparatively, the parallelized ETDRK4RDP is faster than ETDRK4P04 and ETDRK4P22.

4.2. Model problem with a Neumann boundary

Next, we consider the following scalar reaction-diffusion system with homogeneous Neumann boundary conditions given by

ut=Δuu,π<x,y<π,t0,T.u(x,y,0)=cos(x)cos(y). (31)

The corresponding exact solution is u(x,y,t)=e3tcos(x)cos(y). We discretize each dimension of the spatial domain with m+2 nodes and set a spatial step size h=2πm+1. The spatial discretization is done as described in Section 2. Figure 4A and Figure 4B show the exact solution and numerical solution using ETDRK4RDP. Here we see a display of how close the numerical solution is to the exact one.

Figure 4: Convergence and efficiency plots for Example 4.2.

Figure 4:

(A)Exact and (B) numerical solution. (C) Convergence and (D) efficiency of the new fourth-order ETDRK4RDP scheme compared with the existing fourth-order ETDRK4P22, and ETDRK4P04 schemes.

Again, our empirical convergence analysis in Table 3 and convergence plot in Figure 4C show that the the fully discrete scheme with ETDRK4RDP is fourth order accurate. Surprisingly, our scheme is more accurate than all other schemes for this test problem. Again, our serial implementation in MATLAB has better timing than expected, given the number of linear solves performed per time step compared with the other schemes. The speed up obtained from a serial implementation in Fortran is not as dramatic as was observed in the previous test problem with speed up of 1.5X, 1.2X and 1.1X for ETDRK4RDP, ETDRK4P04 and ETDRK4P22 respectively. As can be observed from the last two columns of Table 3, parallelization in Fortran results in a two times speed in the CPU times for ETDRK4RDP and ETDRK4P04 (compared with their serial implementation on Fortran). Comparatively, the parallelized ETDRK4RDP is twice as fast as ETDRK4P04 and 1.8 times faster than ETDRK4P22 at the finest temporal resolution (k=0.0125).

Table 3:

Convergence table showing fourth-order convergence of the new ETDRK4RDP scheme compared with the existing ETDRK4P04 and ETDRK4P22 schemes for the model test problem in Example 4.2 with T=1. Table also displays the CPU time for serial implementation of all schemes in MATLAB as well as single core (1-core) and multicore implementation in Fortran.

Method k h Error p CPU Time (Serial) 1-core Multi-core
ETDRK4RDP 0.10 0.16 4.37 × 10−6 0.004 0.004 0.003
0.05 0.08 4.05 × 10−7 3.53 0.103 0.079 0.021
0.025 0.04 3.03 × 10−8 3.74 1.416 0.927 0.232
0.0125 0.02 2.07 × 10−9 3.87 23.926 15.874 3.969
ETDRK4P04 0.10 0.16 1.48 × 10−5 0.010 0.030 0.015
0.05 0.08 9.43 × 10−7 3.97 0.085 0.410 0.045
0.025 0.04 5.95 × 10−8 3.99 1.145 1.684 1.043
0.0125 0.02 3.74 × 10−9 3.99 17.779 14.969 8.461
ETDRK4P22 0.10 0.16 1.16 × 10−5 0.006 0.019
0.05 0.08 7.27 × 10−7 3.99 0.033 0.081
0.025 0.04 4.54 × 10−8 4.00 0.558 0.681
0.0125 0.02 2.84 × 10−9 4.00 8.663 7.528

4.3. Nonlinear problem with mismatched initial and boundary data

Next, we consider a nonlinear reaction-diffusion equation with homogeneous Dirichlet conditions set at the boundaries. The model problem is the two-dimensional analogue of the one-dimensional reaction–diffusion equation with Michaelis–Menten enzyme kinetics [25, 26, 27]. The model is the simplest case of enzyme kinetics, applied to an enzyme-catalyzed reaction involving the transformation of one substrate into one product [25]. It is described mathematically as,

ut=d2ux2+2uy2u1+u,0<x,y<1,t>0.u(x,y,0)=1,0x,y1. (32)

where the diffusion coefficient d=1. The problem has no known exact solution. We observe that the initial condition is discontinuous at the boundary where the Dirichlet boundary conditions are applied. Such mismatches of the initial and boundary conditions are known to generate spurious oscillations, which, if not properly damped at the initial stages of the simulation, can significantly affect the accuracy of solutions [8]. Without pre-smoothing, Padé schemes which are not L-acceptable (ie. ETDRK4P22) fail to damp out spurious oscillations (See Figure 5B), and struggle to maintain fourth-order accuracy (Table 4 and Figure 5D). This phenomenon is also established in [8]. The L-acceptability of the proposed scheme permits the smoothing of the boundary (see Figure 5A), ensuring that the scheme converges with fourth-order accuracy (Table 4). In Figure 5C, we see the inconsistency in the convergence results of the ETDRK4P22 without pre-smoothing, whereas the L-acceptable schemes all show better performance.

Figure 5: Convergence and efficiency plots for Example 4.3.

Figure 5:

(A) Numerical-solution using ETDRK4RDP, (B) ETDRK4P22-solution without Pre-smoothing (C) Convergence Plot (D) Efficiency of the new fourth-order ETDRK4RDP scheme compared with the existing fourth-order ETDRK4P22, and ETDRK4P04 schemes.

Table 4:

Convergence table showing fourth-order convergence of the new ETDRK4RDP scheme compared with the existing ETDRK4P04 and ETDRK4P22 schemes for the model test problem in Example 4.3 with T=1. Table also displays the CPU time for serial implementation of all schemes in MATLAB as well as single core (1-core) and multicore implementation in Fortran

Method k h Error p CPU Time (Serial) 1-core Multi-core
ETDRK4RDP 0.10 0.00625 1.2 × 10−9 9.6170 1.862 0.466
0.05 0.00625 3.1 × 10−10 2.21 12.2440 3.530 0.884
0.025 0.00625 3.6 × 10−11 3.31 24.4578 6.848 1.712
0.0125 0.00625 3.2 × 10−12 3.50 56.1013 14.217 3.556
ETDRK4P04 0.10 0.00625 1.3 × 10−9 6.3058 1.443 0.722
0.05 0.00625 1.4 × 10−10 3.35 9.4759 2.514 1.262
0.025 0.00625 1.2 × 10−11 3.48 19.1614 5.033 2.513
0.0125 0.00625 8.9 × 10−13 3.72 37.7672 10.091 5.053
ETDRK4P22 0.10 0.00625 4.06 × 10−1 2.7541 0.687
0.05 0.00625 4.03 × 10−1 0.01 5.9302 1.384
0.025 0.00625 3.63 × 10−1 0.15 9.8251 3.198
0.0125 0.00625 1.18 × 10−1 1.00 20.2239 9.404

As can be observed from Table 4 and Figure 5C, the accuracy of ETDRK4RDP is comparable to ETDRK4P04 but ETDRK4P04 is 1.5 times faster when both schemes are implemented in MATLAB. Serial implementation in Fortran results in a four times speed up in both schemes with a 2.2 times speed up for ETDRK4P22 (Table 4).Parallelization results in a 3.5 times speed up for ETDRK4RDP and a two times speed up for ETDRK4P04, compared to their serial implementations in Fortran. Comparing performance across schemes, we observe that the parallelized ETDRK4RDP, at the finest temporal resolution, is 1.5 times faster than the parallelized ETDRK4P04 and 2.7 times faster than ETDRK4P22.

4.4. The Brusselator model in 2D: A system of reaction-diffusion equations

Finally, we investigate the performance of the proposed scheme ETDRK4RDP in simulating a system of non-linear reaction–diffusion equations, with the Brusselator model [28] as a test case. It is a mathematical model of chemical reaction dynamics developed by Ilya Prigogine and colleagues in the 1960s. The model is a nonlinear two-component reaction system that exhibits complex behavior, including oscillations, spatial patterns, and chaos. The nonlinearity in the model coupled with oscillating dynamics, makes numerical computations challenging. The model is given by

ut=ϵ1Δu+A+u2vB+1u,vt=ϵ2Δv+Buu2v,

with, t(0,2], diffusion coefficients ϵ1=ϵ2=2103, and chemical parameters A=1,B=3.4 in 2D. Homogeneous Neumann boundary conditions are imposed at the boundary of the domain. The initial conditions are

u(x,y,0)=12+y,v(x,y,0)=1+5x,0<x,y<1.

The problem has no exact solution hence we consider investigating the order and accuracy with a fine grid solution. The spatial derivatives are discretized as described in Section 2. The numerical solutions, convergence, and efficiency plots are shown in Figure 6. The numerical solution profiles in U and V shown in Figure 6 A and B, display the oscillating dynamics and spatial patterns of the model at the final time. As shown in Table 5 and Figure 6C, the proposed ETDRK4RDP scheme converges with fourth-order accuracy, as do all other schemes under consideration, and demonstrates comparable error. Surprisingly ETDRK4RDP is about 1.5 times faster than ETDRK4P04 when implemented in serial using MATLAB. It is however slower than ETDRK4P22 (Table 6). Serial implementation in Fortran results in a 4.6 times speed up in CPU time for ETDRK4RDP, 3 times speed up for ETDRK4P04 and 1.6 times speed up for ETDRK4P22. Parallelization further speeds up ETDRK4RDP by a factor of four and ETDRK4P04 by a factor of two, compared with their serial implementations in Fortran (Table 5, last two columns). Comparing performance across schemes, it can be observed from Table 5 that ETDRK4RDP is five times faster than ETDRK4P04 and four times faster than ETDRK4P22. This is remarkable, and shows a clear advantage in computational speed of ETDRK4RDP over existing fourth order ETD Runge-Kutta schemes with Padé rational approximations, when solving systems of reaction-diffusion equation.

Figure 6: Convergence and efficiency plots for Example 4.4.

Figure 6:

(A) U-solution and (B) V-Solution (C) Convergence Plot (D) Efficiency of the new fourth-order ETDRK4RDP scheme compared with the existing fourth-order ETDRK4P22 and ETDRK4P04 schemes.

Table 5:

Convergence table showing fourth-order convergence of the new ETDRK4RDP scheme compared with the existing ETDRK4P04 and ETDRK4P22 schemes for the model test problem in Example 4.4 with T=1. Table also displays the CPU time for serial implementation of all schemes in MATLAB as well as single core (1-core) and multicore implementation in Fortran.

Method k h Error p CPU Time (Serial) 1-core Multi-core
ETDRK4RDP 0.05 0.0125 3.14 × 10−4 3.060 0.832 0.209
0.025 0.0125 1.91 × 10−5 4.04 6.080 1.669 0.417
0.0125 0.0125 1.51 × 10−6 3.76 12.925 3.276 0.819
0.00625 0.0125 1.31 × 10−7 3.83 29.769 6.579 1.646
ETDRK4P04 0.05 0.0125 3.14 × 10−4 5.811 1.992 1.001
0.025 0.0125 2.07 × 10−5 3.92 10.843 3.925 1.962
0.0125 0.0125 1.53 × 10−6 3.75 22.212 7.883 3.942
0.00625 0.0125 1.06 × 10−7 3.86 47.161 15.788 7.893
ETDRK4P22 0.05 0.0125 3.81 × 10−4 1.348 0.859
0.025 0.0125 1.72 × 10−5 4.16 2.562 1.745
0.0125 0.0125 1.54 × 10−6 3.89 5.535 3.459
0.00625 0.0125 1.32 × 10−8 3.95 11.087 6.898

5. Conclusion

In this article, we have developed a fourth-order, L-stable exponential time differencing scheme of Runge-Kutta type (ETDRK4RDP) which uses a real and distinct poles (RDP) rational function to approximate the matrix exponential. A fully discrete scheme, with a fourth-order finite difference scheme in space and ETDRK4RDP in time, is empirically verified to converge with fourth-order accuracy using two linear problems with exact solutions. Additionally, the fourth-order convergence of the time discretization scheme is verified using two non-linear problems.

We compared the performance of the new scheme, in terms of accuracy and CPU time, with the existing fourth-order, A-stable ETDRK4P22 and fourth-order, L-stable ETDRK4P04 scheme. As expected, the serial implementation of ETDRK4RDP demonstrates superior accuracy over the A-stable ETDRK4P22 scheme for non-smooth problems and comparable accuracy with the L-stable ETDRK4P04 for both smooth and non-smooth problems. The serial implementation of the scheme in MATLAB was however less computationally efficient than ETDRK4P22 and ETDRK4P04 for most of the test problems considered. This is primarily because ETDRK4RDP requires 16 linear solves per time step (four independent solves per stage) compared with 8 linear solves for ETDRK4P04 and 4 for ETDRK4P22.

We evaluated the comparative performance of parallel versions of the new scheme over parallel versions of the competing ETDRK4P04 and ETDRK4P22 schemes. Whereas ETDRK4P04 has been previously introduced with a parallel algorithm, our work is the first direct investigation of the performance of this parallel algorithm in a multiprocessor environment. Across all test problems, we observed that parallelization in Fortran significantly improved the CPU time for ETDRK4RDP and ETDRK4P04, with the most significant improvement observed for ETDRK4RDP. Our scheme was consistently faster than all competing schemes across all the test problems considered, with the greatest advantage observed for the Brusselator problem, where the parallelized ETDRK4RDP achieved up to five times speed up over existing schemes. We attribute the computational advantage of ETDRK4RDP to the absence of complex arithmetic within its linear systems, a consequence of the real poles of the RDP rational function. By distributing the work of solving four real linear systems per stage over four processors, we reduce the workload to one linear solve per stage without of complex arithmetic, whereas the other methods perform one linear solve involving complex arithmetic.

We have focused primarily on test problems with either Dirichlet or Neumann boundary conditions. We did not consider periodic boundary conditions in this work as there are more efficient ways to compute the matrix exponential in this case, say via Fourier spectral methods, as was done in the implementation of the ETDRK4 scheme in [9]. However, the L-stability of our scheme and the use of Fourier transformation to solve our linear systems, as was done in [24], could provide both accuracy and speed advantages over ETDRK4 for nonsmooth problems. This will be the subject of future work along side the development of a dimensional splitting version of the ETDRK4RDP scheme to further improve computational efficiency for multidimensional problems.

Acknowledgment

The authors would like to thank the editor and three referees whose suggestions lead to a considerably improved version of the initial manuscript.

Funding

The work is supported by funding to EAA from the NSF/NIGMS Mathematical Biology Program (# R01GM152810). The content of this work is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health.

Footnotes

Publisher's Disclaimer: This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

Declaration of competing interests

I have nothing to declare

References

  • [1].LeVeque RJ, Finite difference methods for ordinary and partial differential equations: steady-state and time-dependent problems, SIAM, 2007. [Google Scholar]
  • [2].Tyson R, Lubkin S, Murray JD, Model and analysis of chemotactic bacterial patterns in a liquid medium, J. Math. Biol 38 (1999) 359–375. [DOI] [PubMed] [Google Scholar]
  • [3].Kamel JK, Chemical vapor deposition/chemical vapor infiltration of pyrocarbon in porous carbon, University of Notre Dame, 2007. [Google Scholar]
  • [4].Zhang K, Zuo Y, Zhao H, Ma X, Gu J, Wang J, Yang Y, Yao C, Yao J, Fourier neural operator for solving subsurface oil/water two-phase flow partial differential equation, Spe Journal 27 (03) (2022) 1815–1830. [Google Scholar]
  • [5].Anderson AR, Chaplain MA, Newman EL, Steele RJ, Thompson AM, Mathematical modelling of tumour invasion and metastasis, Comput. Math. Methods Med 2 (2) (2000) 129–154. [Google Scholar]
  • [6].Chaplain MA, Stuart AM, A model mechanism for the chemotactic response of endothelial cells to tumour angiogenesis factor, J. Math. Med. Biol 10 (3) (1993) 149–168. [Google Scholar]
  • [7].Gatenby RA, Gawlinski ET, A reaction-diffusion model of cancer invasion, J. Cancer Res 56 (24) (1996) 5745–5753. [Google Scholar]
  • [8].Asante-Asamani E, Kleefeld A, Wade BA, A fourth-order exponential time differencing scheme with dimensional splitting for non-linear reaction-diffusion systems, J. Comput. Appl. Math (2025) 116568. [Google Scholar]
  • [9].Cox SM, Matthews PC, Exponential time differencing for stiff systems, Journal of Computational Physics 176 (2) (2002) 430–455. [Google Scholar]
  • [10].Kassam A-K, Trefethen LN, Fourth-order time-stepping for stiff PDEs, SIAM J. Sci. Comput 26 (4) (2005) 1214–1233. [Google Scholar]
  • [11].Kleefeld B, Khaliq A, Wade B, An ETD Crank-Nicolson method for reaction-diffusion systems, Numer. Methods Partial Differ. Equ 28 (4) (2012) 1309–1335. [Google Scholar]
  • [12].Yousuf M, Khaliq A, Kleefeld B, The numerical approximation of non-linear Black-Scholes model for exotic path-dependent American options with transaction cost, Int. J. Comput. Math 89 (9) (2012) 1239–1254. [Google Scholar]
  • [13].Yousuf M, Efficient L-stable method for parabolic problems with application to pricing American options under stochastic volatility, Appl. Math. Comput 213 (1) (2009) 121–136. [Google Scholar]
  • [14].Khaliq A, Martin-Vaquero J, Wade B, Yousuf M, Smoothing schemes for reaction-diffusion systems with nonsmooth data, J. Comput. Appl. Math 223 (1) (2009) 374–386. [Google Scholar]
  • [15].Asante-Asamani E, Khaliq A, Wade BA, A real distinct poles exponential time differencing scheme for reaction-diffusion systems, J. Comput. Appl. Math 299 (2016) 24–34. [Google Scholar]
  • [16].Voss DA, Khaliq AQM, Time-stepping algorithms for semidiscretized linear parabolic PDEs based on rational approximants with distinct real poles, Adv. Comput. Math 6 (1996) 353–363. [Google Scholar]
  • [17].Mathews JH, Fink KD, et al. , Numerical methods using MATLAB, Vol. 4, Pearson Prentice Hall Upper Saddle River, NJ, 2004. [Google Scholar]
  • [18].Gibou F, Fedkiw R, A fourth-order accurate discretization for the Laplace and heat equations on arbitrary domains, with applications to the Stefan problem, J. Comput. Phys 202 (2) (2005) 577–601. [Google Scholar]
  • [19].Hundsdorfer W, Verwer JG, Numerical solution of time-dependent advection-diffusion-reaction equations, Vol. 33, Springer Science & Business Media, 2013. [Google Scholar]
  • [20].Gauthier PM, Lectures on several complex variables, Springer, 2014. [Google Scholar]
  • [21].Huang X, Liu Z, Wu C, Derivative and higher-order cauchy integral formula of matrix functions, Open Math. 19 (1) (2021) 1771–1778. [Google Scholar]
  • [22].Davis TA, A Suite of Sparse matrix packages (2025). URL https://github.com/DrTimothyAldenDavis/SuiteSparse/releases
  • [23].Hanyk L, UMFPACK Fortran Interface (2014). URL https://geo.mff.cuni.cz/~1h/Fortran/UMFPACK/
  • [24].Asante-Asamani E, Kleefeld A, Wade BA, A second-order exponential time differencing scheme for non-linear reaction-diffusion systems with dimensional splitting, J. Comput. Phys 415 (2020) 109490. [Google Scholar]
  • [25].Müller J, Kuttler C, Methods and models in mathematical biology, Lect. Notes Math (2015). [Google Scholar]
  • [26].Bhatt HP, Khaliq AQM, The locally extrapolated exponential time differencing lod scheme for multidimensional reaction–diffusion systems, J. Comput. Appl. Math 285 (2015) 256–278. [Google Scholar]
  • [27].Cherruault Y, Choubane M, Valleton J, Vincent J, Stability and asymptotic behavior of a numerical solution corresponding to a diffusion-reaction equation solved by a finite difference scheme (Crank-Nicolson), Comput. Math. Appl 20 (11) (1990) 37–46. [Google Scholar]
  • [28].Zegeling PA, Kok H, Adaptive moving mesh computations for reaction-diffusion systems, J. Comput. Appl. Math 168 (1–2) (2004) 519–528. [Google Scholar]
  • [29].Zhang H, Liu L, Qian X, S Song, Large time-stepping, delay-free, and invariant-set-preserving integrators for the viscous Cahn–Hilliard-Oono equation. J. of Comput. Phy 499 (2024) 112708. [Google Scholar]
  • [30].Zhang H, Wang H, Teng X, A second-order, global-in-time energy stable implicit-explicit Runge–Kutta scheme for the phase field crystal equation. SIAM J. Numer. Anal, 62(6), 2667–2697. [Google Scholar]
  • [31].Teng X, Zhang H, A Third-Order Energy Stable Exponential-Free Runge–Kutta Framework for the Nonlocal Cahn–Hilliard Equation. J. Sci. Comput (2025) 103(3), 74. [Google Scholar]
  • [32].Wang H, Sun J, Zhang H, Qian X, A novel up to fourth-order equilibria-preserving and energy-stable exponential Runge-Kutta framework for gradient flows. CSIAM Trans. Appl. Math (2025) 6(1), 106–147. [Google Scholar]
  • [33].Zhang H, Qian X, Song S, Third-order accurate, large time-stepping and maximum-principle-preserving schemes for the Allen-Cahn equation. Numer. Algorithms, (2024) 95(3), 1213–1250. [Google Scholar]

RESOURCES