17
Journal of Computational Physics 282 (2015) 210–226 Contents lists available at ScienceDirect Journal of Computational Physics www.elsevier.com/locate/jcp Mass preserving discontinuous Galerkin methods for Schrödinger equations Wenying Lu a , Yunqing Huang a , Hailiang Liu b,a Hunan Key Laboratory for Computation and Simulation in Science and Engineering, School of Mathematics and Computational Science, Xiangtan University, Xiangtan 411105, PR China b Iowa State University, Mathematics Department, Ames, IA 50011, USA a r t i c l e i n f o a b s t r a c t Article history: Received 19 January 2014 Received in revised form 13 October 2014 Accepted 12 November 2014 Available online 18 November 2014 Keywords: DDG method Schrödinger equation Numerical flux Mass conservation Strang splitting method We construct, analyze and numerically validate a class of mass preserving, direct discontinuous Galerkin (DDG) schemes for Schrödinger equations subject to both linear and nonlinear potentials. Up to round-off error, these schemes preserve the discrete version of the mass of the continuous solution. For time discretization, we use the Crank–Nicolson for linear Schrödinger equations, and the Strang splitting for nonlinear Schrödinger equations, so that numerical mass is still preserved at each time step. The DDG method when applied to linear Schrödinger equations is shown to have the optimal (k + 1)th order of accuracy for polynomial elements of degree k. The numerical tests demonstrate both accuracy and capacity of these methods. © 2014 Elsevier Inc. All rights reserved. 1. Introduction Considered here are Schrödinger equations of the form, iU t + U VU = 0, x R d , t > 0, (1.1) where U is the complex wave function to be determined, and V denotes the energy potential of two forms: one is V = V (x) given, the other is V = f (|U | 2 ), where f (U ) is an arbitrary (smooth) nonlinear real function. The Schrödinger equation is the fundamental equation of physics for describing quantum mechanical behavior. It is often called the Schrödinger wave equation a partial differential equation that describes how the wave function of a physical system evolves over time. One notable feature of the Schrödinger equation is that it is consistent with probability conservation in the sense that ´ |U | 2 dx, also called mass, is invariant in time. It is desirable to design high order mass preserving numerical schemes for solving this equation. In this paper, we develop a class of direct discontinuous Galerkin (DDG) methods for (1.1). Our proposed scheme is high-order accurate, mass preserving, and flexible for arbitrary h and p adaptivity. Optimal error estimates are obtained for smooth solutions to the linear Schrödinger equation. The main motivation for the algorithm discussed in this paper originates from the DDG techniques which have been developed for diffusion equations [29,30], and nonlinear wave equations [4,28,42]. In these papers energy satisfying DDG methods have been developed. These results indicate that the DDG method is a good tool for solving nonlinear PDEs in mathematical physics. Another motivation is that for some wave equations the invariant preserving high order numerical * Corresponding author. E-mail addresses: [email protected] (W. Lu), [email protected] (Y. Huang), [email protected] (H. Liu). http://dx.doi.org/10.1016/j.jcp.2014.11.014 0021-9991/© 2014 Elsevier Inc. All rights reserved.

Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

Journal of Computational Physics 282 (2015) 210–226

Contents lists available at ScienceDirect

Journal of Computational Physics

www.elsevier.com/locate/jcp

Mass preserving discontinuous Galerkin methods for

Schrödinger equations

Wenying Lu a, Yunqing Huang a, Hailiang Liu b,∗a Hunan Key Laboratory for Computation and Simulation in Science and Engineering, School of Mathematics and Computational Science, Xiangtan University, Xiangtan 411105, PR Chinab Iowa State University, Mathematics Department, Ames, IA 50011, USA

a r t i c l e i n f o a b s t r a c t

Article history:Received 19 January 2014Received in revised form 13 October 2014Accepted 12 November 2014Available online 18 November 2014

Keywords:DDG methodSchrödinger equationNumerical fluxMass conservationStrang splitting method

We construct, analyze and numerically validate a class of mass preserving, direct discontinuous Galerkin (DDG) schemes for Schrödinger equations subject to both linear and nonlinear potentials. Up to round-off error, these schemes preserve the discrete version of the mass of the continuous solution. For time discretization, we use the Crank–Nicolson for linear Schrödinger equations, and the Strang splitting for nonlinear Schrödinger equations, so that numerical mass is still preserved at each time step. The DDG method when applied to linear Schrödinger equations is shown to have the optimal (k + 1)th order of accuracy for polynomial elements of degree k. The numerical tests demonstrate both accuracy and capacity of these methods.

© 2014 Elsevier Inc. All rights reserved.

1. Introduction

Considered here are Schrödinger equations of the form,

iUt + �U − V U = 0, x ∈ Rd, t > 0, (1.1)

where U is the complex wave function to be determined, and V denotes the energy potential of two forms: one is V = V (x)given, the other is V = f (|U |2), where f (U ) is an arbitrary (smooth) nonlinear real function. The Schrödinger equation is the fundamental equation of physics for describing quantum mechanical behavior. It is often called the Schrödinger wave equation – a partial differential equation that describes how the wave function of a physical system evolves over time. One notable feature of the Schrödinger equation is that it is consistent with probability conservation in the sense that

´ |U |2dx, also called mass, is invariant in time. It is desirable to design high order mass preserving numerical schemes for solving this equation.

In this paper, we develop a class of direct discontinuous Galerkin (DDG) methods for (1.1). Our proposed scheme is high-order accurate, mass preserving, and flexible for arbitrary h and p adaptivity. Optimal error estimates are obtained for smooth solutions to the linear Schrödinger equation.

The main motivation for the algorithm discussed in this paper originates from the DDG techniques which have been developed for diffusion equations [29,30], and nonlinear wave equations [4,28,42]. In these papers energy satisfying DDG methods have been developed. These results indicate that the DDG method is a good tool for solving nonlinear PDEs in mathematical physics. Another motivation is that for some wave equations the invariant preserving high order numerical

* Corresponding author.E-mail addresses: [email protected] (W. Lu), [email protected] (Y. Huang), [email protected] (H. Liu).

http://dx.doi.org/10.1016/j.jcp.2014.11.0140021-9991/© 2014 Elsevier Inc. All rights reserved.

Page 2: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 211

methods have been shown more accurate than non-conservative methods after long-time numerical integration, see e.g., [4,6,32,42].

There are numerous works in the literature to solve the Schrödinger equations, both linear and nonlinear. For instance, the finite difference method [3,7–9,17,24,38], the finite element method [8,23,25,36], the spectral method [18,19,21,33], and the splitting method [1,20].

The DG method we discuss in this paper is a class of finite element methods using completely discontinuous piecewise polynomial space for the numerical solution and the test function in the spatial variables. The DG discretization results in an extremely local, element based approximation, well suited for hp-adaptivity, maintaining high order of accuracy. They also have excellent provable structure preserving property. The DDG method that we design in this paper enjoys all these nice properties. In the development of DG methods, early success was made mainly for first order PDEs [10,13,14,16,34]; while subtle difficulty arose when applying the DG discretization to second (or higher) order PDEs, which led to the class of the local discontinuous Galerkin (LDG) methods, see [2,5,11,15]. More general information about DG methods for elliptic, parabolic and hyperbolic partial differential equations can be found in the recent books and lecture notes [12,22,35,39].

There are only a few works in the literature for error estimates of the DDG method for higher order PDEs. The main technical difficulty in deriving an optimal error estimate lies in the lack of control of jump terms on cell interfaces. The remedy in [27] is the use of a global projection, which eliminates such troublesome jump terms in the error equation and allows for an effective control of nonlinear convection with the aid of numerical dissipation and projection error bounds. The error estimates using a global projection apply well to conservative DG methods for dispersive PDEs, first in [4] for the generalized KdV equation, and in [26] for the Burgers–Poisson system. A common observation in [4,26]is that for some symmetric choice of numerical fluxes, there is a loss of order of accuracy for polynomials of even de-gree. Following [26,27], we define a global L2 projection dictated by the choice of numerical fluxes, and further obtain an optimal error estimate of order k + 1 for polynomials of degree k for the one-dimensional linear Schrödinger equa-tion.

Some recent attempts have been made to apply the DG discretization to solve the Schrödinger equation, see [31,40,41,43]. In [40], Xu and Shu developed an LDG method to solve the generalized nonlinear Schrödinger equation. For linearized Schrödinger equation, they obtained an error estimate of order k + 1/2 for polynomials of degree k. The optimal er-ror estimate was further obtained in [41] by using special local projections. In [31], Lu, Cai and Zhang presented an LDG method for solving one-dimensional linear Schrödinger equations so that the mass is preserved numerically. Zhang, Yu and Feng presented a mass preserving DDG method in [43] for the one-dimensional coupled nonlinear Schrödinger (CNLS) equation, and in [44] for both one and two dimensional nonlinear Schrödinger (CNLS) equations. In [43,44], the authors adopted a numerical flux as proposed in [30] when motivated by solving a diffusive general-ized Riemann problem. In [44] the conservation property is verified, and further validated by some long time sim-ulation results. Note that the penalty parameter in the DDG numerical flux of the diffusion problem was chosen to ensure the L2 stability. For dispersive equations such as the Schrödinger equation, the DDG flux needs to be refor-mulated so that the mass is preserved. In the present work, we offer a rigorous analysis of the proposed method: (i) we propose a large set of numerical fluxes with an additional parameter θ ∈ [0, 1] beyond the penalty parameter β0, and identify the admissible ones through the mass conservation property; (ii) we present an optimal error analysis of the DDG method when applying to the linear Schrödinger equation, which reveals the role played by the parame-ter β0; (iii) we also discuss how to select proper time discretization so that mass is still preserved at the fully discrete level.

Due to the advantage of being structure-preserving, the Strang splitting [37] and higher order splitting schemes have been widely applied to Schrödinger equations. For instance, the sparse grid pseudo-spectral method [20], and the time-splitting spectral approximations for linear Schrödinger equations in the semiclassical regime [1]. In this pa-per, we couple the Strang splitting technique with the DG method to solve the nonlinear Schrödinger equation so that the numerical mass remains preserved. For the linear Schrödinger equation we use the Crank–Nicolson method for the time discretization, and we prove the mass conservation for the fully discrete schemes. Some numerical examples are given to verify the accuracy and capacity of the DDG method for both linear and nonlinear Schrödinger equa-tions.

The paper is organized as follows: In Section 2, we present the semi-discrete DDG method for the Schrödinger equa-tion (1.1). In Section 3, we extend the DDG method to the two-dimensional Schrödinger equations. The optimal error estimate of the semi-discrete DDG method for the linear Schrödinger equation is presented in Section 4, while a global L2 projection plays a pivotal role. In Section 5, we present some numerical examples to verify the accuracy and capacity of the DDG method for both linear and nonlinear Schrödinger equations. Finally, some concluding remarks are given in Section 6.

Notation Throughout the paper we denote the L2-norm by ‖ · ‖, the L∞-norm by ‖ · ‖∞ , the Hm-norm by ‖ · ‖m , and the Hm-seminorm by | · |m . We may specify the domain Ω if it is a computational cell I j or a master domain I := [−1, 1]. If Ωis the whole domain, we do not specify the domain unless necessary.

Page 3: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

212 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

2. The mass preserving DDG method for Schrödinger equations

2.1. A DDG method for the Schrödinger equation

In this section, we present and analyze a direct discontinuous Galerkin method for the following one dimensional prob-lem:

iUt + Uxx − V U = 0, (2.1)

subject to an initial data

U (x,0) = U0(x), (2.2)

and periodic boundary conditions.We denote the mesh by I j = [x j− 1

2, x j+ 1

2] for j = 1, 2, · · · , N . The center of the cell is x j = (x j− 1

2+ x j+ 1

2)/2 and �x j =

x j+ 12

− x j− 12

. We denote by u+j+ 1

2and u−

j+ 12

the value of u at x j+ 12

, from the right cell I j+1, and from the left cell I j , respectively. We denote the complex piecewise-polynomial space V�x as the space of polynomials of degree at most k in each cell I j , i.e.,

V�x := {υ : υ ∈ Pk(I j) for x ∈ I j, j = 1,2, · · · , N

}.

We now apply the direct discontinuous Galerkin discretization to (2.1): find u ∈ V�x , ∀υ ∈ V�x , such that

I j

utυdx −ˆ

I j

uxυxdx + uxυ∣∣ j+ 1

2

j− 12

+ (u − u)υx∣∣ j+ 1

2

j− 12

−ˆ

I j

V uυdx = 0, (2.3)

where

uxυ∣∣ j+ 1

2

j− 12

:= ux j+ 12υ−

j+ 12

− ux j− 12υ+

j− 12

and

(u − u)υx∣∣ j+ 1

2

j− 12

:= (u− − u

)υ−

x

∣∣j+ 1

2− (

u+ − u)υ+

x

∣∣j− 1

2.

The numerical fluxes ux and u, which are single valued functions defined on cell interfaces, should be selected to preserve the mass conservation for the Schrödinger equation. In other words, we want to choose appropriate numerical fluxes such that

∑Nj=1

´I j

|u|2dx is preserved by the DDG method. One choice for the numerical fluxes is:

ux = (u+

x + u−x

)/2, u = (

u+ + u−)/2. (2.4)

This choice as averages from values in two neighboring cells is symmetric. One may also choose non-symmetric fluxes as follows:

ux = β0[u]h

+ θu+x + (1 − θ)u−

x , u = (1 − θ)u+ + θu−, ∀θ ∈ [0,1], (2.5)

where h = 12 (�x j+1 + �x j) when evaluated at interface x j+1/2, and β0 is a real number to be selected to stabilize the

scheme when necessary. At the boundary of the computational domain we use a periodic extension to determine the numerical flux. In fact, with these numerical fluxes we can prove the mass conservation at the semi-discrete level, which is the most important feature of the Schrödinger equation.

Theorem 2.1 (Mass conservation). The solution to the scheme (2.3), (2.4) or (2.5) satisfies the mass conservation, i.e.,

d

dt

0

|u|2dx = 0. (2.6)

Proof. We take v = u∗ , complex conjugate of u, in (2.3) and subtract its conjugate to obtain

I j

(|u|2)tdx + uxu∗∣∣ j+ 12

j− 12

− ux∗u

∣∣ j+ 12

j− 12

+ (u − u)u∗x

∣∣ j+ 12

j− 12

− (u∗ − u∗)ux

∣∣ j+ 12

j− 12

= 0. (2.7)

Summing up all j = 1, 2, · · ·, N , we obtain

Page 4: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 213

iN∑

j=1

ˆ

I j

(|u|2)tdx +N∑

j=1

uxu∗∣∣ j+ 12

j− 12

−N∑

j=1

ux∗u

∣∣ j+ 12

j− 12

+N∑

j=1

(u − u)u∗x

∣∣ j+ 12

j− 12

−N∑

j=1

(u∗ − u∗)ux

∣∣ j+ 12

j− 12

= 0. (2.8)

Using periodic boundary conditions, (2.8) reduces to

id

dt

0

|u|2dx −N∑

j=1

(A j+ 1

2− A∗

j+ 12

) = 0,

where

A j+ 12

= u∗[ux] + ux[u∗] − [

u∗ux].

It can be verified that for numerical fluxes in (2.5), we have

A j+ 12

= β0

h

∣∣[u]∣∣2,

which is real for any β0 ∈ R. Hence A j+ 12

− A∗j+ 1

2= 0, leading to (2.6) as claimed. �

Remark 2.2. Numerical performance for 1D case shows no difference of the scheme whether using the penalty term β0[u]/hor not. However, in the 2D case, the penalty term β0[u]/h indeed plays a special role of stabilization for polynomials of even degree. In contrast, optimal accuracy for polynomial elements of odd degree can be achieved for β0 = 0. We also point out that for k = even, it appears necessary to have β0 �= 0. Optimal order of accuracy is numerically observed for both β0 > 0and β0 < 0.

Remark 2.3. For non-periodic boundary conditions, the mass is not necessarily conserved in time. There is a need to modify the numerical flux at the domain boundary so that the imposed boundary conditions are satisfied by the numerical solution. For example, in one dimensional case, if the Schrödinger equation is solved on x ∈ [a, b], t > 0, subject to initial data and boundary conditions u(a, t) = ua and u(b, t) = ub , then we choose the numerical flux as follows:⎧⎨⎩ ux = (u+

x + u−x )/2, u = (u+ + u−)/2, at x j+1/2,1 < j < N,

ux = u+x , u = ua, at x1/2 = a,

ux = u−x , u = ub, at xN+1/2 = b.

We further discretize (2.3) in time by the Crank–Nicolson method to obtain a fully discrete DDG formulation: find un+ 1

2 ∈ V�x , such that ∀υ ∈V�x ,

I j

un+ 12 − un

�t/2υdx −

ˆ

I j

un+ 1

2x υxdx + ux

n+ 12 υ

∣∣ j+ 12

j− 12

+ (un+ 1

2 − un+ 12)υx

∣∣ j+ 12

j− 12

−ˆ

I j

V n+ 12 un+ 1

2 υdx = 0, (2.9)

and we define un+1 = 2un+ 12 − un , and u0 = U0. In the above formulation, V n+ 1

2 = V (x) or f (|un+ 12 |2).

Corollary 2.4 (Mass conservation for fully discrete scheme). The solution to scheme (2.9) and (2.5) satisfies the mass conservation

0

∣∣un+1∣∣2

dx =Lˆ

0

∣∣un∣∣2

dx. (2.10)

For u0 = U0 , we have L0 |un|2dx = ´ L

0 |U0|2dx, ∀n ∈N.

Proof. We use un+1 = 2un+ 12 − un and then take v = (un+ 1

2 )∗ = (un+1)∗+(un)∗2 in (2.9); the resulting relation when summed

up over j = 1, 2, · · ·, N and subtracted by its conjugate, similar to that in the proof of Theorem 2.1, gives

i

(N∑

j=1

ˆ

I j

un+1 − un

�t

(un+1)∗ + (un)∗

2dx +

N∑j=1

ˆ

I j

(un+1)∗ − (un)∗

�t

un+1 + un

2dx

)= 0. (2.11)

By calculating, we have

i

�t

(N∑

j=1

ˆ

I

(un+1(un+1)∗ − un(un)∗))

dx = 0. (2.12)

j

Page 5: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

214 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

Hence (2.10) as desired. �2.2. The Strang splitting method for the nonlinear problem

We propose a Strang splitting DDG method to solve the nonlinear Schrödinger equation with V = f (|U |2). From time t = tn to time t = tn+1, we split the Schrödinger equation (2.1) via the Strang splitting method. In other words, Eq. (2.1) is solved in three steps. We solve

iUt = V U (2.13)

for half time step, followed by solving

iUt = −Uxx (2.14)

for one time step; and then followed by solving (2.13) for another half time step. We solve ODE (2.13) exactly, and solve (2.14) by the DDG method. The detailed algorithm is as follows:

Step 1: Given un , the solution of ODE (2.13) after a half time step is given by

u� = un exp(−i f

(∣∣un∣∣2)�t/2

). (2.15)

Step 2: Find u ∈ V�x , by the DDG method for (2.14), such that for all υ ∈ V�x ,

I j

u − u�

�t/2υdx −

ˆ

I j

uxυxdx + uxυ∣∣ j+ 1

2

j− 12

+ (u − u

)υx

∣∣ j+ 12

j− 12

= 0, j = 1,2, ..., N. (2.16)

We then define

u�� = 2u − u�. (2.17)

Step 3: The solution of ODE (2.13) with initial data u�� is given by

un+1 = u�� exp(−i f

(∣∣u��∣∣2)�t/2

). (2.18)

Corollary 2.5 (Mass conservation for the Strang splitting DDG scheme). The solution to the scheme (2.15)–(2.18) satisfies the mass conservation

0

∣∣un+1∣∣2

dx =Lˆ

0

∣∣un∣∣2

dx. (2.19)

Proof. Eq. (2.15) yields∥∥un∥∥ = ∥∥u�

∥∥.

Following the proof of Corollary 2.4, (2.16) and (2.17), we have∥∥u��∥∥ = ∥∥2u − u�

∥∥ = ∥∥u�∥∥.

By Eq. (2.17), we also get∥∥un+1∥∥ = ∥∥u��

∥∥,

hence (2.19) is established. �3. A DDG method for the two-dimensional Schrödinger equation

In this section, we extend the DDG method to two-dimensional Schrödinger equations

iUt + �U − V U = 0, 0 ≤ x, y ≤ L, (3.1)

with an initial data

U (x, y,0) = U0(x, y), (3.2)

and periodic boundary conditions. We partition the domain Ω = [0, L]2 into rectangular meshes

Ω =N,M∑

I j,l, I j,l = I j × Il = [x j− 12, x j+ 1

2] × [yl− 1

2, yl+ 1

2].

j,l

Page 6: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 215

For simplicity, we adopt only uniform meshes of size � = max(�x, �y). We again denote the complex finite element space by

V� = {υ : υ|I j,l ∈ Pk,∀I j,l ⊂ Ω

},

where Pk is a polynomial of degree at most k. Then the DDG method in two dimensional case can be described as follows: find u ∈V�x , such that ∀υ ∈ V�x ,

I j,l

utυdxdy −¨

I j,l

uxυxdxdy +ˆ

Il

(uxυ + (u − u)υx

)∣∣xj+ 1

2x

j− 12

dy

−¨

I j,l

u yυydxdy +ˆ

I j

(u yυ + (u − u)υy

)∣∣yl+ 1

2y

l− 12

dx −¨

I j,l

V uυdxdy = 0. (3.3)

The numerical fluxes (the “hats”) are defined similar to the one-dimensional cases, namely

u|xj+ 1

2= (

(1 − θ)u+ + θu−)∣∣x

j+ 12

, u|yl+ 1

2= (

(1 − θ)u+ + θu−)∣∣y

l+ 12

, (3.4)

ux|xj+ 1

2=

(β0[u]�x

+ θu+x + (1 − θ)u−

x

)∣∣∣∣x

j+ 12

, u y|yl+ 1

2=

(β0[u]�y

+ θu+y + (1 − θ)u−

y

)∣∣∣∣y

l+ 12

. (3.5)

With such fluxes in (3.4), (3.5), we still have mass conservation for the semidiscrete scheme (3.3). The proof follows the same lines as in the one-dimensional case, details are omitted.

Corollary 3.1 (Mass conservation for semidiscrete scheme). The solution to the scheme (3.3), with numerical fluxes (3.4) and (3.5) for any β0 ∈ R, satisfies the mass conservation,

d

dt

¨

Ω

|u|2dxdy = 0 (3.6)

for any θ ∈ [0, 1].

We further discretize (3.3) in time by the Crank–Nicolson method to obtain a fully discrete DDG formulation: Find un+ 12 ∈

V�x such that, ∀υ ∈V�x ,

I j,l

un+ 12 − un

�t/2υdxdy −

¨

I j,l

un+ 1

2x υxdxdy +

ˆ

Il

(ux

n+ 12 υ + (

un+ 12 − un+ 1

2)υx

)∣∣xj+ 1

2x

j− 12

dy

−¨

I j,l

un+ 1

2y υydxdy +

ˆ

I j

(u y

n+ 12 υ + (

un+ 12 − un+ 1

2)υy

)∣∣yl+ 1

2y

l− 12

dx −¨

I j,l

V n+ 12 un+ 1

2 υdxdy

= 0, (3.7)

where V (n+ 12 ) = V (x) or f (|un+ 1

2 |2). We then define

un+1 = 2un+ 12 − un.

The mass conservation still holds.

Proposition 3.2 (Mass conservation for fully discrete scheme). The solution to the scheme (3.7), with numerical fluxes (3.4) and (3.5)for any β0 ∈R, satisfies the mass conservation¨

Ω

∣∣un+1∣∣2

dxdy =¨

Ω

∣∣un∣∣2

dxdy.

If we take u0 = U0(x, y), we have Ω

|un|2dxdy =˜Ω

|U0|2dxdy.

Finally, we discuss extensions to more general meshes. Let {K } be shape-regular meshes. The DDG scheme for the 2D Schrödinger equation is defined by

Page 7: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

216 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

K

utυdxdy −ˆ

K

∇u · ∇υdxdy +ˆ

∂ K

uνυint K ds −

ˆ

∂ K

(u − u)υ int Kν ds −

ˆ

K

V uυdxdy = 0, (3.8)

where ν = (νx, νy) is the outward normal unit along the cell boundary ∂ K , υ int K denotes υ evaluated from inside K and uν = ∇u · ν is differentiation in ν direction. The numerical fluxes are of the form:

uν = ∂u

∂ν= β0

[u]h

+ uextKn + uintK

ν

2and u = uextK + uintK

2.

Here uextK represents u evaluated from outside of K (inside the neighboring cell), and h denotes the length of the associated interface.

Remark 3.3. For the nonlinear equation, we follow the one dimensional treatment by using the Strang splitting method in our numerical simulation, details are omitted.

4. Error estimates

In this section, we discuss error estimates for the linear Schrödinger equation

iUt + Uxx − V U = 0, V = V (x), (4.1)

subject to initial data U (t = 0) = U0, and periodic boundary conditions. From the established mass conservation result and from the approximation properties of the finite element space V�x , we proceed to estimate the error between the exact solution U and the numerical solution u.

The idea is to introduce a global projection PU such that

u − U = e − ep (4.2)

with e = u −PU and ep = U −PU , and

‖u − U‖ = ‖e − ep‖ ≤ ‖e‖ + ‖ep‖. (4.3)

The error estimate thus consists of two standard steps: (i) to estimate the projection error ‖ep‖, and (ii) to estimate the evolution error ‖e‖.

The global projection PU on the domain I = [0, L] is defined so that PU |I j ∈ Pk(I j) for k ≥ 1, satisfyingˆ

I j

(PU − U )υdx = 0, ∀υ ∈ Pk−2(I j), j = 1, · · · , N (4.4)

and

PU | j+ 12

= U (x j+ 12), PUx| j+ 1

2= Ux(x j+ 1

2), j = 1, · · · , N, (4.5)

where

PU := (1 − θ)PU+ + θPU−, PUx := β0[PU ]h

+ θPU+x + (1 − θ)PU−

x . (4.6)

At the domain boundary periodic extension is adopted to be consistent with the selected numerical flux. For piecewise smooth function U , we need to replace U (x j+ 1

2) by U j+ 1

2, and Ux(x j+ 1

2) by Ux( j+ 1

2 ), respectively. We have the following

result.

Lemma 4.1. The projection P is uniquely defined for β0 �= k2 [(k + 1) + (1 − 2θ)2(k − 1)] when N + k is even, and for β0 �= k

2 [(k −1) + (1 − 2θ)2(k + 1)] when N + k is odd.

Proof. First, we show the existence of the global projection PU . Set

PU (x)∣∣

I j=

k+1∑l=1

c jl ϕl(ξ), ξ = x − x j

�x/2, j = 1, · · · , N, (4.7)

where {ϕl}k+11 is the Legendre basis, which is a sequence of orthogonal polynomials on [−1, 1]. Eq. (4.4) and the orthogo-

nality of the Legendre polynomials imply that one may take v = ϕi to get

c ji = 2i − 1

2

1ˆU

(x j + h

)ϕi(ξ)dξ, i = 1, · · · ,k − 1, (4.8)

−1

Page 8: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 217

where we have used ´ 1−1 ϕ2

i (ξ)dξ = 22i−1 . It remains to determine both c j

k and c jk+1, j = 1, · · · , N . The condition (4.5) gives⎧⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎩

θ

k+1∑l=1

c jl ϕl(1) + (1 − θ)

k+1∑l=1

c j+1l ϕl(−1) = U j+ 1

2,

−β0

k+1∑l=1

c jl ϕl(1) + β0

k+1∑l=1

c j+1l ϕl(−1) + 2(1 − θ)

k+1∑l=1

c jl ϕ

′l (1) + 2θ

k+1∑l=1

c j+1l ϕ′

l (−1) = hUx( j+ 12 )

.

(4.9)

Using the periodic boundary condition, the matrix form of Eq. (4.9) is as follows:

D−→c = −→b , (4.10)

where −→c = (c j), −→b = (b j), with

c j =[

c jk

c jk+1

],

b j =[

b j1

b j2

]

=[

U j+ 12

− (1 − θ)∑k−1

l=1 c j+1l ϕl(−1) − θ

∑k−1l=1 c j

l ϕl(1)

hUx( j+ 12 )

− 2(1 − θ)∑k−1

l=1 c jl ϕ

′l (1) − 2θ

∑k−1l=1 c j+1

l ϕ′l (−1) + β0

∑k−1l=1 c j

l ϕl(1) − β0∑k−1

l=1 c j+1l ϕl(−1)

],

(4.11)

for j = 1, · · · , N . The coefficient matrix D is as follows:

D =

⎛⎜⎜⎜⎜⎜⎜⎝

A B 0 · · · · · · 00 A B 0 · · · 0...

. . .. . .

. . ....

......

. . .. . .

. . . A BB · · · · · · · · · · · · A

⎞⎟⎟⎟⎟⎟⎟⎠N×N

, (4.12)

where

A =(

θϕk(1) θϕk+1(1)

−β0ϕk(1) + 2(1 − θ)ϕ′k(1) −β0ϕk+1(1) + 2(1 − θ)ϕ′

k+1(1)

),

B =(

(1 − θ)ϕk(−1) (1 − θ)ϕk+1(−1)

β0ϕk(−1) + 2θϕ′k(−1) β0ϕk+1(−1) + 2θϕ′

k+1(−1)

).

Recall that

ϕk(±1) = (±1)k−1, k = 1,2, · · · , ϕ′k(±1) = 1

2(±1)kk(k − 1), k = 2,3, · · · ,

then a direct calculation shows that

det(A) = 2θ(1 − θ)[φ′

k+1(−1) − φ′k(−1)

] = 2kθ(1 − θ).

For 0 < θ < 1, and k ≥ 1, A−1 exists; hence the determinant of D can be expressed as

det(D) = |A|N∣∣I + (−1)N−1(A−1 B

)N ∣∣.We want to show det(D) �= 0. This is the case if the eigenvalue of A−1 B can’t be −1, or det(A + B) �= 0 when N is odd; or det(A − B) �= 0 when N is even.

In fact, when both N and k are odd or even, 0 < θ < 1, a direct calculation gives

det(A + B) = det(A − B)

=∣∣∣∣ 1 2θ − 1

k(k − 1)(1 − 2θ) −2β0 + k(k + 1)

∣∣∣∣= −2β0 + k(k + 1) + (1 − 2θ)2k(k − 1) �= 0,

for β0 �= k [(k + 1) + (1 − 2θ)2(k − 1)].

2
Page 9: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

218 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

If k + N is odd, then

det(A + B) = det(A − B)

=∣∣∣∣ 2θ − 1 1−2β0 + k(k − 1) k(k + 1)(1 − 2θ)

∣∣∣∣= 2β0 − k(k − 1) − (1 − 2θ)2k(k + 1) �= 0,

for β0 �= k2 [(k − 1) + (1 − 2θ)2(k + 1)]. In addition, when θ = 0 or 1, (4.4)–(4.5) becomes a local projection, whose existence

is similar but easier to verify. In a word, for any θ ∈ [0, 1], PU is uniquely defined with a proper choice of β0 as stated. �Remark 4.2. In most cases, β0 = 0 suffices to ensure the existence of the projection except for the case k = 1, θ = 1/2 and N = even.

Lemma 4.3. If the global projection is uniquely defined, then we have the projection error

‖U −PU‖ ≤ Chk+1|U |k+1, (4.13)

where C is independent of h.

Proof. Let I = [−1, 1] be the master domain of I j through the mapping x = x j + h2 ξ , and define

U j(ξ) = U |I j = U

(x j + h

).

By using the Cauchy–Schwarz inequality, we have from (4.8) that for j = 1, ..., N ,∣∣c ji

∣∣2 ≤ 2i − 1

2

∥∥U j(ξ)∥∥2

I , i = 1, · · · ,k − 1.

Then

N∑j=1

k−1∑i=1

∣∣c ji

∣∣2 ≤ (k − 1)2

2

N∑j=1

∥∥U j(ξ)∥∥2

I . (4.14)

From the proved fact that det(D) �= 0 and (4.10), it follows

N∑j=1

(c j)2 = (

c j)T (c j) = (

b j)T (D−1)T

D−1(b j) ≤ CN∑

j=1

(b j)2

,

i.e.,

N∑j=1

(c j

k

)2 +N∑

j=1

(c j

k+1

)2 ≤ C

(N∑

j=1

(b j

1

)2 +N∑

j=1

(b j

2

)2

). (4.15)

From (4.11) and (4.14), it follows

N∑j=1

(b j

1

)2 ≤N∑

j=1

[(U j(1)

)2 +k−1∑l=1

(c j+1

l

)2 +k−1∑l=1

(c j

l

)2

]≤ C

N∑j=1

‖U j‖21, I

,

where |U j(1)| ≤ |U j(ξ)|∞, I ≤ C‖U j‖1, I , and

N∑j=1

(b j

2

)2 ≤N∑

j=1

[h2

∣∣U j,x(ξ)∣∣2∞, I + C

k−1∑l=1

(c j

l

)2 + Ck−1∑l=1

(c j+1

l

)2 + β20

k−1∑l=1

(c j

l

)2 + β20

k−1∑l=1

(c j+1

l

)2

]

≤ CN∑

j=1

‖U j‖21, I

.

Substitution of these into (4.15) gives

N∑(c j

k

)2 +N∑(

c jk+1

)2 ≤ CN∑

‖U j‖21, I

. (4.16)

j=1 j=1 j=1
Page 10: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 219

Hence, by (4.14) and (4.16),

‖PU‖2 =N∑

j=1

‖PU‖2I j

= h

2

N∑j=1

[k−1∑l=1

(c j

l

)2‖ϕl‖2I+ (

c jk

)2‖ϕk‖2I+ (

c jk+1

)2‖ϕk+1‖2I

]

≤ ChN∑

j=1

[k−1∑l=1

∣∣c jl

∣∣2 + (c j

k

)2 + (c j

k+1

)2

]

≤ ChN∑

j=1

‖U j‖21, I

. (4.17)

Therefore, using the fact that Pv = v for any v ∈V�x , we have

‖U −PU‖2 = infv∈V�x

∥∥(I −P)(U + v)∥∥2 ≤ Ch

N∑j=1

infv∈Pk( I)

‖U j + v‖21, I

≤ ChN∑

j=1

|U j|2k+1, I= Ch2k+2|U |2k+1. �

Next, we estimate the error e = u −PU . Define

B j(u,υ) = iˆ

I j

utυdx −ˆ

I j

uxυxdx + uxυ∣∣ j+ 1

2

j− 12

+ (u − u)υx∣∣ j+ 1

2

j− 12

−ˆ

I j

V uυdx, (4.18)

where the fluxes are given by (2.5). Obviously, ∀υ ∈ V�x ,

B j(u,υ) = 0, (4.19)

and the scheme consistency yields

B j(U ,υ) = 0. (4.20)

This when using the linearity of the operator B gives

B j(U − u,υ) = 0.

That is,

B j(ep,υ) = B j(e,υ). (4.21)

We choose υ = e∗ , and then take the difference between the resulting equation and its conjugate, we obtain upon further summation over j,

N∑j=1

(B j

(ep, e∗) − B∗

j

(ep, e∗)) =

N∑j=1

(B j

(e, e∗) − B∗

j

(e, e∗)). (4.22)

The right-hand side of (4.22) is

N∑j=1

(B j

(e, e∗) − B∗

j

(e, e∗)) = i

d

dt

0

|e|2dx. (4.23)

The left-hand side of (4.22) is decomposed into several terms as

N∑j=1

(B j

(ep, e∗) − B∗

j

(ep, e∗)) = I + II + III + IV, (4.24)

where

Page 11: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

220 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

I = i

0

(∂tepe∗ + ∂te∗

pe)dx,

II =N∑

j=1

(ˆI j

epe∗xxdx + ∂xepe∗∣∣ j+ 1

2

j− 12

− epe∗x

∣∣ j+ 12

j− 12

),

III =N∑

j=1

(−ˆ

I j

e∗pexxdx − ∂xe∗

pe∣∣ j+ 1

2

j− 12

+ e∗pex

∣∣ j+ 12

j− 12

)= −II∗,

IV = −Lˆ

0

(V epe∗ − V e∗

pe)dx.

By the Schwartz inequality, we have

|I| ≤ 2‖∂tep‖‖e‖, |IV| ≤ 2|V |∞‖ep‖‖e‖. (4.25)

By the definition of the projection of PU , all three terms in II vanish, so do terms in III. Then, (4.23), (4.24) together with (4.25) lead to

d

dt

0

|e|2dx ≤ |I| + |IV| ≤ 2‖∂tep‖‖e‖ + 2|V |∞‖ep‖‖e‖,

i.e.,

d

dt‖e‖ ≤ ‖∂tep‖ + |V |∞‖ep‖. (4.26)

Applying (4.13) to both ep and ∂tep , we obtain

‖ep‖ + ‖∂tep‖ ≤ Chk+1(|U |k+1 + |Ut |k+1). (4.27)

Hence

d

dt‖e‖ ≤ Chk+1(|Ut |k+1 + |V |∞|U |k+1

). (4.28)

Integration in time yields

∥∥e(t)∥∥ ≤ ∥∥e(0)

∥∥ + Chk+1

0

(|Ut |k+1 + |V |∞|U |k+1)ds. (4.29)

For numerical fluxes (2.5), this estimate can be proved in an entirely same manner. Combining the above two steps we are able to conclude the following.

Theorem 4.4 (Error estimate). The error between the exact solution U of (2.1) and the numerical solution u of (2.3) with numerical fluxes (2.4) or (2.5) satisfies

‖U − u‖ ≤ ‖u0 − U0‖ + Chk+1

(|U0|k+1 + |U |k+1 +

0

(|Ut |k+1 + |V |∞|U |k+1)ds

).

In fact,∥∥e(0)∥∥ = ‖u0 −PU0‖ ≤ ‖u0 − U0‖ + ‖PU0 − U0‖ ≤ ‖u0 − U0‖ + Chk+1|U0|k+1. (4.30)

Substitution of estimates in (4.13), (4.29) and (4.30) into (4.3) gives

‖U − u‖ ≤ ‖ep‖ + ‖e‖ (4.31)

≤ ‖u0 − U0‖ + Chk+1

(|U0|k+1 + |U |k+1 +

0

(|Ut |k+1 + |V |∞|U |k+1)ds

).

Page 12: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 221

Table 1Accuracy test for LS equation (5.1) with the solution (5.2).

θ N �t Real part Imag part

L2 error Order L∞ error Order L2 error Order L∞ error Order

p2 0 40 1/300 0.0367 – 0.0517 – 0.0121 – 0.0170 –80 1/900 0.0041 3.1621 0.0058 3.1560 0.0013 3.2184 0.0018 3.2395

160 1/2700 4.5726E−04 3.1645 6.4654E−04 3.1652 1.3605E−04 3.2563 1.9237E−04 3.2260320 1/8100 5.0438E−05 3.1804 7.1326E−05 3.1802 1.5399E−05 3.1432 2.1777E−05 3.1430

1/4 40 1/300 0.0367 – 0.0517 – 0.0121 – 0.0171 –80 1/900 0.0041 3.1621 0.0058 3.1560 0.0012 3.3339 0.0018 3.2479

160 1/2700 4.5886E−04 3.1595 6.4881E−04 3.1602 1.4002E−04 3.0993 1.9799E−04 3.1845320 1/8100 5.0435E−05 3.1856 7.1323E−05 3.1854 1.4845E−05 3.2376 2.0994E−05 3.2374

1/2 40 1/300 0.0366 – 0.0516 – 0.0121 – 0.0171 –80 1/900 0.0041 3.1581 0.0058 3.1532 0.0012 3.3339 0.0018 3.2479

160 1/2700 4.5509E−04 3.1714 6.4347E−04 3.1721 1.3715E−04 3.1292 1.9392E−04 3.2145320 1/8100 5.0695E−05 3.1662 7.1690E−05 3.1660 1.5955E−05 3.1037 2.2562E−05 3.1035

3/4 40 1/300 0.0367 – 0.0517 – 0.0121 – 0.0171 –80 1/900 0.0041 3.1621 0.0058 3.1560 0.0012 3.3339 0.0018 3.2479

160 1/2700 4.5886E−04 3.1595 6.4881E−04 3.1602 1.4002E−04 3.0993 1.9799E−04 3.1845320 1/8100 5.0435E−05 3.1856 7.1323E−05 3.1854 1.4845E−05 3.2376 2.0994E−05 3.2374

p2 1 40 1/300 0.0367 – 0.0517 – 0.0121 – 0.0170 –80 1/900 0.0041 3.1621 0.0058 3.1560 0.0013 3.2184 0.0018 3.2395

160 1/2700 4.5726E−04 3.1645 6.4654E−04 3.1652 1.3605E−04 3.2563 1.9237E−04 3.2260320 1/8100 5.0438E−05 3.1804 7.1327E−05 3.1802 1.5399E−05 3.1432 2.1778E−05 3.1429

Uniform meshes with N cells at t = 1 with q = 12 and α = η = m = 1.

Remark 4.5. The above result is valid only for one-dimensional case. In the multi-dimensional case, one needs a different projection. One option is to use a projection of tensor product in each variable on every element as proposed in [27] for convection–diffusion problems. However, for the case of Schrödinger equations, we have not been able to obtain the optimal error estimate due to lack of the coercivity of the DG operator B .

5. Numerical results

In this section, we present some numerical examples to illustrate both accuracy and capacity of the proposed DDG method for both linear and nonlinear Schrödinger equations. For linear Schrödinger equations, the Crank–Nicolson method is adopted in time discretization. For nonlinear Schrödinger equations, we use the Strang splitting method. Both methods are second order in time. In order to get k + 1-th order in spatial accuracy, we take a small time step, say �t ∼ hk/2+1, so that the error induced from time discretization, (�t)2 ∼ hk+2, is not dominating.

Example 5.1. Consider the numerical solution to the linear Schrödinger equation{iUt + ηUxx + qU = 0, t > 0,0 ≤ x ≤ 1,

U (x,0) = U0(x),(5.1)

with periodic boundary conditions. For initial data U0 = α sin(2mπx), the exact solution is

U (x, t) = α exp(i(q − 4ηk2π2)t

)sin(2mπx). (5.2)

The L2 errors, L∞ errors and the order of accuracy at t = 1 for P 2 elements are given in Table 1. We see that, regardless of the choice of θ ∈ [0, 1], the optimal (k + 1)-th order of accuracy is observed when using P 2 elements. Therefore, in the remaining tests we shall take only θ = 1/2. The results for t = 1 with P 1 and P 3 elements are given in Table 2, and the results for t = 100 with P 2 and P 3 elements are given in Table 3. The mass conservation is shown in Table 4, and plotted in Fig. 1.

Example 5.2. We consider an accuracy test for the nonlinear Schrödinger equation{iUt + Uxx + 2|U |2U = 0, t > 0,−20 ≤ x ≤ 20,

U (x,0) = U0(x),(5.3)

with periodic boundary conditions. For initial data U0 = sech(x)exp(2ix), the exact solution is

U (x, t) = sech(x − 4t)exp(i(2x − 3t)

). (5.4)

Page 13: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

222 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

Table 2Accuracy test for LS equation (5.1) with the solution (5.2).

N �t Real part Imag part

L2 error Order L∞ error Order L2 error Order L∞ error Order

p1 80 1/300 0.0231 – 0.0327 – 0.0076 – 0.0107 –160 1/600 0.0058 1.9938 0.0082 1.9956 0.0018 2.0780 0.0026 2.0410320 1/1200 0.0015 1.9511 0.0021 1.9652 4.5106E−04 1.9966 6.3786E−04 2.0272640 1/2400 3.6466E−04 2.0403 5.1570E−04 2.0258 1.1248E−04 2.0037 1.5907E−04 2.0036

p3 20 1/150 0.1397 – 0.1952 – 0.0602 – 0.0841 –40 1/600 0.0091 3.9403 0.0129 3.9195 0.0028 4.4263 0.0039 4.430680 1/2400 4.9296E−04 4.2063 6.9661E−04 4.2109 2.2044E−04 3.6670 3.1151E−04 3.6461

160 1/9600 3.7143E−05 3.7303 5.2517E−05 3.7295 1.7050E−05 3.6925 2.4107E−05 3.6918

Uniform meshes with N cells at t = 1 with q = 12 and α = η = m = 1.

Table 3Accuracy test for LS equation (5.1) with the solution (5.2).

N �t Real part Imag part

L2 error Order L∞ error Order L2 error Order L∞ error Order

p2 40 1/1200 0.1957 – 0.2759 – 0.1159 – 0.1634 –80 1/3600 0.0203 3.2691 0.0287 3.2650 0.0163 2.8299 0.0231 2.8224

160 1/10 800 0.0023 3.1418 0.0032 3.1649 0.0019 3.1008 0.0027 3.0969320 1/32 400 2.5182E−04 3.1912 3.5612E−04 3.1676 2.1085E−04 3.1717 2.9817E−04 3.1788

p3 20 1/1000 0.3112 – 0.4347 – 0.1489 – 0.2080 –40 1/4000 0.0169 4.2027 0.0238 4.1910 0.0137 3.4422 0.0193 3.429980 1/16 000 0.0011 3.9414 0.0016 3.8948 8.5718E−04 3.9984 0.0012 4.0075

160 1/64 000 7.9484E−05 3.7907 1.1239E−04 3.8315 5.8059E−05 3.8840 8.2093E−05 3.8696

Uniform meshes with N cells at t = 100 with q = 12 and α = η = m = 1.

Table 4Mass test for LS equation (5.1) with the solution (5.2).

N = 20 N = 40 N = 80 N = 160 N = 320

t = 1 p1 0.5000 0.5000 0.5000 0.5000 0.5000p2 0.5000 0.5000 0.5000 0.5000 0.5000p3 0.5000 0.5000 0.5000 0.5000 0.5000

t = 100 p1 0.5000 0.5000 0.5000 0.5000 0.5000p2 0.5000 0.5000 0.5000 0.5000 0.5000p3 0.5000 0.5000 0.5000 0.5000 0.5000

Uniform meshes with N cells with q = 12 , α = η = m = 1.

Fig. 1. The mass´ |u|2dx changes over time [1,100]. P 2, N = 40, q = 1

2 , α = η = m = 1.

Page 14: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 223

Table 5Accuracy test for NLS equation (5.3) with the solution (5.4).

N �t Real part Imag part

L2 error Order L∞ error Order L2 error Order L∞ error Order

p2 40 1.0E−02 0.4179 – 0.3855 – 0.4430 – 0.3805 –80 2.5E−03 8.144E−02 2.3593 9.6766E−02 1.9942 8.3559E−02 2.4064 8.9148E−02 2.0936

160 6.25E−04 1.1280E−02 2.8520 1.3619E−02 2.8289 1.1585E−02 2.8505 1.3306E−02 2.7441320 1.5625E−04 1.2832E−03 3.1359 1.8856E−03 2.8525 1.3045E−03 3.1507 1.7634E−03 2.9156

p3 40 4.0E−02 0.0920 – 0.0738 – 0.0968 – 0.0746 –80 1.0E−02 2.2651E−03 5.3440 3.0541E−03 4.5948 2.2613E−03 5.4198 2.6133E−03 4.8352

160 2.5E−03 8.0325E−05 4.8176 9.1759E−05 5.0568 8.0506E−05 4.8119 1.0519E−04 4.6348320 6.25E−04 4.5269E−06 4.1493 5.2040E−06 4.1402 4.5379E−06 4.1490 5.6135E−06 4.2280

Uniform meshes with N cells at t = 1. Periodic boundary condition in [−20, 20].

Table 6Mass test for (5.3) with the solution (5.4).

t = 1 t = 10 t = 30 t = 50 t = 100

p2 N = 40 2.0000 2.0000 2.0000 2.0000 2.0000N = 80 2.0000 2.0000 2.0000 2.0000 2.0000N = 160 2.0000 2.0000 2.0000 2.0000 2.0000N = 320 2.0000 2.0000 2.0000 2.0000 2.0000

p3 N = 40 2.0000 2.0000 2.0000 2.0000 2.0000N = 80 2.0000 2.0000 2.0000 2.0000 2.0000N = 160 2.0000 2.0000 2.0000 2.0000 2.0000N = 320 2.0000 2.0000 2.0000 2.0000 2.0000

Fig. 2. The mass´ |u|2dx changes over time [1,100]. P 2, N = 40. Periodic boundary condition in [−20,20].

The L2 errors, L∞ errors and the order of accuracy are given in Table 5. The mass evolution is given in Table 6 and Fig. 2. We see that the DDG scheme with Pk elements is (k + 1)-th order, and the mass conservation is observed.

Example 5.3. We consider the NLS equation

iUt + Uxx + 2|U |2U = 0, t > 0,−25 ≤ x ≤ 25, (5.5)

subject to the initial condition

U (x,0) =2∑

j=1

exp

(1

2ic j(x − x j)

)sech(x − x j), (5.6)

and the periodic boundary conditions.

In this example, we show the process of the two solitons when they meet, collide and separate by displaying |U (x, t)| in Fig. 3 with P 2 element.

Example 5.4. We consider an accuracy test for the two-dimensional nonlinear Schrödinger equation

iUt + Uxx + U yy + 2|U |2U = 0, (5.7)

Page 15: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

224 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

Fig. 3. The soliton propagation of Eq. (5.5) with initial condition (5.6). c1 = 4, x1 = −10, c2 = −4, x2 = 10.

Table 7Accuracy test for two-dimensional NLS equation (5.7) with the solution (5.8).

N �t Real part Imag part

L2 error Order L2 error Order

p2

β0 = 1010 × 10 2.0E−02 6.24699E−03 – 6.24699E−03 –20 × 20 5.0E−03 9.89092E−04 2.6590 9.89091E−04 2.659040 × 40 1.25E−03 1.14026E−04 3.1167 1.14022E−04 3.116880 × 80 3.125E−04 9.97793E−06 3.5145 9.9342E−06 3.5208

p2

β0 = −510 × 10 2.0E−02 0.0240598 – 0.0240598 –20 × 20 5.0E−03 3.40859E−03 2.8194 3.40859E−03 2.819440 × 40 1.25E−03 3.71719E−04 3.1969 3.71718E−04 3.196980 × 80 3.125E−04 5.42904E−05 2.7754 5.42823E−05 2.7757

p2

β0 = 010 × 10 2.0E−02 0.0685356 – 0.0685356 –20 × 20 5.0E−03 0.010574 2.6963 0.010574 2.696340 × 40 1.25E−03 6.34472E−04 4.0588 6.34471E−04 4.058880 × 80 3.125E−04 1.35366E−04 2.2287 1.35363E−04 2.2287

p3

β0 = 010 × 10 2.0E−02 1.31818E−03 – 1.31818E−03 –20 × 20 5.0E−03 7.52547E−05 4.1306 7.52489E−05 4.130740 × 40 1.25E−03 4.42747E−06 4.0872 4.328E−06 4.1199

Uniform meshes with N cells at t = 1 with A = 1, c1 = c2 = 1.Periodic boundary condition in [0, 2π ].

which has a plane wave solution

U (x, t) = A exp(i(c1x + c2 y − ωt)

), (5.8)

where ω = c21 + c2

2 − 2|A|2, A, c1, c2 are all constants.

In Table 7, we discuss the L2 errors and the order of accuracy when β0 takes different values. We see that, for polyno-mials of even degree, the term β0[u]/h plays a special role of stabilization. In contrast, for polynomials of odd degree k, the optimal k + 1-th order of accuracy is achieved even when taking β0 = 0. The mass distribution is given in Table 8 and Fig. 4.

Page 16: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226 225

Table 8Mass test for (5.7) with (5.8).

A 10 × 10 20 × 20 40 × 40 80 × 80 10 × 10 20 × 20 40 × 40 80 × 80

1 p2 39.4784 39.4784 39.4784 39.4784 p3 39.4784 39.4784 39.4784 39.4784√2 p2 78.9568 78.9568 78.9568 78.9568 p3 78.9568 78.9568 78.9568 78.9568

Uniform meshes with N cells with t = 1, c1 = c2 = 1.

Fig. 4. The mass´ |u|2dx changes over time. P 2, N = 20 × 20. Periodic boundary condition in [0,2π ].

6. Concluding remarks

In this paper, we have developed a direct discontinuous Galerkin method to solve Schrödinger equations subject to both linear and nonlinear potentials. For time discretization, we use the Crank–Nicolson for linear Schrödinger equations, and the Strang Splitting for nonlinear Schrödinger equations. The mass conservation is shown to be preserved for both semi-discrete and fully discrete schemes. The DDG method when applied to one-dimensional linear Schrödinger equations is shown to have the optimal (k + 1)th order of accuracy for polynomial elements of degree k. The numerical tests demonstrate both accuracy and capacity of these methods, in particular, the numerical results are accurate for long time simulation.

Acknowledgements

Huang’s research was supported in part by the NSFC Key Project (11031006, 91430213), IRT1179 of PCSIRT and ISTCP of China 3637 (2010DFR00700). Liu’s research was supported by the National Science Foundation under Grant DMS1312636 and by NSF Grant RNMS (Ki-Net) 1107291.

References

[1] W.Z. Bao, S. Jin, P.A. Markowich, On time-splitting spectral approximations for the Schrödinger equation in the semiclassical regime, J. Comput. Phys. 175 (2002) 487–524.

[2] F. Bassi, S. Rebay, A high-order accurate discontinuous finite element method for the numerical solution of the compressible Navier–Stokes equations, J. Comput. Phys. 131 (1997) 267–279.

[3] R. Becerril, F.S. Guzman, A.R. Romero, S.V. Alvarado, Solving the time-dependent Schrödinger equation using finite difference methods, Rev. Mex. Fís. E 54 (2008) 120–132.

[4] J.L. Bona, H. Chen, O. Karakashian, Y. Xing, Conservative, discontinuous Galerkin-methods for the generalized Korteweg–de Vries equation, Math. Com-put. 82 (2013) 1401–1432.

[5] P. Castillo, B. Cockburn, I. Perugia, D. Schötzau, An a priori error analysis of the local discontinuous Galerkin method for elliptic problems, SIAM J. Numer. Anal. 38 (2000) 1676–1706.

[6] E. Celledoni, V. Grimm, R.I. McLachlan, D.I. McLaren, D. O’Neale, B. Owren, G.R.W. Quispel, Preserving energy resp. dissipation in numerical PDEs using the “average vector field” method, J. Comput. Phys. 231 (2012) 6770–6789.

[7] Q.S. Chang, E.H. Jia, W. Sun, Difference schemes for solving the generalized nonlinear Schrödinger equation, J. Comput. Phys. 148 (1999) 397–415.[8] Q.S. Chang, G.B. Wang, Multigrid and adaptive algorithm for solving the nonlinear Schrödinger equation, J. Comput. Phys. 88 (1990) 362–380.[9] Q.S. Chang, L. Xu, A numerical method for a system of generalized nonlinear Schrödinger equation, J. Comput. Math. 4 (1986) 191–199.

[10] B. Cockburn, S.C. Hou, C.W. Shu, The Runge–Kutta local projection discontinuous Galerkin finite element method for conservation laws IV: the multi-dimensional case, Math. Comput. 54 (1990) 545–581.

[11] B. Cockburn, G. Kanschat, I. Perugia, D. Schötzau, Superconvergence of the local discontinuous Galerkin method for elliptic problems on cartesian grids, SIAM J. Numer. Anal. 39 (2001) 264–285.

[12] B. Cockburn, G.E. Karniadakis, C.W. Shu, The Development of Discontinuous Galerkin Methods, Lecture Notes in Computational Science and Engineering, Springer, Berlin, Heidelberg, 2000.

[13] B. Cockburn, S.Y. Lin, C.W. Shu, TVB Runge–Kutta local projection discontinuous Galerkin finite element method for conservation laws III: one dimen-sional systems, J. Comput. Phys. 84 (1989) 90–113.

[14] B. Cockburn, C.W. Shu, TVB Runge–Kutta local projection discontinuous Galerkin finite element method for conservation laws II: general framework, Math. Comput. 52 (1989) 411–435.

Page 17: Mass preserving discontinuous Galerkin methods …orion.math.iastate.edu/hliu/Pub/2015/LHL-JCP-v282(1...Mass preserving discontinuous Galerkin methods for Schrödinger equations WenyingLu

226 W. Lu et al. / Journal of Computational Physics 282 (2015) 210–226

[15] B. Cockburn, C.W. Shu, The local discontinuous Galerkin method for time-dependent convection–diffusion systems, SIAM J. Numer. Anal. 35 (1998) 2440–2463.

[16] B. Cockburn, C.W. Shu, The Runge–Kutta discontinuous Galerkin method for conservation laws V: multidimensional systems, J. Comput. Phys. 141 (1998) 199–224.

[17] M. Delfour, M. Fortin, G. Payr, Finite-difference solutions of a non-linear Schrödinger equation, J. Comput. Phys. 44 (1981) 277–288.[18] M.D. Feit, J.A. Fleck, Solution of the Schrödinger equation by a spectral method II: vibrational energy levels of triatomic molecules, J. Chem. Phys. 78

(1983) 301–309.[19] M.D. Feit, J.A. Fleck, A. Steiger, Solution of the Schrödinger equation by a spectral method, J. Comput. Phys. 47 (1982) 412–433.[20] V. Graninaru, Strang splitting for the time depended Schrödinger equation on sparse grids, SIAM J. Numer. Anal. 46 (2007) 103–123.[21] M.R. Hermann, J.A. Fleck, Split-operator spectral method for solving the time-dependent Schrödinger equation in spherical coordinates, Phys. Rev. A 38

(1988) 6000–6012.[22] J.S. Hesthaven, T. Warburton, Nodal Discontinuous Galerkin Methods: Algorithms, Analysis, and Applications, 1st ed., Texts in Applied Mathematics,

Springer Publishing Company, Incorporated, 2007.[23] O. Karakashian, C. Makridakis, A space–time finite element method for the nonlinear Schrödinger equation: the discontinuous Galerkin method, Math.

Comput. 67 (1998) 479–499.[24] A. Kurtinaitis, F. Ivanauskas, Finite difference solution methods for a system of the nonlinear Schrödinger equations, Nonlinear Anal., Model. Control 9

(2004) 247–258.[25] F.S. Levin, J. Shertzer, Finite-element solution of the Schrödinger equation for the helium ground state, Phys. Rev. A 32 (1985) 3285–3290.[26] H. Liu, N. Ploymaklam, A local discontinuous Galerkin method for the Burgers–Poisson equation, Numer. Math. (June 2014), http://dx.doi.org/10.1007/

s00211-014-0641-1.[27] H.L. Liu, Optimal error estimates of the direct discontinuous Galerkin method for convection–diffusion equations, Math. Comput. (2014), in press.[28] H.L. Liu, Y.-Q. Huang, N.-Y. Yi, A direct discontinuous Galerkin method for the Degasperis–Procesi equation, Methods Appl. Anal. 21 (1) (2014) 83–106,

http://orion.math.iastate.edu/hliu/Pub/2014/LHY-MAA-v21(1)-2014-83_106.pdf.[29] H.L. Liu, J. Yan, The direct discontinuous Galerkin (DDG) method for diffusion problems, SIAM J. Numer. Anal. 47 (2009) 675–698.[30] H.L. Liu, J. Yan, The direct discontinuous Galerkin (DDG) method for diffusion with interface corrections, Commun. Comput. Phys. 8 (2010) 541–564.[31] T. Lu, W. Cai, P.W. Zhang, Conservative local discontinuous Galerkin methods for time dependent Schrödinger equation, Int. J. Numer. Anal. Model. 2

(2004) 75–84.[32] T. Matsuo, Dissipative/conservative Galerkin method using discrete partial derivatives for nonlinear evolution equations, J. Comput. Appl. Math. 218

(2008) 506–521.[33] D. Pathria, J.L. Morris, Pseudo-spectral solution of nonlinear Schrödinger equations, J. Comput. Phys. 87 (1990) 108–125.[34] W.H. Reed, T.R. Hill, Triangular mesh methods for the neutron transport equation, Technical Report LA-UR-73-479, Los Alamos Scientific Laboratory,

1973.[35] B. Rivière, Discontinuous Galerkin Methods for Solving Elliptic and Parabolic Equations: Theory and Implementation, Frontiers in Applied Mathematics,

Society for Industrial and Applied Mathematics, SIAM, 3600 Market Street, Floor 6, Philadelphia, PA 19104, 2008.[36] M.P. Robinson, Numerical solution of Schrödinger equations using finite element methods, PhD thesis, University of Kentucky, February 1991.[37] G. Strang, On the construction and comparison of difference schemes, SIAM J. Numer. Anal. 5 (1968) 506–517.[38] T.R. Taha, M.I. Ablowitz, Analytical and numerical aspects of certain nonlinear evolution equations. II. Numerical, nonlinear Schrödinger equation,

J. Comput. Phys. 55 (1984) 203–230.[39] E. Vázquez-Cendón, A. Hidalgo, L. Cea, P. Garcia-Navarro, L. Cea, Numerical Methods for Hyperbolic Equations, Theory and Application, CRC Press, 2012.[40] Y. Xu, C.W. Shu, Local discontinuous Galerkin methods for nonlinear Schrödinger equations, J. Comput. Phys. 205 (2005) 72–97.[41] Y. Xu, C.W. Shu, Optimal error estimates of the semidiscrete local discontinuous Galerkin methods for higher order wave equations, SIAM J. Numer.

Anal. 50 (1) (2012) 72–104.[42] N. Yi, Y. Huang, H. Liu, A direct discontinuous Galerkin method for the generalized Korteweg–de Vries equation: energy conservation and boundary

effect, J. Comput. Phys. 242 (2013) 351–366.[43] R.P. Zhang, X.J. Yu, T. Feng, Solving coupled nonlinear Schrödinger equations via a direct discontinuous Galerkin method, Chin. Phys. B 21 (2012)

30202-1–30202-5.[44] R.P. Zhang, X.J. Yu, G.Z. Zhao, A direct discontinuous Galerkin method for nonlinear Schrödinger equation (in Chinese), Chin. J. Comput. Phys. 29 (2012)

175–182.