Skip to main content
Log in

Method of Lines Transpose: An Efficient Unconditionally Stable Solver for Wave Propagation

  • Published:
Journal of Scientific Computing Aims and scope Submit manuscript

Abstract

Building upon recent results obtained in Causley and Christlieb (SIAM J Numer Anal 52(1):220–235, 2014), Causley et al. (Math Comput 83(290):2763–2786, 2014, Method of lines transpose: high order L-stable O(N) schemes for parabolic equations using successive convolution, 2015), we describe an efficient second-order, unconditionally stable scheme for solving the wave equation, based on the method of lines transpose (MOL\(^T\)), and the resulting semi-discrete (i.e. continuous in space) boundary value problem. In Causley and Christlieb (SIAM J Numer Anal 52(1):220–235, 2014), unconditionally stable schemes of high order were derived, and in Causley et al. (Method of lines transpose: high order L-stable O(N) schemes for parabolic equations using successive convolution, 2015) a high order, fast \(\mathcal {O}(N)\) spatial solver was derived, which is matrix-free and is based on dimensional-splitting. In this work, are interested in building a wave solver, and our main concern is the development of boundary conditions. We demonstrate all desired boundary conditions for a wave solver, including outflow boundary conditions, in 1D and 2D. The scheme works in a logically Cartesian fashion, and the boundary points are embedded into the regular mesh, without incurring stability restrictions, so that boundary conditions are imposed without any reduction in the order of accuracy. We demonstrate how the embedded boundary approach works in the cases of Dirichlet and Neumann boundary conditions. Further, we develop outflow and periodic boundary conditions for the MOL\(^T\) formulation. Our solver is designed to couple with particle codes, and so special attention is also paid to the implementation of point sources, and soft sources which can be used to launch waves into waveguides.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. Alpert, B., Greengard, L., Hagstrom, T.: An integral evolution formula for the wave equation. J. Comput. Phys. 162(2), 536–543 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  2. Alpert, B., Greengard, L., Hagstrom, T.: Nonreflecting boundary conditions for the time-dependent wave equation. J. Comput. Phys. 180(1), 270–296 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  3. Barnes, J., Hut, P.: A hierarchical O(N log N) force-calculation algorithm. Nature 324, 446–449 (1986)

    Article  Google Scholar 

  4. Birdsall, C.K., Langdon, A.B.: Plasma Physics via Computer Simulation, Course Notes for Electrical Engineering and Computer Sciences. McGraw-Hill, New York (1976)

    Google Scholar 

  5. Birkhoff, G.D.: General mean value and remainder theorems with applications to mechanical differentiation and quadrature. Trans. Am. Math. Soc. 7(1), 107–136 (1906). (English)

    Article  MathSciNet  Google Scholar 

  6. Bruno, O.P., Lyon, M.: High-order unconditionally stable FC-AD solvers for general smooth domains I. Basic elements. J. Comput. Phys. 229(6), 2009–2033 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  7. Causley, M., Christlieb, A.: High order a-stable schemes for the wave equation using successive convolution. SIAM J. Numer. Anal. 52(1), 220–235 (2014)

    Article  MATH  Google Scholar 

  8. Causley, M., Christlieb, A., Ong, B., Van Groningen, L.: Method of lines transpose: an implicit solution to the wave equation. Math. Comput. 83(290), 2763–2786 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  9. M. F. Causley, H. Cho, A. J. Christlieb, and D. C. Seal, Method of lines transpose: High order L-stable O(N) schemes for parabolic equations using successive convolution, ArXiv e-prints (2015)

  10. Cheng, H., Greengard, L., Rokhlin, V.: A fast adaptive multipole algorithm in three dimensions. J. Comput. Phys. 155(2), 468–498 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  11. Cheng, H., Huang, J., Leiterman, T.J.: An adaptive fast solver for the modified Helmholtz equation in two dimensions. J. Comput. Phys. 211(2), 616–637 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  12. Christlieb, A.J., Krasny, R., Verboncoeur, J.P.: A treecode algorithm for simulating electron dynamics in a Penning-Malmberg trap. Comput. Phys. Commun. 164(1–3), 306–310 (2004)

    Article  MATH  Google Scholar 

  13. Coifman, R., Rokhlin, V., Wandzura, S.: The fast multipole method for the wave equation: a pedestrian prescription. IEEE Trans. Antennas Propaga. 35(3), 7–12 (1993)

    Article  Google Scholar 

  14. Fornberg, B.: A short proof of the unconditional stability of the ADI-FDTD scheme, 9810751, pp. 5–8

  15. Fornberg, B., Zuev, J., Lee, J.: Stability and accuracy of time-extrapolated ADI-FDTD methods for solving wave equations, 9810751, no. (November 2005)

  16. Gimbutas, Z., Rokhlin, V.: A generalized fast multipole method for nonoscillatory kernels. SIAM J. Sci. Comput. 24(3), 796–817 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  17. Greengard, L., Rokhlin, V.: A fast algorithm for particle simulations. J. Comput. Phys. 73(2), 325–348 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  18. Kreiss, H.O., Petersson, N.A., Yström, J.: Difference approximations of the neumann problem for the second order wave equation. SIAM J. Numer. Anal. 42(3), 1292–1323 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  19. Li, J.R.: Low order approximation of the spherical nonreflecting boundary kernel for the wave equation. Linear Algebra Appl. 415(2–3), 455–468 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  20. Li, P., Johnston, H., Krasny, R.: A Cartesian treecode for screened coulomb interactions. J. Comput. Phys. 228(10), 3858–3868 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  21. Lindsay, K., Krasny, R.: A particle method and adaptive treecode for vortex sheet motion in three-dimensional flow. J. Comput. Phys. 172(2), 879–907 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  22. Lyon, M., Bruno, O.P.: High-order unconditionally stable FC-AD solvers for general smooth domains II. Elliptic, parabolic and hyperbolic PDEs; theoretical considerations. J. Comput. Phys. 229(9), 3358–3381 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  23. Namiki, T.: 3-d adi-fdtd method-unconditionally stable time-domain algorithm for solving full vector maxwell’s equations. Microw. Theory Tech. IEEE Trans. 48(10), 1743–1748 (2000)

    Article  Google Scholar 

  24. Smithe, D.N., Cary, J.R., Carlsson, J.A.: Divergence preservation in the adi algorithms for electromagnetics. J. Comput. Phys. 228(19), 7289–7299 (2009)

    Article  MATH  Google Scholar 

  25. Wolf, E.M., Causley, M.F., Christlieb, A.J., Bettencourt, M.: A particle-in-cell method for the simulation of plasmas based on an unconditionally stable field solver. J. Comput. Phys. (2016). doi:10.1016/j.jcp.2016.08.006

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matthew Causley.

Appendices

Appendix 1: Summary Table For Second-Order Wave Solver

Wave equation

Dispersive scheme, \(\alpha = \frac{2}{c \varDelta t}\):

\(\frac{1}{c^{2}}\frac{\partial u}{\partial t} - \nabla ^{2} u = S(x,t)\)

\(\left( -\frac{1}{\alpha ^{2}}\nabla ^{2}+1 \right) \left( u^{n+1}+2u^{n}+u^{n-1}\right) = 4u^{n} + \frac{4}{\alpha ^{2}}S(x,t^{n})\)

To

Diffusive scheme, \(\alpha = \frac{\sqrt{2}}{c \varDelta t}\):

Modified Helmholtz equation

\(\left( -\frac{1}{\alpha ^{2}}\nabla ^{2}+1 \right) u^{n+1} = \frac{1}{2}\left( 5u^{n}-4u^{n-1}+u^{n-2}\right) + \frac{1}{\alpha ^{2}} S(x,t^{n+1})\)

Dimensionally split

\(\left( -\frac{1}{\alpha ^{2}}\nabla ^{2}+1 \right) u=f\) \(\Rightarrow \)

Modified Helmholtz equation

\(\left( -\frac{1}{\alpha ^{2}}\frac{\partial ^{2}}{\partial x^{2}}+1 \right) \left( -\frac{1}{\alpha ^{2}}\frac{\partial ^{2}}{\partial y^{2}}+1 \right) u = f\) \(\Rightarrow \)

(2D)

\(\left( -\frac{1}{\alpha ^{2}}\frac{\partial ^{2}}{\partial x^{2}}+1 \right) w = f\),    \( \left( -\frac{1}{\alpha ^{2}}\frac{\partial ^{2}}{\partial y^{2}}+1 \right) u = w\)

1D integral solution

\(\left( -\frac{1}{\alpha ^{2}}\frac{d^{2}}{dx^{2}}+1 \right) u = f\) on (ab) \(\Rightarrow \)

 

\(u(x) = \frac{\alpha }{2}\int _{a}^{b} f(x')e^{-\alpha |x-x'|} \, dx' + Ae^{-\alpha (x-a)} + Be^{-\alpha (b-x)}\)

 

\(= I[f](x) + Ae^{-\alpha (x-a)} + Be^{-\alpha (b-x)}\)

1D BC correction coefficients

 

Dirichlet:

\(A = \frac{(u_{a}-I_{a})-\mu (u_{b}-I_{b})}{1-\mu ^{2}}\), \(B = \frac{(u_{b}-I_{b})-\mu (u_{a}-I_{a})}{1-\mu ^{2}}\)

\(u(a) = u_{a}\), \(u(b) = u_{b}\)

Neumann:

\(A = \frac{\mu (v_{b}+\alpha I_{b})-(v_{a}-\alpha I_{a})}{\alpha \left( 1-\mu ^2\right) }\), \(B = \frac{(v_{b}+\alpha I_{b})-\mu (v_{a}-\alpha I_{a})}{\alpha \left( 1-\mu ^2\right) }\)

\(u'(a) = v_{a}\), \(u'(b) = v_{b}\)

Periodic:

\(A = \frac{I_{b}}{1-\mu }\), \(B = \frac{I_{a}}{1-\mu }\)

\(u(a) = u(b)\), \(u'(a) = u'(b)\)

 

\(I_{a} = I[f](a)\), \(I_{b} = I[f](b)\), \(\mu = e^{-\alpha (b-a)}\)

Fast convolution algorithm

\(a = x_{0}< x_{1}< \cdots < x_{N} = b\),

\(x_{j+1} - x_{j}+ \varDelta x\), \(j=0,...,N-1\)

\(I_{j} = I[f](x_{j}) = \frac{\alpha }{2}\int _{a}^{b} f(x')e^{-\alpha |x_{j}-x'|} \, dx' = I^{L}_{j} + I^{R}_{j}\)

\(I^{L}_{j} = \frac{\alpha }{2}\int _{a}^{x_{j}} f(x')e^{-\alpha |x_{j}-x'|} \, dx'\), \(I^{R}_{j} = \frac{\alpha }{2}\int _{x_{j}}^{b} f(x')e^{-\alpha |x_{j}-x'|} \, dx'\)

\(I^{L}_{0}=0\), \(I^{L}_{j} = e^{-\alpha \varDelta x} I^{L}_{j-1} + J^{L}_{j}\),

\(J^{L}_{j} = \frac{\alpha }{2}\int _{x_{j-1}}^{x_{j}} f(x')e^{-\alpha |x_{j}-x'|} \, dx'\), \(j=1,...,N\)

\(I^{R}_{N}=0\), \(I^{R}_{j} = e^{-\alpha \varDelta x} I^{R}_{j+1} + J^{R}_{j}\),

\(J^{R}_{j} = \frac{\alpha }{2}\int _{x_{j}}^{x_{j+1}} f(x')e^{-\alpha |x_{j}-x'|} \, dx'\), \(j=N-1,...,0\)

Second-order quadrature

\(J^{R}_{j} = Pf(x_{j})+Qf(x_{j+1}) + R(f(x_{j+1})-2f(x_{j})+f(x_{j-1}))\)

\(J^{L}_{j} = Pf(x_{j})+Qf(x_{j-1}) + R(f(x_{j+1})-2f(x_{j})+f(x_{j-1}))\)

\(P = 1-\frac{1-d}{\nu }\), \(Q = -d+\frac{1-d}{\nu }\), \(R = \frac{1-d}{\nu ^{2}}-\frac{1+d}{2\nu }\)

\(\nu = \alpha \varDelta x\), \(d = e^{-\nu }\)

Appendix 2: Treatment of Point Sources, and Soft Sources

We now consider the inclusion of source terms. We present the algorithm in 1D for simplicity, and observe that the extensions to multiple dimensions are analogous to those shown for dimensional splitting presented in Sect. 2. The implementation of a soft source \(\sigma (t)\) at \(x = x_s\) is accomplished by prescribing the source condition

$$\begin{aligned} u(x_s,t) = \sigma (t). \end{aligned}$$
(35)

However, it can be shown that if we set

$$\begin{aligned} S(x,t)= \frac{2}{c}\sigma '(t) \delta (x-x_s) \end{aligned}$$
(36)

and insert it into the wave equation, then the soft source condition (35) is satisfied, and the solutions are equivalent. Thus, a soft source is nothing more than a point source, whose time-varying field is integrated by the wave equation.

Upon convolving this source term with the Green’s function according to (4), we find

$$\begin{aligned} I\left[ \frac{1}{\alpha ^2}S\right] (x)=&\frac{1}{2\alpha }\int _a^b \left( \frac{2}{c}\sigma '(t_n)\delta (x-x_s) \right) e^{-\alpha |x-y|}dy \\ =&\frac{\varDelta t}{\beta } \sigma '(t_n) e^{-\alpha |x-x_s|}, \end{aligned}$$

where the definition of \(\alpha = \beta /(c\varDelta t)\) has been utilized. It is often the case that taking the analytical derivative \(\sigma '(t_n)\) is to be avoided, for various reasons. In this case, any finite difference approximation which is of the desired order of accuracy can be substituted.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Causley, M., Christlieb, A. & Wolf, E. Method of Lines Transpose: An Efficient Unconditionally Stable Solver for Wave Propagation. J Sci Comput 70, 896–921 (2017). https://doi.org/10.1007/s10915-016-0268-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10915-016-0268-8

Keywords

Navigation