
In this paper, utilizing Legendre polynomials as the basis functions in both space and time, we present a modified domain decomposition spectral method for 2-dimensional parabolic partial differential equations. For solving the obtained linear/nonlinear algebraic equations, a dimension expanding preconditioner is applied employing the obtained saddle construction of the coefficient matrix. Numerical examples are given to show the performance of the presented method and the efficiency of the preconditioner.
Citation: Wei-Hua Luo, Liang Yin, Jun Guo. A modified domain decomposition spectral collocation method for parabolic partial differential equations[J]. Networks and Heterogeneous Media, 2024, 19(3): 923-939. doi: 10.3934/nhm.2024041
[1] | Wen Dong, Dongling Wang . Mittag-Leffler stability of numerical solutions to linear homogeneous time fractional parabolic equations. Networks and Heterogeneous Media, 2023, 18(3): 946-956. doi: 10.3934/nhm.2023041 |
[2] | Xu Yang, François Golse, Zhongyi Huang, Shi Jin . Numerical study of a domain decomposition method for a two-scale linear transport equation. Networks and Heterogeneous Media, 2006, 1(1): 143-166. doi: 10.3934/nhm.2006.1.143 |
[3] | Martin Heida, Benedikt Jahnel, Anh Duc Vu . Regularized homogenization on irregularly perforated domains. Networks and Heterogeneous Media, 2025, 20(1): 165-212. doi: 10.3934/nhm.2025010 |
[4] | L.L. Sun, M.L. Chang . Galerkin spectral method for a multi-term time-fractional diffusion equation and an application to inverse source problem. Networks and Heterogeneous Media, 2023, 18(1): 212-243. doi: 10.3934/nhm.2023008 |
[5] | Jin Li, Jinzheng Qu, Xibo Duan, Xiaoning Su . An image encryption algorithm based on heat flow cryptosystems. Networks and Heterogeneous Media, 2023, 18(3): 1260-1287. doi: 10.3934/nhm.2023055 |
[6] | Mengjun Yu, Kun Li . A data-driven reduced-order modeling approach for parameterized time-domain Maxwell's equations. Networks and Heterogeneous Media, 2024, 19(3): 1309-1335. doi: 10.3934/nhm.2024056 |
[7] | Jérôme Coville, Nicolas Dirr, Stephan Luckhaus . Non-existence of positive stationary solutions for a class of semi-linear PDEs with random coefficients. Networks and Heterogeneous Media, 2010, 5(4): 745-763. doi: 10.3934/nhm.2010.5.745 |
[8] | Zhong-Jie Han, Gen-Qi Xu . Spectrum and dynamical behavior of a kind of planar network of non-uniform strings with non-collocated feedbacks. Networks and Heterogeneous Media, 2010, 5(2): 315-334. doi: 10.3934/nhm.2010.5.315 |
[9] | Rong Huang, Zhifeng Weng . A numerical method based on barycentric interpolation collocation for nonlinear convection-diffusion optimal control problems. Networks and Heterogeneous Media, 2023, 18(2): 562-580. doi: 10.3934/nhm.2023024 |
[10] | Piermarco Cannarsa, Genni Fragnelli, Dario Rocchetti . Null controllability of degenerate parabolic operators with drift. Networks and Heterogeneous Media, 2007, 2(4): 695-715. doi: 10.3934/nhm.2007.2.695 |
In this paper, utilizing Legendre polynomials as the basis functions in both space and time, we present a modified domain decomposition spectral method for 2-dimensional parabolic partial differential equations. For solving the obtained linear/nonlinear algebraic equations, a dimension expanding preconditioner is applied employing the obtained saddle construction of the coefficient matrix. Numerical examples are given to show the performance of the presented method and the efficiency of the preconditioner.
The parabolic partial differential equation (PDE)
∂u∂t=k∗1∂2u∂x2+k∗2∂2u∂y2+k∗3∂2u∂x∂y+k∗4∂u∂x+k∗5∂u∂y+f∗(u,x,y,t),(x,y)∈Ω,t∈(0,T], | (1.1) |
equipped with the initial condition
u(x,y,0)=φ∗(x,y),(x,y)∈Ω | (1.2) |
and boundary condition
u(x,y,t)=ψ∗(x,y,t),(x,y)∈∂Ω,t∈(0,T] | (1.3) |
is a class of important mathematical models, where Ω=(¯a,¯b)×(˜a,˜b), and k∗i,i=1,2,⋯,5 are all smooth functions of the variables x,y,t. This class of models plays important roles in many engineering problems. For example, when k1=k2=1,k3=k4=k5=0, and f∗(u,x,y,t)=g(x,y,t), (1.1) becomes the heat conduction equation [1]. Taking k1=k2=1,k3=k4=k5=0, and f(u,x,y,t)=au(1−u2)+g(x,y,t), (1.1) represents the Allen-Cahn equation [2]. When describing the Brownian motion of particles, denote by y the velocity of the particles, and let k1 be a nonzero constant, k2=k3=0,k4=−y,k5=βy−γx, and f(u,x,y,t)=βu. Then, (1.1) corresponds to the Fokker-Planck equation [3]. Moreover, some reaction-diffusion models and convection-diffusion models can also be seen as special cases of (1.1) [4,5].
Usually, it is difficult to exactly solve Eqs (1.1)–(1.3), and hence finding its numerical solutions is a more popular choice for many researchers. In recent decades, finite difference methods (FDM) and finite element methods (FEM) have been increasingly developed for solving various PDEs, including the parabolic case Eqs (1.1)–(1.3) [6,7,8,9,10,11,12,13,14]. The most remarkable feature of these two methods is that they can lead to sparse linear equations when some iterative methods (such as Netwon iterative method) are employed to deal with the nonlinear term. However, we all know that these methods are usually inferior to spectral methods in terms of approximating precision.
Spectral methods have attracted extensive attentions since they were first proposed. As an excellent competitor for numerically solving PDEs, they possess great approximation accuracy and are very easy to implement [15,16,17,18]. Especially, Lui et al. [19,20,21] have recently presented spectral discretization in both time and space, and this can greatly accelerate the solving of PDEs containing both space and time factors. However, the drawback of common spectral methods is that the resultant coefficient matrix is dense, which leads to difficulties when solving the corresponding linear equations. This fact is very obvious when spectral methods are used for high-dimensional PDEs or PDEs with large intervals in time and/or space. For remedying the above deficiency, some researchers have considered the combination of domain decomposition with spectral method, and presented some domain decomposition spectral methods [3,22,23].
In this paper, we study a novel domain decomposition spectral collocation method employing Legendre polynomials as basis functions. Comparing with the existing techniques, our proposed method enjoys an additional advantage, that is, the resultant linear system has a saddle structure, for which a specially designed preconditioning technique is suitable. In the Sections 3 and 4, we will see that implementing this preconditioner only requires solving the sub-problem Ax=y, with A a block diagonal matrix. This means that a lot of CPU time can be saved.
The rest of this paper is as follows. In Section 2, the modified domain decomposition spectral method (shortly, MDDSM) is introduced, and the difference between MDDSM and the conventional domain decomposition spectral method (shortly, CDDSM) is discussed. Later, as an important component, in Section 3, according to [24,25], we apply a dimension expanding preconditioning technique to iteratively solve the linear system obtained in Section 2. In Section 4, numerical examples are given to show the efficiency of the proposed MDDSM and the preconditioner. Some conclusions are finally drawn in the last section.
We first divide the whole interval [0,T]×Ω into some big uniform sub-domains. For the fixed positive integers ¯p,˜p,ˆp, let ¯q=(¯b−¯a)/¯p,˜q=(˜b−˜a)/˜p,ˆq=T/ˆp, and we give a uniform partition [T0,T1],[T1,T2],⋯,[Tˆp−1,Tˆp] in time and Ωi,j=[¯ai−1,¯ai]×[˜aj−1,˜aj],i=1,2,⋯,¯p,j=1,2,⋯,˜p in space, where T0=0,Tˆp=T, Tk−Tk−1=ˆq,k=1,2,⋯,ˆp, ¯a0=¯a,¯a¯p=¯b, ˜a0=˜a,˜a˜p=˜b, and ¯ai−¯ai−1=¯q,i=1,2,⋯,¯p, ˜aj−˜aj−1=˜q,j=1,2,⋯,˜p.
Next, at the kth level [Tk−1,Tk],k=1,2,⋯,ˆp, and in the big sub-domains Ωki,j=Ωi,j×[Tk−1,Tk], we do the transformation x=¯q2x∗+(i−12)¯q+¯a,y=˜q2y∗+(j−12)˜q+˜a,t=ˆq2t∗+(k−12)ˆq, and denote
v(x∗,y∗,t∗)=u(¯q2x∗+(i−12)¯q+¯a,˜q2y∗+(j−12)˜q+˜a,ˆq2t∗+(k−12)ˆq), |
ks(x∗,y∗,t∗)=2ˆq¯q2k∗s(¯q2x∗+(i−12)¯q+¯a,˜q2y∗+(j−12)˜q+˜a,ˆq2t∗+(k−12)ˆq),s=1,2,3,4,5, |
f(v(x∗,y∗,t∗),x∗,y∗,t∗)=ˆq2f∗(v(x∗,y∗,t∗),¯q2x∗+(i−12)¯q+¯a,˜q2y∗+(j−12)˜q+˜a,ˆq2t∗+(k−12)ˆq). |
Then, by some computations, Eq (1.1) is transformed into an equivalent system of the form
∂v∂t∗=k1∂2v∂x∗2+k2∂2v∂y∗2+k3∂2v∂x∗∂y∗+k4∂v∂x∗+k5∂v∂y∗+f(v,x∗,y∗,t∗),(x∗,y∗,t∗)∈(−1,1)×(−1,1)×(−1,1], | (2.1) |
where ki=ki(x∗,y∗,t∗),i=1,⋯,5. For ease of description, we uniformly replace the variables x∗,y∗,t∗ with x,y,t, and rewrite the equivalent equation of (2.1) as
∂v∂t=k1∂2v∂x2+k2∂2v∂y2+k3∂2v∂x∂y+k4∂v∂x+k5∂v∂y+f(v,x,y,t),(x,y,t)∈(−1,1)×(−1,1)×(−1,1], | (2.2) |
with ki=ki(x,y,t),i=1,⋯,5.
Similarly, the initial value (1.2) and boundary condition (1.3) can be equivalently transformed into
v(x,y,−1)=φ(x,y),(x,y)∈[−1,1]×[−1,1] | (2.3) |
and
v(x,y,t)=ψ(x,y,t),(x,y)∈∂([−1,1]×[−1,1]),t∈(−1,1], | (2.4) |
where φ(x,y),ψ(x,y,t) are known functions.
Now we start to compute the approximating solution of v(x,y,t) in Eqs (2.2)–(2.4) at the first level [T0,T1]. In each big sub-domain Ω1i,j,i=1,2,⋯,¯p,j=1,2,⋯,˜p, we choose the Legendre-Gauss-Lobatto type points xi0,⋯,xi¯N,yj0,⋯,yj˜N,t10,⋯,t1ˆN as the nonuniform grid nodes in x,y,t directions, respectively; this can be seen in Page 20–21 in [15]. It is easy to understand that xi¯N=xi+10,i=1,2,⋯,¯p−1,yj˜N=yj+10,j=1,2,⋯,˜p−1.
For conveniently implementing the coming domain decomposition spectral collocation method, we denote by Pall the set of all grid nodes (xil,yjm,t1n),i=1,⋯,¯p,j=1,⋯,˜p,l=0,⋯,¯N,m=0,⋯,˜N,n=0,⋯,ˆN, and we group this set into the following four subsets.
(g1) Pinner: interior points: (xil,yjm,t1n),i=1,⋯,¯p,j=1,⋯,˜p,l=1,⋯,¯N−1,m=1,⋯,˜N−1,n=1,⋯,ˆN.
(g2) Pinit: initial values points: (xil,yjm,t10),i=1,⋯,¯p,j=1,⋯,˜p,l=0,⋯,¯N,m=0,⋯,˜N.
(g3) actual boundary points Pact (namely grid points that lie on ∂Ω):
(x10,yjm,t1n),j=1,⋯,˜p,m=0,⋯,˜N,n=1,⋯,ˆN;(x¯p¯N,yjm,t1n),j=1,⋯,˜p,m=0,⋯,˜N,n=1,⋯,ˆN;(xil,y10,t1n),i=1,⋯,¯p,l=0,⋯,¯N,n=1,⋯,ˆN;(xil,y˜p˜N,t1n),i=1,⋯,¯p,l=0,⋯,¯N,n=1,⋯,ˆN. |
(g4) ghost boundary points Pgho: the interior grid points which lie on ∂(Ω1i,j), namely Pgho=Pall−(Pinner∪Pinit∪Pact). Specifically, when l=0 or l=¯N, (xil,yjm,t1n), they are called a x-type ghost boundary points (shortly, x-type gbp), alternatively, when m=0 or m=˜N, (xil,yjm,t1n), they are called a y-type ghost boundary points (shortly, y-type gbp). (Figure 1 shows an illustrative example of the ghost boundary points Pgho, where the green line represents an x-type gbp, and the red shows a y-type gbp.)
Moreover, in order to ensure the number of unknowns is the same as that of equations, we should employ the fact that the left-half derivative is equivalent to the right-half derivative, and consequently, we impose the following ghost boundary conditions on each ghost boundary points:
(a) the x-type ghost boundary condition (for x-type gbp):
v(xi¯N,yjm,t1n)=vgxi,(j−1)˜N+m,n,v(xi+10,yjm,t1n)=vgxi,(j−1)˜N+m,n,dvdx−|(xi¯N,yjm,t1n)=dvdx+|(xi+10,yjm,t1n), i=1,⋯,¯p−1, j=1,⋯,˜p−1,m=1,⋯,˜N;or j=˜p,m=1,⋯,˜N−1,n=1,⋯,ˆN. | (2.5) |
(b) the y-type ghost boundary condition (for y-type gbp):
v(xil,yj˜N,t1n)=vgy(i−1)(¯N−1)+l,j,n,v(xil,yj+10,t1n)=vgy(i−1)(¯N−1)+l,j,n,dvdy−|(xil,yj˜N,t1n)=dvdy+|(xil,yj+10,t1n), i=1,⋯,¯p,l=1,⋯,¯N−1,j=1,⋯,˜p−1,n=1,⋯,ˆN, | (2.6) |
where vgxi,(j−1)˜N+m,n,vgy(i−1)(¯N−1)+l,j,n are all undetermined unknowns.
Let
vh(x,y,t)=¯N,˜N,ˆN∑l=0,m=0,n=0Ll(x)Lm(y)Ln(t)vi,j,1l,m,n | (2.7) |
be the approximation of the exact solution v(x,y,t) of (2.2)-(2.4), where Ll(x),Lm(y) and Ln(t) are all Legendre polynomials with degrees of l,m and n, respectively, and vi,j,1l,m,n are the unknowns to be determined. Then, in each sub space Ω1i,j, taking x=xil, y=yjm, t=t1n as the collocation points, and substituting (2.7) into Eqs (2.2)–(2.6), we can obtain the corresponding algebraic equations. Concretely, MDDSM can be listed as the following algorithm.
Algorithm 1. MDDSM algorithm. |
∙step 1. For all the interior points P∈Pinner, substitute (2.7) into the Eq (2.2); |
∙step 2. For all the initial points P∈Pinit, substitute (2.7) into the Eq (2.3); |
∙step 3. For all the actual boundary points P∈Pact, substitute (2.7) into the Eqs (2.4); |
∙step 4. For all the ghost boundary points P∈Pgho, substitute (2.7) into the ghost boundary conditions (2.5) (for x-type gbp) and (2.6) (for y-type gbp). |
For describing the resultant linear equations, we define all the unknowns as vh=(vah,vgh), with
vah=(va1,1,va1,2,⋯,va1,˜p,va2,1,va2,2,⋯,va2,˜p,⋯,va¯p,1,va¯p,2,⋯,va¯p,˜p),vgh=(vg1,1,vg1,2,⋯,vg1,˜p,vg2,1,vg2,2,⋯,vg2,˜p,⋯,vg¯p,1,vg¯p,2,⋯,vg¯p,˜p−1), | (2.8) |
where vai,j is the solution vector involved in Ω1i,j, and vgi,j is the ghost value vector included in Eqs (2.5) and (2.6) on ∂Ω1i,j. That is,
vai,j=(vi,j,10,0,0,vi,j,10,0,1,…,vi,j,10,0,ˆN,vi,j,10,1,0,vi,j,10,1,1,…,vi,j,10,1,ˆN…,…,vi,j,10,˜N,0,vi,j,10,˜N,1,…,vi,j,10,˜N,ˆN, |
vi,j,11,0,0,vi,j,11,0,1,…,vi,j,11,0,ˆN,vi,j,11,1,0,vi,j,11,1,1,…,vi,j,11,1,ˆN…,…,vi,j,11,˜N,0,vi,j,11,˜N,1,…,vi,j,11,˜N,ˆN, |
…,…,…,…,…,…, |
vi,j,1¯N,0,0,vi,j,1¯N,0,1,…,vi,j,1¯N,0,ˆN,vi,j,1¯N,1,0,vi,j,1¯N,1,1,…,vi,j,1¯N,1,ˆN…,…,vi,j,1¯N,˜N,0,vi,j,1¯N,˜N,1,…,vi,j,1¯N,˜N,ˆN), |
i=1,⋯,¯p,j=1,⋯,˜p, |
and
vgi,j=(vgxi,(j−1)˜N+1,1,vgxi,(j−1)˜N+1,2,…,vgxi,(j−1)˜N+1,ˆN,vgxi,(j−1)˜N+2,1,vgxi,(j−1)˜N+2,2,…,vgxi,(j−1)˜N+2,ˆN, |
…,…,vgxi,j˜N,1,vgxi,j˜N,2,…,vgxi,j˜N,ˆN,vgy(i−1)(¯N−1)+1,j,1,vgy(i−1)(¯N−1)+1,j,2, |
…,vgy(i−1)(¯N−1)+1,j,ˆN,vgy(i−1)(¯N−1)+2,j,1,vgy(i−1)(¯N−1)+2,j,2,…,vgy(i−1)(¯N−1)+2,j,ˆN, |
…,…,vgyi(¯N−1),j,1,vgyi(¯N−1),j,2,…,vgyi(¯N−1),j,ˆN),wheni=1,⋯,¯p−1,j=1,⋯,˜p−1, |
vgi,j=(vgxi,(j−1)˜N+1,1,vgxi,(j−1)˜N+1,2,…,vgxi,(j−1)˜N+1,ˆN,vgxi,(j−1)˜N+2,1,vgxi,(j−1)˜N+2,2,…,vgxi,(j−1)˜N+2,ˆN, |
…,…,vgxi,j˜N−1,1,vgxi,j˜N−1,2,…,vgxi,j˜N−1,ˆN),wheni=1,⋯,¯p−1,j=˜p, |
vgi,j=(vgy(i−1)(¯N−1)+1,j,1,vgy(i−1)(¯N−1)+1,j,2,…,vgy(i−1)(¯N−1)+1,j,ˆN,vgy(i−1)(¯N−1)+2,j,1,vgy(i−1)(¯N−1)+2,j,2, |
…,vgy(i−1)(¯N−1)+2,j,ˆN,…,…,vgyi(¯N−1),j,1,vgyi(¯N−1),j,2,…,vgyi(¯N−1),j,ˆN),wheni=¯p,j=1,⋯,˜p−1. |
Then, by deleting the error term caused by the approximating solution function vh(x,y,t) in (2.7), Algorithm 1 will result in M=¯p˜p(¯N+1)(˜N+1)(ˆN+1)+(¯p−1)(˜p−1)(˜NˆN+(¯N−1)ˆN)+(¯p−1)(˜N−1)ˆN+(˜p−1)(¯N−1) algebraic equations
gi(vh)=0,i=1,2,⋯,M. | (2.9) |
When f(v,x,y,t) in Eq (2.2) is a linear term of v, it is easy to know that Eq (2.9) becomes the following linear system
HvTh=b, | (2.10) |
where the coefficient matrix H has a saddle structure of the form
H=(ABC0). |
Concretely, A=diag(A1,1,A2,2,⋯,AN1,N1),N1=¯p˜p, size(Ai)=(¯N+1)(˜N+1)(ˆN+1)×(¯N+1)(˜N+1)(ˆN+1),i=1,2,⋯,N1, where size(A) expresses the numbers of rows and columns of A, and B is a full column rank matrix that has at most one entry per row equal to −1, at least two entries per column equal to −1, and at most four entries per column equal to −1. Specifically, when ki,i=1,⋯,5 in (2.2) are all constants, there is A1,1=A2,2=⋯=AN1,N1. The left one in Figure 2 shows an illustration of H taking ¯a=˜a=0,¯b=˜b=T=12,¯N=˜N=ˆN=8,¯q=˜q=ˆq=2.
When f(v,x,y,t) in Eq (2.2) is a nonlinear term of v, then, after dealing with the nonlinear algebraic equations by employing some iterative methods (for instance, the classic Newton iterative methods), (2.9) will still result in the saddle linear system (2.10).
Considering we have computed the values of vi,j,k−1l,m,n,l=0,⋯,¯N,m=0,⋯,˜N,n=0,⋯,ˆN,i=1,⋯,¯p,j=1,⋯,˜p, we now substitute the points (xil,yjm,tk−1ˆN),i=1,⋯,¯p,j=1,⋯,˜p,l=0,⋯,¯N,m=0,⋯,˜N into
vh(x,y,t)=¯N,˜N,ˆN∑l=0,m=0,n=0Ll(x)Lm(y)Ln(t)vi,j,k−1l,m,n |
to get vh(xil,yjm,tk−1ˆN). These are also the values of vh(xil,yjm,tk0) since (xil,yjm,tk−1ˆN)=(xil,yjm,tk0),i=1,⋯,¯p,j=1,⋯,˜p,l=0,⋯,¯N,m=0,⋯,˜N. Consequently, in this way, we obtain the initial values at the kth level [Tk−1,Tk]. By virtue of this group of initial values, we can solve
vh(x,y,t)=¯N,˜N,ˆN∑l=0,m=0,n=0Ll(x)Lm(y)Ln(t)vi,j,kl,m,n |
using the same idea of Algorithm 1.
For investigating the difference between MDDSM and CDDSM, here we additionally give the idea of CDDSM and the resultant algebraic equations. The actual efficiency of these two algorithms will be shown in the numerical examples in Section 4.
In the CDDSM, the ghost boundary conditions are replaced by
(c) the x-type ghost boundary condition (for x-type gbp):
v(xi¯N,yjm,t1n)=v(xi+10,yjm,t1n),dvdx−|(xi¯N,yjm,t1n)=dvdx+|(xi+10,yjm,t1n),i=1,⋯,¯p−1, j=1,⋯,˜p−1,m=1,⋯,˜N; j=˜p,m=1,⋯,˜N−1, n=1,⋯,ˆN. | (2.11) |
(d) the y-type ghost boundary condition (for y-type gbp):
v(xil,yj˜N,t1n)=v(xil,yj+10,t1n),dvdy−|(xil,yj˜N,t1n)=dvdy+|(xil,yj+10,t1n),i=1,⋯,¯p,l=1,⋯,¯N−1,j=1,⋯,˜p−1,n=1,⋯,ˆN. | (2.12) |
Then, CDDSM can be expressed as follows
Algorithm 2. CDDSM algorithm. |
∙step 1. For all the interior points P∈Pinner, substitute (2.7) into the Eqs (2.2); |
∙step 2. For all the initial points P∈Pinit, substitute (2.7) into the Eqs (2.3); |
∙step 3. For all the actual boundary points P∈Pact, substitute (2.7) into the Eqs (2.4); |
∙step 4. For all the ghost boundary points P∈Pgho, substitute (2.7) into the ghost boundary conditions (2.11) (for x-type gbp) and (2.12) (for y-type gbp). |
From these two algorithms, we can clearly find the unique difference between MDDSM and CDDSM is the ghost boundary conditions in step 4. In MDDSM, the participation of ghost unknowns vgxi,(j−1)˜N+m,n,vgy(i−1)(¯N−1)+l,j,n leads to a saddle structure of the coefficient matrix H, for which we will see that a dimension expanding preconditioner is suitable in the next section. However, in CDDSM, the resulting linear system is
ˆHvah=ˆb, | (2.13) |
where vah is the unknown vector, and the coefficient matrix ˆH is no longer a saddle matrix. The right figure in Figure 2 shows an illustration of ˆH corresponding to ¯a=˜a=0,¯b=˜b=T=12,¯N=˜N=ˆN=8,¯q=˜q=ˆq=2.
In this section, we introduce a preconditioning technique for quickly solving the saddle system (2.10). This kind of preconditioning technique was first presented by Luo et al. [24,25]. When this technique is used combined with some Krylov subspace method such as the GRMES method [26], an advantage is that, in each iteration, one only needs to solve a sub problem Ax=r, where A is a block diagonal matrix.
For ease of description, we rewrite (2.10) as
(ABC0)(u1u2)=(r1br2b), | (3.1) |
and suppose the size of A,B,C are respectively m×m, m×n, and n×m. Clearly, (3.1) can be equivalently augmented as
˜H˜u=˜rb, | (3.2) |
where
˜H=(I0IBA0ICI),˜u=(u2u1u3),˜rb=(0r1br2b), |
with I an n×n identity matrix, and u2=−u3.
Denoting by ˜A=A+˜α˜α−1BC, and letting ˜α be a chosen parameter, we take the preconditioner as
PDE=(I0˜αIBA˜αB0C(1−˜α)I). | (3.3) |
This preconditioner PDE can be implemented by
P−1DE=Q−13Q2Q1, | (3.4) |
where
Q1=(II˜α˜α−1BI),Q2=(IIII),Q3=(I0˜αIB˜A0ICI), |
and Q−13 can be further expressed as
Q−13=(0˜α1−˜αC˜α˜α−1I0I0I1˜α−1C11−˜αI)(I(˜A+˜α1−˜αBC)−1I)(1˜αI001˜α−1BI˜α1−˜αB−1˜αI0I) =(0˜α1−˜αC˜α˜α−1I0I0I1˜α−1C11−˜αI)(IA−1I)(1˜αI001˜α−1BI˜α1−˜αB−1˜αI0I). | (3.5) |
Remark 1. From Eq (3.5) we see that when implementing the preconditioner PDE in Eq (3.3), some parallel computations can be employed. In fact, when computing P−1DEr, one of important step is to solve A−1v, and this can be independently completed by multiple processors, considering the fact that A is a block diagonal matrix.
In this section, we give some examples to investigate the actual efficiency of the presented MDDSM and the preconditioner PDE. For reflecting the superiority, we compare MDDSM with CDDSM from the perspectives of approximating accuracy and the costed CPU time. When dealing with the nonlinear PDEs (Example 3), we transform the resultant nonlinear algebraic equations into linear equations by the classical Newton iterative method, always taking an initial value vector x=ones(N). All the obtained linear algebraic equations are solved by the popular GMRES method [26]. In MDDSM, the GMRES method is equipped with the preconditioner PDE, and in CDDSM, the common ILU preconditioner is used. All these examples are implemented using MATLAB R2016(a) on a PC equipped with an Intel(R)Core(TM)i5-8265U processor (CPU@1.60GHz).
The following Table 1 is given only to investigate the resultant accuracy of the presented MDDSM in both time and space, hence, the convergence tolerance for GMRES (in the left column) is taken as 1e−15, and the maximum number of iterations is set equal to 1000. Furthermore, in this table, we additionally investigate the efficiency of the common ILU preconditioner (setup.type = 'crout'; setup.milu = 'row'; setup.droptol = 0.1) for MDDSM with convergence tolerance 1e−6, and the results are reported in the right column.
MDDSM+DE(˜α=2,tol=1e−15) | MDDSM+ILU(tol=1e−6) | |||||
¯N | size | iter | error | iter | error | |
8 | 3148 | 151 | 6.2496e-7 | * | * | |
10 | 5694 | 177 | 1.9817e-9 | * | * | |
12 | 9328 | 239 | 4.1875e-12 | * | * | |
14 | 14242 | 260 | 8.1180e-13 | * | * | |
16 | 20628 | 298 | 2.0273e-13 | * | * |
In the Tables 2–8, 'MDDSM+DE' means that the PDE is solved by the MDDSM method, and the obtained linear system is solved by the GMRES method equipped with DE preconditioner, 'CDDSM+ILU' means that the PDE is solved by the CDDSM method, and the obtained linear system is solved by the GMRES method equipped with ILU preconditioner (setup.type = 'crout'; setup.milu = 'row'; setup.droptol = 0.1), and 'CDDSM+direct' means that the PDE is solved by the CDDSM method, and the obtained linear system is solved by the direct method x=H∖b. This direct method is listed only to check the accuracy of CDDSM. In all the runs in Tables 2–8, the convergence tolerance for GMRES is taken as 1e−6, and the maximum number of iterations is still set equal to 1000. 'size' shows the number of rows of the coefficient matrix H, 'iter' denotes the number of iterations in the GMRES method, 'time1(s)' and 'time2(s)' respectively denote the time for discretizing the PDE (2.2)–(2.4) using MDDSM/ CDDSM and the time for solving the resultant linear system (2.10) (using PDE), (2.13) (using ILU preconditioner), or (2.13) (using the direct method). '*' indicates that the GMRES method fails. 'error' is the error between the exact solution and the approximating solution at all the interior mesh points, initial value mesh points, and actual boundary mesh points, and this is computed using the infinite norm of a vector.
MDDSM+DE(˜α=2) | CDDSM+ILU | ||||||||||
[¯a,¯b] | size | iter | time1(s) | time2(s) | error | size | iter | time1(s) | time2(s) | error | |
[0,6] | 7265 | 89 | 0.4287 | 1.0642 | 2.1575e-6 | 6561 | * | 0.4643 | * | * | |
[0,12] | 29804 | 100 | 3.0688 | 4.8494 | 1.6649e-6 | 26244 | * | 2.9094 | * | * | |
[0,18] | 67625 | 101 | 13.1635 | 10.3642 | 1.5477e-6 | 59049 | * | 13.4892 | * | * | |
[0,24] | 120728 | 114 | 39.9983 | 22.8669 | 1.6715e-6 | 104976 | * | 40.0834 | * | * | |
[0,30] | 189113 | 117 | 99.6043 | 34.7329 | 1.3065e-6 | 164025 | * | 100.1375 | * | * |
MDDSM+DE(˜α=1.52) | CDDSM+ILU | ||||||||||
[¯a,¯b] | size | iter | time1(s) | time2(s) | error | size | iter | time1(s) | time2(s) | error | |
[0,6] | 7265 | 14 | 0.4258 | 0.1927 | 1.7299e-6 | 6561 | * | 0.4319 | * | * | |
[0,12] | 29804 | 15 | 3.0224 | 0.8419 | 1.8874e-6 | 26244 | * | 3.2308 | * | * | |
[0,18] | 67625 | 15 | 12.9018 | 1.8050 | 1.8976e-6 | 59049 | * | 13.3429 | * | * | |
[0,24] | 120728 | 15 | 40.2507 | 3.2387 | 1.9454e-6 | 104976 | * | 40.8738 | * | * | |
[0,30] | 189113 | 15 | 100.3354 | 5.4993 | 1.9519e-6 | 164025 | * | 101.0340 | * | * |
MDDSM+DE(˜α=2) | CDDSM+direct | |||||||
T | iter | time1 | time2 | error | time1 | time2 | error | |
[0,2] | 97 | 0.8103 | 2.4002 | 1.6911e-6 | 1.0984 | 4.4612 | 6.3931e-7 | |
[2,4] | 97 | 0.3053 | 2.1951 | 1.7005e-6 | 0.3831 | 4.5718 | 7.4927e-7 | |
[4,6] | 97 | 0.2836 | 2.2318 | 2.2183e-6 | 0.3862 | 4.5986 | 8.2930e-7 | |
[6,8] | 97 | 0.2923 | 2.1227 | 2.1574e-6 | 0.3332 | 4.5491 | 7.2504e-7 | |
[8,10] | 97 | 0.2746 | 2.1236 | 1.7716e-6 | 0.3264 | 4.5788 | 6.8281e-7 | |
[10,12] | 97 | 0.2747 | 2.1191 | 2.2123e-6 | 0.3123 | 4.5817 | 7.7594e-7 | |
[12,14] | 97 | 0.2804 | 2.1186 | 2.1558e-6 | 0.3929 | 4.5264 | 7.1809e-7 | |
[14,16] | 97 | 0.2712 | 2.1177 | 1.9980e-6 | 0.3880 | 4.5511 | 7.2365e-7 | |
[16,18] | 97 | 0.2851 | 2.1917 | 2.0841e-6 | 0.3611 | 4.5636 | 7.5500e-7 | |
[18,20] | 97 | 0.2968 | 2.3040 | 2.2315e-6 | 0.3194 | 4.5535 | 7.3403e-7 | |
[20,22] | 97 | 0.2939 | 2.1958 | 2.1634e-6 | 0.3002 | 4.6308 | 8.0671e-7 | |
[22,24] | 97 | 0.2979 | 2.3162 | 1.9259e-6 | 0.3416 | 4.6268 | 7.2688e-7 | |
[24,26] | 97 | 0.3066 | 2.2550 | 2.3538e-6 | 0.3195 | 4.4624 | 7.3930e-7 | |
[26,28] | 97 | 0.3100 | 2.2219 | 2.2830e-6 | 0.3712 | 4.4442 | 8.2556e-7 | |
[28,30] | 97 | 0.3155 | 2.1853 | 1.8687e-6 | 0.3398 | 4.5492 | 7.2441e-7 | |
[30,32] | 97 | 0.2975 | 2.1825 | 2.4293e-6 | 0.3175 | 4.5575 | 6.8583e-7 | |
[32,34] | 97 | 0.3091 | 2.1738 | 2.3607e-6 | 0.3128 | 4.4386 | 7.7852e-7 | |
[34,36] | 97 | 0.3007 | 2.1840 | 1.8962e-6 | 0.3278 | 4.4459 | 7.1699e-7 | |
[36,38] | 97 | 0.2948 | 2.1739 | 2.4550e-6 | 0.3256 | 4.4715 | 7.2006e-7 | |
[38,40] | 97 | 0.2976 | 2.2187 | 2.3881e-6 | 0.3252 | 4.5395 | 7.5564e-7 | |
[40,42] | 97 | 0.2894 | 2.1785 | 1.9015e-6 | 0.3217 | 4.5934 | 7.3293e-7 | |
[42,44] | 97 | 0.2967 | 2.1920 | 2.4288e-6 | 0.3271 | 4.5325 | 8.0508e-7 | |
[44,46] | 97 | 0.3018 | 2.3206 | 2.3647e-6 | 0.3350 | 4.4296 | 7.2659e-7 | |
[46,48] | 97 | 0.3103 | 2.2826 | 1.8804e-6 | 0.3272 | 4.5711 | 7.4001e-7 | |
[48,50] | 97 | 0.2958 | 2.1941 | 2.3547e-6 | 0.3235 | 4.5819 | 8.2593e-7 |
MDDSM+DE(˜α=1.52) | ||||
T | iter | time1(s) | time2(s) | error |
[0,2] | 15 | 4.6895 | 0.8031 | 1.5455e-6 |
[2,4] | 59 | 4.9846 | 1.8762 | 6.3147e-6 |
[4,6] | 70 | 4.8806 | 2.1244 | 8.6783e-6 |
[6,8] | 62 | 4.7776 | 1.8990 | 4.0616e-6 |
[8,10] | 60 | 4.9584 | 1.7632 | 5.8417e-6 |
[10,12] | 70 | 4.8203 | 2.1371 | 8.0284e-6 |
[12,14] | 54 | 4.7827 | 1.6499 | 3.2658e-6 |
[14,16] | 66 | 4.7457 | 1.9148 | 7.0381e-6 |
[16,18] | 70 | 4.7627 | 2.0677 | 9.9410e-6 |
[18,20] | 59 | 4.8260 | 1.7937 | 9.2254e-6 |
[20,22] | 67 | 5.0983 | 2.0591 | 1.3391e-5 |
[22,24] | 57 | 5.1899 | 1.8296 | 4.9781e-6 |
[24,26] | 70 | 5.0206 | 2.1269 | 6.8350e-6 |
[26,28] | 70 | 4.9481 | 2.1788 | 8.7829e-6 |
[28,30] | 59 | 5.0516 | 1.9088 | 3.0236e-6 |
[30,32] | 70 | 4.8576 | 2.1034 | 7.4539e-6 |
[32,34] | 60 | 5.0004 | 1.8663 | 8.2583e-6 |
[34,36] | 57 | 5.0687 | 1.8578 | 4.3468e-6 |
MDDSM+DE(˜α=1.8) | ||||
[¯a,¯b] | iter | time1(s) | time2(s) | error |
[0,4] | 13 | 1.1013 | 0.4274 | 1.6036e-6 |
[0,6] | 14 | 4.6144 | 0.9936 | 1.9553e-6 |
[0,8] | 15 | 14.3932 | 1.9605 | 2.7416e-6 |
[0,10] | 15 | 38.3138 | 3.6263 | 3.0260e-6 |
[0,12] | 16 | 100.8327 | 6.0296 | 2.9328e-6 |
MDDSM+DE(˜α=1.52) | |||||
[¯a,¯b] | iter(Newton) | iter(gmres) | time1(s) | time2(s) | error |
[0,4] | 14 | 290 | 0.2821 | 13.7961 | 2.0411e-6 |
[0,6] | 14 | 323 | 0.4920 | 36.8127 | 2.0268e-6 |
[0,8] | 15 | 421 | 0.9341 | 107.7529 | 2.0266e-6 |
[0,10] | 15 | 443 | 1.5115 | 278.8113 | 2.0266e-6 |
[0,12] | 15 | 445 | 2.3945 | 719.9104 | 2.0266e-6 |
MDDSM+DE(˜α=1.52) | |||||
T | iter(Newton) | iter(gmres) | time1(s) | time2(s) | error |
[0,2] | 14 | 290 | 0.2843 | 13.9283 | 2.0411e-6 |
[2,4] | 14 | 245 | 0.2936 | 12.6400 | 1.0533e-6 |
[4,6] | 14 | 258 | 0.2786 | 13.7926 | 1.0279e-6 |
[6,8] | 14 | 302 | 0.2829 | 14.1546 | 1.9625e-6 |
[8,10] | 14 | 261 | 0.3015 | 13.6505 | 1.0869e-6 |
[10,12] | 14 | 250 | 0.2782 | 13.4784 | 1.0365e-6 |
[12,14] | 14 | 298 | 0.2898 | 14.0763 | 1.8943e-6 |
[14,16] | 14 | 263 | 0.2911 | 13.4321 | 1.3047e-6 |
[16,18] | 14 | 240 | 0.2950 | 13.7441 | 9.9710e-7 |
[18,20] | 14 | 297 | 0.2817 | 14.5544 | 2.0532e-6 |
[20,22] | 14 | 273 | 0.2769 | 13.8349 | 1.7510e-6 |
[22,24] | 14 | 230 | 0.2809 | 13.1796 | 8.9217e-7 |
[24,26] | 14 | 297 | 0.2914 | 14.4809 | 2.0169e-6 |
[26,28] | 14 | 286 | 0.3102 | 13.2578 | 2.0168e-6 |
[28,30] | 14 | 225 | 0.3025 | 12.7572 | 8.2530e-7 |
Moreover, in Tables 7 and 8, 'iter(Newton)' is the number of iterations in the Newton iterative method, and 'iter(gmres)' is the sum of all the iterations of GMRES involved in the whole Newton iterative method.
For convenience, by taking ¯a=˜a,¯b=˜b in the space domain Ω, we consider the following examples.
Example 1. (the heat conduction equation):
k∗1=k∗2=c,k∗3=k∗4=k∗5=0, f(u,x,y,t)=cos(x+y+t)+2csin(x+y+t), u(x,y,t)=sin(x+y+t)+2.
Example 2. (with variable coefficients):
k∗1=0.5exp(x+2y+5t),k∗2=cos(x−y+2t)/exp(x+y+2t), k∗3=0.1,k∗4=0.2,k∗5=−0.1, f(u,x,y,t)=20u+g(x,y,t),u(x,y,t)=sin(x+y+t)+2.
Example 3. (the Allen-Cahn equation):
k∗1=k∗2=1,k∗3=k∗4=k∗5=0,f(u,x,y,t)=1εu(1−u2)+g(x,y,t), g(x,y,t)=cos(x+y+t)+2sin(x+y+t)−1ε(sin(x+y+t)+2−(sin(x+y+t)+2)3), u(x,y,t)=sin(x+y+t)+2.
From the numerical results in Tables 1–8, we can get the following observations:
1. From the left column in Table 1, we see that for a fixed interval [0,T]×Ω, as the degree of the Legendre polynomial (also the number of collocation points) increases, the resulting error decreases accordingly. Moreover, the results in the right column of Table 1 reflect that the common ILU preconditioner is ineffective for MDDSM.
2. In all the tested intervals in time and space, the expected accuracy 1e−6 can be obtained by only taking ¯N=˜N=ˆN=7 or 8 in MDDSM. This means that MDDSM does well in large time-space interval Ω×[0,T] with little cost.
3. The results in Tables 4, 5, and 8 reflect that MDDSM is stable in time level, namely, supposing we have obtained the values in [T0,T1],[T1,T2],⋯,[Tk−2,Tk−1], then, the initial value of the kth level [Tk−1,Tk] can be chosen from the value of Tk−1 computed in [Tk−2,Tk−1], and the error in [Tk−1,Tk] will be of the same order of magnitude of [Tk−2,Tk−1].
4. Tables 2–8 show that the DE preconditioner is efficient in convergence, and that it is stable, namely, it appears to be independent of the size of interval in time/space.
5. From Tables 7 and 8, we can see that the classical Newton iterative method is suitable for the nonlinear algebraic equations which are obtained by using MDDSM to solve the tested model.
6. In Tables 2 and 3, we find that ''MDDSM+DE" is obviously superior to ''CDDSM+ILU"; in fact, in the heat equation, ILU has failed in CDDSM.
7. In all these results, we find that, for a fixed N, the number of iterations of the GMRES method is basically independent of the time interval [0,T] and space region Ω, as reflected in Tables 2–8. Consequently, for a given numerical experiment, we can choose the parameter ˜α by testing it in a small region [0,T]×Ω.
In this paper, we presented a modified domain decomposition spectral collocation method, and explored a dimension expanding preconditioner for the obtained linear system. Numerical examples show that this MDDSM is efficient for model (1.1) with proper boundary values and initial values in a large time-space interval Ω×[0,T], and that the classical Newton iterative method and DE preconditioner are suitable for the proposed MDDSM.
How to choose an optimal parameter ˜α in (3.3) is still a concern of our future work. Also, we will focus on improving this kind of dimension expanding preconditioner for saddle problem (2.10).
Wei Hua Luo conceived the idea for this paper and derived the algebraic equations; Liang Yin conducted all the numerical experiments; and Jun Guo was responsible for editing the paper.
The authors declare they have not used Artificial Intelligence (AI) tools in the creation of this article.
This research is supported by the Scientific Research Fund of Hunan Provincial Science and Technology Department (2022JJ30416), the Scientific Research Fund of Hunan Provincial Education Department (22A0483). The work of Jun Guo is supported by the Sichuan National Applied Mathematics co-construction project (2022ZX004), CUIT (KYTD202243) and the Scientific Research Foundation (KYTZ202184).
The authors declare there is no conflict of interest.
[1] |
W. L. Wood, R. W. Lewis, A comparison of time marching schemes for the transient heat conduction equation, Int. J. Numer. Methods Eng, 9 (2010), 679–689. https://doi.org/10.1002/nme.1620090314 doi: 10.1002/nme.1620090314
![]() |
[2] |
P. Tsatsoulis, H. Weber, Exponential loss of memory for the 2-dimensional Allen-Cahn equation with small noise, Probab. Theory Relat. Fields, 177(2019), 257–322. https://doi.org/10.1007/s00440-019-00945-x doi: 10.1007/s00440-019-00945-x
![]() |
[3] |
B. Y. Guo, T. J. Wang, Composite generalized Laguerre-Legendre spectral method with domain decomposition and its application to Fokker-Planck equation in an infinite channel, Math. Comp., 78 (2009), 129–151. https://doi.org/10.1090/S0025-5718-08-02152-2 doi: 10.1090/S0025-5718-08-02152-2
![]() |
[4] |
R. Codina, A discontinuity-capturing crosswind-dissipation for the finite element solution of the convection-diffusion equation, Comput. Methods Appl. Mech. Eng., 110 (1993), 325–342. https://doi.org/10.1016/0045-7825(93)90213-H doi: 10.1016/0045-7825(93)90213-H
![]() |
[5] |
N. Li, J. Steiner, S. Tang, Convergence and stability analysis of an explicit finite difference method for 2-dimensional reaction-diffusion equations, The ANZIAM Journal, 36 (1994), 234–241. https://doi.org/10.1017/S0334270000010377 doi: 10.1017/S0334270000010377
![]() |
[6] |
F. J. Domínguez-Mota, S. M. Armenta, G. Tinoco-Guerrero, J. G. Tinoco-Ruiz, Finite difference schemes satisfying an optimality condition for the unsteady heat equation, Math Comput Simulat, 106 (2014), 76–83. https://doi.org/10.1016/j.matcom.2014.02.007 doi: 10.1016/j.matcom.2014.02.007
![]() |
[7] |
N. Riane, C. David, The finite difference method for the heat equation on Sierpinski simplices, Int J Comput Math, 96 (2019), 1477–1501. https://doi.org/10.1080/00207160.2018.1517209 doi: 10.1080/00207160.2018.1517209
![]() |
[8] |
X. He, K. Wang, Uniformly convergent novel finite difference methods for singularly perturbed reaction-diffusion equations, Numer. Methods Partial Differ. Equ., 35 (2019), 2120–2148. https://doi.org/10.1002/num.22405 doi: 10.1002/num.22405
![]() |
[9] |
C. C. Ji, R. Du, Z. Z. Sun, Stability and convergence of difference schemes for multi-dimensional parabolic equations with variable coefficients and mixed derivatives, Int J Comput Math, 95 (2018), 255–277. https://doi.org/10.1080/00207160.2017.1381336 doi: 10.1080/00207160.2017.1381336
![]() |
[10] | J. Kim, D. Jeong, S. D. Yang, Y. Choi, A finite difference method for a conservative Allen-Cahn equation on non-flat surfaces, J. Comput. Phys., (2017), 170–181. https://doi.org/10.1016/j.jcp.2016.12.060 |
[11] |
X. Feng, H. J. Wu, A posteriori error estimates and an adaptive finite element method for the Allen-Cahn equation and the mean curvature flow, J. Sci. Comput., 24 (2005), 121–146. https://doi.org/10.1007/s10915-004-4610-1 doi: 10.1007/s10915-004-4610-1
![]() |
[12] |
C. M. Elliott, D. A. French, A nonconforming finite-element method for the two-dimensional Cahn-Hilliard equation, SIAM J. Numer. Anal., 26 (1989), 884–903. https://doi.org/10.1016/j.jcp.2016.12.060 doi: 10.1016/j.jcp.2016.12.060
![]() |
[13] |
A. Georgios, B. Li, Error estimates for fully discrete BDF finite element approximations of the Allen-Cahn equation, IMA J. Numer. Anal., 42 (2020), 363–391. https://doi.org/10.1093/imanum/draa065 doi: 10.1093/imanum/draa065
![]() |
[14] |
A. Al-Taweel, S. Hussain, X. Wang, A stabilizer free weak Galerkin finite element method for parabolic equation, J. Comput. Appl. Math., 392 (2021), 113373. https://doi.org/10.1016/j.cam.2020.113373 doi: 10.1016/j.cam.2020.113373
![]() |
[15] | J. Shen, T. Tang, Spectral and High-Order Methods with Applications, Science Press, Beijing, 2006. |
[16] |
Y. Gu, J. Shen, Accurate and efficient spectral methods for elliptic PDEs in complex domains, J Sci Comput, 83 (2020), 42. https://doi.org/10.1007/s10915-020-01226-9 doi: 10.1007/s10915-020-01226-9
![]() |
[17] |
E. Pindza, M. K. Owolabi, K. C. Patidar, Barycentric Jacobi spectral method for numerical solutions of the generalized Burgers-Huxley equation, Int. J. Nonlinear Sci. Numer. Simul., 18 (2017), 67–81. https://doi.org/10.1515/ijnsns-2016-0032 doi: 10.1515/ijnsns-2016-0032
![]() |
[18] |
W. H. Luo, T. Z. Huang, X. M. Gu, Y. Liu, Barycentric rational collocation methods for a class of nonlinear parabolic partial differential equations, Appl Math Lett, 68 (2017), 13–19. https://doi.org/10.1016/j.aml.2016.12.011 doi: 10.1016/j.aml.2016.12.011
![]() |
[19] |
S. H.Lui, S. Nataj, Spectral collocation in space and time for linear PDEs, J. Comput. Phys., 424 (2021), 109843. https://doi.org/10.1016/j.jcp.2020.109843 doi: 10.1016/j.jcp.2020.109843
![]() |
[20] |
S. H.Lui, S. Nataj, Chebyshev spectral collocation in space and time for the heat equation, Electron Tran Numer Ana, 52 (2020), 295–319. http://doi.org/10.1553/etna_vol52s295 doi: 10.1553/etna_vol52s295
![]() |
[21] |
S. H.Lui, Legendre spectral collocation in space and time for PDEs, Numer. Math., 136 (2017), 75–99. https://doi.org/10.1007/s00211-016-0834-x doi: 10.1007/s00211-016-0834-x
![]() |
[22] | E. Pindza, F. Youbi, E. Mare, M. Davison, Barycentric spectral domain decomposition methods for valuing a class of infinite activity Lˊevy models, Discrete Cont Dyn-s, 12 (2018), 625–643. http://hdl.handle.net/2263/70151 |
[23] |
J. L. Vay, I. Haber, B. B. Godfrey, A domain decomposition method for pseudo-spectral electromagnetic simulations of plasmas, J. Comput. Phys., 243 (2013), 260–268. https://doi.org/10.1016/j.jcp.2013.03.010 doi: 10.1016/j.jcp.2013.03.010
![]() |
[24] |
W. H. Luo, X. M. Gu, B. Carpentieri, A dimension expanded preconditioning technique for saddle point problems, Bit Numer Math, 62 (2022), 1983–2004. https://doi.org/10.1007/s10543-022-00938-8 doi: 10.1007/s10543-022-00938-8
![]() |
[25] |
W. H. Luo, B. Carpentieri, J. Guo, A dimension expanded preconditioning technique for block two-by-two linear equations, Demonstr. Math., 56 (2023), 20230260. https://doi.org/10.1515/dema-2023-0260 doi: 10.1515/dema-2023-0260
![]() |
[26] | Y. Saad, Iterative Methods for Sparse Linear Systems (2nd ed.), Society for Industrial and Applied Mathematics, Philadelphia, 2003. |
MDDSM+DE(˜α=2,tol=1e−15) | MDDSM+ILU(tol=1e−6) | |||||
¯N | size | iter | error | iter | error | |
8 | 3148 | 151 | 6.2496e-7 | * | * | |
10 | 5694 | 177 | 1.9817e-9 | * | * | |
12 | 9328 | 239 | 4.1875e-12 | * | * | |
14 | 14242 | 260 | 8.1180e-13 | * | * | |
16 | 20628 | 298 | 2.0273e-13 | * | * |
MDDSM+DE(˜α=2) | CDDSM+ILU | ||||||||||
[¯a,¯b] | size | iter | time1(s) | time2(s) | error | size | iter | time1(s) | time2(s) | error | |
[0,6] | 7265 | 89 | 0.4287 | 1.0642 | 2.1575e-6 | 6561 | * | 0.4643 | * | * | |
[0,12] | 29804 | 100 | 3.0688 | 4.8494 | 1.6649e-6 | 26244 | * | 2.9094 | * | * | |
[0,18] | 67625 | 101 | 13.1635 | 10.3642 | 1.5477e-6 | 59049 | * | 13.4892 | * | * | |
[0,24] | 120728 | 114 | 39.9983 | 22.8669 | 1.6715e-6 | 104976 | * | 40.0834 | * | * | |
[0,30] | 189113 | 117 | 99.6043 | 34.7329 | 1.3065e-6 | 164025 | * | 100.1375 | * | * |
MDDSM+DE(˜α=1.52) | CDDSM+ILU | ||||||||||
[¯a,¯b] | size | iter | time1(s) | time2(s) | error | size | iter | time1(s) | time2(s) | error | |
[0,6] | 7265 | 14 | 0.4258 | 0.1927 | 1.7299e-6 | 6561 | * | 0.4319 | * | * | |
[0,12] | 29804 | 15 | 3.0224 | 0.8419 | 1.8874e-6 | 26244 | * | 3.2308 | * | * | |
[0,18] | 67625 | 15 | 12.9018 | 1.8050 | 1.8976e-6 | 59049 | * | 13.3429 | * | * | |
[0,24] | 120728 | 15 | 40.2507 | 3.2387 | 1.9454e-6 | 104976 | * | 40.8738 | * | * | |
[0,30] | 189113 | 15 | 100.3354 | 5.4993 | 1.9519e-6 | 164025 | * | 101.0340 | * | * |
MDDSM+DE(˜α=2) | CDDSM+direct | |||||||
T | iter | time1 | time2 | error | time1 | time2 | error | |
[0,2] | 97 | 0.8103 | 2.4002 | 1.6911e-6 | 1.0984 | 4.4612 | 6.3931e-7 | |
[2,4] | 97 | 0.3053 | 2.1951 | 1.7005e-6 | 0.3831 | 4.5718 | 7.4927e-7 | |
[4,6] | 97 | 0.2836 | 2.2318 | 2.2183e-6 | 0.3862 | 4.5986 | 8.2930e-7 | |
[6,8] | 97 | 0.2923 | 2.1227 | 2.1574e-6 | 0.3332 | 4.5491 | 7.2504e-7 | |
[8,10] | 97 | 0.2746 | 2.1236 | 1.7716e-6 | 0.3264 | 4.5788 | 6.8281e-7 | |
[10,12] | 97 | 0.2747 | 2.1191 | 2.2123e-6 | 0.3123 | 4.5817 | 7.7594e-7 | |
[12,14] | 97 | 0.2804 | 2.1186 | 2.1558e-6 | 0.3929 | 4.5264 | 7.1809e-7 | |
[14,16] | 97 | 0.2712 | 2.1177 | 1.9980e-6 | 0.3880 | 4.5511 | 7.2365e-7 | |
[16,18] | 97 | 0.2851 | 2.1917 | 2.0841e-6 | 0.3611 | 4.5636 | 7.5500e-7 | |
[18,20] | 97 | 0.2968 | 2.3040 | 2.2315e-6 | 0.3194 | 4.5535 | 7.3403e-7 | |
[20,22] | 97 | 0.2939 | 2.1958 | 2.1634e-6 | 0.3002 | 4.6308 | 8.0671e-7 | |
[22,24] | 97 | 0.2979 | 2.3162 | 1.9259e-6 | 0.3416 | 4.6268 | 7.2688e-7 | |
[24,26] | 97 | 0.3066 | 2.2550 | 2.3538e-6 | 0.3195 | 4.4624 | 7.3930e-7 | |
[26,28] | 97 | 0.3100 | 2.2219 | 2.2830e-6 | 0.3712 | 4.4442 | 8.2556e-7 | |
[28,30] | 97 | 0.3155 | 2.1853 | 1.8687e-6 | 0.3398 | 4.5492 | 7.2441e-7 | |
[30,32] | 97 | 0.2975 | 2.1825 | 2.4293e-6 | 0.3175 | 4.5575 | 6.8583e-7 | |
[32,34] | 97 | 0.3091 | 2.1738 | 2.3607e-6 | 0.3128 | 4.4386 | 7.7852e-7 | |
[34,36] | 97 | 0.3007 | 2.1840 | 1.8962e-6 | 0.3278 | 4.4459 | 7.1699e-7 | |
[36,38] | 97 | 0.2948 | 2.1739 | 2.4550e-6 | 0.3256 | 4.4715 | 7.2006e-7 | |
[38,40] | 97 | 0.2976 | 2.2187 | 2.3881e-6 | 0.3252 | 4.5395 | 7.5564e-7 | |
[40,42] | 97 | 0.2894 | 2.1785 | 1.9015e-6 | 0.3217 | 4.5934 | 7.3293e-7 | |
[42,44] | 97 | 0.2967 | 2.1920 | 2.4288e-6 | 0.3271 | 4.5325 | 8.0508e-7 | |
[44,46] | 97 | 0.3018 | 2.3206 | 2.3647e-6 | 0.3350 | 4.4296 | 7.2659e-7 | |
[46,48] | 97 | 0.3103 | 2.2826 | 1.8804e-6 | 0.3272 | 4.5711 | 7.4001e-7 | |
[48,50] | 97 | 0.2958 | 2.1941 | 2.3547e-6 | 0.3235 | 4.5819 | 8.2593e-7 |
MDDSM+DE(˜α=1.52) | ||||
T | iter | time1(s) | time2(s) | error |
[0,2] | 15 | 4.6895 | 0.8031 | 1.5455e-6 |
[2,4] | 59 | 4.9846 | 1.8762 | 6.3147e-6 |
[4,6] | 70 | 4.8806 | 2.1244 | 8.6783e-6 |
[6,8] | 62 | 4.7776 | 1.8990 | 4.0616e-6 |
[8,10] | 60 | 4.9584 | 1.7632 | 5.8417e-6 |
[10,12] | 70 | 4.8203 | 2.1371 | 8.0284e-6 |
[12,14] | 54 | 4.7827 | 1.6499 | 3.2658e-6 |
[14,16] | 66 | 4.7457 | 1.9148 | 7.0381e-6 |
[16,18] | 70 | 4.7627 | 2.0677 | 9.9410e-6 |
[18,20] | 59 | 4.8260 | 1.7937 | 9.2254e-6 |
[20,22] | 67 | 5.0983 | 2.0591 | 1.3391e-5 |
[22,24] | 57 | 5.1899 | 1.8296 | 4.9781e-6 |
[24,26] | 70 | 5.0206 | 2.1269 | 6.8350e-6 |
[26,28] | 70 | 4.9481 | 2.1788 | 8.7829e-6 |
[28,30] | 59 | 5.0516 | 1.9088 | 3.0236e-6 |
[30,32] | 70 | 4.8576 | 2.1034 | 7.4539e-6 |
[32,34] | 60 | 5.0004 | 1.8663 | 8.2583e-6 |
[34,36] | 57 | 5.0687 | 1.8578 | 4.3468e-6 |
MDDSM+DE(˜α=1.8) | ||||
[¯a,¯b] | iter | time1(s) | time2(s) | error |
[0,4] | 13 | 1.1013 | 0.4274 | 1.6036e-6 |
[0,6] | 14 | 4.6144 | 0.9936 | 1.9553e-6 |
[0,8] | 15 | 14.3932 | 1.9605 | 2.7416e-6 |
[0,10] | 15 | 38.3138 | 3.6263 | 3.0260e-6 |
[0,12] | 16 | 100.8327 | 6.0296 | 2.9328e-6 |
MDDSM+DE(˜α=1.52) | |||||
[¯a,¯b] | iter(Newton) | iter(gmres) | time1(s) | time2(s) | error |
[0,4] | 14 | 290 | 0.2821 | 13.7961 | 2.0411e-6 |
[0,6] | 14 | 323 | 0.4920 | 36.8127 | 2.0268e-6 |
[0,8] | 15 | 421 | 0.9341 | 107.7529 | 2.0266e-6 |
[0,10] | 15 | 443 | 1.5115 | 278.8113 | 2.0266e-6 |
[0,12] | 15 | 445 | 2.3945 | 719.9104 | 2.0266e-6 |
MDDSM+DE(˜α=1.52) | |||||
T | iter(Newton) | iter(gmres) | time1(s) | time2(s) | error |
[0,2] | 14 | 290 | 0.2843 | 13.9283 | 2.0411e-6 |
[2,4] | 14 | 245 | 0.2936 | 12.6400 | 1.0533e-6 |
[4,6] | 14 | 258 | 0.2786 | 13.7926 | 1.0279e-6 |
[6,8] | 14 | 302 | 0.2829 | 14.1546 | 1.9625e-6 |
[8,10] | 14 | 261 | 0.3015 | 13.6505 | 1.0869e-6 |
[10,12] | 14 | 250 | 0.2782 | 13.4784 | 1.0365e-6 |
[12,14] | 14 | 298 | 0.2898 | 14.0763 | 1.8943e-6 |
[14,16] | 14 | 263 | 0.2911 | 13.4321 | 1.3047e-6 |
[16,18] | 14 | 240 | 0.2950 | 13.7441 | 9.9710e-7 |
[18,20] | 14 | 297 | 0.2817 | 14.5544 | 2.0532e-6 |
[20,22] | 14 | 273 | 0.2769 | 13.8349 | 1.7510e-6 |
[22,24] | 14 | 230 | 0.2809 | 13.1796 | 8.9217e-7 |
[24,26] | 14 | 297 | 0.2914 | 14.4809 | 2.0169e-6 |
[26,28] | 14 | 286 | 0.3102 | 13.2578 | 2.0168e-6 |
[28,30] | 14 | 225 | 0.3025 | 12.7572 | 8.2530e-7 |
MDDSM+DE(˜α=2,tol=1e−15) | MDDSM+ILU(tol=1e−6) | |||||
¯N | size | iter | error | iter | error | |
8 | 3148 | 151 | 6.2496e-7 | * | * | |
10 | 5694 | 177 | 1.9817e-9 | * | * | |
12 | 9328 | 239 | 4.1875e-12 | * | * | |
14 | 14242 | 260 | 8.1180e-13 | * | * | |
16 | 20628 | 298 | 2.0273e-13 | * | * |
MDDSM+DE(˜α=2) | CDDSM+ILU | ||||||||||
[¯a,¯b] | size | iter | time1(s) | time2(s) | error | size | iter | time1(s) | time2(s) | error | |
[0,6] | 7265 | 89 | 0.4287 | 1.0642 | 2.1575e-6 | 6561 | * | 0.4643 | * | * | |
[0,12] | 29804 | 100 | 3.0688 | 4.8494 | 1.6649e-6 | 26244 | * | 2.9094 | * | * | |
[0,18] | 67625 | 101 | 13.1635 | 10.3642 | 1.5477e-6 | 59049 | * | 13.4892 | * | * | |
[0,24] | 120728 | 114 | 39.9983 | 22.8669 | 1.6715e-6 | 104976 | * | 40.0834 | * | * | |
[0,30] | 189113 | 117 | 99.6043 | 34.7329 | 1.3065e-6 | 164025 | * | 100.1375 | * | * |
MDDSM+DE(˜α=1.52) | CDDSM+ILU | ||||||||||
[¯a,¯b] | size | iter | time1(s) | time2(s) | error | size | iter | time1(s) | time2(s) | error | |
[0,6] | 7265 | 14 | 0.4258 | 0.1927 | 1.7299e-6 | 6561 | * | 0.4319 | * | * | |
[0,12] | 29804 | 15 | 3.0224 | 0.8419 | 1.8874e-6 | 26244 | * | 3.2308 | * | * | |
[0,18] | 67625 | 15 | 12.9018 | 1.8050 | 1.8976e-6 | 59049 | * | 13.3429 | * | * | |
[0,24] | 120728 | 15 | 40.2507 | 3.2387 | 1.9454e-6 | 104976 | * | 40.8738 | * | * | |
[0,30] | 189113 | 15 | 100.3354 | 5.4993 | 1.9519e-6 | 164025 | * | 101.0340 | * | * |
MDDSM+DE(˜α=2) | CDDSM+direct | |||||||
T | iter | time1 | time2 | error | time1 | time2 | error | |
[0,2] | 97 | 0.8103 | 2.4002 | 1.6911e-6 | 1.0984 | 4.4612 | 6.3931e-7 | |
[2,4] | 97 | 0.3053 | 2.1951 | 1.7005e-6 | 0.3831 | 4.5718 | 7.4927e-7 | |
[4,6] | 97 | 0.2836 | 2.2318 | 2.2183e-6 | 0.3862 | 4.5986 | 8.2930e-7 | |
[6,8] | 97 | 0.2923 | 2.1227 | 2.1574e-6 | 0.3332 | 4.5491 | 7.2504e-7 | |
[8,10] | 97 | 0.2746 | 2.1236 | 1.7716e-6 | 0.3264 | 4.5788 | 6.8281e-7 | |
[10,12] | 97 | 0.2747 | 2.1191 | 2.2123e-6 | 0.3123 | 4.5817 | 7.7594e-7 | |
[12,14] | 97 | 0.2804 | 2.1186 | 2.1558e-6 | 0.3929 | 4.5264 | 7.1809e-7 | |
[14,16] | 97 | 0.2712 | 2.1177 | 1.9980e-6 | 0.3880 | 4.5511 | 7.2365e-7 | |
[16,18] | 97 | 0.2851 | 2.1917 | 2.0841e-6 | 0.3611 | 4.5636 | 7.5500e-7 | |
[18,20] | 97 | 0.2968 | 2.3040 | 2.2315e-6 | 0.3194 | 4.5535 | 7.3403e-7 | |
[20,22] | 97 | 0.2939 | 2.1958 | 2.1634e-6 | 0.3002 | 4.6308 | 8.0671e-7 | |
[22,24] | 97 | 0.2979 | 2.3162 | 1.9259e-6 | 0.3416 | 4.6268 | 7.2688e-7 | |
[24,26] | 97 | 0.3066 | 2.2550 | 2.3538e-6 | 0.3195 | 4.4624 | 7.3930e-7 | |
[26,28] | 97 | 0.3100 | 2.2219 | 2.2830e-6 | 0.3712 | 4.4442 | 8.2556e-7 | |
[28,30] | 97 | 0.3155 | 2.1853 | 1.8687e-6 | 0.3398 | 4.5492 | 7.2441e-7 | |
[30,32] | 97 | 0.2975 | 2.1825 | 2.4293e-6 | 0.3175 | 4.5575 | 6.8583e-7 | |
[32,34] | 97 | 0.3091 | 2.1738 | 2.3607e-6 | 0.3128 | 4.4386 | 7.7852e-7 | |
[34,36] | 97 | 0.3007 | 2.1840 | 1.8962e-6 | 0.3278 | 4.4459 | 7.1699e-7 | |
[36,38] | 97 | 0.2948 | 2.1739 | 2.4550e-6 | 0.3256 | 4.4715 | 7.2006e-7 | |
[38,40] | 97 | 0.2976 | 2.2187 | 2.3881e-6 | 0.3252 | 4.5395 | 7.5564e-7 | |
[40,42] | 97 | 0.2894 | 2.1785 | 1.9015e-6 | 0.3217 | 4.5934 | 7.3293e-7 | |
[42,44] | 97 | 0.2967 | 2.1920 | 2.4288e-6 | 0.3271 | 4.5325 | 8.0508e-7 | |
[44,46] | 97 | 0.3018 | 2.3206 | 2.3647e-6 | 0.3350 | 4.4296 | 7.2659e-7 | |
[46,48] | 97 | 0.3103 | 2.2826 | 1.8804e-6 | 0.3272 | 4.5711 | 7.4001e-7 | |
[48,50] | 97 | 0.2958 | 2.1941 | 2.3547e-6 | 0.3235 | 4.5819 | 8.2593e-7 |
MDDSM+DE(˜α=1.52) | ||||
T | iter | time1(s) | time2(s) | error |
[0,2] | 15 | 4.6895 | 0.8031 | 1.5455e-6 |
[2,4] | 59 | 4.9846 | 1.8762 | 6.3147e-6 |
[4,6] | 70 | 4.8806 | 2.1244 | 8.6783e-6 |
[6,8] | 62 | 4.7776 | 1.8990 | 4.0616e-6 |
[8,10] | 60 | 4.9584 | 1.7632 | 5.8417e-6 |
[10,12] | 70 | 4.8203 | 2.1371 | 8.0284e-6 |
[12,14] | 54 | 4.7827 | 1.6499 | 3.2658e-6 |
[14,16] | 66 | 4.7457 | 1.9148 | 7.0381e-6 |
[16,18] | 70 | 4.7627 | 2.0677 | 9.9410e-6 |
[18,20] | 59 | 4.8260 | 1.7937 | 9.2254e-6 |
[20,22] | 67 | 5.0983 | 2.0591 | 1.3391e-5 |
[22,24] | 57 | 5.1899 | 1.8296 | 4.9781e-6 |
[24,26] | 70 | 5.0206 | 2.1269 | 6.8350e-6 |
[26,28] | 70 | 4.9481 | 2.1788 | 8.7829e-6 |
[28,30] | 59 | 5.0516 | 1.9088 | 3.0236e-6 |
[30,32] | 70 | 4.8576 | 2.1034 | 7.4539e-6 |
[32,34] | 60 | 5.0004 | 1.8663 | 8.2583e-6 |
[34,36] | 57 | 5.0687 | 1.8578 | 4.3468e-6 |
MDDSM+DE(˜α=1.8) | ||||
[¯a,¯b] | iter | time1(s) | time2(s) | error |
[0,4] | 13 | 1.1013 | 0.4274 | 1.6036e-6 |
[0,6] | 14 | 4.6144 | 0.9936 | 1.9553e-6 |
[0,8] | 15 | 14.3932 | 1.9605 | 2.7416e-6 |
[0,10] | 15 | 38.3138 | 3.6263 | 3.0260e-6 |
[0,12] | 16 | 100.8327 | 6.0296 | 2.9328e-6 |
MDDSM+DE(˜α=1.52) | |||||
[¯a,¯b] | iter(Newton) | iter(gmres) | time1(s) | time2(s) | error |
[0,4] | 14 | 290 | 0.2821 | 13.7961 | 2.0411e-6 |
[0,6] | 14 | 323 | 0.4920 | 36.8127 | 2.0268e-6 |
[0,8] | 15 | 421 | 0.9341 | 107.7529 | 2.0266e-6 |
[0,10] | 15 | 443 | 1.5115 | 278.8113 | 2.0266e-6 |
[0,12] | 15 | 445 | 2.3945 | 719.9104 | 2.0266e-6 |
MDDSM+DE(˜α=1.52) | |||||
T | iter(Newton) | iter(gmres) | time1(s) | time2(s) | error |
[0,2] | 14 | 290 | 0.2843 | 13.9283 | 2.0411e-6 |
[2,4] | 14 | 245 | 0.2936 | 12.6400 | 1.0533e-6 |
[4,6] | 14 | 258 | 0.2786 | 13.7926 | 1.0279e-6 |
[6,8] | 14 | 302 | 0.2829 | 14.1546 | 1.9625e-6 |
[8,10] | 14 | 261 | 0.3015 | 13.6505 | 1.0869e-6 |
[10,12] | 14 | 250 | 0.2782 | 13.4784 | 1.0365e-6 |
[12,14] | 14 | 298 | 0.2898 | 14.0763 | 1.8943e-6 |
[14,16] | 14 | 263 | 0.2911 | 13.4321 | 1.3047e-6 |
[16,18] | 14 | 240 | 0.2950 | 13.7441 | 9.9710e-7 |
[18,20] | 14 | 297 | 0.2817 | 14.5544 | 2.0532e-6 |
[20,22] | 14 | 273 | 0.2769 | 13.8349 | 1.7510e-6 |
[22,24] | 14 | 230 | 0.2809 | 13.1796 | 8.9217e-7 |
[24,26] | 14 | 297 | 0.2914 | 14.4809 | 2.0169e-6 |
[26,28] | 14 | 286 | 0.3102 | 13.2578 | 2.0168e-6 |
[28,30] | 14 | 225 | 0.3025 | 12.7572 | 8.2530e-7 |