HADAMARD-BABICH ANSATZ AND FAST HUYGENS SWEEPING METHOD FOR POINT-SOURCE ELASTIC WAVE EQUATIONS IN AN INHOMOGENEOUS MEDIUM AT HIGH FREQUENCIES By Jian Song A DISSERTATION Submitted to Michigan State University in partial fulfillment of the requirements for the degree of Applied Mathematics — Doctor of Philosophy Computational Mathematics, Science and Engineering — Dual Major 2022 ABSTRACT HADAMARD-BABICH ANSATZ AND FAST HUYGENS SWEEPING METHOD FOR POINT-SOURCE ELASTIC WAVE EQUATIONS IN AN INHOMOGENEOUS MEDIUM AT HIGH FREQUENCIES By Jian Song Asymtotic methods are efficient for solving wave equations in the high frequency regime. In the thesis, we first develop a new asymptotic ansatz for point source elastic wave equa- tions in an inhomogeneous medium. Then, we propose a fast Huygens sweeping method to construct a globally valid Green’s functions in the presence of caustics. Finally, an Eule- rian partial-differential-equation method is proposed to compute complex-valued eikonals in attenuating media. In Chapter 3, we develop the Hadamard-Babich (H-B) ansatz for frequency-domain point source elastic wave equations in an inhomogeneous medium in the high-frequency regime. First, we develop a novel asymptotic series, dubbed Hadamard’s ansatz, to form the funda- mental solution of the Cauchy problem for the time-domain point-source (TDPS) elastic wave equations in the region close to the source. Then, the governing equations for the unknown asymptotics of the ansatz are derived including the traveltime functions and dyadic coeffi- cients. A matching condition is proposed to initialize the data of unknowns at the source. To treat singularity of dyadic coefficients at the source, smoother dyadic coefficients are then in- troduced. Finally, we obtain the H-B ansatz for the frequency-domain point-source (FDPS) elastic wave equations by directly taking the Fourier transform of Hadamard’s ansatz in time. Numerical examples demonstrate the accuracy of our method. In Chapter 4, we propose a new truncated Hadamard-Babich ansatz based globally valid asymptotic method, dubbed the fast Huygens sweeping method, for computing Green’s functions of FDPS elastic wave equations in inhomogeneous media in the high-frequency regime and in the presence of caustics. The first novelty of the fast Huygens sweeping method is that the Huygens-Kirchhoff secondary-source principle is used to construct a globally valid asymptotic solution by integrating many locally valid asymptotic solutions so that caustics can be treated automatically and implicitly. The precomputed asymptotic ingredients can be used to construct Green’s functions of elastic wave equations for many different point sources and for arbitrary frequencies. The second novelty is that a butterfly algorithm is adapted to accelerate matrix-vector products induced by the discretization of the Huygens- Kirchhoff integral. The computational cost of the butterfly algorithm is O(N log N ) which is in nearly optimal complexity in terms of the total number of mesh points N . Numerical examples are presented to demonstrate the performance and accuracy of the new method. In Chapter 5, we propose a Eulerian partial-differential-equation method to solve complex- valued eikonals in attenuating media. In the regime of high-frequency asymptotics, a complex- valued eikonal is an essential ingredient for describing wave propagation in attenuating me- dia, where the real and imaginary parts of the eikonal function capture dispersion effects and amplitude attenuation of seismic waves, respectively. Therefore, a unified framework to eulerianize several popular approximate real-space ray-tracing methods for complex-valued eikonals is proposed so that the real and imaginary parts of the eikonal function satisfy the classical real-space eikonal equation and a novel real-space advection equation, respectively, and we dub the resulting method the Eulerian partial-differential-equation method. We further develop highly efficient high-order methods to solve these two equations by using the factorization idea and the Lax-Friedrichs weighted essentially non-oscillatory (WENO) schemes. Numerical examples demonstrate that the proposed method yields highly accurate complex-valued eikonals, analogous to those from ray-tracing methods. ACKNOWLEDGMENTS Firstly, I would like to express my deepest gratitude to my advisor Prof. Qian, Jianliang, for his sincere support and useful advise during my research. His invaluable patience and feedback helped me in all the time of my research. I am extremely grateful for his assistance and suggestions throughout my study at MSU. I am also grateful to Prof. Zhou, Zhengfang, Prof. Christlieb, Andrew, and Prof. Yang, Yang for serving on my thesis committee and insightful comments and suggestions. I would like to extend my sincere thanks to all the professors who I took the classes from and the support staff of Department of Mathematics. I would like to thank Dr. Lu, Wangtao, Dr. Hu, Jiangtao, and Dr. Liu, Yang for their helpful advise and suggestions in my research. I would also like to thank all my friends for moral support and encouragement in my life. Lastly, I would like to offer my special thanks to my family, especially my parents. Their belief in me has kept my spirits and motivation high throughout writing the thesis. iv TABLE OF CONTENTS LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Chapter 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Hadamard-Babich ansatz for the Helmholtz equation and Maxwell’s equations 1 1.2 Hadamard-Babich ansatz for frequency-domain point-source elastic wave equa- tions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 Fast Huygens sweeping method for time-harmonic elastic wave equations in inhomogeneous media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4 Eulerian partial-differential-equation methods for complex-valued eikonals in attenuating media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.5 Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Chapter 2 Hardmard-Babich ansatz for the Helmholtz equation and Maxwell’s equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.1 Babich ansatz for the Helmholtz equation . . . . . . . . . . . . . . . . . . . . 15 2.2 Babich-like ansatz for Maxwell’s equations . . . . . . . . . . . . . . . . . . . 17 2.3 High order Eulerian asymptotics . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.1 High order factorization of eikonal . . . . . . . . . . . . . . . . . . . . 19 2.3.2 High-order factorization of amplitudes vs for the Helmholtz equation 20 2.3.3 High-order factorization of amplitudes Ãs for Maxwell’s equations . . 22 2.4 High-order schemes for computing the eikonal and transport equations . . . 23 2.5 High-order Lax-Friedrichs WENO schemes . . . . . . . . . . . . . . . . . . . 24 2.5.1 Lax-Friedrichs Hamiltonian . . . . . . . . . . . . . . . . . . . . . . . 25 2.5.2 High order Lax-Friedrichs WENO schemes . . . . . . . . . . . . . . . 27 2.6 Numerical example of high-order Lax-Friedrichs WENO-based schemes for computing traveltime τ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.7 Expected convergence behavior . . . . . . . . . . . . . . . . . . . . . . . . . 29 Chapter 3 Hadamard-Babich ansatz for point-source Elastic wave equa- tions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.1 Cauchy problem of point-source elastic wave equations . . . . . . . . . . . . 33 3.1.1 Solution of Cauchy problem in a homogeneous medium . . . . . . . . 34 3.2 Hadamard’s method for deriving asymptotic series for the case of an inhomo- geneous medium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.3 Case I, the S wave: ∇T · A0j = 0 and 4ρT − µ|∇T |2 = 0 . . . . . . . . . . . 41 3.3.1 S-wave transport equations for A0 and A1 . . . . . . . . . . . . . . 42 3.3.2 S-wave transport equations for general Al . . . . . . . . . . . . . . . 46 3.3.3 S wave: verification in a homogeneous medium . . . . . . . . . . . . . 47 v 3.3.4 S wave: governing equations for desingularizing Al . . . . . . . . . . 50 3.4 Case II, P wave: A0j ∥ ∇T and 4ρT − (λ + 2µ)|∇T |2 = 0 . . . . . . . . . . . 52 3.4.1 P-wave transport equations for A0 and A1 . . . . . . . . . . . . . . . 53 3.4.2 P-wave transport equations for general Al . . . . . . . . . . . . . . . 57 3.4.3 P wave: verification in a homogeneous medium . . . . . . . . . . . . 58 3.4.4 P wave: governing equations for desingularized Al . . . . . . . . . . . 60 3.5 Initial conditions for the traveltime and amplitudes . . . . . . . . . . . . . . 61 3.5.1 Initial conditions for S-wave . . . . . . . . . . . . . . . . . . . . . . . 61 3.5.2 Initial conditions for P-wave . . . . . . . . . . . . . . . . . . . . . . . 70 3.6 Hadamard-Babich ansatz in the frequency domain . . . . . . . . . . . . . . . 78 3.7 Numerical implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 3.7.1 Numerical computation for S waves . . . . . . . . . . . . . . . . . . . 79 3.7.2 Numerical computation for P waves . . . . . . . . . . . . . . . . . . . 81 3.8 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 3.8.1 Example 1: Constant model . . . . . . . . . . . . . . . . . . . . . . . 83 3.8.2 Example 2: A variable density model . . . . . . . . . . . . . . . . . . 85 3.8.3 Example 3: A Gaussian model . . . . . . . . . . . . . . . . . . . . . 87 Chapter 4 Fast Huygens’ sweeping method for time-harmonic high-frequecy elastic wave equations in inhomogeneous media . . . . . . . . . 90 4.1 Numerics for the truncated H-B ansatz . . . . . . . . . . . . . . . . . . . . . 92 4.1.1 Truncating the ansatz for the S-wave . . . . . . . . . . . . . . . . . . 92 4.1.1.1 Computing take-off directions . . . . . . . . . . . . . . . . . 95 4.1.1.2 Computing ÃS0 . . . . . . . . . . . . . . . . . . . . . . . . 96 4.1.1.3 Computing ÃS1 . . . . . . . . . . . . . . . . . . . . . . . . 98 4.1.2 Truncating the ansatz for the P-wave . . . . . . . . . . . . . . . . . . 100 4.2 Huygens’ principle based globally valid Green’s functions . . . . . . . . . . . 102 4.2.1 Huygens-Kirchhoff formula for elastic wave fields . . . . . . . . . . . . 102 4.2.2 Huygens principle based sweeping method . . . . . . . . . . . . . . . 109 4.2.3 Planer-layer based Huygens sweeping . . . . . . . . . . . . . . . . . . 110 4.2.4 Data tables and compression . . . . . . . . . . . . . . . . . . . . . . . 112 4.2.5 Discretization of Huygens-Kirchhoff integral . . . . . . . . . . . . . . 113 4.2.6 A butterfly algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 4.2.7 Complexity analysis of the overall algorithm . . . . . . . . . . . . . . 124 4.2.7.1 Preprocessing: computing asymptotic ingredients . . . . . . 125 4.2.7.2 Postprocessing: constructing global Green’s functions . . . . 126 4.3 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 4.3.1 Example 1: Constant model . . . . . . . . . . . . . . . . . . . . . . . 128 4.3.2 Example 2: A Gaussian model . . . . . . . . . . . . . . . . . . . . . . 130 4.3.3 Example 3: A Gaussian model . . . . . . . . . . . . . . . . . . . . . . 134 4.3.4 Example 4: A waveguide model . . . . . . . . . . . . . . . . . . . . . 136 Chapter 5 Eulerian partial-differential-equation methods for complex-valued eikonals in attenuating media . . . . . . . . . . . . . . . . . . . . 145 vi 5.1 High-order numerical methods for computing complex-valued traveltimes . . 146 5.1.1 Eulerian PDE framework for complex-valued traveltimes . . . . . . . 146 5.1.2 Case (1): Viscoacoustic ray tracing and Eulerian equations . . . . . . 147 5.1.3 Case (2): Real viscoelastic ray tracing and Eulerian equations . . . . 149 5.1.4 Case (3): Real elastic ray tracing and Eulerian equations . . . . . . . 150 5.1.5 Factorized Eulerian PDEs . . . . . . . . . . . . . . . . . . . . . . . . 151 5.1.6 Third-order LxF-WENO sweeping method . . . . . . . . . . . . . . . 153 5.2 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 5.2.1 Eulerian examples for viscoacoustic ray tracing . . . . . . . . . . . . 157 5.2.2 Eulerian examples for real-elastic and real-viscoelastic ray tracing . . 162 Chapter 6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 APPENDICES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Appendix A Derivation of some ingredients for governing equations of S and P waves174 Appendix B Hadamard ansatz for anisotropic wave equations . . . . . . . . . . . 178 Appendix C High-order factorization for computing T ∗ . . . . . . . . . . . . . . . 182 BIBLIOGRAPHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 vii LIST OF TABLES Table 2.1: L2 -norm error of traveltime τ computed by first-, third-, fifth-order Lax- Friedrichs WENO schemes with varying h. . . . . . . . . . . . . . . . . . 29 Table 3.1: Example 1: L2 -norm errors between the new ansatz based solutions and the FDTD solution in a region excluding a neighborhood of the source. . . 85 Table 3.2: Example 3: L2 -norm errors between the two-term ansatz solution and the FDTD solution in a region excluding a neighborhood of the source. . . . . 89 Table 4.1: Example 1 for the constant parameters. L∞ -norm errors between the nu- merical solutions of fast Huygens sweeping method and exact solutions. ω: the frequency parameter; NPW: the number of points per wavelength; p: the Chebyshev nodes used in each dimension; E∞ : the L∞ -norm errors between solutions by two different approaches. . . . . . . . . . . . . . . . 130 Table 4.2: Example 1 for the constant parameters. Computational time using the butterfly algorithm. ω: the frequency parameter; NPW: the number of points per wavelength; TM (unit: s): CPU time for the construction of total nine elements of the Green’s function for the S-wave in the receiver domain Ω2 by the butterfly algorithm; p: the Chebyshev nodes used in each dimension; E∞ : the L∞ -norm errors between solutions by two different approaches. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Table 4.3: Example 2 for the Gaussian model. Computational time using the butterfly algorithm. ω: the frequency parameter; NPW: the number of points per wavelength; TM (unit: s): CPU time for the construction of total nine elements of the Green’s function for the S-wave in the receiver domain Ω2 by the butterfly algorithm; p: the Chebyshev nodes used in each dimension; E∞ : the L∞ -norm errors between solutions by two different approaches. 134 viii LIST OF FIGURES Figure 3.1: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) exact solution Ghom . . . . . . . . . . . 84 Figure 3.2: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: exact solution Ghom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Figure 3.3: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 32π. The real part of the zz-component of G(r; r0 ) at y = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) exact solution Ghom . . . . . . . . . . . 84 Figure 3.4: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 32π. The real part of the zz-component of G(r; r0 ) at y = 0.25 and at (a) x = 0.25; (b) x = 0.23; (c) x = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: exact solution Ghom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Figure 3.5: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 8π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. . . . . . . . . . . . . . 86 Figure 3.6: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 8π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Figure 3.7: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. . . . . . . . . . . . . . 87 Figure 3.8: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Figure 3.9: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the zz-component of G(r; r0 ) at y = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. Mesh in (a) and (b): 51 × 51 × 51; mesh in (c): 101 × 101 × 101. . . . . . . . . . . . . . . . . 88 ix Figure 3.10: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the zz-component of G(r; r0 ) at y = 0.25 and at (a) x = 0.25; (b) x = 0.23; (c) x = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Figure 3.11: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. Mesh in (a) and (b): 51 × 51 × 51; mesh in (c): 101 × 101 × 101. . . . . . . . . . . . . . . . . 89 Figure 3.12: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Figure 4.1: Huygens-Kirchhoff formula for wave field extrapolation. (a) Spherical do- mains. (b) Planar domains. . . . . . . . . . . . . . . . . . . . . . . . . . 103 Figure 4.2: The computational domain is partitioned into three layers: Ω1 , Ω2 , and Ω3 . The first layer Ω1 contains the primary source r0 ; the source plane S1 is placed in Ω1 and is df wide away from Ω2 ; the source plane S2 is df wide away from Ω3 and locates in Ω2 . . . . . . . . . . . . . . . . . . . . 111 Figure 4.3: Example 1 with r0 = (1.0, 1.0, 0.2)T and ω = 24π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) butterfly-algorithm−based Huygens sweeping method with p = 13; (b) exact solution. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: exact solution; Black circle: Huygens sweeping solution. Mesh 121 × 121 × 121. . . . . . . . . 131 Figure 4.4: Example 1 with r0 = (1.0, 1.0, 0.2)T and ω = 24π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) butterfly-algorithm−based Huygens sweeping method with p = 13; (b) exact solution. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: exact solution; Black circle: Huygens sweeping solution. Mesh 121 × 121 × 121. . . . . . . . . 132 Figure 4.5: Example 1 with r0 = (1.0, 1.0, 0.2)T and ω = 24π. The real part of xz- component of G(r; r0 ) at y = 1.0 computed via (a) butterfly-algorithm−based Huygens sweeping method with p = 13; (b) exact solution. The detailed comparison of the real part of xz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: exact solution; Black circle: Huygens sweeping solution. Mesh 121 × 121 × 121. . . . . . . . . 133 x Figure 4.6: Example 2 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. . . . . . . . . . . . . . . . . . . . . . . . 135 Figure 4.7: Example 2 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD solution. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. . . . . . . . . . . . . . . . . . . . . . . . 136 Figure 4.8: Example 2 with r0 = (1.0, 1.0, 0.2)T and ω = 20π. The real part of (a): xx- and (b): zz- component of G(r; r0 ) at y = 1.0 computed by the Huygens sweeping method with p = 13. Mesh 241 × 241 × 241. . . . . . 137 Figure 4.9: Example 3 with r0 = (0.8, 1.0, 0.2)T and ω = 12π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. . . . . . . . . . . . . . . . . . . . . . . . . 138 Figure 4.10: Example 3 with r0 = (0.8, 1.0, 0.2)T and ω = 12π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. . . . . . . . . . . . . . . . . . . . . . . . . 139 Figure 4.11: Example 3 with r0 = (0.8, 1.0, 0.2)T and ω = 12π. The real part of xz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b):401 × 401 × 401. . . . . . . . . . . . . . . . . . . . . . . . . . 140 xi Figure 4.12: Example 4 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 101 × 101 × 81; mesh in (b): 401 × 401 × 321. . . . . . . . . . . . . . . . . . . . . . . . 141 Figure 4.13: Example 4 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 an (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 101 × 101 × 81; mesh in (b): 401 × 401 × 321. . . . . . . . . . . . . . . . . . . . . . . . . 142 Figure 4.14: Example 4 with r0 = (0.8, 1.0, 0.12)T and ω = 12π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=0.8, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 97; mesh in (b): 401 × 401 × 321. . . . . . . . . . . . . . . . . . . . . . . . . 143 Figure 4.15: Example 4 with r0 = (0.8, 1.0, 0.12)T and ω = 12π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=0.8, y=1.0 an (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 97; mesh in (b): 401 × 401 × 321. . . . . . . . . . . . . . . . . . . . . . . . . 144 Figure 4.16: Example 4 with r0 = (1.0, 1.0, 0.2)T and ω = 20π. The real part of (a): xx- and (b): zz- component of G(r; r0 ) at y = 1.0 computed by the Huygens sweeping method with p = 13. Mesh 201 × 201 × 161. . . . . . 144 Figure 5.1: The real and imaginary parts of the complex-valued eikonal for the con- stant gradient velocity model. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution under the weakly attenuating approximation. . . . . . . 159 Figure 5.2: An attenuation model with gas cloud. (a) The acoustic velocity, (b) Q. Two black curves in (a) are two ray paths with takeoff angles being 0◦ and 20◦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 xii Figure 5.3: The real and imaginary parts of the complex-valued eikonal for the gas clouded attenuating model. (a) Real part; (b) Imaginary part. . . . . . . 161 Figure 5.4: Wavefield snapshot overlaid by the contour of the real part at 3s. The red curve is the contour of the real part. . . . . . . . . . . . . . . . . . . . . 162 Figure 5.5: Comparison between the imaginary parts obtained by the Eulerian PDE method and the ray-tracing method for the gas clouded attenuating model. The imaginary part for rays with (a) 0◦ and (b) 20◦ takeoff angle. The red curve and blue dotted curve are the imaginary parts obtained by the ray tracing method and the Eulerian PDE method, respectively. . . . . . 163 Figure 5.6: The attenuation model for a land scenario. (a) Acoustic velocity; (b) Q. Two black curves in (a) are two ray paths with takeoff angles being 0◦ and 20◦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Figure 5.7: The real and imaginary parts of the complex-valued eikonal for the land attenuating model. (a) Real part and (b) Imaginary part. . . . . . . . . 165 Figure 5.8: Wavefield snapshot overlaid by the contour of the real part at 2s. The red curve is the contour of the real part. . . . . . . . . . . . . . . . . . . . . 166 Figure 5.9: Comparison between the imaginary parts obtained by the Eulerian PDE method and the ray tracing method for the land attenuating model. The imaginary parts for rays with (a) 0◦ and (b) 20◦ takeoff angle. The red curve and blue dotted curve are the imaginary parts obtained by the ray tracing method and the Eulerian PDE method, respectively. . . . . . . . 167 Figure 5.10: The real and imaginary parts of the complex-valued eikonal for the 3-D model. (a) Real part and (b) Imaginary part. . . . . . . . . . . . . . . . 167 Figure 5.11: (a) Real and (b) Imaginary parts of the complex velocity in Case A. . . . 168 Figure 5.12: The complex-valued eikonal for the real-elastic Eulerian PDE method in Case A. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. . . . . . 168 Figure 5.13: The complex-valued eikonal for the real-viscoelastic Eulerian PDE method in Case A. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. . . . 169 Figure 5.14: (a) Real and (b) imaginary parts of the complex velocity in Case B. . . . 169 xiii Figure 5.15: The complex-valued eikonal for the real-elastic Eulerian PDE method in Case B. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. . . . . . 170 Figure 5.16: The complex-valued eikonal for the real-viscoelastic Eulerian PDE method in Case B. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. . . . 170 xiv Chapter 1 Introduction Green’s functions for hyperbolic equations are fundamental in many applications. Direct methods such as finite-difference or finite-element methods are usually employed to compute numerical solutions. However, at high frequencies, direct methods suffer from the so-called pollution errors [5, 4], and it is very costly to directly resolve these highly oscillatory waves. Therefore, alternative methods, such as asymptotic methods or methods of geometrical optics (GO), are necessary to carry out scale separation so that we can solve wave equations at large frequencies. We first discuss the limitations of the classical GO ansatz and then introduce the new asymptotic ansatz for both the Helmholtz equation and Maxwell’s equations. 1.1 Hadamard-Babich ansatz for the Helmholtz equa- tion and Maxwell’s equations The Helmholz equation with a point source condition is stated as ∆u + ω 2 n2 (r)u = −δ(r − r0 ), (1.1) where the Sommerfeld radiation condition is imposed at infinity, r0 is the source point, position r = [x1 , · · · , xm ]T , u is the wavefield, ω is the angular frequency, and n is the 1 refractive index. The usual GO ansatz [3] for the Helmholtz equation is given as ∞ ws eiωτ X u= , (1.2) s− 21 (m−1) s=0 (iω) where τ is the traveltime function, ws are the amplitudes, and m is the dimension. But difficulties arise immediately. One difficulty is how to choose initial data for the asymptotic ingredients. The other difficulty is that the series does not give a uniform asymptotic form close to the source when m is even. To resolve these issues for solving the scalar point-source Helmholtz equation, Babich proposed an asymptotic series based on Hankel functions, dubbed Babich’s ansatz, to expand the highly oscillatory wavefield [3]. This ansatz yields a uniform asymptotic solution as ω → ∞ in the region of space containing the point source but no other caustics. The method of finding such an ansatz is closely bound up with Hadamard’s method of forming the fundamental solution of the Cauchy problem for the time-domain point-source acoustic wave equation; details were given in [25] and then were outlined by Courant and Hilbert [17]. We consider the point source Maxwell’s equations ∇ × ∇ × G − ω 2 n2 (r)G = −Iδ(r − r0 ), (1.3) where G is the so-called dyadic Green’s functions the source r0 , I is the identity dyad, ω is the frequency, and n is the refractive index of the medium. 2 The GO ansatz for Green’s functions [9, 37, 56] is given as ∞ Ãs (r; r0 ) eiωτ (r;r0 ) , X G(r; r0 ) = (1.4) ωs s=0 where τ is the traveltime function and Ãs are the dyadic amplitudes. Usually, the first term is used to approximate the Green’s functions. However, there are shortcomings. First, the first term exhibits singularities which are different from the true singularities [45]. Second, components of Ã0 may vanish along certain directions. Keeping more terms may fix this. However, a difficulty arises immediately: how to initialize those amplitudes Ãs since they are singular at the source. To address these initialization issues for point source Maxwell’s equations, Lu, Qian, and Burridge proposed a novel ansatz in [44], dubbed the Babich-like ansatz, based on the spherical Hankel functions, and they have demonstrated that the Babich-like ansatz gives a uniform asymptotic expansion of the underlying solution in the region of space containing a point source but no other caustics. Later on, by using Hadamard’s method, it is further showed in [46] that Babich-like ansatz in fact is Babich’s ansatz for the point source Maxwell’s equations, and it is called the Hadamard-Babich ansatz for the frequency-domain point- source Maxwell’s equations. With the above as the backdrop, we are motivated to develop the Hadamard-Babich ansatz for the frequency-domain point-source elastic wave equations . 3 1.2 Hadamard-Babich ansatz for frequency-domain point- source elastic wave equations We consider the following frequency-domain point-source (FDPS) elastic wave equations in R3 : ρω 2 G + (λ + µ)∇(∇ · G) + µ∇2 G + ∇λ(∇ · G) + ∇µ × (∇ × G)) + 2(∇µ · ∇)G = −Iδ(r − r0 ), (1.5) where G = G(r; r0 ) is the so-called Green’s tensor at the source r0 , I is the 3 × 3 identity dyad, ω is the frequency, ρ(r) is the mass density, λ(r) and µ(r) are so-called Lamé’s stiffness parameters, and r = (x1 , x2 , x3 )T . Tacitly, the Sommerfeld radiation condition is assumed at infinity. Why we develop new asymptotic ansatz. An intuitive approach is to use the following Wentzel-Kramers-Brillouin(WKB) GO ansatz ∞ Āl (r; r0 )eiωτ (r;r0 ) , X G(r; r0 ) = (1.6) ωl l=0 where the unknowns Āl and τ are independent of ω. Karal and Keller [35] derived the governing equations for Āl and τ without specifying how to initialize these quantities in computation. However, since the overall isotropic elastic waves consist of superpositions of two waves, the compressional (P) wave and the shear (S) wave, the common GO wisdom of keeping only the leading order term does not suffice to capture correct singularities of the Green’s tensor at the source which in turn will affect the overall accuracy of the asymptotic solution, as will be seen in our numerical examples. Moreover, such drawbacks cannot be 4 easily resolved by using two or more terms in (1.6), since a critical challenge is how to initialize Āl at the source r0 . Motivated by the work in [3, 44, 46], a new ansatz based on generalized functions, dubbed Hadamard’s ansatz, is developed for solving the time-domain point-source elastic wave equa- tions using Hadamard’s method in a region close to the source but no other caustics. This Hadamard’s expansion consists of Gelfand-Shilov (G-S) functions [24]. Since the singularity induced by the point source is absorbed into the basis functions, this new ansatz enables us to develop systematic approaches to initialize the GO ingredients easily so that source singularities of Green’s functions can be captured faithfully. Based on the properties of generalized functions [44, 46], the eikonal equations for both S and P waves and recursive systems of advection equations for dyadic coefficients are de- rived [58]. Since the explicit form of the second time derivative of the Green’s tensor in a homogeneous elastic medium in terms of the G-S function can be written out, hence, by comparing Hadamard’s ansatz with the homogeneous-medium fundamental solution, a matching condition at the source can be proposed which in turn gives the initial data for the unknown asymptotic coefficients. Once the time-domain Hadamard’s ansatz is available with appropriate initial conditions for asymptotic ingredients in place, the ansatz can be obtained in the frequency domain, dubbed the Hadamard-Babich ansatz, for the FDPS elastic wave equations (1.5) by taking the Fourier transform of Hadamard’s ansatz in time. To verify the feasibility of the newly obtained ansatz, we truncate the ansatz to keep only first two terms so that we are able to compute the resulting asymptotic solutions. The new method for constructing the wavefield of (1.5) enjoys the following unique features. First, the asymptotic ingredients such as traveltime and amplitudes can be pre- computed on uniform discretized meshes, and the mesh size is independent of the angular 5 frequency ω since the ansatz enables scale separation in ω. Second, those computed asymp- totic ingredients can be used to assemble Green’s functions for arbitrary frequencies. Third, the truncated ansatz with keeping the first two terms of the asymptotic expansion can faith- fully reproduce the source singularity. 1.3 Fast Huygens sweeping method for time-harmonic elastic wave equations in inhomogeneous media Motivated by the work [58], we develop a new Hadamard-Babich (H-B) ansatz based globally valid asymptotic method, which we call the fast Huygens sweeping (FHS) method, for the time-harmonic elastic wave equation in an inhomogeneous medium in the high frequency regime and in the presence of caustics [59]. The new method consists of three critical components: a truncated H-B ansatz for com- puting locally valid asymptotic solutions, the Huygens-Kirchhoff (H-K) secondary-source principle for integrating many local solutions into a global solution, and a butterfly algo- rithm for accelerating matrix-vector multiplication. We now motivate these three crucial elements. The advantages of using the H-B ansatz have been discussed above and also in [58]. We will focus on discussing the other two elements. Why we use the Huygens principle. When applying the GO ansatz (1.6) or the H-B ansatz to solve the elastic wave equation (1.5), it is implicitly assumed that the phase τ is a single-valued, well-defined function in the sense that there is a unique ray connecting any observation point to the given source point. In fact, such an observation holds in general when applying the GO or H-B ansatz to solve other point-source wave equations. 6 However, for waves propagating in an isotropic, generic inhomogeneous medium, there is a high probability that caustics may occur [79] so that some observation points may be connected to the given source point via multiple rays, making τ multivalued! Moreover, since the wavefield in the GO or H-B ansatz depends nonlinearly upon the phase τ , we cannot simply add up multi-branched wavefields induced by the multivalued phase function. To tackle this challenge, we then apply the Huygens principle. According to [2, 71], in an isotropic medium there always exists a small neighborhood of the source in which any observation point is connected to the source via a unique ray, so that the phase τ is single-valued in this neighborhood; therefore, the GO or H-B ansatz is valid in this local neighborhood to yield a locally valid asymptotic solution. To go beyond caustics so as to account for multivalued phases implicitly, we use the Huygens secondary-source principle. Mathematically, to construct globally valid asymptotic solutions, we use the H-K integral to integrate many locally valid asymptotic solutions in terms of waves rather than phases so that caustics are treated implicitly. We sketch the methodology of using the Huygens secondary-source principle. We first choose as the first layer a neighborhood of the primary point source where the Green’s function is locally valid. This can be achieved by locating a region where both the S- and P-wave phase functions are single-valued. Then we choose the boundary of this layer as the secondary-source surface and identify the second layer as the region where the asymptotic Green’s functions excited by secondary sources are locally valid. Afterwards, the primary- source Green’s function in the second layer can be computed by integrating those locally valid secondary-source Green’s functions via the H-K integral on the secondary-source surface. By repeating this process, we can sweep through the entire domain to construct the globally valid primary-source Green’s function so that caustics are treated automatically and implicitly. 7 The question now is how to implement this sweeping strategy efficiently. To tackle this challenge, there are two major obstacles. The first obstacle is how to construct many locally valid secondary-source Green’s functions rapidly, which boils down to how to rapidly con- struct corresponding asymptotic ingredients, such as phases and H-B coefficients. To achieve this task, we propose to first compute phases and H-B coefficients at each secondary source to higher order accuracy and then compress these functions or their relatives into low-rank separated representations in terms of tensor-product multivariate Chebyshev polynomials. Computationally, since the information of each computed asymptotic ingredient is encoded into a small number of Chebyshev coefficients, such compression leads to significant storage reduction and efficient memory access. Why we use the butterfly algorithm. The second obstacle is how to carry out efficiently dense matrix-vector multiplications induced by the discretized H-K integral. To illustrate the point, we use the 3-D scalar Helmholtz equation as an example [45]. Let n be the number of mesh points along each coordinate direction of the computational domain, so that the total number of mesh points is N = n3 in the 3-D case. Because we are interested in the globally valid asymptotic solution everywhere in the entire computational domain, the solutions at observation points (receivers or nodes) correspond to the result of some matrix- vector products. In the 3-D case, straightforward implementation of the above matrix-vector 2 products will lead to O(N 3 ) operations for each receiver point, and the total cost will be 5 O(N 3 ) as we need to carry out such matrix-vector products for roughly N points of receivers. Such computational cost is far too high to make our strategy practical. Therefore, to tackle this difficulty, we adapt to our problem the multilevel matrix decom- position based butterfly algorithm [11, 84, 49, 57, 45, 56]. The resulting algorithm allows us to carry out the required matrix-vector products with the total cost of O(N log N ) complex- 8 ity, where the prefactor depends only on the specified accuracy and is independent of the frequency ω. Such low-rank rapid matrix-vector products are responsible for the adjective “fast” in our “fast Huygens sweeping method”. Our FHS method also has two unique merits which may be attributed to precomputed tables of asymptotic ingredients. The first merit is that because asymptotic ingredients such as phase and H-B coefficients are independent of ω, those tables can be used to construct asymptotic Green’s functions at a given primary source for arbitrary frequencies. The second merit is that those tables can be used to construct asymptotic Green’s functions at many other primary sources for arbitrary frequencies as well. These two merits are much desired in many applications, such as medical imaging and inverse problems. 1.4 Eulerian partial-differential-equation methods for complex-valued eikonals in attenuating media Seismic wave propagation in earth media is intrinsically attenuating [1, 16, 14] due to the influence of material properties and fractures and due to porosity and granularity of subsur- face rocks. Without properly taking attenuation effects into account, seismic data processing may produce unreliable delineation of geological structures. Therefore, it is crucial to de- velop efficient modeling methods for wave propagation in attenuating media. Direct modeling methods such as finite-difference and finite-element methods are sometimes inconvenient to use and suffer from dispersion errors [68, 7, 8, 12, 15, 13, 86, 80]. We seek alternative model- ing methods such as high-frequency asymptotic methods or the methods of Geometric optics [23, 16, 74, 26, 29, 30]. Apply such an asymptotic method to viscoelastic isotropic wave equations with complex-valued frequency-dependent elastic parameters and then vanish the 9 leading-order singularity in terms of reciprocal of large frequency yielding the complex eikonal equations satisfied by the complex-valued eikonal functions for P- and S- waves, respectively. The question then boils down to: how to solve such a complex eikonal equation efficiently? We propose a unified framework to eulerianize several popular real-space Lagrangian ray- tracing methods so that we can develop efficient Eulerian partial-differential-equation (PDE) methods for computing complex-valued eikonals, where the real and imaginary parts of the eikonal function describe wave propagation and attenuation effects, respectively. Why we develop real-space ray-tracing method. As a first-order nonlinear PDE, the complex eikonal equation can be solved by the method of characteristics to yield complex- valued eikonal functions, leading to the so-called complex-space ray-tracing method, which theoretically enables us to solve the complex eikonal equation without any approximation. However, since sources and receivers are usually located in real space in most applications, the complex-space ray-tracing method brings about unusual complications in that rays are now situated in complex space so that the dimension of the ambient space becomes doubled; consequently, the resulting ray tracing system is high dimensional and is costly to solve. Moreover, it is hard to build complex-valued elastic-parameter models from real-valued ones which are usually available from measurements in real space [74, 26]. Therefore, some fur- ther approximations were pursued to develop real-space ray-tracing methods for computing complex-valued eikonal functions. Viscoacoustic ray tracing. In viscoacoustic media, the widely used weakly attenuating approximation (i.e., the inverse of quality factor ≪ 1) [23, 16, 36, 81, 82, 28] can be used to re- duce the complex-space ray-tracing system to a real-space ray-tracing system approximately in terms of quality factor. Numerical experiments in [23] demonstrated that the weakly attenuating assumption is applicable to a substantial range of quality factor encountered in 10 exploration geophysics. [36] showed that the ray path under weakly attenuating approxi- mation is identical to that in the corresponding non-attenuating medium, so that the ray tracing method in a non-attenuating medium can be used to obtain the real and imaginary parts of the complex-valued eikonal, where the ray-tracing system is defined in real space since both the reference velocity and quality factor are real. In this approximate real-space ray-tracing model, both the real and imaginary parts of the complex-valued eikonal at each receiver have to be found indirectly via solving nonlinear systems or numerical quadratures. Real elastic ray tracing. Viewing a viscoelastic medium as the perturbation of a perfectly elastic medium, one may account for attenuation effects by using first-order per- turbations and tracing rays in the elastic reference medium which is specified in real space [75, 39, 26]. According to [76], we call this method the real-elastic ray-tracing method. Here again the real part of the complex-valued eikonal at each receiver has to be found indi- rectly, and, accordingly, the corresponding imaginary part has to be found from numerical quadratures. Real viscoelastic ray tracing. Another real-space ray-tracing method for viscoelastic media, the real viscoelastic ray-tracing method, is proposed by [74]. This method modifies the Hamiltonian for viscoelastic media so that the rays are constrained as trajectories in real space [76]. The resulting ray-tracing system is based on a certain real-valued reference velocity calculated from the complex-valued phase velocity for the P- or S- wave, respectively. Although this approach is still approximate, this method is highly accurate and applicable to strongly attenuating media [76, 26], where the real and imaginary parts of the complex- valued eikonal are obtained in the same way as the real elastic ray-tracing method. Why we develop efficient Eulerian methods. So far, since all the rays are traced from an arbitrary source point to receivers by solving an initial value problem for ordi- 11 nary differential equations (ODEs), all these real-space ray-tracing methods yield the real and imaginary parts of the complex-valued eikonal at irregularly distributed points, and such irregular distributions of complex-valued eikonals hinder their applications to seismic migration and tomography as these applications are usually posed on regular mesh points. Therefore, we are motivated to develop efficient methods to produce complex-valued eikonals on regular grids by formulating the above three real-space ray-tracing systems into partial differential equations. Assuming that there is a unique ray connecting any source to any receiver, one possibility is to solve an eikonal equation with an appropriate reference velocity for the real part of the complex-valued eikonal and solve an advection equation with an appropriate quality-factor function for the imaginary part of the complex-valued eikonal, where the advection equation is weakly coupled to the eikonal equation in the sense that the advection coefficients are defined by the gradient of the real part of the complex-valued eikonal; the resulting Eulerian method yields a single-valued approximate solution for the complex eikonal equation. Be- cause the unique-ray assumption is very restrictive, we in fact will solve the above-mentioned eikonal equation for the real part in the sense of viscosity solution [73, 40] so that we end up with computing the first-arrival based real part of the complex-valued eikonal. Now the question is how to solve the weakly coupled eikonal and advection equations efficiently with high-order accuracy so as to obtain the real and imaginary parts of the complex-valued eikonal. Supposing that we wish to compute the imaginary part to first- order accuracy which is in fact a minimum requirement, we need to have at least first-order accurate gradient of the real part since the numerically differentiated gradient of the real part serves as coefficients for the advection equation satisfied by the imaginary part. This in turn implies that the computed real part be of at least second-order accuracy so that 12 its numerical gradient is of first-order accuracy, and the upshot is that we need high-order accurate eikonal solvers. Such an accuracy requirement has been first observed by [61] for solving transport equations of amplitudes. Although first-order accurate eikonal solvers are abundant [77, 73, 55, 67, 61, 70, 34, 88, 65, 66, 54, 85, 33, 20, 69, 48, 78], only a few high-order accurate point-source eikonal solvers are available [61, 38, 87, 69, 50, 45, 64]. Following the work in [64] in which the eikonal and transport equations are solved to high- order accuracy with proper initializations at the point source, we develop high-order Lax- Friedrichs weighted essentially non-oscillatory (LxF-WENO) schemes for the eikonal and advection equations under consideration. The WENO approximation of derivatives [31, 64] provides better numerical stability when complex wavefronts are encountered. Moreover, the point-source singularities of the eikonal and advection equations are treated by systematic factorizations [54, 85, 20, 50, 64, 45]. 1.5 Contents The rest of this thesis is organized as follows. In Chapter 2, we discuss the Hadamard-Babich ansatz for the Helmholtz equation and Maxwell’s equations. The governing equations for traveltime and amplitudes are also given. Next, we introduce the factorization technique for initialization and numerical schemes for computing those asymptotic ingredients. The convergence behavior is also discussed. In Chapter 3, we develop Hadamard’s method for elastic wave equations. In this chap- ter, we first derive the fundamental solution for elastic wave equations in a homogeneous medium, and this fundamental solution motivates us to propose a novel generalized-function based Hadamard’s ansatz for solving elastic wave equations. This new ansatz leads us to 13 solve governing equations for asymptotic ingredients of S and P waves. We further pro- pose matching conditions to derive initial conditions so as to initialize those asymptotic ingredients. Numerical examples are performed to validate our methodology. In Chapter 4, we first introduce the truncated H-B ansatz. Then, numerical methods to compute asymptotic ingredients are discussed. We further develop the fast Huygens sweeping method for constructing globally valid asymptotic Green’s tensors. Last, numerical examples are given to illustrate the performance, effectiveness and accuracy of our method. In Chapter 5, we first propose a unified framework to compute the real and imaginary parts of the complex-valued eikonal, and we put three popular real-space ray-tracing models for viscous wave motion into this framework; then, we develop factorized PDEs to solve the resulting eikonal and advection equations by using the high-order LxF-WENO schemes. Numerical experiments demonstrate the feasibility and accuracy of the proposed method. 14 Chapter 2 Hardmard-Babich ansatz for the Helmholtz equation and Maxwell’s equations 2.1 Babich ansatz for the Helmholtz equation Considering the Helmholtz equation ∆u + ω 2 n2 (r)u = −δ(r − r0 ), (2.1) a usual way to seek the asymptotic solution is as follows ∞ ws eiωτ X u= , (2.2) s− 21 (m−1) s=0 (iω) where n is the refractive index, τ is the traveltime, ω is the angular frequency, m is the dimension, r0 is the source location, and position r = [x1 , · · · , xm ]T . The corresponding governing equations for τ and ws can be derived by plugging (2.2) into (2.1). When comput- ing the asymptotic ingredients, the difficulties arise immediately. One is how to choose initial data for the asymptotic ingredients. Second, the series does not give a uniform asymptotic 15 form close to the source when m is even since ws is singular at the source. Instead, Babich proposed a new asymptotic expansion using Hankel functions [3] as follows X∞ u= vs f m−2 (ω, τ ), (2.3) − 2 +s s=0 where fs is defined as 2τ s (1)   π fs (ω, τ ) = i eπiω Hs (ωτ ). (2.4) 2 ω (1) Here, Hs is the s-th Hankel function of first kind. Inserting (2.3) into (2.1), we obtain the eikonal equation for τ and transport equations for vs as follows [3, 43] |∇τ | = n, (2.5) ∆τ 2   2 2 ∆vs−1 ∇τ · ∇vs + + (2s − m)n vs = , s = 0, 1, 2, · · · . (2.6) 2 2 This new asymptotic expansion ensures that if n(r) is analytic, the vs are analytic. Thus the uniform smallness of discrepancy as ω → ∞ in the neighborhood of the source can be guaranteed. Notice, that (2.3) can also be obtained by Hadamard’s method [3]. 16 2.2 Babich-like ansatz for Maxwell’s equations Considering the point source Maxwell’s equations in R3 : ∇ × ∇ × G − ω 2 n2 (r)G = −Iδ(r − r0 ), (2.7) the GO ansatz [9, 37, 56] approximating the Green’s functions G is given as ∞ Ãs (r; r0 ) eiωτ (r;r0 ) . X G(r; r0 ) = (2.8) ωs s=0 Usually, we keep the first term of (2.8) to approximate G. But, the resulting approx- imation will exhibit the different field singularities comparing to the true solutions [44]. Moreover, components of Ã0 may vanish along certain directions. A way to fix this is to add more terms. However, a difficulty arises immediately: how to initialize those amplitudes Ãs at the source. To overcome the initialization difficulties and motivated by the Babich’s expansion for the Helmholtz equation, an asymptotic solution of (2.7) using spherical Hankel functions [44] is proposed as follows: ∞ X Ãs (r; r0 ) G(r; r0 ) = fs (ω, τ (r; r0 )), (2.9) τ 2s (r; r0 ) s=0 where fs is defined as (1) τ s−2 hs−3 (ωτ ) fs (ω, τ ) = − . (2.10) ω s−1 (1) Here, hs denotes the first-kind spherical Hankel functions of order s ∈ Z. 17 In order to obtain the governing equations for amplitudes Ãs , we need to use the following properties of fs . For any s ≥ 0 and when τ ̸= 0, we have ∂ fs (ω, τ ) =τ fs−1 (ω, τ ); (2.11) ∂τ ω 2 fs (ω, τ ) =(2s − 7)fs−1 (ω, τ ) − τ 2 fs−2 (ω, τ ); (2.12) fs+1 (ω, τ ) =O(ω −1 ) and |fs (ω, τ )| = O(ω −s ) as ω → ∞. (2.13) fs (ω, τ ) The governing equations for τ and Ãs can be obtained by inserting (2.9) into (2.7). Hence we get |∇τ | = n, (2.14) ∆τ 2 ∇n2 · Ãs−1   ∇τ 2 · ∇Ãs + − (2s + 7)n2 Ãs = −∇τ 2 + Rs−1 , s = 0, 1, 2, · · · , 2 n2 (2.15) where Rs−1 is defined as ! ∇n2 · Ãs−1 ∇n2 · Ãs−1 Rs−1 = − τ 2 ∇ + (s − 1) ∇τ 2 (2.16) n2 n2 − (s − 1)sn2 Ãs−1 − τ 2 ∆Ãs−1 + (s − 1)(2∇Ãs−1 · ∇τ 2 + Ãs−1 ∆τ 2 ). The new proposed ansatz has following properties. First, the resulting transport equa- tions for amplitudes Ãs can be easily initialized. Second, it yields a uniform asymptotic solution as ω → ∞ in a neighborhood of the point source. In [46], Lu, Qian, and Burridge also showed that the proposed ansatz (2.9) is closely 18 bound up with Hadamard’s method of forming the fundamental solution of the Cauchy problem of Maxwell’s equations. 2.3 High order Eulerian asymptotics The new asymptotic expansions resolve the issue of initialization since the amplitudes are no longer singular at source. Furthermore, they yields a uniform asymptotic expansion near the source. Notice that keeping first two terms of the asymptotic expansion for computation is enough. In [64, 45, 44], the numerical experiments are presented for performance and accuracy of the new asymptotic method. In order to obtain first-order accurate approxi- mation of v1 in (2.6) or Ã1 in (2.15), we need third-order accurate approximation of v0 or Ã0 , respectively. Since the right hand side of (2.6) or (2.15) involves second order deriva- tive of v1 or Ã1 . Similarly, to obtain third-order accurate approximation of v1 or Ã1 , we need fifth-order accurate approximation of traveltime τ . Numerically, in order to obtain the asymptotic approximation with desired order of accuracy, high order numerical methods are needed for computing the traveltime and the amplitudes. In order to have high order approximation, we first need to have high order initialization of those asymptotic ingredients near the source. 2.3.1 High order factorization of eikonal Notice, that when the slowness n is analytic, then the square of traveltime T = τ 2 is also analytic [3, 64, 44]. Hence we have the following expansion near the source point: X∞ X∞ T (r) = Tk (r), S(r) = Sk (r), (2.17) k=0 k=0 19 where S = n2 . Inserting (2.17) into the equation ∇T · ∇T = 4T S, (2.18) we can obtain T0 = 0, T1 = 0, T2 = S0 r 2 , (2.19) and the recursive formula for computing Tp for P ≥ 3 PX−2 1 (P − 1)S0 Tp = Sk TP −k − ∇Tk+1 · ∇TP −k+1 . (2.20) 4 k=1 Depending on the desired order of accuracy, one can choose the truncated sum T̃p = PP q k=1 Tk to approximate T near the source. Then τ can be approximate by T̃p with accuracy O(|r|P ) near the source. 2.3.2 High-order factorization of amplitudes vs for the Helmholtz equation Similarly, to obtain high order approximation to vs , we need high order schemes to initialize vs near the source. vs are assumed to be analytic near the source. First, we have the expansion for v0 X∞ v0 = Vk (r), (2.21) k=1 20 with nm−2 0 V0 = . (2.22) 2π (m−1)/2 Inserting (2.17) and (2.21) into (2.6), we can obtain the recursive formula for VP for P ≥ 2 as follows PX−1   1 2P S0 Vp = −∇Vk · ∇TP +2−k − Vk ∆TP +2−k + mVk SP −k . (2.23) 2 k=1 PP Then we can use the truncated sum ṼP = k=1 Vk to approximate vs near the source with the accuracy O(|r|P ). Second, the expansion for v1 is as follows X∞ v1 = V̄k (r). (2.24) k=1 Then, for V̄0 and V̄1 , we have the following formulas 1 1 1 2S0 V̄0 = ∆V2 , 4S0 V̄1 = ∆V2 − ∆T3 V̄0 − (2 − m)S1 V̄0 . (2.25) 2 2 2 The recursive formula for V̄P with P ≥ 2 is as follows PX−1   1 1 2(P + 1)S0 V̄p = ∆VP +2 + −∇V̄k · ∇TP +2−k − V̄k ∆TP +2−k + (m + 2)V̄k SP −k . 2 2 k=1 (2.26) Analogously, the high-order approximation for vs , s ≥ 3, can be obtained by using the 21 same approach. 2.3.3 High-order factorization of amplitudes Ãs for Maxwell’s equa- tions In [46], a matching condition G = Ghom + O(1), as r → 0, (2.27) is proposed and the asymptotic behaviors of Ã0 , Ã1 , and Ã2 is obtained as follows (I − 3r̃ r̃ T )n0 τ 2 + (I + r̃ r̃ T )n30 r2 τ 3   Ã0 = + O(τ 3 ), as r → 0, (2.28) 8π n0 r τ 3   1 T 2 Ã1 = 3Ã0 − (I − 3r̃ r̃ )n0 τ + O(τ 4 ), as r → 0, (2.29) 4π n0 r τ 3   1 T 2 Ã2 = 3Ã0 − Ã1 − (I − 3r̃ r̃ )n0 τ + O(τ 5 ), as r → 0. (2.30) 4π n0 r Further, assume that Ãs are analytic, then Rs−1 is also analytic in (2.15). Then the expansions near source are X∞ X∞ Ãs = Ãsk , Rs−1 = Rs−1,k , (2.31) k=1 k=1 22 The recursive formula for AsP can be obtained as follows 0 = (2P − (2l + 4))S0 Ãsq P −1 PX −1 1 X X X + ∇T2+k (∇Sj · Ãsl ) + Sj (∇T2+k · ∇)Ãsl 2 l=0 j+k=q−l,j,k≥0 l=0 j+k=q−l,j,k≥0 PX −1   X ∆T2+k X + Sj − (2s + 7)Sk Ãsl − Sj R̃s−1,k . (2.32) 2 l=0 j+k=q−l,j,k≥0 j+k=P,j,k≥0 2.4 High-order schemes for computing the eikonal and transport equations In previous section, we discussed how to obtain high order initialization for asymptotic in- gredients. To obtain high order approximation of those asymptotic ingredients, we need high order numerical schemes. Since τ is singular at point source, the schemes developed on the original eikonal equation (2.5) is at most first order accurate. To tackle this difficulty, a fac- torization approach is developed in [20, 47, 51, 50]. The idea is to introduce a predetermined term τ̃ to capture the source singularity. For instance, τ̃ can be chosen to be n(r0 )|r − r0 |. Then τ is factored as τ = τ̃ τ̄ , (2.33) where τ̄ is the new unknown and is smooth at the source. The factored eikonal equation for τ̄ is as follows |τ̃ ∇τ̄ + τ̄ ∇τ̃ | = n. (2.34) 23 This is a Hamilton-Jacobi equation and the high-order Lax-Friedrichs WENO-based schemes designed in [34, 47, 51, 50, 83, 87] can be applied to solve (2.34). Computationally, to obtain P -th order accurate approximation of τ , we need to initialize τ in a neighborhood of size 2(P − 1)h centered at source. These initial values will be fixed during the iterations. For computing the amplitudes in (2.6), the high-order Lax-Friedrichs WENO schemes can be applied with the initial data given in (2.26). Those initial data will be fixed in a neighborhood of the point source, and the size of this neighborhood is depending on the order of accuracy we need. Details of computing the amplitudes refer to [64]. To compute the amplitudes in (2.15), we first need to decouple the governing equations. This technique is discussed in [56, 44]. The high-order Lax-Friedrichs WENO schemes can then be applied to the decoupled equations. 2.5 High-order Lax-Friedrichs WENO schemes We focus on static Hamilton-Jacobi equations of the following form   H(x, ∇φ(x)) = R(x), x ∈ Ω,   (2.35)   φ(x) = q(x),  x ∈ Γ, Where H, q and R ≥ 0 are lipschitz continuous, and Γ is a subset of Ω ⊂ Rd . Here d is the dimension. The upwind scheme is commonly used when the Hamiltonian is convex. However, the upwind scheme would be hard to carry out when the Hamiltonian in (2.5) is nonconvex. Hence we use the Lax-Friedrichs Hamiltonian to avoid a complicated optimization process 24 which is always needed for the Godunov Hamiltonian. 2.5.1 Lax-Friedrichs Hamiltonian For simplicity, we start from case with one dimension. When d = 1, the Lax-Friedrichs Hamiltonian is defined as p− + p+ p+ − p− H̃ LF (p− , p+ ) = H( ) − σx (2.36) 2 2 where p = ∂φ/∂x, p± are corresponding forward and backward difference approximation of ∂φ/∂x, and σx is the artificial viscosity satisfying ∂H σx ≥ max , (2.37) p∈[A,B] ∂p where [A, B] is the range of p± . Consider an uniform discretization {xi , i = 1, 2, 3 · · · } of Ω with grid size ∆x. At the mesh point xi , we have the following numerical approximation H̃ LF = R, (2.38) which implies   φi+1 − φi−1 φ − 2φi + φi−1 H xi , − σx i+1 = R(xi ). (2.39) 2∆x 2∆x 25 In order to have a simple update formula, we solve for φi in the above    ∆x φi+1 − φi−1 φ + φi−1 φn+1 i = R(xi ) − H xi , + i+1 . (2.40) σx 2∆x 2 This gives the first-order Lax-friedrichs schemes [34]. The formula for two and three dimensions can be obtained by similar procedures: φi+1,j − φi−1,j φi,j+1 − φi,j−1    1 φn+1 =σ R(xi,j ) − H xi,j , , (2.41) i,j x + σy 2∆x 2∆y ∆x ∆y φi+1,j + φi−1,j φi,j+1 + φi,j−1  + + . 2∆x 2∆y φi+1,j,k − φi−1,j,k φi,j+1,k − φi,j−1,k φi,j,k+1 − φi,j,k−1    φn+1 i,j,k =c R(xi,j,k ) − H xi,j,k , , , 2∆x 2∆y 2∆z (2.42) φi+1,j,k + φi−1,j,k φi,j+1,k + φi,j−1,k φi,j,k+1 + φi,j,k−1  + + ++ . 2∆x 2∆y 2∆z where q = ∂φ/∂y and where r = ∂φ/∂z, 1 c= σ , (2.43) x + σy + σz ∆x ∆y ∆z and σx , σy and σz are artificial viscosities satisfying ∂H ∂H ∂H σx ≥ max , σy ≥ max , σz ≥ max . (2.44) ∂p ∂q ∂r 26 2.5.2 High order Lax-Friedrichs WENO schemes We consider the case d = 2.The high order schemes for higher dimension can be derived similarly. From the first order Lax-Friedrichs scheme we construct above φi+1,j − φi−1,j φi,j+1 − φi,j−1    1 φn+1 i,j =σ σy R(xi,j ) − H xi,j , , (2.45) x 2∆x 2∆y ∆x + ∆y φi+1,j + φi−1,j φi,j+1 + φi,j−1  + + , 2∆x 2∆y we replace φi−1,j , φi+1,j , φi,j−1 and φi,j+1 with φi,j − ∆x · (φx )− + i,j , φi,j + ∆x · (φx )i,j , φi,j − ∆y · (φy )− + − + − i,j , and φi,j + ∆y · (φy )i,j , respectively, where (φx )i,j , (φx )i,j , (φy )i,j and (φy )+ i,j are high order WENO approximations for partial derivatives of φ [87, 64]. Then the high order Lax-Friedrichs sweeping schemes for static H-J equations can be written as (φx )+ − + − ! n+1 1 i,j + (φx )i,j (φy )i,j + (φy )i,j φi,j = σ R(xi,j ) − H xi,j , , (2.46) x + σy 2∆x 2∆y ∆x ∆y (φx )+ − (φy )+ − ! i,j − (φx )i,j i,j − (φy )i,j + + + φni,j . 2∆x 2∆y The third-order WENO approximations for derivatives (φx )− + − + i,j , (φx )i,j , (φy )i,j and (φy )i,j are calculated from the following formula [31]. The approximation for φx at the grid point (i, j) when the wind ”blows” form the left to right is φi+1,j − φi−1,j 3φi,j − 4φi−1,j + φi−2,j     (φx )−i,j = (1 − ω− ) + ω− , (2.47) 2∆x 2∆x 27 where 1 ϵ + (φi,j − 2φi−1,j + φi−2,j )2 ω− = 2 , r− = . (2.48) 1 + 2r− ϵ + (φi+1,j − 2φi,j + φi−1,j )2 ϵ is the small number to avoid division by zero. The approximation for φx at the grid point (i, j) when the wind ”blows” form the right to left is φi+1,j − φi−1,j −φi+2,j + 4φi+1,j − 3φi,j     (φx )+ i,j = (1 − ω+ ) + ω+ , (2.49) 2∆x 2∆y where 1 ϵ + (φi+2,j − 2φi+1,j + φi,j )2 ω− = 2 , r+ = (2.50) 1 + 2r+ ϵ + (φi+1,j − 2φi,j + φi−1,j )2 Similarly we can define (φy )− + i,j and (φy )i,j . The formula for fifth-order WENO approximation can also be found in [31], and is omitted here. 2.6 Numerical example of high-order Lax-Friedrichs WENO-based schemes for computing traveltime τ Here, a numerical example is implemented to see the performance of high-order Lax-Friedrichs WENO-based schemes for computing traveltime τ . The slowness is n(r) = 1/(0.5 − 0.8(y − 28 0.26)). In this case, we have exact solution for traveltime τ as   1 n(r)n(r0 ) 2 2 τ (r, r0 ) = arccosh 1 + |g0 | |r − r0 | , (2.51) |g0 | 2 where g0 = [0, −0.8, 0]. The computation is implemented in the domain [0, 0.52]3 . We use the first-, third- and fifth-order Lax-Friedrichs WENO-based schemes to compute traveltime τ . The L2 -norm error is computed, and the results are as follows. 1st order 3rd order 5th order h = 0.02 4.1589e-04 2.8952e-06 1.2697e-07 h = 0.01 1.9166e-04 1.6556e-07 3.7309e-09 h = 0.005 9.1920e-05 2.8824e-08 1.1211e-10 h = 0.0025 4.5002e-05 3.5576e-09 3.4310e-12 Table 2.1: L2 -norm error of traveltime τ computed by first-, third-, fifth-order Lax-Friedrichs WENO schemes with varying h. From the table, we can see that the approximation of traveltime τ with desired order of accuracy can be obtained by high-order schemes. 2.7 Expected convergence behavior We focus on analyzing the convergence behavior of the H-B ansatz of the Helmholtz equation. The similar analysis can be naturally extended to Maxwell’s equations. The new algorithm has two principle sources of numerical errors [19, 42]. One is due to the numerical computa- tion for asymptotic ingredients, such as traveltime τ , amplitudes v0 and v1 . As mentioned above, in order to have first-order accurate v1 , we need third-order accurate v0 and fifth- order accurate τ . Hence, we apply the fifth-order Lax-Friedrichs WENO schemes to compute τ , v0 and v1 with fifth-, third-, fifth-order accuracy, respectively. The computational errors can be denoted as O(hα ), where h is the mesh size and α is the order of accuracy. 29 The other one is due to the truncation of H-B ansatz. When we keep the leading- order term of H-B ansatz of (2.3), we are expecting the first-order asymptotic convergence convergence in the form of O((1/ω)1−(m−3)/2 ); when we keep the first two terms of H-B ansatz of (2.3), we are expecting the second-order asymptotic convergence convergence in the form of O((1/ω)2−(m−3)/2 ). Similarly, if we truncate the ansatz to keep first (N+1) terms of H-B ansatz, we get XN uN = vs f m−2 (ω, τ ). (2.52) − 2 +s s=0 Then the truncation error can be estimated asymptotically in ω as follows   ∥uN − u∥L∞ ≤ O (1/ω)N +1−(m−3)/2 . (2.53) To compute the overall error of the numerical algorithm, we first introduce uhN which is denoted as the numerical solution of uN with mesh size h. Then, for N = 0, the total error can be estimated as Etotal =∥uhN − u∥L∞ ≤ ∥uhN − uN ∥L∞ + ∥uN − u∥L∞ (2.54)   ≤∥v0h f0 (ω, τ h ) − v0 f0 (ω, τ )∥L∞ + O (1/ω)N +1−(m−3)/2   ≤O(h3 ) + O(ωh5 ) + O (1/ω)N +1−(m−3)/2 ; 30 and for N = 1, we have Etotal =∥uhN − u∥L∞ ≤ ∥uhN − uN ∥L∞ + ∥uN − u∥L∞ (2.55)   ≤∥v0h f0 (ω, τ h ) − v0 f0 (ω, τ )∥L∞ + ∥v1h f1 (ω, τ h ) − v1 f1 (ω, τ )∥L∞ +O (1/ω)N +1−(m−3)/2 h   ≤O(h3 ) + O(ωh5 ) + O( ) + O(h5 ) + O (1/ω)N +1−(m−3)/2 . ω 31 Chapter 3 Hadamard-Babich ansatz for point-source Elastic wave equations This chapter is based on a modified version of the published work in [58]. To motivate the method, let’s restate the frequency-domain point-source (FDPS) elastic wave equations in R3 : ρω 2 G + (λ + µ)∇(∇ · G) + µ∇2 G + ∇λ(∇ · G) + ∇µ × (∇ × G)) + 2(∇µ · ∇)G = −Iδ(r − r0 ), (3.1) where G = G(r; r0 ) is the so-called Green’s tensor at the source r0 , I is the 3 × 3 identity dyad, ω is the frequency, ρ(r) is the mass density, λ(r) and µ(r) are so-called Lamé’s stiffness parameters, and r = (x1 , x2 , x3 )T . Tacitly, the Sommerfeld radiation condition is assumed at infinity. We have discussed the challenges that the usual GO ansatz has to obtain accurate ap- proximation of Green’s tensor. To tackle these challenges, in [58] we have developed a new asymptotic ansatz based on generalized functions for solving the time-domain point-source elastic wave equations using Hadamard’s method in a region close to the source but no other caustics. 32 3.1 Cauchy problem of point-source elastic wave equa- tions To apply Hadamard’s method, we consider the following Cauchy problem in time of the point-source elastic wave equations: ρG̈ − (λ + µ)∇(∇ · G) − µ∇2 G − ∇λ(∇ · G) (3.2) −∇µ × (∇ × G)) − 2(∇µ · ∇)G = Iδ(r − r0 )δ(t), G(r, t; r0 )|t<0 = 0, (3.3) and we may write it in the form ρG̈ij − (λ + µ)Gkj,ki − µGij,kk − λ,i Gkj,k − µ,k Gij,k − µ,k Gkj,i = δij δ(r − r0 )δ(t), (3.4) Gij = 0, for t < 0. (3.5) Here, the subscript and comma notation are employed, and r = x = (x1 , x2 , x3 )T . Specif- ically, Gij denotes the ij-th entry of G, Gij,k denotes the xk -derivative of Gij , so Gij,kl denotes ∂x2 x Gij for 1 ≤ i, j, k, l ≤ 3. Furthermore, the Einstein summation convention is k l assumed so that Gij,kk = ∆Gij , and δij is the Kronecker delta. Using Duhamel’s principle (P. 202 and pp. 729-730 in [17]), we may rewrite (3.4) and (3.5) for t > 0 as ρG̈ij − (λ + µ)Gkj,ki − µGij,kk − λ,i Gkj,k − µ,k Gij,k − µ,k Gkj,i = 0, (3.6) 33 with initial conditions Gij (r, 0; r0 ) = 0, (3.7) 1 Ġij (r, 0; r0 ) = δ δ(r − r0 ), (3.8) ρ0 ij where ρ0 is the density at the source point r0 . 3.1.1 Solution of Cauchy problem in a homogeneous medium In the case when all elastic parameters are constants, we may write the isotropic elastic wave equations in a homogeneous medium in the form ρG̈ij − (λ + µ)Gkj,ki − µGij,kk = 0, (3.9) with initial conditions Gij (r, 0; r0 ) = 0, (3.10) 1 Ġij (r, 0; r0 ) = δij δ(r − r0 ). (3.11) ρ Following a suggestion of Friedlander [21] as we have done in [46], we will seek a solution 34 to (3.9)-(3.11) in the form Gij = φ,ij + δij ψ,kk − ψ,ij = δij ψ,kk + (φ,ij − ψ,ij ), (3.12) where φ and ψ are to be determined. On substituting this into (3.9), we obtain ∂i ∂j [ρφ̈ − (λ + 2µ)∆φ] + [δij ∆ − ∂i ∂j ][ρψ̈ − µ∆ψ] = 0. (3.13) Let us now decompose the initial condition (3.11) in a similar way using the fact   −1 δ(r − r0 ) = ∆ , (3.14) 4πr where r = |r − r0 |. Thus we may write     −1 −1 δij δ(r − r0 ) = ∂i ∂j + [δij ∆ − ∂i ∂j ] . (3.15) 4πr 4πr Consequently, we see that Gij given by (3.13) will satisfy (3.9)-(3.11) if ρφ̈ − (λ + 2µ)∆φ = 0, t > 0, (3.16) −1 φ = 0, φ̇ = , t = 0, (3.17) 4ρπr and ρψ̈ − µ∆ψ = 0, t > 0, (3.18) −1 ψ = 0, ψ̇ = , t = 0. (3.19) 4ρπr 35 We easily verify that (3.16)-(3.19) are satisfied by  P R(t − γ P r) t  −γ , γ P r ≤ t,  4πρ φ= − = (3.20) 4πρr 4πρr   −t , γ P r > t, 4πρr  S R(t − γ S r) t  −γ , γ S r ≤ t,  4πρ ψ= − = (3.21) 4πρr 4πρr   −t , γ S r > t, 4πρr where   ξ, ξ > 0,  R(ξ) = (3.22)  0, ξ ≤ 0,  and r r ρ ρ γS = and γP = . (3.23) µ λ + 2µ Carrying out the differentiations indicated in (3.13), we finally arrive at 2 " # γ S (δij − ti tj ) (δ ij − 3t t i j ) γ S 1 Gij = δ(t − γ S r) + H(t − γ S r) + 3 R(t − γ S r) 4πρr 4πρ r2 r 2 " # γ P ti tj P (δij − 3ti tj ) γ P P 1 P + δ(t − γ r) − H(t − γ r) + 3 R(t − γ r) , (3.24) 4πρr 4πρ r2 r where r = |r − r0 |, and t = (r − r0 )/r. Here the superscripts S and P refer to the S and P wave, respectively. γ S and γ P are the S and P wave slowness, respectively, as will become apparent later. The vector t = {t1 , t2 , t3 } is the unit tangent vector to the S or P ray as the case may be, and the S and P rays coincide 36 in this special case of a uniform medium. 3.2 Hadamard’s method for deriving asymptotic series for the case of an inhomogeneous medium Generally, the exact solutions may not exist for the point-source elastic wave equation in an inhomogeneous medium. And, we seek the solution to (3.4) and (3.5) in terms of the (k) generalized functions f+ defined to be  λ xλ  x+  for x ≥ 0, (λ) λ! f+ (x) = + = (3.25) λ!   0 otherwise, (λ) for λ > −1; for other values of λ, f+ is defined by analytic continuation. Also, since (λ) ′ (λ−1) f+ = f+ , (3.26) (λ) f+ can be defined for negative integer values of λ by successive differentiation in the sense (0) (−λ−1) of distribution. Since f+ (x) = H(x), the Heaviside unit function, f+ (x) = δ (λ) (x), (λ) the λ-th derivative of δ-function for λ = 0, 1, 2, · · · . For further discussion of f+ and related functions, see Chapter I, Section 3.4 and 3.5 of [24]. Notice that we can figure out the relation between Gij and the generalized functions f+ λ for the homogeneous case. It turns out that the second-order time derivative of Gij has a (−3) (−2) simple relation with f+ and f+ . In fact, adopting similar techniques as used in proving 37 Proposition 2.1 in [46], we can obtain G̈ij = G̈S P ij + G̈ij , (3.27) 3 γS h S 2 2 (−3) 2 S 2 2 (−2) 2 S 2 2 i G̈S ij = 2γ r (δij − ti tj )f+ (t − γ r ) − 2δij f+ (t − γ r ) , (3.28) ρπ and 3 γP h P 2 2 (−3) 2 (−2) 2 i G̈P ij = 2γ r ti tj f+ (t2 − γ P r2 ) − δij f+ (t2 − γ P r2 ) . (3.29) ρπ Motivated by the form of solution in homogeneous case, and when the elastic coefficients vary with r, the formulas (3.28) and (3.29) for the constant case motivate us to seek the solution of (3.1) in the following form of asymptotic series ∞ (−3+l) 2 Al (r; r0 )f+ X G̈(r, t; r0 ) = (t − T (r; r0 )), (3.30) l=0 or in subscript notation ∞ (−3+l) 2 Alij f+ X G̈ij = (t − T ), (3.31) l=0 where T (r; r0 ) = τ 2 (r; r0 ), and τ (r; r0 ) is the traveltime from the source r0 to r. We shall define Al (r; r0 ) ≡ 0 for l < 0. To derive the governing equations for Al and T , we need to use two simple properties of (k) f+ (x), (k) ′ (k−1) f+ (x) = f+ (x), (3.32) (k) (k+1) xf+ (x) = (k + 1)f+ (x). (3.33) 38 Taking double time derivatives of (3.6) yields ρ∂t4 Gij = (λ + µ)G̈kj,ki + µG̈ij,kk + λ,i G̈kj,k + µ,k G̈ij,k + µ,k G̈kj,i . (3.34) (k) To write (3.34) in terms of the generalized functions f+ , we compute the following double time derivative of G̈, ∞ (−3+l) 2 ∂t4 Gij Alij ∂t2 f+ X = (t −T) (3.35) l=0 ∞ (−5+l) 2 (−4+l) 2 4t2 Alij f+ − T ) + 2Alij f+ X = (t (t −T) l=0 ∞ (−5+l) 2 (−4+l) 2 4T Alij f+ − T ) + 2(2l − 7)Alij f+ X = (t (t −T) l=0 ∞ (−5+l) 2 − T )[4T Alij + 2(2l − 9)Al−1 X = f+ (t ij ], l=0 and the following spatial derivatives of G̈, ∞ (−4+l) 2 (−3+l) 2 −T,k Alij f+ − T ) + Alij,k f+ X G̈ij,k = (t (t −T) (3.36) l=0 ∞ (−5+l) 2 − T )[−T,k Al−1 l−2 X = f+ (t ij + Aij,k ], l=0 ∞ (−5+l) 2 (t − T )[−T,i Al−1 l−2 X G̈kj,i = f+ kj + Akj,i ], (3.37) l=0 ∞ (−5+l) 2 (t − T )[−T,k Al−1 l−2 X G̈kj,k = f+ kj + Akj,k ], (3.38) l=0 39 ∞ (−5+l) 2 (−4+l) 2 T,k T,i Alkj f+ − T ) − T,k Alkj,i f+ X G̈kj,ki = (t (t −T) (3.39) l=0 (−4+l) 2 (−4+l) 2 (−3+l) 2 − T,i Alkj,k f+ (t − T ) − T,ki Alkj f+ (t − T ) + Alkj,ki f+ (t −T) ∞ (−5+l) 2 (t − T )[T,k T,i Alkj − T,k Al−1 l−1 l−1 l−2 X = f+ kj,i − T,i Akj,k − T,ki Akj + Akj,ki ], l=0 ∞ (−5+l) 2 (t − T )[T,k T,k Alij − T,k Al−1 l−1 l−1 l−2 X G̈ij,kk = f+ ij,k − T,k Aij,k − T,kk Aij + Aij,kk ]. (3.40) l=0 Inserting above derivatives into (3.34) and according to the meaning of an asymptotic (−5+l) series being zero, we vanish the coefficients of f+ successively to obtain 0 =4ρT Alij − (λ + µ)T,k T,i Alkj − µT,k T,k Alij + 2ρ(2l − 9)Al−1 l−1 l−1 ij + (λ + µ)T,k Akj,i + (λ + µ)T,i Akj,k + (λ + µ)T,ki Akj l−1 + 2µT,k Al−1 l−1 l−1 l−1 ij,k + µT,kk Aij + λ,i T,k Akj + µ,k T,k Aij + µ,k T,i Akj l−1 − (λ + µ)Al−2 l−2 l−2 l−2 l−2 kj,ki − µAij,kk − λ,i Akj,k − µ,k Aij,k − µ,k Akj,i . (3.41) Setting l = 0 in (3.41) and remembering that Alij is zero for l < 0, we obtain 4ρT A0ij − (λ + µ)T,k T,i A0kj − µT,k T,k A0ij = 0, (3.42) or in vector notation (4ρT − µ|∇T |2 )A0j = (λ + µ)∇T (∇T · A0j ). (3.43) Here A0j denotes the j-th column of the coefficient matrix A0 , which means A0 = (A01 , A02 , A03 ). 40 Two cases arise, and we call them case I and case II. Case I, both sides of (3.43) are zero. Since A0j for 1 ≤ j ≤ 3 is assumed to be non-zero, we have ∇T · A0j = 0, and 4ρT − µ|∇T |2 = 0, (3.44) or Case II, both sides of (3.43) are non-zero, then we have A0j ∥ ∇T , and 4ρT − (λ + 2µ)|∇T |2 = 0, (3.45) which can be seen from taking the scalar product of (3.43) with ∇T . 3.3 Case I, the S wave: ∇T ·A0j = 0 and 4ρT −µ|∇T |2 = 0 Here 4ρT |∇T |2 = . (3.46) µ Let us set T = τ 2 . Then we see that ρ |∇τ |2 = , (3.47) µ the usual eikonal equation for the S-wave traveltime, and so T is the square of the S trav- eltime τ . The rays are obtained in the process of solving (3.46) or (3.47) by the method of characteristics, which gives dxi dτ dp = ρ = 1 ρi , (3.48) pi µ 2 ( µ ),i 41 where pi = τi and from (3.47), 1 ρ (|p|2 − ) = 0. (3.49) 2 µ In our development whenever convenient we shall use T rather than the more usual τ . The advantage is that the argument Γ = t2 − T = t2 − τ 2 is linear in T but quadratic in τ so that in using T , differentiation with respect to xj does not generate factors of 2 and τ , leaving the resulting formula easier to read. For reference here we repeat (3.41), omitting the first and third terms as they cancel by (3.46). Thus 0 = − (λ + µ)T,k T,i Alkj + 2ρ(2l − 9)Al−1 l−1 l−1 l−1 ij + (λ + µ)T,k Akj,i + (λ + µ)T,i Akj,k + (λ + µ)T,ki Akj + 2µT,k Al−1 l−1 l−1 l−1 ij,k + µT,kk Aij + λ,i T,k Akj + µ,k T,k Aij + µ,k T,i Akj l−1 − (λ + µ)Al−2 l−2 l−2 l−2 l−2 kj,ki − µAij,kk − λ,i Akj,k − µ,k Aij,k − µ,k Akj,i . (3.50) 3.3.1 S-wave transport equations for A0 and A1 First, we derive the governing equation for A0 . Setting l = 1 in (3.50) and knowing that A−1 ij = 0, we get 0 = − (λ + µ)T,k T,i A1kj − 14ρA0ij + (λ + µ)T,i A0kj,k (3.51) + 2µT,k A0ij,k + µT,kk A0ij + µ,k T,k A0ij + µ,k T,i A0kj , 42 where we have made use of T,k A0kj = 0 by ∇T · A0j = 0, and its derivative (T,k A0kj ),i = T,k A0kj,i + T,ki A0kj = 0. Form the scalar product of (3.51) with T,i to get 0 = −(λ + µ)T,i T,i T,k A1kj + (λ + µ)T,i T,i A0kj,k + 2µT,k T,i A0ij,k + µ,k T,i T,i A0kj . (3.52) But 0 = 2(T,k T,i A0ij ),k =2(T,kk T,i A0ij + T,k T,ik A0ij + T,k T,i A0ij,k ) =(T,k T,k ),i A0ij + 2T,k T,i A0ij,k   4ρT = A0 + 2T,k T,i A0ij,k , (3.53) µ ,i ij so that   4ρT 2µT,i T,k A0ij,k = −µ A0ij . (3.54) µ ,i Thus (3.52) becomes   4ρT 4ρT 0 4ρT 4ρT 0 (λ + µ) T,k A1kj =(λ + µ) A −µ A0ij + µ,k A µ µ kj,k µ ,i µ kj   4ρT 0 2 4ρT =(λ + µ) A −µ A0 , (3.55) µ kj,k µ2 ,k kj 43 so that we can obtain the following relationship between A0kj and T,k A1kj , µ3   ρ T,k A1kj = A0kj,k − A0 . (3.56) ρ(λ + µ) µ2 ,k kj Inserting (3.56) into (3.51) results in the following transport equation for A0ij , 1 µ ρ T,k A0ij,k + ((µT,k ),k − 14ρ)A0ij + ( ),k A0kj T,i = 0. (3.57) 2µ 2ρ µ Or, in vector notation, 1 µ ρ (∇T · ∇)A0 + (∇ · (µ∇T ) − 14ρ)A0 + ∇T [∇( ) · A0 ] = 0, (3.58) 2µ 2ρ µ where ∇( µρ ) · A0 = (( µρ ),i A0i1 , ( µρ ),i A0i2 , ( µρ ),i A0i3 ) results in a row vector. Next, we will derive the governing equation for the amplitude coefficient A1 . Setting l = 2 in (3.50), all terms exist, so that we can get a relationship between ∇T · A2 , A1 and A0 , 0 =(λ + µ)(−T,k A2kj + A1kj,k )T,i − 10ρA1ij + (λ + µ)(T,k A1kj ),i (3.59) + 2µT,k A1ij,k + µT,kk A1ij + λ,i T,k A1kj + µ,k T,k A1ij + µ,k T,i A1kj − (λ + µ)A0kj,ki − µA0ij,kk − λ,i A0kj,k − µ,k A0ij,k − µ,k A0kj,i . To make our formulas easy to read, we introduce some notations. Let µ3 ρ a0j = T,k A1kj = A0kj,k − ( 2 ),k A0kj , (3.60) ρ(λ + µ) µ 44 so that a0 = (a01 , a02 , a03 ) is a row vector depending only on A0kj , and 0 = (λ + µ)A0 0 0 0 0 Bij kj,ki + µAij,kk + λ,i Akj,k + µ,k Aij,k + µ,k Akj,i . (3.61) Next we take the scalar product of (3.59) with T,i to get 0 =(λ + µ)(−T,k A2kj + A1kj,k )T,i T,i − 10ρa0j + (λ + µ)a0j,i T,i (3.62) + 2µT,k A1ij,k T,i + µT,kk a0j + λ,i a0j T,i + µ,k T,k a0j + µ,k T,i A1kj T,i − Bij 0T . ,i Let b0j = 10ρa0j − (λ + µ)T,i a0j,i − µT,kk a0j − λ,i T,i a0j − µ,i T,i a0j + Bij 0T , ,i (3.63) where b0 = (b01 , b02 , b03 ) is also a row vector. Consequently, equation (3.62) becomes 0 =(λ + µ)(−T,k A2kj )T,i T,i + (λ + µ)A1kj,k T,i T,i (3.64) + 2µT,k A1ij,k T,i + µ,k T,i A1kj T,i − b0j . Inserting (3.64) into (3.59) and employing the following relationship, ρ 2µT,k A1ij,k T,i = 2µT,k (T,i A1ij ),k − 4ρT,i A1ij − 4µT ( ),i A1ij , (3.65) µ we obtain the following transport equation for A1ij ,   1 µ ρ T,k A1ij,k + ((µT,k ),k − 10ρ)A1ij + A1kj 0, T,i = Rij (3.66) 2µ 2ρ µ ,k 45 where 0 =− a0j T,i µ 0 b0j T,i (λ + µ)a0j,i λ,i a0j 0 Bij Rij + aj,k T,k T,i − − − + . (3.67) 2T 4ρT 8ρT 2µ 2µ 2µ Or, in vector notation,   1 µ ρ (∇T · ∇)A1 + [∇ · (µ∇T ) − 10ρ]A1 + ∇T [∇ · A1 ] = R 0 , (3.68) 2µ 2ρ µ where ∇T a0 µ ∇T b0 ∇λa0 (λ + µ)∇a0 B 0 R0 = − + ∇T [(∇T · ∇)a0 ] − − − + . (3.69) 2T 4ρT 8ρT 2µ 2µ 2µ Here ∇T a0 = (T,i a0j )3×3 and ∇a0 = (a0j,i )3×3 are 3 by 3 matrices. 3.3.2 S-wave transport equations for general Al By proceeding in a similar manner as above, we can derive the governing equations for other Al when l ≥ 2. Hence we may conclude that the general amplitude coefficients Al satisfy   1 µ ρ (∇T · ∇)Al + [∇ · (µ∇T ) + (4l − 14)ρ]Al + ∇T [∇ · Al ] = Rl−1 , (3.70) 2µ 2ρ µ where ∇T al−1 µ ∇T bl−1 ∇λal−1 Rl−1 = − + ∇T [(∇T · ∇)al−1 ] − − 2T 4ρT 8ρT 2µ (λ + µ)∇al−1 B l−1 − + . (3.71) 2µ 2µ 46 Here B l−1 , al−1 , and bl−1 are given by B l−1 =(λ + µ)∇(∇ · Al−1 ) + µ∇2 Al−1 + ∇λ(∇ · Al−1 ) + ∇µ × (∇ × Al−1 ) + 2(∇µ · ∇)Al−1 , (3.72) al−1 =∇T · Al 1 2µ2 µbl−2 =∇ · Al−1 + ∇µ · Al−1 + ∇T [(∇T · ∇)Al−1 ] − , λ+µ (λ + µ)4ρT (λ + µ)4ρT (3.73) bl−1 =2ρ(−2l + 7)al−1 − (λ + µ)(∇T · ∇)al−1 − µ∇2 T al−1 − (∇T · ∇λ)al−1 − (∇T · ∇µ)al−1 + ∇T · B l−1 , (3.74) where bl , al , B l and Rl are zero for all l < 0. 3.3.3 S wave: verification in a homogeneous medium In a homogeneous medium, the parameters ρ, λ and µ are constants so that we have the exact solution (3.28) for the S-wave, which we rewrite here as 3 γS 2 (−3) 2 (−2) 2 G̈S ij = [2γ S r2 (δij − ti tj )f+ (t2 − γ S r2 ) − 2δij f+ (t2 − γ S r2 )]. (3.75) ρπ To simplify the derivation, we assume that r0 = 0 in this subsection. From the exact solution we know that 3 γS S 2 2 A0ij =2 γ r (δij − ti tj ), (3.76) ρπ 3 γS A1ij = −2 δ . (3.77) ρπ ij 47 In this case, the last term of (3.58) disappears, and also, since in a homogeneous medium 2 T = γ S r2 = µρ r2 , we see that ∇ · (µ∇T ) = 6ρ. Hence (3.57) reduces to ρ T,k A0ij,k − 4 A0ij = 0. (3.78) µ From the exact formula for A0ij in (3.76), we see that 3 ! ρ γS S 2 2 T,k A0ij,k = 2 xk 2 γ r (δij − ti tj ) µ ρπ ,k ρ γ S3 2 = 2 xk 2 γ S (2xk δij − xj δik − xi δjk ) µ ρπ 3 ρ γS S 2 2 = 2 4 γ r (δij − ti tj ) µ ρπ ρ = 4 A0ij . (3.79) µ This verifies equation (3.57). Now we verify (3.56) in a homogeneous medium, i.e. T,i A1ij = A0ij,i . We have 5 ! γS 2 A0ij,i = 2 r (δij − ti tj ) ρπ ,i γ S5 =2 (r2 δij − xi xj ),i ρπ 5 γS =2 (2xi δij − 3xj − xj ) ρπ 5 γS = −4 x . (3.80) ρπ j 48 Again using T = µρ r2 and T,i = 2 µρ xi , we obtain 5 γS T,i A1ij = −4 x , (3.81) ρπ j which is the same as (3.80), thus verifying (3.56). Finally we may check the governing equation (3.68) for A1 in a homogeneous medium. Using formulas (3.76) and (3.80), we obtain 5 γS a0j = −4 x , (3.82) ρπ j 5 γS a0j,k = −4 δ , (3.83) ρπ jk 5 5 0 (λ + µ)γ S 8µγ S Bij = −4 δij + δ . (3.84) ρπ ρπ ij Also using the fact that T = µρ r2 , T,i = 2 µρ xi , and T,kk = 6 µρ , we can get b0j = 10ρa0j − (λ + µ)T,i a0j,i − µT,kk a0j + Bij 0T ,i 5 5 5 5 5 40γ S 8(λ + µ)γ S xj 24γ S xj 8(λ + µ)γ S xj 16γ S xj =− xj + + − + π µπ π µπ π = 0. (3.85) Hence we can obtain Rij 0 as the following, 0 a0j T,i µ 0 b0j T,i (λ + µ)a0j,i Bij 0 Rij = − + a T T − − + 2T 4ρT j,k ,k ,i 8ρT 2µ 2µ 5 5 5 5 5 γ S xi x j γ S xi xj (λ + µ)γ S δij (λ + µ)γ S δij γ S δij = 4 − 4 + 2 − 2 + 4 ρπr2 ρπr2 µρπ µρπ ρπ 5 γ S δij = 4 . (3.86) ρπ 49 For the left hand side of (3.68), we use formula (3.77) to get 5 1 ρ γS T,k A1ij,k + ((µT,k ),k − 10ρ)A1ij = −2 A1ij = 4 δ , (3.87) 2µ µ ρπ ij which is the same as Rij 0 derived above. Similarly, we can also verify the amplitude coeffi- cients Alij = 0 for l ≥ 2 in a homogeneous medium. 3.3.4 S wave: governing equations for desingularizing Al We enforce the condition that Al is bounded at the source for all l ≥ 0, which may not be amenable to numerical computation. Therefore, we define new dyadic coefficients to be Ãl = Al τ 2l (3.88) so that Al = O(1) as r → r0 , Ãl = O(τ 2l ) as r → r0 . We introduce Ãl here since Al may not be smooth at the source r0 for an inhomogeneous medium; this can be seen from the initial conditions (3.150)-(3.153). It is easy to derive governing equations for Ãl from those for Al for l = 0, 1 as the following,     1 µ ρ (∇T · ∇)Ã0 + 0 [∇ · (µ∇T ) − 14ρ]à + ∇T ∇ 0 · à = 0, (3.89) 2µ 2ρ µ     1 1 1 µ ρ (∇T · ∇)à + [∇ · (µ∇T ) − 18ρ]à + ∇T ∇ · à = R̃0 , 1 (3.90) 2µ 2ρ µ 50 where ∇T ã0 µ∇T [(∇T · ∇)ã0 ] ∇T b̃0 T ∇λã0 (λ + µ)T ∇ã0 T B̃ 0 R̃0 ≡ − + − − − + . (3.91) 2 4ρ 8ρ 2µ 2µ 2µ Here B̃ 0 , ã0 , and b̃0 are given by B̃ 0 ≡ (λ + µ)∇(∇ · Ã0 ) + µ∇2 Ã0 + ∇λ(∇ · Ã0 ) +∇µ × (∇ × Ã0 ) + 2(∇µ · ∇)Ã0 , (3.92) 1 2µ ã0 ≡ ∇ · Ã0 + ∇µ · Ã0 + ∇T [(∇T · ∇)Ã0 ], (3.93) λ+µ (λ + µ)|∇T |2 b̃0 ≡ 10ρã0 − (λ + µ)(∇T · ∇)ã0 − µ∇2 T ã0 −(∇T · ∇λ)ã0 − (∇T · ∇µ)ã0 + ∇T · B̃ 0 . (3.94) The governing equations for general Ãl for l ≥ 2 are     1 µ ρ (∇T · ∇)Ãl + l [∇ · (µ∇T ) − (4l + 14)ρ]à + ∇T ∇ l · à = R̃l−1 , (3.95) 2µ 2ρ µ where ∇T ãl−1 l−1 µ∇T [(∇T · ∇)ãl−1 ] l−1 ∇T b̃l−1 l−1 ∇λãl−1 l R̃l−1 ≡ − T + T − T − T 2 4ρ 8ρ 2µ (λ + µ)∇ãl−1 l B̃ l−1 l − T + T . (3.96) 2µ 2µ Here the explicit formulas for B̃ l−1 , ãl−1 , and b̃l−1 are given in Appendix A. 51 3.4 Case II, P wave: A0j ∥ ∇T and 4ρT −(λ+2µ)|∇T |2 = 0 Let us repeat (3.41) here for reference, 0 =4ρT Alij − (λ + µ)T,k T,i Alkj − µT,k T,k Alij + 2ρ(2l − 9)Al−1 l−1 l−1 l−1 ij + (λ + µ)T,k Akj,i + (λ + µ)T,i Akj,k + (λ + µ)T,ki Akj + 2µT,k Al−1 l−1 l−1 l−1 l−1 ij,k + µT,kk Aij + λ,i T,k Akj + µ,k T,k Aij + µ,k T,i Akj − (λ + µ)Al−2 l−2 l−2 l−2 l−2 kj,ki − µAij,kk − λ,i Akj,k − µ,k Aij,k − µ,k Akj,i . (3.97) Rewriting the first line using the fact that in case II, −µT,k T,k Alij = (λ + µ)T,k T,k Alij − 4ρT Alij , (3.98) we have 0 =(λ + µ)(T,k T,k Alij − T,k T,i Alkj ) + 2ρ(2l − 9)Al−1 l−1 l−1 l−1 ij + (λ + µ)T,k Akj,i + (λ + µ)T,i Akj,k + (λ + µ)T,ki Akj + 2µT,k Al−1 l−1 l−1 l−1 l−1 ij,k + µT,kk Aij + λ,i T,k Akj + µ,k T,k Aij + µ,k T,i Akj − (λ + µ)Al−2 l−2 l−2 l−2 l−2 kj,ki − µAij,kk − λ,i Akj,k − µ,k Aij,k − µ,k Akj,i . (3.99) 52 3.4.1 P-wave transport equations for A0 and A1 First, we derive the governing equation for A0 . We set l = 1 in (3.99) and then take the scalar product of (3.99) with T,i to obtain 0 = − 14ρT,i A0ij + (λ + µ)T,i T,k A0kj,i + (λ + µ)T,i T,i A0kj,k + (λ + µ)T,i T,ki A0kj (3.100) + 2µT,i T,k A0ij,k + µT,i T,kk A0ij + λ,i T,i T,k A0kj + µ,k T,i T,k A0ij + µ,k T,i T,i A0kj , where we have made use of the eikonal equation, 4ρT = (λ + 2µ)T,i T,i . Also the last line does not contribute since A−1 ij = 0. Since A0j is parallel to ∇T for 1 ≤ j ≤ 3, we may write it as A0ij = αj0 T,i , (3.101) where α0 = (α10 , α20 , α30 ) is a row vector. Inserting (3.101) into (3.100), we get 0 = − 14ρT,i αj0 T,i + 2(λ + 2µ)T,i T,i αj,k0 T + 2(λ + 2µ)T T α0 T ,k ,i ,k j ,ik (3.102) + (λ + 2µ)T,i T,i T,kk αj0 + (λ,k + 2µ,k )T,k T,i T,i αj0 . Employing the following relations [(λ + 2µ)T,i T,i ],k T,k =(λ + 2µ),k T,i T,i Tk + 2(λ + 2µ)T,i T,ik T,k , (3.103) (4ρT ),k T,k =4ρ,k T,k T + 4ρT,i T,i , (3.104) 53 we can get 0 + (λ + 2µ)α0 T T T 0 = − 14ραj0 T,i T,i + 2(λ + 2µ)T,i T,i T,k αj,k ,kk ,i ,i + 4ρ,k T,k T αj0 + 4ρT,k T,k αj0 . (3.105) Simplifying the result, we obtain   0 1 5ρ T,i αj,i + (ρT,i ),i − αj0 = 0. (3.106) 2ρ λ + 2µ Next, we can derive the governing equation for A1 . To determine A1 , we set l = 1 in (3.99) and form the cross product of the resulting equation with ∇T , 0 =(−4ρT + µ|∇T |2 )∇T × A1 − (λ + µ)∇T × ∇(∇T · A0 ) − 2µ∇T × [(∇T · ∇)A0 ] − (∇T × ∇λ)(∇T · A0 ). (3.107) To go further, we need to use the following relations which can be verified directly,     ρ ∇T × [(∇T · ∇)A0 ] = 2T ∇T × ∇ α0 , (3.108) λ + 2µ and     4ρT 0 ρ ∇T × ∇(∇T · A0 ) = ∇T × ∇α + 4T ∇T × ∇ α0 . (3.109) λ + 2µ λ + 2µ 54 Inserting the above two relations into (3.107), we can obtain (λ + 2µ)2 ∇λα0     1 0 ρ 0 ∇T × A + ∇α + ∇ α + = 0. (3.110) ρ(λ + µ) λ + 2µ λ+µ From (3.110) we may conclude that A1 = C 0 + ∇T α1 . (3.111) where α1 = (α11 , α21 , α31 ) is a row vector to be determined, and (λ + 2µ)2 ∇λα0   ρ C0 = −∇α0 − ∇ α0 − . (3.112) ρ(λ + µ) λ + 2µ λ+µ To find α1 , we set l = 2 in (3.99) and form the scalar product of the resulting equation with ∇T , yielding 0 =10ρ(∇T · A1 ) − (λ + µ)∇T · ∇(∇T · A1 ) − (λ + µ)|∇T |2 (∇ · A1 ) − 2µ∇T · [(∇T · ∇)A1 ] − µ∇2 T (∇T · A1 ) − (∇λ · ∇T )(∇T · A1 ) − (∇µ · A1 )|∇T |2 − (∇µ · ∇T )(∇T · A1 ) + (λ + µ)∇T · ∇(∇ · A0 ) + µ∇T · (∇2 A0 ) + (∇λ · ∇T )(∇ · A0 ) + ∇T · [∇µ × (∇ × A0 )] + 2∇T · [(∇µ · ∇)A0 ]. (3.113) 55 Inserting (3.111) into (3.113), we obtain 0 =[10ρ − µ∇2 T − ∇T · ∇(λ + µ)]|∇T |2 α1 − (λ + µ)∇T · ∇(|∇T |2 α1 ) − (λ + µ)|∇T |2 ∇ · (∇T α1 ) − 2µ∇T · [(∇T · ∇)(∇T α1 )] − (∇µ · ∇T )|∇T |2 α1 + [10ρ − µ∇2 T − ∇T · ∇(λ + µ)](∇T · C 0 ) − (λ + µ)∇T · ∇(∇T · C 0 ) − (λ + µ)|∇T |2 (∇ · C 0 ) − 2µ∇T · [(∇T · ∇)C 0 ] − (∇µ · C 0 )|∇T |2 + d0 , (3.114) where d0 =(λ + µ)∇T · ∇(∇ · A0 ) + µ∇T · ∇2 A0 + (∇λ · ∇T )(∇ · A0 ) + ∇T · [∇µ × (∇ × A0 )] + 2∇T · [(∇µ · ∇)A0 ]. (3.115) Using the following relations 1 ∇T · [(∇T · ∇)(∇T α1 )] = (∇T · ∇α1 )|∇T |2 + ∇T · ∇(|∇T |2 )α1 (3.116) 2 and ∇ · (∇T α1 ) = ∇T · ∇α1 + ∇2 T α1 , (3.117) we may simplify (3.114) into 1 3ρ ∇T · ∇α1 + [ ∇ · (ρ∇T ) − ]α1 = c0 , (3.118) 2ρ λ + 2µ 56 where c0 is defined to be 1 c0 = {[10ρ − µ∇2 T − ∇T · ∇(λ + µ)](∇T · C 0 ) − (λ + µ)∇T · ∇(∇T · C 0 ) 8ρT − (λ + µ)|∇T |2 (∇ · C 0 ) − 2µ∇T · [(∇T · ∇)C 0 ] − (∇µ · C 0 )|∇T |2 + d0 }. (3.119) 3.4.2 P-wave transport equations for general Al Similarly, we can derive governing equations for Al when l ≥ 2, which are stated as the following, Al = C l−1 + ∇T αl , (3.120) where αl is to be determined, and C l−1 is available from already computed quantities by using the following formula, 1 C l−1 ≡ {−ρ(4l − 18)Al−1 (λ + µ)|∇T |2 − (λ + µ)∇(∇T · Al−1 ) − 2µ(∇T · ∇)Al−1 − µ∇2 T Al−1 − ∇λ(∇T · Al−1 ) − (∇µ · ∇T )Al−1 + (λ + µ)∇(∇ · Al−2 ) + µ∇2 Al−2 + ∇λ(∇ · Al−2 ) + ∇µ × (∇ × Al−2 ) + 2(∇µ · ∇)Al−2 }. (3.121) Accordingly, we can derive the recursive equations for αl   1 (2l − 5)ρ ∇T · ∇αl + ∇ · (ρ∇T ) + αl = cl−1 , (3.122) 2ρ λ + 2µ 57 where cl−1 satisfies 1 cl−1 ≡ {[(14 − 4l)ρ − µ∇2 T − ∇T · ∇(λ + µ)](∇T · C l−1 ) 8ρT − (λ + µ)∇T · ∇(∇T · C l−1 ) − (λ + µ)|∇T |2 (∇ · C l−1 ) − 2µ∇T · [(∇T · ∇)C l−1 ] − (∇µ · C l−1 )|∇T |2 + (λ + µ)∇T · ∇(∇ · Al−1 ) + µ∇T · ∇2 Al−1 + (∇λ · ∇T )(∇ · Al−1 ) + ∇T · [∇µ × (∇ × Al−1 )] + 2∇T · [(∇µ · ∇)Al−1 ]}, (3.123) with C l = 0 and cl = 0 for l < 0. 3.4.3 P wave: verification in a homogeneous medium In a homogeneous medium, the parameters ρ, λ and µ are constants. In this case, (3.106) reduces to 0 − 2ρ T,i αj,i αj0 = 0. (3.124) λ + 2µ 2 ρ Here we have T = γ P r2 = λ+2µ r2 in a homogeneous medium. We have the exact Green’s function for the P wave, which we rewrite here as 3 γP 2 (−3) 2 (−2) 2 G̈P ij = [2γ P r2 ti tj f+ (t2 − γ P r2 ) − δij f+ (t2 − γ P r2 )]. (3.125) ρπ To simplify the derivation, we assume that the source is at the origin in this subsection. From P5 P3 P3 this, we obtain A0ij = 2 γρπ xi xj and A1ij = − γρπ δij . So for any 1 ≤ j ≤ 3, A0ij = γρπ T,i xj , 58 P3 0 = γ P3 and the corresponding αj0 = γρπ xj . Since αj,i ρπ δij , we have 5 5 0 2ρ γP γP T,i αj,i − αj0 = 2 xi δij − 2 x = 0, (3.126) λ + 2µ ρπ ρπ j which verifies equation (3.124). Now we verify (3.111) in a uniform medium, i.e. A1ij = Cij 0 + α1 T . From equation j ,i (3.112), we have 3 0 0 γP Cij = −αj,i =− δ , (3.127) ρπ ij yielding 3 3 γP γP A1ij 0 − Cij =− δij + δ = 0, (3.128) ρπ ρπ ij which implies that αj1 = 0. To see that αj1 = 0 satisfies equation (3.118) in a homogeneous medium, we just need to check that c0j defined in equation (3.119) vanishes, 1 c0j = {(10ρ − µT,kk )Cij 0 T − (λ + µ)T (C 0 T ) + d0 }. ,i ,i kj ,k ,i j (3.129) 8ρT First we find that d0 in equation (3.115) is given by d0j = (λ + µ)T,i A0kj,ki + µT,i A0ij,kk 7 7 γP γP = 16(λ + µ) xj + 8µ x . (3.130) ρπ ρπ j 59 Inserting this into (3.129), we can obtain ( 5 7 7 7 7 ) 1 20γ P xj 12µγ P xj 4(λ + µ)γ P xj 16(λ + µ)γ P xj 8µγ P xj c0j = − + + + + 8ρT π ρπ ρπ ρπ ρπ = 0. (3.131) Similarly, we can verify that the coefficients Alij are 0 for l ≥ 2 in a homogeneous medium. 3.4.4 P wave: governing equations for desingularized Al Although we enforce the condition that Al are O(1) near the source for all l ≥ 0, they are not necessarily smooth at the source r0 in an inhomogeneous medium; this can be seen from the initial conditions (3.182)-(3.185). Therefore, we desingularize Al by introducing a new set of dyadic coefficients, Ãl = Al τ 2l , (3.132) so that Al = O(1) as r → r0 , Ãl = O(τ 2l ) as r → r0 . According to (3.120) and (3.132), we can set Ãl = C̃ l−1 + ∇T α̃l , (3.133) where C̃ l−1 = C l−1 T l and α̃l = αl T l . Hence, we can derive transport equations for α̃l 60 from transport equations for αl for l = 0, 1 as the following, 1 5ρ ∇T · ∇α̃0 + [ ∇ · (ρ∇T ) − ]α̃0 = 0, (3.134) 2ρ λ + 2µ 1 7ρ ∇T · ∇α̃1 + [ ∇ · (ρ∇T ) − ]α̃1 = c̃0 , (3.135) 2ρ λ + 2µ where c̃0 can be computed by the following formula, 1 c̃0 ≡ {10ρ − µ∇2 T − ∇T · ∇(λ + µ)](∇T · C 0 ) − (λ + µ)∇T · ∇(∇T · C 0 ) 8ρ − (λ + µ)|∇T |2 (∇ · C 0 ) − 2µ∇T · [(∇T · ∇)C 0 ] − (∇µ · C 0 )|∇T |2 + d0 }, (3.136) where C 0 and d0 are defined in (3.112) and (3.115) since Ã0 = A0 . For general l ≥ 2, we can similarly derive the following governing equations,   1 (2l + 5)ρ ∇T · ∇α̃l + ∇ · (ρ∇T ) − α̃l = c̃l−1 , (3.137) 2ρ λ + 2µ where c̃l−1 = T l cl−1 , and cl−1 is the same as (3.123). The detailed formula for c̃l−1 is given in Appendix A. 3.5 Initial conditions for the traveltime and amplitudes 3.5.1 Initial conditions for S-wave In this section, we shall initialize those amplitude coefficients Al and Ãl for the S wave at the source r0 in the three dimensional space. In a center-deleted neighborhood of r0 , say 0 < |r − r0 | < x0 , where x0 is a positive constant, we propose the following matching 61 condition (G̈S (r; t) − G̈S n 1 hom (r; t))t ∈ L ({t; (0, T )}) (3.138) over any finite time period (0, T ) for any non-negative integer n, where 3 γS 2 (−3) 2 (−2) 2 G̈Shom = 0 [2γ0S r2 (I − ttT )f+ (t2 − γ0S r2 ) − 2If+ (t2 − γ0S r2 )], (3.139) ρ0 π r−r with t = |r−r0 | being the unit tangent vector to the S ray. Here ttT = (ti tj )3×3 is a matrix. 0 ρ0 q S And γ0 = µ is the slowness for the S wave with ρ0 = ρ(r0 ) and µ0 = µ(r0 ). 0 (−3+l) 2 Since f+ (t − T ) ∈ L1 ({t; (0, T )}) for l ≥ 3, the above matching condition can be reduced to G̈n S S diff = [G̈ (r; t) − G̈hom (r; t)]t n (3.140) (−3) 2 (−2) 2 = A0 f + (t − T (r))tn + A1 f+ (t − T (r))tn (−1) 2 + A2 f+ (t − T (r))tn − G̈S hom t n = A0 δ (2) (t2 − T (r))tn + A1 δ (1) (t2 − T (r))tn + A2 δ(t2 − T (r))tn 3 γS 2 2 2 − 0 [2γ0S r2 (I − ttT )δ (2) (t2 − γ S r2 ) − 2Iδ (1) (t2 − γ0S r2 )]tn ρ0 π ∈ L1 ({t; (0, T )}), for any r satisfying 0 < |r − r0 | < x0 . 62 For r sufficiently close to r0 such that all δ-related functions do not vanish, one gets Z T Z T 2 −T (r) 1 n 1 δ (k) [t2 −T (r)]tn dt = δ (k) (t̃) (t̃ + T (r)) 2 − 2 dt̃ (3.141) 0 −T (r) 2 (−1)k n−1 = [(t̃ + T (r)) 2 ](k) |t̃=0 2 k−1 (−1)k Y n 1 n 1 = ( − − j)[T (r)] 2 − 2 −k . 2 2 2 j=0 Since k is at most 2 in our situation, n2 − 12 − k ≥ 0 for n ≥ 5 so that we are concerned about the five cases n = 0, 1, 2, 3, 4 only. Therefore, we enforce   5 2γ0S r2 Z T 3 A0 G̈0diff dt = 5 − (I − ttT ) (3.142) 0 8 T (r) 2 ρ0 π(γ0S r)5   3 1 A1 2γ0S A2 + 3 + I + 1 4 T (r) 2 ρ0 π(γ0S r)3 2T (r) 2 3 A0 1 A1 A2 1 = 5 + 3 + 1 − 3 (I − 3ttT ) = O(1), 8 4 4ρ 0 πr T (r) 2 T (r) 2 2T (r) 2 Z T A2 G̈1diff dt = = O(1), (3.143) 0 2   5 A0 2γ0S r2 Z T 1 G̈2diff dt = −  3 − (I − ttT ) (3.144) 0 8 T (r) 2 ρ0 π(γ0S r)3   1 S 3 1 A 2γ 0 A2 1 − 1 + S r) I  + T (r) 2 4 ρ0 π(γ 2 T (r) 2 0 2 1 A0 1 A1 A2 1 γ0S =− 3 − 1 + T (r) 2 − (I + ttT ) = O(1), 8 4 2 4ρ 0 πr T (r) 2 T (r) 2 63 S 3I Z T " # 1 2γ 1 G̈3diff dt = − A1 + 0 + A2 T (r) = O(1), (3.145) 0 2 ρ0 π 2   5 A0 2γ0S r2 Z T 3 G̈4diff dt = 1 − (I − ttT ) (3.146) 0 8 T (r) 2 ρ0 π(γ0S r) S3 " # 3 1 2γ A2 3 − A1 T (r) 2 + 0 (γ0S r)I + T (r) 2 4 ρ0 π 2 4 3 A0 3 1 1 A2 3 3γ0S r = 1 − A T (r) + 2 T (r) −2 (3I − ttT ) = O(1), 8 4 2 4ρ0 π T (r) 2 for 0 < |r − r0 | < x0 . Hiding O(1) terms above, we get 3 A0 1 A1 A2 1 5 + 3 + 1 − 3 (I − 3ttT ) = O(1), (3.147) 8 4 4ρ0 πr T (r) 2 T (r) 2 2T (r) 2 2 1 A0 1 A1 γ0S − 3 − 1 − (I + ttT ) = O(1), (3.148) 8 4 4ρ0 πr T (r) 2 T (r) 2 3 A0 1 = O(1). (3.149) 8 T (r) 2 Considering (3.147)×T (r)+(3.148), we can obtain the initial condition for A0 as r → r0 , 5 2 3 T2 γ0S T 2 3 A0 = (I − 3ttT ) + (I + ttT ) + O(T 2 ). (3.150) ρ0 πr3 ρ0 πr Moreover, since τ is the traveltime from the source r0 to r which is proportional to r = |r − r0 |, T = τ 2 is proportional to r2 as r → r0 , leading to A0 = O(1) as r → r0 . 64 3 Next (3.147) × 4T (r) 2 gives rise to the initial condition for A1 as r → r0 , 3 3 A0 T2 3 A1 =− + 3 (I − 3ttT ) + 2A2 T (x) + O(T 2 ) 2 T ρ0 πr 3 3 A0 T2 =− + (I − 3ttT ) + O(T ). (3.151) 2 T ρ0 πr3 Substituting (3.150) into (3.151), we could obtain 3 2 1 S 1 T2 T ) − 3 γ0 T (I + ttT ) + O(T 12 ). 2 A1 =− (I − 3tt (3.152) 2 ρ0 πr3 2 ρ0 πr Similar to the case for A0 , we may conclude that A1 = O(1) as r → r0 . 1 Finally, (3.147) × 2T (r) 2 gives rise to the initial condition for A2 as r → r0 , 1 3 A0 1 A1 T2 1 A2 =− 2 − + 3 (I − 3ttT ) + O(T 2 ). (3.153) 4T 2 T 2ρ0 πr When substituting (3.151) into (3.153), the first three terms on the right hand side of (3.153) will be canceled. Hence we may conclude that A2 = O(1) as r → r0 which is also consistent with (3.143). Similarly we can obtain the following initial conditions for Ãl 5 2 3 T2 γ0S T 2 3 Ã0 = (I − 3ttT ) + (I + ttT ) + O(T 2 ), (3.154) ρ0 πr3 ρ0 πr 5 3 T2 Ã1 = − Ã0 + 3 (I − 3ttT ) + O(T 2 ), (3.155) 2 ρ0 πr 5 3 1 T2 T ) + O(T 52 ). Ã2 = − Ã0 − Ã1 + (I − 3tt (3.156) 4 2 2ρ0 πr3 Next, we give details to initialize the general Ãl from the governing equations (3.95) and 65 the initial conditions (3.154)-(3.156) for Ãl with 0 ≤ l ≤ 2. In an isotropic medium, the travel time function τ (·; r0 ) solving the eikonal equation |∇τ (r; r0 )| = γ S (r) is locally smooth near the source except at the source point r0 itself [52, 71]. 2 2 Assuming that the refractive index γ S (r) is analytic, γ S (r) can be written as the following power series centered at the source point, ∞ 2 γ S (r) = X Φk (r; r0 ), (3.157) k=0 2 where Φk is the homogeneous polynomial of degree-k term in the Taylor expansion of γ S 2 about the source r0 and Φ0 = γ0S with γ0S = γ S (r0 ). Assuming that T = τ 2 is analytic, we have in the source neighborhood [44]   1 1 1 2 2 τ2 − Φ0 + Φ1 + Φ2 − |∇Φ1 | r r2 = O(r5 ). (3.158) 2 3 48Φ0 This in fact gives rise to the following estimate: for any k ∈ R, as r → 0, !k  2 Φ1 Φ2 |∇Φ1 |2 2    τ k k k Φ1 =1+ + − r + −1 2 + O(r3 ). (3.159) γ0S r 2Φ0 2 3 48Φ0 4 2 4Φ0 Then using formulas (3.158) and (3.159), we can rewrite (3.154)-(3.156) as follows. (a) The sequence {Ã0k } is initialized by 5 2γ0S r2 Ã00 = 0, Ã01 = 0, Ã02 = (I − ttT ). (3.160) ρ0 π 66 (b) The sequence {Ã1k } is initialized by 5 2γ S r2 Ã10 = 0, Ã11 = 0, Ã12 = − 0 I, (3.161) ρ0 π 3 3 5γ S Φ1 r2 Ã13 = − Ã03 + 0 (I − 3ttT ). 2 4ρ0 π (c) The sequence {Ã2k } is initialized by Ã20 = 0, Ã21 = 0, Ã22 = 0, Ã23 = 0, (3.162) 3 " # 3 1 γS 5Φ2 2 15Φ21 2 5|∇Φ1 |2 4 Ã24 = − Ã04 − Ã14 + 0 (I − 3ttT ) r + r − r . 4 2 2ρ0 π 6 32Φ0 96Φ0 If we further assume that log µ(r), Ãl , and R̃l−1 for all l ≥ 0 are analytic at the source r0 , then those asymptotic behaviors (3.154)-(3.156) for Ã0 , Ã1 , and Ã2 respectively, can be further clarified, and the exact solutions of Ãl for general l near the source can be constructed recursively. We first expand these ingredients as Taylor series about the source as: X∞ log µ(r) = Uk (r), (3.163) k=0 ∞ Ãl (r) = X Ãlk (r), (3.164) k=0 ∞ R̃l−1 (r) = X R̃l−1,k (r), (3.165) k=0 where the term with subscript k denotes a homogeneous polynomial of degree k. As T = τ 2 67 is analytic near the source neighborhood, we denote its Taylor series as ∞ τ 2 (r) X T (r) = = Tk (r). (3.166) k=0 We see from the eikonal equation that T0 = T1 = 0, and T2 = Φ0 r2 . Thus the transport equation (3.95) for the S wave can be rewritten as ∞ ∞ ∞ ! ∞ "∞ ∞ # X X X 1X X X Φk (r) ∇Tk (r) · ∇ Ãlk (r) + ∇Tk (r) ∇Φk (r) · Ãlk (r) 2 k=0 k=2 ∞ k=2 " ∞ k=0 ∞ ∞ #k=0 ∞ k=0 X 1X 1X X X + Φk (r) ∆Tk (r) + ∇Tk (r) · ∇Uk (r) Ãlk (r) 2 2 k=0 k=0 k=0 ∞ " k=2 ∞ k=2 # ∞ X X X + Φk (r) −(2l + 7) Φk (r) Ãlk (r) k=0 k=0 k=0 X∞ X∞ = Φk (r) R̃l−1,k (r). (3.167) k=0 k=0 Comparing the q-th degree polynomial of both sides, we have 1 0 = Φ0 (∇T2 · ∇)Ãlq + Φ0 ( ∆T2 − (2l + 7)Φ0 )Ãlq 2 q−1 q−1 1X X X X + ∇T2+k (∇Φj · Ãls ) + Φj (∇T2+k · ∇)Ãls 2 s=0 j+k=q−s,j,k≥0 s=0 j+k=q−s,j,k≥0   q−1 ∆T 1 Φj  2+k + X X X + ∇T2+m · ∇Un − (2l + 7)Φk  Ãls 2 2 s=0 j+k=q−s,j,k≥0 m+n=k,m,n≥0 X − Φj R̃l−1,k . (3.168) j+k=q,j,k≥0 68 Using the fact that (∇T2 · ∇)Ãlq = 2qΦ0 Ãlq and ∆T2 = 6Φ0 , we get 0 = (2q − (2l + 4))Φ20 Ãlq q−1 q−1 1X X X X + ∇T2+k (∇Φj · Ãls ) + Φj (∇T2+k · ∇)Ãls 2 s=0 j+k=q−s,j,k≥0 s=0 j+k=q−s,j,k≥0   q−1 X X ∆T2+k 1 X + Φj  + ∇T2+m · ∇Un − (2l + 7)Φk  Ãls 2 2 s=0 j+k=q−s,j,k≥0 m+n=k,m,n≥0 X − Φj R̃l−1,k . (3.169) j+k=q,j,k≥0 Hence we obtain a recursive formula to compute the q-th degree polynomial Ãlq of the l-th amplitude coefficient Ãl . It is clear that (3.169) is not valid for computing Ãlq∗ when q ∗ = l + 2, since the coefficient of Ãlq∗ becomes 0. However, in this case, we first notice that when l ≥ 3, Ãl has been assumed to be O(T l ) = O(r2l ) = o(rl+2 ) due to 2l ≥ l + 2, so that Ãlq∗ = 0 when q ∗ = l + 2. In addition, we have three special cases: (1) l = 0 so that q ∗ = 2, but Ã02 has been initialized according to (3.160); (2) l = 1 so that q ∗ = 3, but Ã13 has been initialized according to (3.161); (3) l = 2 so that q ∗ = 4, but Ã24 has been initialized according to (3.162). In the recursive formula (3.169), R̃l−1,k depends on Ãl−1 but does not depend on Ãl ; therefore, the power series of Ãl is computable via (3.169) once Ãl−1 is available near the source. 69 3.5.2 Initial conditions for P-wave In this section, we shall initialize those amplitude coefficients Al and Ãl for the P wave at the source r0 in the three dimensional space. In a center-deleted neighborhood of r0 , say 0 < |r − r0 | < x0 , where x0 is a positive constant, we propose the following matching condition, (G̈P (r; t) − G̈P n 1 hom (r; t))t ∈ L ({t; (0, T )}), (3.170) over any finite time period (0, T ) for any non-negative integer n, where 3 γ0P h P 2 2 T (−3) 2 2 (−2) 2 i G̈P hom = 2γ0 r tt f+ (t − γ0P r2 ) − If+ (t2 − γ0P r2 ) , (3.171) ρ0 π r−r with t = |r−r0 | being the unit tangent vector to the P ray. Here ttT = (ti tj )3×3 is a 0 q ρ matrix. And γ0P = λ +2µ 0 is the slowness for the P wave with ρ0 = ρ(r0 ), µ0 = µ(r0 ) 0 0 and λ0 = λ(r0 ). (−3+l) 2 Since f+ (t − T ) ∈ L1 ({t; (0, T )}) for l ≥ 3, the above matching condition can be 70 reduced to G̈n P P diff = [G̈ (r; t) − G̈hom (r; t)]t n (3.172) (−3) 2 (−2) 2 = A0 f + (t − T (r))tn + A1 f+ (t − T (r))tn (−1) 2 + A2 f + (t − T (r))tn − G̈P hom t n = A0 δ (2) (t2 − T (r))tn + A1 δ (1) (t2 − T (r))tn + A2 δ(t2 − T (r))tn 3 γ0P 2 2 2 − [2γ0P r2 ttT δ (2) (t2 − γ0P r2 ) − Iδ (1) (t2 − γ0P r2 )]tn ρ0 π ∈ L1 ({t; (0, T )}), for any r satisfying 0 < |r − r0 | < x0 . For r sufficiently close to r0 such that all δ-related functions do not vanish, one gets Z T Z T 2 −T (r) 1 n 1 δ (k) [t2 −T (r)]tn dt = δ (k) (t̃) (t̃ + T (r)) 2 − 2 dt̃ (3.173) 0 −T (r) 2 (−1) k k−1 n 1 n 1 − − j)[T (r)] 2 − 2 −k . Y = ( 2 2 2 j=0 Since k is at most 2 in our situation, n2 − 12 − k ≥ 0 for n ≥ 5 so that we are concerned about the five cases n = 0, 1, 2, 3, 4 only. Therefore, we enforce   5 A0 2γ0P r2 Z T 3 G̈0diff dt = 5 − ttT  (3.174) 0 8 T (r) 2 ρ0 π(γ0P r)5   3 1 A1 γ0P A2 + 3 + I + 1 4 T (r) 2 ρ0 π(γ0P r)3 2T (r) 2 3 A0 1 A1 A2 1 = 5 + 3 + 1 + 3 (I − 3ttT ) = O(1), 8 4 4ρ 0 πr T (r) 2 T (r) 2 2T (r) 2 71 A2 Z T G̈1diff dt = = O(1), (3.175) 0 2   5 A0 2γ0P r2 Z T 1 G̈2diff dt = −  3 − ttT  (3.176) 0 8 T (r) 2 ρ0 π(γ0P r)3   1 P 3 2 γ0 1 −  1 A + I  + A T (r) 2 4 1 ρ0 π(γ0P r) 2 T (r) 2 2 1 A0 1 A1 A2 1 γ0P =− 3 − 1 + T (r) −2 (I − ttT ) = O(1), 8 4 2 4ρ0 πr T (r) 2 T (r) 2 " 3# γ0P Z T 1 1 G̈3diff dt = − A1 + + A2 T (r) = O(1), (3.177) 0 2 ρ0 π 2   5 A0 2γ0P r2 T Z T 3 G̈4diff dt = 1 − tt  (3.178) 0 8 T (r) 2 ρ0 π(γ0P r) P3 " # 3 1 γ A2 3 − A1 T (r) 2 + 0 (γ0P r)I + T (r) 2 4 ρ0 π 2 4 3 A0 3 1 1 A2 3 3γ0P r = 1 − A T (r) 2 + T (r) 2 − (I + ttT ) = O(1), 8 4 2 4ρ 0 π T (r) 2 for 0 < |r − r0 | < x0 . 72 Hiding O(1) terms above, we get 3 A0 1 A1 A2 1 5 + 3 + 1 + 3 (I − 3ttT ) = O(1), (3.179) 8 4 4ρ 0 πr T (r) 2 T (r) 2 2T (r) 2 2 1 A0 1 A1 γ0P − 3 − 1 − (I − ttT ) = O(1), (3.180) 8 4 4ρ 0 πr T (r) 2 T (r) 2 3 A0 1 = O(1). (3.181) 8 T (r) 2 Considering (3.179)×T (r)+(3.180), we can obtain the initial condition for A0 as r → r0 , 5 2 3 T2 γ0P T 2 3 A0 =− (I − 3ttT ) + (I − ttT ) + O(T 2 ). (3.182) ρ0 πr3 ρ0 πr Moreover, since τ is the traveltime from the source r0 to r which is proportional to r = |r − r0 |, T = τ 2 is proportional to r2 as r → r0 , leading to A0 = O(1) as r → r0 . 3 Next, (3.179) × 4T (r) 2 gives rise to the initial condition for A1 as r → r0 , 3 3 A0 T2 3 A1 =− − 3 (I − 3ttT ) + 2A2 T + O(T 2 ) 2 T ρ0 πr 3 3 A0 T2 =− − (I − 3ttT ) + O(T ). (3.183) 2 T ρ0 πr3 Substituting (3.182) into (3.183), we will get 3 2 1 P 1 T2 T ) − 3 γ0 T (I − ttT ) + O(T 12 ). 2 A1 = (I − 3tt (3.184) 2 ρ0 πr3 2 ρ0 πr Similar to the case for A0 , we have A1 = O(1) as r → r0 . 73 1 Finally, (3.179) × 2T (r) 2 gives rise to the initial condition for A2 as r → r0 , 1 3 A0 1 A1 T2 1 A2 =− 2 − − 3 (I − 3ttT ) + O(T 2 ). (3.185) 4T 2 T 2ρ0 πr When substituting (3.183) into (3.185), the first three terms on the right hand side of (3.185) will be canceled. So we have A2 = O(1) as r → r0 which is also consistent with (3.175). Similarly, we can get the following initial condition for Ãl , 5 3 T P 2T 2 Ã0 = − 2 (I − 3tt T) + γ (I − tt T ) + O(T 32 ), (3.186) ρ0 πr3 ρ0 πr 5 3 T2 Ã1 = − Ã0 − 3 (I − 3ttT ) + O(T 2 ), (3.187) 2 ρ0 πr 5 3 1 T2 T ) + O(T 52 ). Ã2 = − Ã0 − Ã1 − (I − 3tt (3.188) 4 2 2ρ0 πr3 2 2 Assuming that the refractive index γ P (r) is analytic, γ P (r) can be written as the following power series ∞ 2 γ P (r) X = Ψk (r; r0 ), (3.189) k=0 2 where Ψk are homogeneous polynomials of degree k in the Taylor expansion of γ P about 2 the source r0 and Ψ0 = γ0P with γ0P = γ P (r0 ). In an isotropic medium, when γ P is smooth, the travel time function τ (·; r0 ) solving the eikonal equation |∇τ (r; r0 )| = γ P (r) is locally smooth in the source neighborhood except at the source itself [52, 71]. Therefore, we may assume that τ 2 is analytic, so that we have in the source neighborhood [44],   1 1 1 τ2 − Ψ0 + Ψ1 + Ψ2 − |∇Ψ1 | r r2 = O(r5 ). 2 2 (3.190) 2 3 48Ψ0 74 Similar to the case for the S wave, we can derive the initial conditions for the first three dyadic coefficients. (a) The sequence {Ã0k } is initialized by 5 2γ P r2 T Ã00 = 0, Ã01 = 0, Ã02 = 0 tt . (3.191) ρ0 π (b) The sequence {Ã1k } is initialized by 5 γ0P r2 Ã10 = 0, Ã11 = 0, Ã12 = − I, ρ0 π 3 3 5γ P Ψ1 r2 Ã13 = − Ã03 − 0 (I − 3ttT ). (3.192) 2 4ρ0 π (c) The sequence {Ã2k } is initialized by Ã20 = 0, Ã21 = 0, Ã22 = 0, Ã23 = 0, (3.193) 3 " # 3 1 γ0P 5Ψ2 2 15Ψ21 2 5|∇Ψ1 |2 4 Ã24 = − Ã04 − Ã14 − (I − 3ttT ) r + r − r . 4 2 2ρ0 π 6 32Ψ0 96Ψ0 If we further assume that log ρ(r), α̃l , C̃ l−1 and c̃l−1 for l ≥ 0 are all analytic in a 75 neighborhood of the source r0 , we can expand these functions as Taylor series at the source, X∞ log ρ(r) = Pk (r), (3.194) k=0 ∞ α̃l (r) = X α̃lk (r), (3.195) k=0 ∞ C̃ l−1 (r) = X C̃l−1,k (r), (3.196) k=0 ∞ c̃l−1 (r) = X c̃l−1,k (r), (3.197) k=0 where the term with subscript k denotes a homogeneous polynomial of degree k. As T = τ 2 is analytic near the source neighborhood, we denote its Taylor series as ∞ τ 2 (r) X T (r) = = Tk (r). (3.198) k=0 Moreover, from the formula (3.133), α̃l can be expanded X∞ X∞ X∞ X∞ Ãlk = C̃l−1,k + ∇Tk α̃lk . (3.199) k=0 k=0 k=0 k=0 Equating the (q + 1)th degree polynomials of both sides, we can get q−1 X ∇T2 α̃lq = Ãl,q+1 − C̃l−1,q+1 − ∇Tq+2−k α̃lk , (3.200) k=0 and forming the dot product of the above with ∇T2 yields   q−1 1  X α̃lq = ∇T2 · Ãl,q+1 − ∇T2 · C̃l−1,q+1 − (∇T2 · ∇Tq+2−k )α̃lk  , (3.201) 4Ψ20 r2 k=0 76 which is useful for initializing the computation of α̃l . On the other hand, the transport equations (3.137) for α̃l can be expanded, X∞ X∞ ∇Tk (r) · ∇α̃lk (r) k=2 k=0 ∞ ∞ ∞ ∞ " # ∞ 1 X 1X X X X + ∆Tk (r) + ∇Tk (r) ∇Pk (r) − (2l + 5) Ψk (r) α̃lk (r) 2 2 k=2 k=2 k=0 k=0 k=0 X∞ = c̃l−1,k (r). (3.202) k=0 Equating q-th degree polynomials of both sides, we have q−1 q−1 X 1X (2q − 2l − 2)Ψ0 α̃lq =c̃l−1,q − ∇T2+q−k · ∇α̃lk − ∆T2+q−k α̃lk 2 k=1 k=0   q−1 q−1 q−k X 1 X X + (2l + 5) Ψq−k α̃lk − α̃lk  ∇T2+q−j−k · ∇Pj  . 2 k=0 k=0 j=1 (3.203) Hence we obtain a recursive formula to compute the q-th degree polynomial α̃lq . It is clear that (3.203) is not valid for computing α̃lq∗ for q ∗ = l + 1 since the coefficient of α̃lq∗ vanishes. Two cases arise here: Case (a) for l ≥ 3 and Case (b) for 0 ≤ l ≤ 2. Consider Case (a) for l ≥ 3 first; in this case, Ãl have been assumed to be O(T l ) = O(r2l ). From the formula (3.133), it implies that α̃l behaves at least O(r2l−1 ) = o(rl+1 ) due to 2l ≥ l + 2, and we further have that α̃lq∗ = 0 for q ∗ = l + 1. Next, consider Case (b) for 0 ≤ l ≤ 2; in this case, α̃01 , α̃12 and α̃23 can be directly initialized from initial conditions (3.191)-(3.193) and the recursive formula (3.201), respec- tively. In the recursive formula (3.203), c̃l−1,q depends on α̃l−1 but does not depend on α̃l ; 77 therefore, the power series of α̃l is computable via (3.203) once α̃l−1 is obtained near the source. 3.6 Hadamard-Babich ansatz in the frequency domain The Fourier transform of (3.30) in time yields the FDPS elastic wave equations (3.1) with Z ∞ G(r; r0 ) = G(r, t; r0 )eiωt dt, (3.204) 0 so that by (3.30), (3.88), and (3.132), we get the following frequency-domain asymptotic ansatz, ∞ Ãl (r; r0 ) ∞ Z (−3+l) 2 eiωt f+ − τ 2 (r; r0 ))dt. X G(r; r0 ) = (t (3.205) −ω 2 T l 0 l=0 The integral in (3.205) has the following closed form [46], 2τ ν iων (1) Z ∞ (ν− 1 ) 1 √   eiωt f+ 2 (t2 − τ 2 (r; r 0 ))dt = i π e Hν (ωτ ) ≡ fν (ω, τ ), (3.206) τ 2 ω where fν (ω, τ ) is exactly the basis function used in Babich’s ansatz [3]. By (3.205) and (3.206), we immediately find that the frequency-domain Hadamard’s ansatz should be ∞ X Ãl (r; r0 ) G(r; r0 ) = f (ω, τ (r; r0 )), (3.207) −ω 2 T l −3+l+ 21 l=0 which we refer to as the Hadamard-Babich ansatz. 78 3.7 Numerical implementation 3.7.1 Numerical computation for S waves Numerically, it is impossible to construct {Ãl } for all l ≥ 0 so that we have to truncate the ansatz in our implementation. To make sure that this truncated ansatz is at least capable of reproducing the homogeneous fundamental solution (3.27), we truncate the formula to obtain the following ansatz, Ã0 (r; r0 ) Ã1 (r; r0 ) GS (r; r0 ) = f 1 (ω, τ (r; r 0 )) + f 1 (ω, τ (r; r0 )). (3.208) −ω 2 −3+ 2 −ω 2 T (r; r0 ) −2+ 2 Therefore, we have to compute τ , Ã0 and Ã1 to approximate the Green’s function GS . For the sake of convenience, we restate the governing equations for τS , Ã0 and Ã1 along with their initial conditions. We have that τS satisfies |∇τS | = γ S (3.209) with the initial condition τS (r0 ; r0 ) = 0. We have that Ã0 satisfies     1 µ ρ (∇T · ∇)Ã0 + [∇ · (µ∇T ) − 14ρ]à + ∇T ∇ 0 0 · à = 0 (3.210) 2µ 2ρ µ with the initial condition 5 2 3 T2 γ0S T 2 3 Ã0 = 3 (I − 3ttT ) + (I + ttT ) + O(T 2 ), (3.211) ρ0 πr ρ0 πr 79 where t is the unit tangent vector to the S ray. We also have that Ã1 satisfies     1 µ ρ (∇T · ∇)Ã1 + 1 [∇ · (µ∇T ) − 18ρ]à + ∇T ∇ · à = R̃0 , 1 (3.212) 2µ 2ρ µ with the initial condition 5 3 T2 Ã1 = − Ã0 + (I − 3ttT ) + O(T 2 ), (3.213) 2 ρ0 πr3 where ∇T ã0 µ∇T [(∇T · ∇)ã0 ] ∇T b̃0 T ∇λã0 (λ + µ)T ∇ã0 T B̃ 0 R̃0 = − + − − − + . 2 4ρ 8ρ 2µ 2µ 2µ (3.214) Here B̃ 0 , ã0 , and b̃0 are given by B̃ 0 = (λ + µ)∇(∇ · Ã0 ) + µ∇2 Ã0 + ∇λ(∇ · Ã0 ) +∇µ × (∇ × Ã0 ) + 2(∇µ · ∇)Ã0 , (3.215) 1 2µ ã0 = ∇ · Ã0 + ∇µ · Ã0 + ∇T [(∇T · ∇)Ã0 ], (3.216) λ+µ (λ + µ)|∇T |2 b̃0 = 10ρã0 − (λ + µ)(∇T · ∇)ã0 − µ∇2 T ã0 −(∇T · ∇λ)ã0 − (∇T · ∇µ)ã0 + ∇T · B̃ 0 . (3.217) To compute (3.208) numerically, we need to solve the eikonal equation to obtain τS , and the vectorial transport equations (3.210)-(3.212) to obtain Ã0 and Ã1 for S waves. To obtain a first-order accurate approximation of Ã1 , we have to achieve a third-order accurate 80 approximation of Ã0 due to the term ∆Ã0 appearing in (3.212). However, to obtain a third- order accurate approximation of Ã0 , we need a fifth-order accurate τ as ∆τ 2 appearing in (3.210) for Ã0 . Therefore, we employ fifth-order weighted essentially non-oscillatory (WENO) [53, 41, 31] Lax-Friedrichs fast sweeping schemes developed in [34, 69, 87, 88, 63, 45] to solve the eikonal equation (3.209), where the upwind source singularity at the source point is treated by the factorization idea [54, 85, 20, 50, 63, 45]. As for Ã0 and Ã1 , their components are coupled in the transport equations, and we cannot directly employ high-order Lax-Friedrichs schemes developed [63, 45]. However, since the transport equations for Ãl are analogous to those of Maxwell’s equations in [44], we will directly use the method developed in [44] to transform these strongly coupled systems into decoupled scalar equations and then use high-order Lax-Friedrichs WENO schemes to compute those solutions accordingly. 3.7.2 Numerical computation for P waves Similarly, to compute the Green’s function for P waves, we can also truncate the formula to obtain the following ansatz Ã0 (r; r0 ) Ã1 (r; r0 ) GP (r; r0 ) = f (ω, τ (r; r )) + f 1 (ω, τ (r; r0 )). (3.218) −ω 2 −3+ 12 0 −ω 2 T (r; r0 ) −2+ 2 Therefore, we also have to compute τ , Ã0 and Ã1 to approximate the Green’s function GP . However, in the P-wave case, we can decouple related transport equations easily due to the propagation property of P waves. Here we restate the governing equations in the following, |∇τP | = γ P (3.219) 81 with the initial condition τS (r0 ; r0 ) = 0; 1 5ρ ∇T · ∇α̃0 + [ ∇ · (ρ∇T ) − ]α̃0 = 0 (3.220) 2ρ λ + 2µ 3 γP with the initial condition α̃0 = ρπ0 r as r → r0 ; 1 7ρ ∇T · ∇α̃1 + [ ∇ · (ρ∇T ) − ]α̃1 = c̃0 (3.221) 2ρ λ + 2µ with the initial condition α̃1 = 0 as r → r0 , where c̃0 is 1 c̃0 = {10ρ − µ∇2 T − ∇T · ∇(λ + µ)](∇T · C̃ 0 ) − (λ + µ)∇T · ∇(∇T · C̃ 0 ) 8ρ − (λ + µ)|∇T |2 (∇ · C̃ 0 ) − 2µ∇T · [(∇T · ∇)C̃ 0 ] − (∇µ · C̃ 0 )|∇T |2 + d˜0 }, (3.222) and C̃ 0 is the same as (3.112). Numerically, we apply similar considerations as those for computing S waves to compute the ingredients of constructing P waves, and we omit details here. 3.8 Numerical examples In this section, we will study several numerical examples. To obtain a reference solution, if necessary, we apply the finite-difference time-domain (FDTD) method directly to the time- domain elastic wave equations to obtain a numerical solution in time, and then take the Fourier transform in time to obtain a numerical solution in the frequency domain. In the following, G1 and G2 indicate the one-term and the two-term truncation of the Hadamard-Babich ansatz, respectively. 82 3.8.1 Example 1: Constant model We take λ = 1, µ = 1, and ρ = 1. The computational setup for our asymptotic method is the following: • The computational domain is [0, 0.5] × [0, 0.5] × [0, 0.5]. • The mesh size is 51 × 51 × 51 with grid size h = 0.01. • The angular frequency ω = 16π or ω = 32π. • The source point is (0.25, 0.25, 0.25)T . In this example, since all elastic parameters are constants, we use the exact solution to check the accuracy of our numerical solutions. We first compare the results at ω = 16π. Figure 3.1 shows the contour plots of the yy-component of G1 , G2 , and Ghom at x = 0.25. Figure 3.2 shows the detailed comparisons along three different lines. These results clearly show that the two-term ansatz can correctly capture singularities near the source. Next, we consider frequency ω = 32π so that there are roughly eight waves propagating in the computational domain and about five to six points are used per wavelength. Figure 3.3 shows the zz-component of G1 , G2 , and Ghom at y = 0.25. Figure 3.4 shows the detailed comparisons along three different lines. Therefore, in a homogeneous medium, the two-term approximation is able to faithfully reproduce source singularities of the exact solution. In Table 3.1, we list numerical errors in the L2 -norm between our new ansatz based solutions and exact solutions for the component Gyy in the computational domain excluding a neighborhood of the source at which the Green’s functions G is singular. In terms of Gyy , although the one-term ansatz based solution approximates the exact solution asymptotically 83 in terms of O(1/ω), our two-term ansatz based solution approximates the exact solution not only asymptotically in terms of O(1/ω) but also with very high accuracy. (a) (b) (c) Figure 3.1: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) exact solution Ghom . (a) (b) (c) Figure 3.2: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: exact solution Ghom . (a) (b) (c) Figure 3.3: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 32π. The real part of the zz-component of G(r; r0 ) at y = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) exact solution Ghom . 84 (a) (b) (c) Figure 3.4: Example 1 with r0 = (0.25, 0.25, 0.25)T and ω = 32π. The real part of the zz-component of G(r; r0 ) at y = 0.25 and at (a) x = 0.25; (b) x = 0.23; (c) x = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: exact solution Ghom . ω 8π 16π 32π 64π 1/ω 4E-2 2E-2 1E-2 5E-3 one-term L2Gyy error 3.4E-2 1.6E-2 8.9E-3 4.3E-3 two-term L2Gyy error 3.2E-9 1.6E-9 8.3E-10 4.3E-10 Table 3.1: Example 1: L2 -norm errors between the new ansatz based solutions and the FDTD solution in a region excluding a neighborhood of the source. 3.8.2 Example 2: A variable density model We take λ = 1 and µ = 1 but variable ρ: 1 ρ= . (0.5 − (y − 0.25))2 In this case, the exact solution is not available, so we compute the FDTD-based solution to check the accuracy of our method. The computational setup for our asymptotic methods is the following: • The computational domain is [0, 0.5] × [0, 0.5] × [0, 0.5]. • The mesh size is 51 × 51 × 51 with grid size h = 0.01. • The angular frequency ω = 8π or ω = 16π. • The source point is (0.25, 0.25, 0.25)T . 85 We first compare the results at frequency ω = 8π. Figure 3.5 shows the contour plots of the yy-component of G1 , G2 and GFDTD at x = 0.25. Figure 3.6 shows the detailed comparisons along three different lines. We can see that G2 matches GFDTD much better than G1 . Next, we compare the results at frequency ω = 16π. Figure 3.7 shows the contour plots of the yy-component of G1 , G2 , and GFDTD at x = 0.25. Figure 3.8 shows the detailed comparisons along three different lines. At high frequencies, the discrepancy between G1 and GFDTD concentrates near the source, and such discrepancy disappears between two- term solution G2 and GFDTD . Therefore, in an inhomogeneous medium the two-term approximation is able to faithfully reproduce source singularities of the exact solution and yields a uniform asymptotic expansion in the region of space containing the point source but no caustics. (a) (b) (c) Figure 3.5: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 8π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. (a) (b) (c) Figure 3.6: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 8π. The real part of the yy- component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. 86 (a) (b) (c) Figure 3.7: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. (a) (b) (c) Figure 3.8: Example 2 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. 3.8.3 Example 3: A Gaussian model We take ρ = 9 but variable λ and µ. Here we set λ = µ and !2 (x−0.25)2 +(y−0.25)2 +(z−0.125)2 − µ= 3.0 − 1.75e 0.125 . In this example, we compute the FDTD-based solution to check the accuracy of our method. The computational setup for our asymptotic methods is the following: • The computational domain is [0, 0.5] × [0, 0.5] × [0, 0.5]. • The mesh size is 51 × 51 × 51 with grid size h = 0.01. • The angular frequency ω = 16π or ω = 32π. • The source point is (0.25, 0.25, 0.25)T . 87 We compare the results at frequency ω = 16π. Figures 3.9 and 3.10 show the solutions of the zz-component of G1 , G2 , and GFDTD at y = 0.25. Figures 3.11 and 3.12 show the solutions of the yy-component of G1 , G2 , and GFDTD at x = 0.25. Table 3.2 shows numerical differences between our two-term ansatz based solution and the FDTD solution for the two particular components, Gxy and Gyy . Since the computed FDTD solution is a numerical rather than “exact” solution which is not accurate enough, the numerical comparison did not indicate a clear asymptotic convergence pattern in terms of O(1/ω), but we can still conclude that our numerical solutions agree well with the FDTD solution with accuracy in the order of O(1/ω). (a) (b) (c) Figure 3.9: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the zz-component of G(r; r0 ) at y = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. Mesh in (a) and (b): 51×51×51; mesh in (c): 101×101×101. (a) (b) (c) Figure 3.10: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the zz-component of G(r; r0 ) at y = 0.25 and at (a) x = 0.25; (b) x = 0.23; (c) x = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. 88 (a) (b) (c) Figure 3.11: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 computed via (a) one-term ansatz G1 ; (b) two-term ansatz G2 ; (c) FDTD method. Mesh in (a) and (b): 51×51×51; mesh in (c): 101×101×101. (a) (b) (c) Figure 3.12: Example 3 with r0 = (0.25, 0.25, 0.25)T and ω = 16π. The real part of the yy-component of G(r; r0 ) at x = 0.25 and at (a) y = 0.25; (b) y = 0.23; (c) y = 0.15. Green dash line: G1 ; black circle line: G2 ; red solid line: FDTD-based solution. ω 8π 16π 32π 1/ω 4E-2 2E-2 1E-2 L2Gxy 2.4E-3 2.4E-3 2.9E-3 L2Gyy 6.3E-3 3.6E-3 6.3E-3 Table 3.2: Example 3: L2 -norm errors between the two-term ansatz solution and the FDTD solution in a region excluding a neighborhood of the source. 89 Chapter 4 Fast Huygens’ sweeping method for time-harmonic high-frequecy elastic wave equations in inhomogeneous media This chapter is based on a modified version of the published work in [59]. We have developed Hadamard-Babich ansatz for point-source elastic wave equations. The new ansatz is capable of producing accurate asymptotic solutions in the region of space containing the point source but no other caustics. However, like the classical geometrica-optics ansatz, this new ansatz could not resolve the issue with caustics which occur with high possibility for wave propa- gation in an inhomogeneous medium. Because the eikonal equation is a first-order nonlinear partial differential equation, and in general it does not have a globally defined solution. The concept of viscosity solution was invented to single out the unique weak solution among the possible generalized solutions for a first-order nonlinear partial differential equations and in general the viscosity solution is continuous everywhere but not differentiable everywhere. Computationally, nevertheless, high order schemes may be applied to compute the traveltime and amplitudes. But when we compare the resulting asymptotic solution with the direct so- 90 lution from the Helmholtz equation, we find that the two solutions are different globally. This difference may be traced back to the multivaluedness of traveltime and related caustics [6], which can be detected by applying the method of characteristics to the eikonal equation with appropriate initial condition. However, it has been showed in [50, 45, 44, 58], the squared eikonal solution is smooth in the neighborhood of point source in isotropic media. This implies that there is a neigh- borhood of point source which is free of caustics so that the Hadamard-Babich ansatz could generate locally valid asymptotic solutions. To treat caustics away from this neighborhood, we will use the Huygens secondary source principle. By constructing locally valid asymp- totic Green’s functions in small neighborhood of secondary sources layer by layer, we can construct the globally valid Green’s functions in the whole computational domain, so that the caustics can be treated automatically. The key idea is to use the Huygens-Kirchhoff in- tegral to integrate many locally valid asymptotic Green’s functions which build the relation between secondary sources and corresponding layers. To motivate our method, we first introduce the H-B ansatz [58] of the Green’s function G for the frequency-domain point-source elastic wave equation: ∞ X Ãl (r; r0 ) G(r; r0 ) = f 1 (ω, τ (r; r0 )). (4.1) −ω 2 T l (r; r0 ) −3+l+ 2 l=0 where T (r; r0 ) = τ 2 (r; r0 ), and τ (r; r0 ) is the traveltime from the source r0 to r. We shall define Al (r; r0 ) ≡ 0 for l < 0. Here we have from [46] 2τ ν iων (1) Z ∞ (ν− 1 ) 1 √   fν (ω, τ ) := eiωt f+ 2 (t2 − τ 2 (r; r0 ))dt = i π e Hν (ωτ ), (4.2) τ 2 ω 91 (1) where Hν denotes the Hankel function of the first kind of order ν. The governing equations and initial conditions for amplitudes Ãl for both S- and P-waves are also derived in [58], and we will show these equations for the truncated H-B ansatz later on. In order to distinguish the two wave modes, S-wave and P-wave, we introduce the fol- lowing wave-mode specific Green’s tensors for the two modes, ∞ ÃSl (r; r0 ) GS (r; r (ω, τ S (r; r0 )), X 0) = f (4.3) 2l −3+l+ 21 l=0 −ω 2 τ S (r; r 0) ∞ ÃP l (r; r0 ) GP (r; r0 ) = (ω, τ P (r; r0 )). X f (4.4) 2l −3+l+ 12 l=0 −ω 2 τ P (r; r 0) Since we are in the high-frequency regime and are dealing with a smooth elastic medium, we have G(r; r0 ) = GS (r; r0 ) + GP (r; r0 ). (4.5) 4.1 Numerics for the truncated H-B ansatz 4.1.1 Truncating the ansatz for the S-wave Since, numerically, it is impossible to construct ÃSl for all l ≥ 0, we need to truncate the ansatz in implementation. In order to at least reproduce the fundamental solution in a homogeneous medium, we truncate the formula (4.3) to keep only two terms, ÃS0 (r; r0 ) S1 S (r; r )) + à (r; r0 ) f S GS (r; r0 ) = 2 f 1 (ω, τ 0 2 1 (ω, τ (r; r0 )), (4.6) −ω −3+ 2 −ω T (r; r0 ) −2+ 2 92 2 where the superscript S refers to the S-wave and T = τ S . In [58] we have verified that keeping the first two terms is sufficient to capture the S-wave source singularity. Here we summarize the governing equations from [58] for τ S , ÃS0 , and ÃS1 for the S-wave. We have the eikonal equation for τ S , |∇τ S | = γ S (4.7) q with the initial condition τ S (r0 ; r0 ) = 0, where γ S is the S-wave slowness function, γ S = µρ . We have the transport equation for the leading H-B coefficient ÃS0 ,     1 S0 µ ρ S0 (∇T · ∇)ÃS0 + [∇ · (µ∇T ) − 14ρ]à + ∇T ∇ · à = 0, (4.8) 2µ 2ρ µ with the initial condition 5 2 3 T2 γ0S T 2 3 ÃS0 = (I − 3r̃ r̃ T ) + (I + r̃ r̃ T ) + O(T 2 ), (4.9) ρ0 πr3 ρ0 πr where γ0S = γ S (r0 ) and ρ0 = ρ(r0 ). We have the transport equation for the second H-B coefficient ÃS1 ,     1 µ ρ (∇T · ∇)ÃS1 + [∇ · (µ∇T ) − 18ρ]à + ∇T ∇S1 · à S1 = R̃0 , (4.10) 2µ 2ρ µ where ∇T ã0 µ∇T [(∇T · ∇)ã0 ] ∇T b̃0 T ∇λã0 (λ + µ)T ∇ã0 T B̃ 0 R̃0 = − + − − − + . (4.11) 2 4ρ 8ρ 2µ 2µ 2µ 93 Here B̃ 0 , the row vector ã0 , and the row vector b̃0 are given by B̃ 0 = (λ + µ)∇(∇ · ÃS0 ) + µ∇2 ÃS0 + ∇λ(∇ · ÃS0 ) +∇µ × (∇ × ÃS0 ) + 2(∇µ · ∇)ÃS0 , (4.12) 1 2µ ã0 = ∇ · ÃS0 + ∇µ · ÃS0 + ∇T [(∇T · ∇)ÃS0 ], (4.13) λ+µ (λ + µ)|∇T |2 b̃0 = 10ρã0 − (λ + µ)(∇T · ∇)ã0 − µ∇2 T ã0 −(∇T · ∇λ)ã0 − (∇T · ∇µ)ã0 + ∇T · B̃ 0 . (4.14) And the initial condition for ÃS1 is 5 3 T2 ÃS1 = − ÃS0 + 3 (I − 3r̃ r̃ T ) + O(T 2 ). (4.15) 2 ρ0 πr Because these governing equations are weakly coupled to each other, we need to design appropriate schemes to solve these equations up to suitable orders of accuracy. To obtain a first-order accurate approximation of ÃS1 by solving the corresponding transport equation, we need a third-order accurate approximation of ÃS0 , since equation (4.10) involves the second-order derivative of ÃS0 in its right-hand side. Moreover, a third-order accurate ÃS0 requires a fifth-order accurate τ S due to the appearance of ∆T in (4.8). For the eikonal equation (4.7), we can employ Lax-Friedrichs (LxF) high-order weighted essentially non- oscillatory (WENO) based sweeping schemes developed in [53, 41, 32, 31, 61, 34, 88, 87, 69, 64]. Since the governing equations for ÃS0 and ÃS1 are linear, we can also apply LxF- WENO based schemes directly to the linear system. But since the S-wave is analogous to the electromagnetic wave satisfying the Maxwell’s equations, we employ the schemes developed in [44] to decouple the components of ÃS0 . Namely, instead of computing the 94 nine components of ÃS0 directly, we decouple the governing transport equation so that we are able to compute ÃS0 more efficiently. 4.1.1.1 Computing take-off directions In our computational algorithm, we frequently need to use the so-called take-off direction, and we derive the related transport equation for computing this quantity. 2 Suppose that T = τ S is available. According to the method of characteristics, a geodesic ray tracing out from r0 to r is governed by dr ∇τ S (r(s)) t(1) (r; r0 ) := ṙ = = , (4.16) ds γS where the s parameter is the arc length parameter and the ˙ indicates the derivative in s. The unit take-off vector at a given spatial position r is defined as t(0) (r; r0 ) := lim t(1) (r ′ ; r0 ), (4.17) r ′ →r0 where r ′ approaches r0 along the geodesic ray from r0 to r. It is clear that t(0) is invariant along each geodesic ray so that it is governed by the following advection equation, ∇τ S · ∇ (0) ṫ(0) (r; r0 ) = t = 0, (4.18) γS with the initial condition lim (t(0) (r; r0 ) − r̃) = 0, (4.19) r→r0 95 r−r where r̃ = |r−r0 | . 0 4.1.1.2 Computing ÃS0 Following [44], we first write ÃS0 = AP (1) , where A is a scalar amplitude function and (1) (1) (1) P (1) = (P1 , P2 , P3 ) is the 3 by 3 polarization dyad, and we then insert this into equation (4.8) to obtain     1 µ ρ (∇T · ∇A)P (1) + A(∇T · ∇)P (1) + A [∇ · (µ∇T ) − 14ρ]P + A∇T ∇(1) ·P (1) = 0. 2µ 2ρ µ (4.20) By property of the S-wave, we know that ∇T is orthogonal to the two-dimensional subspace spanned by the columns of P (1) , and we further assume that the norm of the (1) dP (1) polarization vector Pj , 1 ≤ j ≤ 3, is invariant along a ray r(s); consequently, ds j · (1) Pj = 0 so that we have (1) (1) Pj · (∇T · ∇)Pj = 0, (4.21) where we have used the property that ds d = ∇τ S ·∇ along a ray with s the arc length γS parameter. (1) Taking the dot product of equation (4.20) with Pj in terms of individual columns, we can obtain 1 ∇T · ∇A + [∇ · (µ∇T ) − 14ρ]A = 0. (4.22) 2µ 96 (1) Inserting equation (4.22) into equation (4.20), we get the following equation for Pj :     (1) µ ρ (1) (∇T · ∇)Pj + ∇T ∇ · Pj = 0, (4.23) 2ρ µ so that dsd P (1) is parallel to ∇T . The above decomposition is analogous to that in [44] which j introduces a variable v0 satisfying that ÃS0 = v0 T P (1) . Since, in a small neighborhood of the primary source r0 , γ S (r) and ρ(r) approximately 5 2γ0S |r−r0 |2 equal γ0S and ρ0 , respectively, we expect that ÃS0 is consistent with ρ0 π (I − r̃ r̃ T ) in this neighborhood according to the S-wave Green’s tensor. Therefore, we enforce the following initial conditions 5 ! 2γ0S |r − r0 |2 lim A(r; r0 ) − = 0, (4.24) r→r0 ρ0 π   lim P (1) (r; r0 ) − (I − r̃ r̃ T ) = 0, (4.25) r→r0 where the limit r → r0 should be understood in the sense that r approaches r0 along its ray r(s) as s → 0+ . Now by writing A = v0 T , we can derive the governing equation for v0 , 1 ∇T · ∇v0 + [∇ · (µ∇T ) − 6ρ]v0 = 0, (4.26) 2µ 3 2γ0S with the initial condition v0 (r; r0 ) = ρ0 π . Following [44], the above transport equation has the following solution along the unique ray connecting r and r0 , S3 Z τS ′2 ! 2γ ∇ · (µ∇τ ) − 6ρ ′ v0 (τ S ) = 0 exp − 2 dτ . (4.27) ρ0 π 0 4τ ′ µγ S 97 T   If we define P (0) = I − t(0) t(0) , then we can derive the following relations by using equation (4.18), Ṗ (0) = 0, (4.28) t(0) · P (0) = 0, (4.29) with the initial condition P (0) (r; r0 ) − (I − r̃ r̃ T ) = O(r) as r → r0 (4.30) due to equation (4.19). We use the method proposed in [44] to compute A and P (1) with desired order of accuracy, since this method is very efficient in computing the nine components of ÃS0 ; we omit the details here. 4.1.1.3 Computing ÃS1 We first notice that, in equation (4.10), the term ∇T (∇( µρ )· ÃS1 ) entangles with ÃS1 . Since we know that ÃS0j , 1 ≤ j ≤ 3, are orthogonal to ∇T , we take the scalar product of equation (4.10) columnwise with ÃS0 j so that we can obtain a decoupled governing equation. Thus, we have 1 (∇T · ∇)gkj + [∇ · (µ∇T ) − 16ρ]gkj (4.31) µ µ3        0 S0 µ ρ S0 S0 ρ S0 = R̃k · Ãj − T ∇ · Ãj ∇ · Ãk − ∇ · Ãk , 2ρ µ ρ(λ + µ) µ2 98 where gkj = ÃS1 S0 k · Ãj , and we have used the relation [58] µ3 T   ρ ∇T · ÃS1 k =T ∇ · ÃS0 k − ∇ · ÃS0 k . (4.32) ρ(λ + µ) µ2 Since ÃS0 = O(r2 ) and ÃS1 = O(r2 ), gkj = O(r4 ) are very close to 0 near r0 , making numerical errors quite sensitive to the initialization and inducing numerical instabilities. To remedy the situation, we define new variables g̃kj := gkl /T . (4.33) Hence we get the following governing equations 1 (∇T · ∇)g̃kj + [∇ · (µ∇T ) − 12ρ]g̃kj (4.34) µ R̃k0 · ÃS0 µ3        j µ ρ S0 S0 ρ S0 = − ∇ · Ãj ∇ · Ãk − ∇ · Ãk , T 2ρ µ ρ(λ + µ) µ2 with the initial condition 8 4γ S r2 g̃kj = − 02 2 (I − r̃ r̃ T )kj . (4.35) ρ0 π Then the LxF WENO-based schemes can be used to compute g̃kj . Once all g̃kj are available, we can obtain the dyadic coefficients ÃS1 by using the method proposed in [44] and we omit details here. 99 4.1.2 Truncating the ansatz for the P-wave We truncate formula (4.4) to keep only two terms, ÃP 0 (r; r0 ) P1 P (r; r )) + à (r; r0 ) f GP (r; r0 ) = f 1 (ω, τ 0 P 1 (ω, τ (r; r0 )), (4.36) −ω 2 −3+ 2 −ω 2 T (r; r0 ) −2+ 2 2 where the superscript P refers to the P-wave and T = τ P . We have the following eikonal equation for the P-wave, |∇τ P | = γ P , (4.37) q ρ with the initial condition τ P (r0 ; r0 ) = 0, where γ P = λ+2µ . For the P-wave we have the following relation for ÃP 0 and ÃP 1 [58], ÃP 0 = ∇T α̃0 , (4.38) ÃP 1 = C̃ 0 + ∇T α̃1 , (4.39) where α̃0 = (α̃10 , α̃20 , α̃30 ) and α̃1 = (α̃11 , α̃21 , α̃31 ) are row vectors, which are governed by some transport equations. According to [58], the governing equations for α̃0 are 1 5ρ ∇T · ∇α̃0 + [ ∇ · (ρ∇T ) − ]α̃0 = 0, (4.40) 2ρ λ + 2µ with the initial condition 3 γP α̃0 = 0 (r − r0 ) + O(r2 ) as r → r0 . (4.41) ρ0 π 100 Similarly, according to [58], the governing equations for α̃1 are 1 7ρ ∇T · ∇α̃1 + [ ∇ · (ρ∇T ) − ]α̃1 = c̃0 , (4.42) 2ρ λ + 2µ with the initial condition α̃1 = O(r2 ) as r → r0 , where c̃0 is 1 c̃0 = {10ρ − µ∇2 T − ∇T · ∇(λ + µ)](∇T · C̃ 0 ) − (λ + µ)∇T · ∇(∇T · C̃ 0 ) 8ρ −(λ + µ)|∇T |2 (∇ · C̃ 0 ) − 2µ∇T · [(∇T · ∇)C̃ 0 ] − (∇µ · C̃ 0 )|∇T |2 + d˜0 }. (4.43) Here C˜0 and d˜0 are defined to be (λ + 2µ)2 ∇λα̃0   ρ C̃ 0 ≡ −∇α̃0 − ∇ α̃0 − , (4.44) ρ(λ + µ) λ + 2µ λ+µ d˜0 ≡ (λ + µ)∇T · ∇(∇ · ÃP 0 ) + µ∇T · ∇2 ÃP 0 + (∇λ · ∇T )(∇ · ÃP 0 ) +∇T · [∇µ × (∇ × ÃP 0 )] + 2∇T · [(∇µ · ∇)ÃP 0 ]. (4.45) To evaluate the formula (4.36) numerically, we need to solve the eikonal equation (4.37) to obtain τ P , and the governing equations (4.40) and (4.42) to obtain ÃP 0 and ÃP 1 , respec- tively. To obtain a first-order accurate GP , we need a fifth-order accurate τ P , a third-order accurate α̃0 , and a first-order accurate α̃1 . For the eikonal equation (4.37), we can employ fifth-order LxF WENO-based schemes developed in [64] to compute τ P . Since the governing equations (4.40) and (4.42) are decoupled, we can also apply high-order schemes in [64] to compute α̃0 and α̃1 with desired oder of accuracy. 101 4.2 Huygens’ principle based globally valid Green’s func- tions In previous work [58], we have implemented the Hadamard-Babich ansatz to approximate the Green’s tensor by assuming that no caustic occurs in the region of space containing the point source. However, caustics occur with high possibility in a generic inhomogeneous medium [79]. And the viscosity solution of traveltime is a single valued solution which does not contain later-arriving traveltimes [47, 51, 50]. Hence the constructed asymptotic Green’s tensor does not contain the interference effects due to the multivaluedness of traveltime and is only valid before the occurrence of caustics. Therefore, inspired by the work [49, 44, 56], we develop the Huygens-Kirchhoff formula for elastic wave fields to construct a globally valid wave fields. 4.2.1 Huygens-Kirchhoff formula for elastic wave fields Assuming that the wave field u(r; r0 ) due to the primary source r0 is known for r ∈ Ω in a domain Ω enclosing the primary source r0 , we would like to extrapolate this wave field to obtain the wave field u(r; r0 ) for r ∈ Ωext in the exterior domain Ωext ; see Figure 4.1. As illustrated in Figure 4.1, the elastic wave field u(r; r0 ) in Ωext excited by the source r0 satisfies the following equation, ρ(r)ω 2 uk (r; r0 ) + ∂j [λ(r)δkj ∂m um (r; r0 ) + µ(∂k uj (r; r0 ) + ∂j uk (r; r0 ))] = 0, r ∈ Ωext . (4.46) Here ∂k represents the xk -derivative, uk is the kth component of u and the Einstein sum- 102 (a) (b) Figure 4.1: Huygens-Kirchhoff formula for wave field extrapolation. (a) Spherical domains. (b) Planar domains. mation convention is applied. The (k, l)th element of the Green’s tensor G(r; r ′ ) excited by the r ′ ∈ Ωext , satisfies ρ(r)ω 2 Gkl (r; r ′ ) + ∂j [λ(r)δkj ∂m Gml (r; r ′ ) + µ(r)(∂k Gjl (r; r ′ ) + ∂j Gkl (r; r ′ ))] (4.47) = −δkl δ(r − r ′ ) for 1 ≤ k, l ≤ 3, where δkl is the kronecker delta. Thus, we have for the lth element of u, Z −ul (r ′ ; r 0) = −δkl δ(r − r ′ )uk (r; r0 )dr (4.48) Ωext Z ρω 2 Gkl + ∂j [λδkj ∂m Gml + µ(∂k Gjl + ∂j Gkl )] uk dr  = Ωext Z  = ∂j [λδkj ∂m Gml + µ(∂k Gjl + ∂j Gkl )]uk Ωext − ∂j [λδkj ∂m um + µ(∂k uj + ∂j uk )]Gkl dr. 103 Integrating by parts, we get Z (r ′ ; r  ul 0) = [λδkj ∂m Gml + µ(∂k Gjl + ∂j Gkl )]∂j uk (4.49) Ωext − [λδkj ∂m um + µ(∂k uj + ∂j uk )]∂j Gkl dr Z  − [λδkj ∂m Gml + µ(∂k Gjl + ∂j Gkl )]uk S+SR − [λδkj ∂m um + µ(∂k uj + ∂j uk )]Gkl νj dS(r) Z  =− λ[∂m Gml uj νj − ∂m um Gjl νj ] S + µνj [(∂k Gjl + ∂j Gkl )uk − (∂k uj + ∂j uk )Gkl ] dS(r) for l = 1, 2, 3, where ν = (ν1 , ν2 , ν3 )T is the unit normal vector directing outward Ωext . The last equality holds since by letting R → ∞, the integration on SR vanishes by virtue of Sommerfeld radiation condition. Consequently, in vector notation, we have obtained the folllowing equivalence of Huygens- Kirchhoff formula Z u(r ′ ; r0 )  = λ[−(∇ · G)(u · ν) + (∇ · u)(G · ν)] (4.50) S + µ[(ν · ∇)u · G − (ν · ∇)G · u] + µ[(G · ∇)u · ν − (u · ∇)G · ν] dS(r), on the boundary S of the domain Ω enclosing r0 . The formula indicates that if the wave fields u(r; r0 ) and the Green’s tensor G(r; r ′ ) are known on the boundary S, then the wave fields u(r ′ ; r0 ) away from S can be constructed. In particular, we are interested in the case when the boundary S is the plane at z = z0 , 104 and the wave field is known in z ≤ z0 . In other words, we need to determine u in Ωext := {r = (x, y, z)|z > z0 } and hence in this case ν = (0, 0, −1)T . Therefore, equation (4.49) reduces to Z (r ′ ; r λ(r)[∂m Gml (r; r ′ )u3 (r; r0 ) − ∂m um (r; r0 )G3l (r; r ′ )]  ul 0) = (4.51) z=z0 + µ(r)(∂k G3l (r; r ′ ) + ∂3 Gkl (r; r ′ ))uk (r; r0 ) − µ(r)(∂k u3 (r; r0 ) + ∂3 uk (r; r0 ))Gkl (r; r ′ ) dxdy. Consequently, to obtain for computing the (l, n)th element of the Green’s tensor G(r ′ ; r0 ), Gln (r ′ ; r0 ), we can replace ul with Gln in the equation (4.51). Then the corresponding Huygens-Kirchhoff formula for the Green’s tensor G(r ′ ; r0 ) is Z (r ′ ; r λ(r)[∂m Gml (r; r ′ )G3n (r; r0 ) − ∂m Gmn (r; r0 )G3l (r; r ′ )]  Gln 0) = (4.52) z=z0 + µ(r)(∂k G3l (r; r ′ ) + ∂3 Gkl (r; r ′ ))Gkn (r; r0 ) − µ(r)(∂k G3n (r; r0 ) + ∂3 Gkn (r; r0 ))Gkl (r; r ′ ) dxdy for 1 ≤ l, n ≤ 3. Numerically, it is expensive to compute the Green’s tensor G(r; r ′ ) excited by r ′ ∈ Ωext since the manifold Ωext is one dimension higher than S. However, the following reciprocal relations are satisfied τ (r; r ′ ) = τ (r ′ ; r), G(r; r ′ ) = GT (r ′ ; r). (4.53) Hence, we can interchange the two arguments r and r ′ in G(r ′ ; r) in (4.52) and use the 105 relation above to get Z Gln (r ′ ; r0 ) λ(r)[∂m Glm (r ′ ; r)G3n (r; r0 ) − ∂m Gmn (r; r0 )Gl3 (r ′ ; r)]  = (4.54) z=z0 + µ(r)(∂k Gl3 (r ′ ; r) + ∂3 Glk (r ′ ; r))Gkn (r; r0 ) − µ(r)(∂k G3n (r; r0 ) + ∂3 Gkn (r; r0 ))Glk (r ′ ; r) dxdy, We can rewrite above formula (4.54) as Z 3 (r ′ , r [∂m Glm (r ′ ; r)G3n (r; r0 ) − ∂m Gmn (r; r0 )Gl3 (r ′ ; r)] (4.55) X Gln 0) = {λ(r) z=z0 m=1 + µ(r)(∂1 Gl3 (r ′ ; r) + ∂3 Gl1 (r ′ ; r))G1n (r; r0 ) + µ(r)(∂2 Gl3 (r ′ ; r) + ∂3 Gl2 (r ′ ; r))G2n (r; r0 ) + µ(r)(∂3 Gl3 (r ′ ; r) + ∂3 Gl3 (r ′ ; r))G3n (r; r0 ) − µ(r)(∂1 G3n (r; r0 ) + ∂3 G1n (r; r0 ))Gl1 (r ′ ; r) − µ(r)(∂2 G3n (r; r0 ) + ∂3 G2n (r; r0 ))Gl2 (r ′ ; r) − µ(r)(∂3 G3n (r; r0 ) + ∂3 G3n (r; r0 ))Gl3 (r ′ ; r)}dxdy, As can be seen, the only unknowns in (4.55) are G(r ′ ; r) and its spatial derivatives. Specifically, G(r ′ ; r) is assumed to have no caustics in Ωext . By (4.6) and (4.36), we may 106 approximate Gkj (r ′ ; r) =GS ′ P kj (r ; r) + Gkj (r ; r) ′ (4.56) ÃS0 ′ ÃS1 ′ kj (r ; r) kj (r ; r) ≈ f (ω, τ S (r ′ ; r)) + f (ω, τ S (r ′ ; r)) −ω 2 −3+ 12 2 −2+ 12 −ω 2 τ S ÃP 0 ′ ÃP 1 ′ kj (r ; r) kj (r ; r) + f (ω, τ P (r ′ ; r)) + f (ω, τ P (r ′ ; r)). −ω 2 −3+ 12 2 −2+ 12 −ω 2 τ P Then based on the formula (3.206) and the properties of Hankel functions, we can derive the spatial derivative of G(r ′ ; r) with respect to r as follows 2τ S ∂xi τ S ÃS0 ′ kj (r ; r) ∂xi GS ′ kj (r ; r) ≈ f (ω, τ S (r ′ ; r)) (4.57) ω2 −4+ 12 ∂xi ÃS0 ′ 2∂xi τ S ÃS1 ′ ; r) " # kj (r ; r) kj (r + + f (ω, τ S (r ′ ; r)) −ω 2 ω2τ S −3+ 12 " S1 ′ # Ãkj (r ; r) + ∂xi f (ω, τ S (r ′ ; r)), 2 −2+ 12 −ω 2 τ S and the same can be applied to GP (r ′ ; r) to obtain ∂xi GP (r ′ ; r). Since f (ω, τ ) = O(ω −l+2 ) as ω → ∞, retaining the only leading order terms, −3+l+ 12 i.e. the O(1) terms in (4.56) and O(ω) terms in (4.57), then we have the the following approximation ÃS0 ′ ′ kj (r ; r) S ′ GS kj (r ; r) ≈ 3 eiωτ (r ;r) , (4.58) 8τ S (r ′ ; r) iω∂xi τ S (r ′ ; r)ÃS0 ′ kj (r ; r) S ′ ∂xi GS ′ ≈ eiωτ (r ;r) , kj (r ; r) S3 (4.59) 8τ (r ′ ; r) and the same approximation for P-wave can be obtained similarly. Noticing that such approximations are adequately accurate for computing G(r ′ ; r0 ) since 107 the formula (4.55) is in general O(ω) and becomes O(1) only when ∂xi G(r ′ ; r) = O(1) and G(r ′ ; r) = O(1/ω) since ∂xi G(r; r0 ) = O(ω). Hence the approximation lose accuracy only when the approximations we choose for both ∂xi G(r ′ ; r) and G(r ′ ; r) becomes 0 simulta- neously, the points with such property constitute only a set of measure 0 and will not affect the value of G(r ′ ; r0 ) in (4.55). As can be seen, the only unkowns in (4.58) and (4.59) are τ S , ÃS0 and ∇r τ S (r ′ ; r). Hence in order to obtain the Green’s tensor G(r ′ ; r0 ), we need to compute the asymptotic ingredients: τ S , ÃS0 and ∇r τ S (r ′ ; r) for S-wave and τ P , ÃP 0 and ∇r τ P (r ′ ; r) for P- wave. In previous section, we have introduced how to compute the traveltimes and dyadic coefficients for both the S-wave and P-wave up to a suitable order of accuracy. The same methods can be used here for all secondary sources. Since that ∇r τ (r ′ ; r) is opposite to the take-off direction t(0) (r ′ , r) along the ray from r to r ′ , where t(0) (r ′ , r) is governed by the following equation (∇r′ τ (r ′ ; r) · ∇r′ )t(0) (r ′ , r) = 0, (4.60) with the initial condition r′ − r   lim t(0) (r ′ ; r) − = 0, (4.61) r ′ →r |r ′ − r| the high order LxF-WENO schemes [45, 44] can be applied to compute t(0) for both the S- and P-waves, yielding ∇r τ (r ′ ; r) accordingly. 108 4.2.2 Huygens principle based sweeping method Based on the Huygens-Kirchhoff formula, we now develop a layer-by-layer sweeping method to construct the globally valid Green’s functions. The Green’s tensor G as constructed by the ansatz (4.1) is valid only in a local neighbor- hood of r0 where no caustics occur since the computed ingredients in (4.1) are single-valued viscosity solutions. Therefore the integration formula (4.55) can only be used in a narrow layer where the Green’s functions G excited by every selected secondary source point r ∈ S is valid. However, since caustics will not develop close to a source in an isotropic medium, we can construct the elastic wave fields from a point source to a global domain in a layer-by-layer manner. Given the primary source r0 , we can first construct asymptotic Green’s functions G(r; r0 ) by substituting the computed ingredients into the ansatz (4.1), which is valid in a local neighborhood Ω1 containing the source r0 ; consequently, the Green’s functions G(r; r0 ) and their gradients ∇G(r; r0 ) are known on the boundary of Ω1 , denoted by S1 . Letting Ω1 be the first layer, we can set up secondary point sources on the boundary S1 , and identify a narrow layer, denoted by Ω2 , where the Green’s functions G(r ′ ; r) (r ∈ S1 , r ′ ∈ Ω2 ) is valid. The method of identifying the narrow will be addressed later. Then we can apply the integration formula (4.55) to construct the Green’s function G(r ′ ; r0 ) in the layer Ω2 , so that G(r ′ ; r0 ) and ∇G(r ′ ; r0 ) are available on S2 = ∂Ω2 . The process can be repeated so that the Green’s functions can be constructed everywhere by sweeping through the whole domain in a layer-by-layer fashion. As addressed in [49, 56], the method of partitioning the whole computational domain into layers is based on the first-arrival traveltime solutions for the eikonal equations with 109 point source for both S-wave and P-wave. Suppose that the traveltime solutions, τ S (r; r0 ) and τ P (r; r0 ), are computed in the whole domain, we can determine the first layer Ω1 as the neighborhood of r0 where both τ S (r; r0 ) and τ P (r; r0 ) are smooth. Then we can set up a few secondary-source points on the boundary S1 of the first layer, compute the first- arrival traveltimes for both S-wave and P-wave for each individual point and determine a local neighborhood where all traveltimes are smooth. This is the second narrow layer Ω2 . The process can be repeated so that the whole domain will be covered by all such layers. The asymptotic Green’s functions are singular at the point source, hence we will use the Huygens-Kirchhoff formula (4.55) to compute the Green’s functions G at the observation points away from the secondary source surface. To well separate the receiver domain and the secondary source surface, we can move the secondary source surface slightly closer to the primary source. The missing portion of the Green’s functions is already computed by either using the primary source or using the previous layer. In practice, we are interested in designing methods with efficiency independent of frequency. We will set a fixed distance df ≥ 0 to separate the secondary source surface and the receiver domain since when the frequency parameter ω is big enough, the asymptotic Green’s functions become accurate roughly away from the source by this distance. 4.2.3 Planer-layer based Huygens sweeping To better illustrate the sweeping process, we consider the wave fields direct along the positive z direction. As showed in Figure 4.2, the computational domain is partitioned into some non-overlapping layers Ωj , all secondary-source surfaces Sj are planar and perpendicular to the z-direction, and this partition satisfies the properties discussed above. The planar-based sweeping method can be summarized as the following. 110 Figure 4.2: The computational domain is partitioned into three layers: Ω1 , Ω2 , and Ω3 . The first layer Ω1 contains the primary source r0 ; the source plane S1 is placed in Ω1 and is df wide away from Ω2 ; the source plane S2 is df wide away from Ω3 and locates in Ω2 . • Stage 1. Precomputing asymptotic ingredients. – The computation domain are partitioned into layers Ωj and identify secondary source planes Sj so that the sources and receivers are well sperated. – For each secondary source plane Sj , the tables of traveltime, amplitudes and take- off directions are computed at each secondary source on a coarse mesh in the layer Ωj+1 . Then the tables on a dense set of secondary sources can be obtained by interpolating the coarse tables. – The tables for the coarse set of secondary sources are stored (on a hard drive) and can be used to construct the wave fields for all high frequencies and for arbitrary point source. • Stage 2. Given a free-space frequency ω, constructing the wave fields layer by layer. – For each secondary source plane Sj , the tables of the traveltimes, amplitudes and 111 take-off directions for both S-wave and P-wave are loaded from the hard drive to construct the Green’s function G(r; r0 ) in the corresponding layer Ωj+1 . – For each table, the data is first interpolated onto a finer mesh to resolve the highly osillatory nature of G and then compute G(r; r0 ) by Huygens-Kirchhoff formula with a quadrature rule. – For the given frequency ω, we can interpolate the tables from the given source locations onto the region bounded by these source locations to obtain the data for the desired dense sources. This is feasible because asymptotic ingredients are continuous functions of source location. To implement the above algorithm, we need to overcome some obstacles. The first ob- stacle is how to store the data tables generated in stage 1 since there are many sources in the source plane Sj and also we are dealing with nine-element Green’s functions for 3-D elastic wave equations. The second obstacle is how to efficiently carry out the matrix-vector products induced by the discretization of the Huygens-Kirchhoff integral (4.55). We will address these two issues in the following subsections. 4.2.4 Data tables and compression To reduce data storage, we will follow the approach in [49, 57] to compress each data table into a linear combination of tensor product based multivariate Chebyshev polynomials so that information in each table is enclosed into a small number of Chebyshev coefficients. In our implement, we need to compress the data tables for both the S-wave and P-wave separately. To efficiently reconstruct the information from those compressed tables, we will follow 112 the method in [49] which is based on the product fo low-rank matrices. The approach is also equivalent to the Orszag partial summation method [10]. 4.2.5 Discretization of Huygens-Kirchhoff integral In numerical implementation, it is difficult to evaluate the (k, j)-entry of the electric Green’s functions G(r; r0 ) by the equation(4.55) for k, j = 1, 2, 3, when the secondary source plane is unbounded. Hence, first we need to truncate the unbounded integration domain S to a finite, bounded domain S̃ according to the specified computational domain for elastic wave equations. Since the expansion (4.1) automatically exhibits outgoing wave behavior and satisfies the Sommerfeld radiation condition at infinity, such a truncation may slightly affects the accuracy of the wave field near the boundary of S̃ only. After truncation, the bounded domain S̃ can be discretized so that the quadrature rule can be applied to approximate the integral in (4.55). Since we are interested in computing highly oscillatory solution, we have to specify sufficient mesh points to sample the overall solution. In principle, the optimal number of sampling points is arguably four to six mesh points per wavelength in each direction. However, in the high frequency regime, the direct methods such as finite difference or finite-element methods require many more points per wavelength so as to yield accurate numerical solutions due to pollution or dispersion errors [5, 4]. On the other hand, the Hadamard-Babich ansatz based method requires only four to six mesh points per wavelength to resolve the overall solution in the high-frequency regime and this has been verified in [49, 45, 56] and in the following examples. Since given the index of refraction γ and the frequency parameter ω, the smallest wave- length in the computational domain can be estimated to be λmax = ωγ2π max , where γmax is the largest value of γ S and γ P for both S-wave and P-wave in the computational domain, 113 and we specify 4 to 6 points per wavelength in each direction accordingly. We remark that because all the ingredients in Hadamard-Babich ansatz are independent of frequency, one can compute these asymptotic ingredients on much coarser meshes with number of points independent of frequency rather than on this very fine mesh. Only when we construct the overall wave fields do we need to interpolate those ingredients onto the fine meshes so as to capture each wave accurately. Based on above considerations, we are ready to discretize the integral (4.55). Assume the primary point source r0 is given, and the truncated rectangular region S̃ is discretized into a set of Ms = Mx × My uniform grid points with the same mesh size h in both x- and y-directions so that the above sampling requirement of four to six points per wavelength is satisfied. We apply the trapezoidal rule to approximate the integral over S̃ and obtain ′′ ′′ M x M y Gkj (r ′ , r0 ) ≈h2 X X (4.62) m=1 n=1 3 (∂m Gkm (r ′ ; smn )G3j (smn ; r0 )  X λ(smn ) m=1 3 ∂m Gmj (smn ; r0 )Gk3 (r ′ ; smn )) X − λ(smn ) m=1 + µ(smn )(∂1 Gk3 (r ′ ; smn ) + ∂3 Gk1 (r ′ ; smn ))G1j (smn ; r0 ) + µ(smn )(∂2 Gk3 (r ′ ; smn ) + ∂3 Gk2 (r ′ ; smn ))G2j (smn ; r0 ) + µ(smn )(∂3 Gk3 (r ′ ; smn ) + ∂3 Gk3 (r ′ ; smn ))G3j (smn ; r0 ) − µ(smn )(∂1 G3j (smn ; r0 ) + ∂3 G1j (smn ; r0 ))Gk1 (r ′ ; smn ) − µ(smn )(∂2 G3j (smn ; r0 ) + ∂3 G2j (smn ; r0 ))Gk2 (r ′ ; smn ) − µ(smn )(∂3 G3j (smn ; r0 ) + ∂3 G3j (smn ; r0 ))Gk3 (r ′ ; smn )  114 P′′ for k, j = 1, 2, 3, where denotes that the first and last term have a factor 1/2. Notice that partial derivatives of G(smn ; r0 ) are estimated by numerical differentiation since the Green’s functions G(r; r0 ) are already computed from last step. Mx and My are the number of grid points in the x- and y- directions, respectively; {smn } are the Ms mesh points on the source plane S̃, and are re-enumerated as {sm }M s m=1 . According to the partition strategy, we are interested in evaluating (4.62) for all observation points in a narrow layer which is about df far away from the source plane and we enumerate those mesh points as {rn }N r n=1 . Then we obtain gkj =Uk1 f1j + Uk2 f2j + Uk3 f3j + Uk4 f4j (4.63) Uk5 f5j + Uk6 f6j + Uk7 f7j + Uk8 f8j 115 for k, j = 1, 2, 3, where gkj = [Gkj (r1 ; r0 ), Gkj (r2 ; r0 ), · · · , Gkj (rNr ; r0 )]T , X3 Uk1 = [ ∂l Gkl (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , l=1 Uk2 = [Gk3 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , Uk3 = [∂1 Gk3 (rn ; sn ) + ∂3 Gk1 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , Uk4 = [∂2 Gk3 (rn ; sm ) + ∂3 Gk2 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , Uk5 = [∂3 Gk3 (rn ; sm ) + ∂3 Gk3 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , Uk6 = [Gk1 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , Uk7 = [Gk2 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , Uk8 = [Gk3 (rn ; sm )]1≤n≤Nr ,1≤m≤Ms , f1j = [λ(s1 )G3j (s1 ; r0 ), · · · , λ(sMs )G3j (sMs ; r0 )]T , 3 3 ∂l Glj (sMs ; r0 )]T , X X f2j = −[λ(s1 ) ∂l Glj (s1 ; r0 ), · · · , λ(sMs ) l=1 l=1 f3j = [µ(s1 )G1j (s1 ; r0 ), · · · µ(sMs )G1j (sMs ; r0 )]T , f4j = [µ(s1 )G2j (s1 ; r0 ), · · · µ(sMs )G2j (sMs ; r0 )]T , f5j = [µ(s1 )G3j (s1 ; r0 ), · · · µ(sMs )G3j (sMs ; r0 )]T , f6j = [−µ(s1 )(∂1 G3j (s1 ; r0 ) + ∂3 G1j (s1 ; r0 )), · · · , −µ(sMs )(∂1 G3j (sMs ; r0 ) + ∂3 G1j (sMs ; r0 ))]T , f7j = [−µ(s1 )(∂2 G3j (s1 ; r0 ) + ∂3 G2j (s1 ; r0 )), · · · , −µ(sMs )(∂2 G3j (sMs ; r0 ) + ∂3 G2j (sMs ; r0 ))]T , f8j = [−µ(s1 )(∂3 G3j (s1 ; r0 ) + ∂3 G3j (s1 ; r0 )), · · · , −µ(sMs )(∂3 G3j (sMs ; r0 ) + ∂3 G3j (sMs ; r0 ))]T , 116 In numerical implementation, we will uniformly and coarsely sample the secondary sources so that the asymptotic ingredients for those coarsely sampled sources are efficiently precom- puted. In the high frequency regime, we need to sample enough points on the source plane with finer meshes so as to obtain the desired accuracy. The asymptotic ingredients on those finer meshes can be obtained by interpolation. To evaluate (4.63), we need to carry out total 72 matrix-vector multiplications for nine components of G. In practice, Ms and Nr could be extremely large for high frequencies so that the direct evaluation of (4.63) with complexity O(Ms ×Nr ) is expensive and impractical. To accelerate the evaluation process, we will use a multilevel matrix decomposition based butterfly algorithm in [84, 11, 18, 49, 56]. 4.2.6 A butterfly algorithm We can reformulate (4.63) as the following: X8 X gkj (r) = Ukq (r; s)fqj (s), r ∈ Xr ⊂ Ωr , s ∈ Xs ⊂ Ωs , (4.64) q=1 s∈Xs and 1 ≤ k, j ≤ 3. Here the set of sources Xs is in the domain Ωs , and the set of receivers is in the domain Ωr . Ωs and Ωr are df apart from each other. fqj is the representative function of fqj in the sense that fqj (sm ) is the mth element of fqj for 1 ≤ m ≤ Ms . Ukq (r; s) is the representative function of Ukq . Noticing in (4.63) that for each secondary source sm and receiver rn , 1 ≤ m ≤ Ms , 1 ≤ n ≤ Nr , the Green’s tensor G(rn ; sm ) has the decomposition G(rn ; sm ) = GS (rn ; sm ) + 117 GP (rn ; sm ). Hence the representative function Ukq (r; s) can be decomposed as the following S (r; s) + U P (r; s) = AS (r; s)eiωτ S (r;s) + AP (r; s)eiωτ P (r;s) Ukq (r; s) = Ukq (4.65) kq kq kq where the amplitude AS S kq (r; s) and the traveltime τ (r; s) for S-wave are available from (4.58) and (4.59). AP P kq (r; s) and τ (r; s) for P-wave can be obtained in the same way. Then it is clear that we have S (r) + g P (r) gkj (r) = gkj (4.66) kj with 8 X 8 X S (r) S (r; s)f (s), P (r) P (r; s)f (s) X X gkj = Ukq qj gkj = Ukq qj (4.67) q=1 s∈Xs q=1 s∈Xs Based on such decomposition (4.65), we can follow the work in [11, 50, 56] to adopt the low-rank-separation−based butterfly algorithm to speed up the matrix-vector multiplication for both gkjS and g P . In implementation, we can first use the butterfly algorithm to compute kj S and then g P . Next, we can add g S and g P together to obtain g . For the sake of gkj kj kj kj kj convenience, we will no longer use the superscripts S and P since the following methodology works the same for computing gkj S and g P . kj To begin with, we first introduce the multi-dimensional Lagrange basis with respect to Chebyshev nodes. For a given integer p > 0, the Chebyshev nodes of order p on [-1,1] are 118 defined as   p (j − 1)π X= xj = cos . (4.68) p−1 j=1 The jth Lagrange basis function at x ∈ [−1, 1] with nodes X is denoted as LX (x; xj ) which takes 1 at xj and 0 else where in X, for j = 1, · · · , p. Then the Chebyshev nodes of order p on d-dimensional box [−1, 1]d are d tensor products of X as p p X d = {x1j }j =1 × · · · × {xdj }j =1 . (4.69) 1 1 d d Thus, the jth , j = (j1 , · · · , jd ), Lagrange basis function with nodes X d at x = (x1 , · · · , xd )T ∈ [−1, 1]d is given as a tensor product Ld d (x; xj ) = LX (x1 ; x1j ) · · · LX (xd ; xdj ), (4.70) X 1 d where xj = (x1j , · · · , x1j )T . 1 d For general one-dimensional interval [a, b], the Chebyshev nodes of order p satisfy b+a p   b−a Y = yj = x + , (4.71) a j 2 j=1 Hence the jth Lagrange basis function at y ∈ [a, b] with nodes Y is denoted as LY (y; yj ), for j = 1, · · · , p. Similarly, the Chebyshev nodes of order p are d tensor products Y = Y1 × · · · × Yd (4.72) 119 with b+a p   i b−a i Yi = y j = x + . (4.73) i a ji 2 j =1 i Thus, the jth Lagrange basis function with nodes at y = (y 1 , · · · , y d )T ∈ [−1, 1]d is given as LdY (y; yj ) = LY1 (y 1 ; yj1 ) · · · × LY (y d ; yjd ). (4.74) 1 d d In the following, we will denote by C B the set of pd d-dimensional Chebyshev nodes in a d-dimensional box B. Following closely the butterfly algorithm in [50, 56], we present algorithm as follows. 1. Construct the cluster trees for both receivers and sources. Assume that the domain of receivers is a cube Ωr = [Lrmin , Lrmax ]3 , and the domain of sources is a square Ωs = [Lsmin , Lsmax ]2 . The domain is discretized such that the number of sampling points per wavelength is fixed, such as 4 to 6 points per wavelength. The cluster tree for receivers and sources are an octree and a quadtree, respectively. At the loot level (denote as level 0), the boxes for both the source and receiver cluster trees are assigned to the corresponding domain directly. Then the tree construction goes by dyadically subdividing the boxes: for an octree (quadtree), each box is divided into 8 (4) boxes. The construction reaches or stops at leaf level (denote as level L) where the size of each box is about 2 minimum wavelengths so that approximately O(p) sampling points are used along each dimension with p the order of Chebyshev nodes. Hence except for the leaf level, each box B of an octree (quadtree) has 8(4) 120 children boxes, denoted as B c , and except for the root level, each box B has a parent box, denoted as B p . We denote the resulting two trees as Ts (the source tree) and Tr (the receiver tree), respectively. From now on, we will use the superscript (·)B to denote the dependence on the box B. The butterfly algorithm traverses through the two cluster trees in the following way: for l = L · · · , 0, visit level l in Ts and level L−l in Tr by considering each pair {Br , Bs } with Br ∈ T r and Bs ∈ T s , l(Bs ) = l and l(B r ) = L − l, where l(B) indicates the level of B in a tree. Moreover at the root level of receiver and at the leaf level of source, each pair {Br , Bs } satisfies 4π(Lrmax − Lrmin )     1 w(Br )w(Bs ) = (Lrmax − Lrmin )O(2λmin ) =O =O , ωγmax ω (4.75) S , γ P ). γ S P where w(B) is the size of box B and γmax = max(γmax max max and γmax are the maximum refraction indexes for S-wave and P-wave, respectively. As moving downward the receiver tree by one level and simultaneously moving upward the source tree by one level, w(Br ) is divided by 2 while w(Bs ) is multiplied by 2 so that w(Br )w(Bs ) = O( ω1 ) is automatically satisfied. 2. The Upward Pass starts at the leaf level (level L) of the source tree Ts and ends at the level (denoted as Ls ) where the size of the boxes w(Bs ) ≥ O( √1ω ). Correspondingly, the level of the receiver tree Tr varies from root level (level 0) to the level Lr ≡ L − Ls . (1) Initialization: For each pair {Br , Bs } with Br traversing all boxes at the root 121 level of the receiver tree and Bs traversing all boxes at the leaf level of the source B ,B tree, interpolate 24 equivalent densities {f¯qjr s } for 1 ≤ q ≤ 8 and 1 ≤ j ≤ 3 at p2 the equivalent sources C Bs = {sB s n }n=1 in Bs from the given 24 densities {fqj } at all sources in Bs ∩ Xs : Br Bs B B ,B f¯qjr s (sB e−iωτ (rc ;sn ) L2 Bs (s; sB s )eiωτ (rc r ;s) f (s), (4.76) X s n )= C n qj s∈Bs ∩Xs where rcBr is the center of the receiver box Br . (2) For l from L − 1 to Ls , for each pair {Br , Bs } with Br traversing all boxes at the level L − l of the receiver tree and Bs traversing all boxes at the level l of the B ,B source tree, interpolate 24 equivalent densities {f¯qjr s } at the equivalent sources 2 p c C Bs = {sB s p n }n=1 in Bs from the equivalent densities {fqj ¯Br ,Bs } at equivalent c B c p2 sources C Bs = {sms }m=1 of all the children cluster of Bs and the parent cluster of Br : P2 c B ,B −iωτ Br ;sBs ) 2 Bsc Bs iωτ (rcBr ;sB s ) Brp ,Bsc Bsc f¯qjr s (sB (r XX s n ) = e c n L Bs (sm ; sn )e m f¯qj (sm ), C Bsc m=1 (4.77) for 1 ≤ q ≤ 8 and 1 ≤ j ≤ 3. 3. Switch at the level where the upward pass has ended (Level Ls of the source tree and level Lr of the receiver tree). For each pair {Br , Bs } with Br traversing all boxes at the level Lr of the receiver tree and Bs traversing all boxes at the level Ls of the source B ,B Br p3 tree, compute 9 equivalent fields {ḡkjr s } at equivalent points C Br = {rm }m=1 from 122 B ,B 2 equivalent densities {f¯qjr s } at equivalent sources C Bs = {sB s p n }n=1 : 8 X P 2 B ,B Bs ) Br , sBs )f¯Br ,Bs (sBs ), X ḡqjr s (rm = Ukq (rm n qj n (4.78) q=1 n=1 for 1 ≤ k, j ≤ 3. 4. The Downward Pass starts at the level Lr of the receiver tree Tr where the Upward Pass has ended and ends at level L of the receiver tree. Meanwhile, the level of the source tree varies from Ls to 0. (1) For l from Lr to L − 2, for each pair {Br , Bs } with Br traversing all boxes at the level l + 1 of the receiver tree and Bs traversing all boxes at the level L − l − 1 B ,B of the source tree, interpolate the equivalent fields {ḡkjr s } at the equivalent p c Br p3 B ,B sources C Br = {rm }m=1 from the equivalent densities {ḡkjr s } at equivalent p p B p3 sources C Br = {rn r }n=1 of all the children cluster of Bs and the parent cluster of Br : P 3 p B ,B Br ) XX iωτ (r Br ;sBsc ) B p Br −iωτ (rn Br Bsc B p ,B c B p ;sc ) ḡ r s (r r ), ḡkjr s (rm = e m c L r (r ; rn )e C Br m kj n Bsc n=1 (4.79) Bc for 1 ≤ k, j ≤ 3, where sc s is the center of the receiver box Bsc . (2) For each pair {Br , Bs } with Br traversing all boxes at the leaf level of the receiver tree and Bs traversing all boxes at the root level of the source tree, interpolate p B ,B B ,B c equivalent fields {ḡkjr s } at r ∈ Br ∩ Xr from the equivalent fields {ḡkjr s } at p p B p3 equivalent sources C Br = {rn r }n=1 of all the children level 1 of source tree and 123 the parent level L − 1 of receiver tree: P 3 p B ,B Bsc B p Br Bsc B p ,B c B p iωτ (r;s ) −iωτ (rn ;sc ) ḡ r s (rn r ), XX ḡkjr s (r) = e c L C Br (r; rn r )e kj Bsc n=1 (4.80) for 1 ≤ k, j ≤ 3. 5. Termination. For each box Br at the leaf level of the receiver tree, sum up the equivalent fields over all the boxes of the source tree at the root level, and according to equation (4.63) compute the representative function gkj at r ∈ Br ∩ Xr : X B ,B gkj (r) = ḡkjr s (r), (4.81) Bs for 1 ≤ k, j ≤ 3. To analyze the complexity of the butterfly algorithm, we follow closely the complexity analysis of the that in [50, 56]. Assume that p Chebyshev nodes are chosen in each dimension and also O(n) = O(2L ) points are sampled in each dimension. Then the total complexity of Algorithm 2 is O(24p4 n5/2 + 72p5 n5/2 + 9p4 n3 + n3 log n). 4.2.7 Complexity analysis of the overall algorithm In above section, we see that the overall algorithm consists of two stages. The first stage is preprocessing in which the asymptotic ingredients: traveltimes, dyadic coefficients, and take-off directions for both the S-wave and P-wave, are computed and they are further 124 encoded into a set of tables of Chebyshev coefficients. The second stage is postprocessing in which globally valid Green’s functions are constructed for a given primary source r0 and an arbitrary frequency ω. The two stages can be done on different meshes and are independent of each other, hence we can analyze the computational complexities of the two stages separately. In the following analysis, we will assume that the computational domain is partitioned into P + 1 layers and P secondary-source planes are set up. In the layer containing the primary source, we just need to compute the asymptotic ingredients once. Hence we fo- cus on analyzing the computational complexity of layers in which we need to compute the asymptotic ingredients for all the secondary sources on the secondary-source plane and carry out the matrix-vector products. 4.2.7.1 Preprocessing: computing asymptotic ingredients Noticing that the asymptotic ingredients are independent of the frequency ω, we can compute them on very coarse meshes. Moreover, these ingredients are not only continuous functions away from the source but also continuous functions of the source itself. Therefore, inter- polation not only can be used later to generate asymptotic ingredients on a finer mesh of observation points, but also can be applied to compute asymptotic ingredients for densely sampled secondary sources. Assuming that the computational domain in three dimension is uniformly and coarsely discretized by m3 grid point, which amounts to m sampling points in each dimension. Since 3 the computational domain is partitioned into P + 1 layers, there are roughly O( Pm+1 ) for each layer. And for each plane of P secondary source planes, m2 source points are evenly sampled. Then for each secondary source on that plane, we have to compute the asymptotic 125 ingredients in the corresponding layer. According to [50, 56], we can apply higher-order Lax−Friedriches sweeping method to compute the asymptotic ingredients for both the S- wave and P-wave. Thus the computational cost for those asymptotic ingredients at each 3 secondary source is O( Pm+1 log m). Totally, there are P secondary source planes with m2 sampled points on each plane. Therefore, the overall computational complexity at the whole m2 P secondary sources is m3   O log m · m2 P = O(m5 log m). P +1 Although, the computational complexity seems to be high, these computed asymptotic ingredients can be stored and reused for different frequencies and different primary sources. And in fact, it is this feature that makes our method appealing to many applications. Also, the asymptotic ingredients for each secondary source are independent of each other, we can use MPI in C code to compute different groups of secondary sources simultaneously. On the other hand, to construct the Greens’ functions, the whole computational domain is uniformly discretized by n points in each direction. Thus, we need to recover the tables of 3 asymptotic ingredients on roughly O( Pn+1 ) points in each layer for some specified secondary 3 sources. And this requires complexity of O( Pn+1 ) for each layer and each secondary source; see details in [50]. 4.2.7.2 Postprocessing: constructing global Green’s functions Given a primary source r0 and a frequency parameter ω, a fine mesh is required to capture the highly oscillatory Green’s functions. To estimate the mesh points in each direction, first we need to approximate the minimum wavelength for both S-wave and P-wave by the given 126 refractive indexes and frequency so that the total number of waves can be estimated. Then we need to sample 4-6 points per wave in order to capture the oscillations. Certainly, it does not hurt to take more points per wavelength. Hence the number of mesh points can be chosen to satisfy the above consideration, and it is assumed to be N = n3 with n points in each direction. Correspondingly, the number of points on each secondary source plane can be chosen to be roughly n2 with n points in each direction. Once those asymptotic ingredients are available on this specified mesh inside each layer, the Green’s functions can be constructed by the butterfly algorithm. Given the accuracy ϵ > 0, according to [11], we may choose p = pϵ < O(log2 ( 1ϵ )) for the order of one-dimension Chebyshev nodes in the butterfly algorithm so that the algorithm for computing the sum- mation achieves the accuracy ϵ in O( PN+1 log N ) in each layer, where the prefactor depends only on ϵ and is independent of ω. Therefore, the overall complexity of constructing the Green’s function is by the butterfly algorithm in P layers is O( PP+1 N log N ) = O(N log N ) for a given primary source and a given frequency. To speed up the construction, we use the ‘build-in’ parfor (parallel for) loop in our MATLAB implementation, see details in [56]. 4.3 Numerical examples In the following examples, we first compute the asymptotic ingredients: traveltimes, ampli- tudes, and take-off directions for both S-wave and P-wave in the domain near the primary source on a coarse mesh. When the corresponding mesh is used for computing the asymp- totic ingredients at secondary sources, this coarse mesh will be restricted to a neighborhood of each secondary source. Then the ingredients are compressed into tables represented as Chebyshev coefficients. Thus for all numerical experiments, the asymptotic ingredients are 127 given as the compressed data, and they are recovered onto the finer mesh by the Chebyshev partial summation when needed. The computational domain is discretized into mesh points with roughly 5 points per wavelength in each direction. Unless otherwise stated, all computations were executed in a 20-core Intel Xeon processor with 377 Gbytes of RAM, associated with a bi-processor Intel Xeon Gold 6148 node, at High performance computing center (HPCC) of MSU. The stage 1 was implemented in C codes to obtain all the tables of the asymptotic ingredients which were computed parallelly using MPI for all secondary sources. While the stage 2 was constructed in MATLAB codes and the butterfly algorithm was carried out in parallel in 10 cores via parallel computing toolbox in MATLAB. When the elastic parameters are not constants, the exact solutions of the Green’s func- tions are not available. To validate the sweeping method, we obtain reference solutions by applying the FDTD method [72] directly on the time-domain elastic wave equations. However, due to the limited computing resources, we are only able to compute the FDTD- based solutions at low frequencies, so that the comparison will be only carried out for low frequencies. 4.3.1 Example 1: Constant model In this example, we take ρ = 1, λ = 1, and µ = 1. The computational setup for our asymptotic method is the following: • The computational domain is [0, 2] × [0, 2] × [0, 2]. • The coarse mesh size is 51 × 51 × 51 with grid size h = 0.04. • The source point is (1.0, 1.0, 0.2)T . 128 • The computational domain is partitioned as follows: the first layer containing the primary source is Ω1 = [0, 2] × [0, 2] × [0, 1.4]; one secondary source plane is placed at z = 1.2 and we coarsely sample 51 × 51 equally spaced secondary sources on truncated source domain S1 = [0, 2] × [0, 2] × {z = 1.2}; then the corresponding receiver domain is Ω2 = [0, 2] × [0, 2] × [1.4, 2], which is df = 0.2 wide away from the secondary source plane S1 . In this example, since all elastic parameters are constants, we use the exact solutions to check the accuracy of our numerical solutions. The data tables of the asymptotic ingredients are computed in C codes. Since the asymptotic ingredients for each source are independent of each other, we can compute these data tables for many sources efficiently by using MPI. Once the data tables are available, we construct the Green’s functions in the second layer by using the butterfly algorithm in MATLAB which can be computed parallelly. Five points per wavelength are chosen in the construction stage to capture the highly oscillatory wave in the butterfly algorithm. In Table 4.1, we compute the L∞ error between the numerical solutions of our method, denoted as Gnum , and the exact solutions, denoted as Gexa for the total nine elements of G(r; r0 ) in Ω2 E∞ = ||Gnum − Gexa ||∞ . (4.82) The error was obtained for different frequency Ω and different Chebyshev nodes p used in each dimension. Our numerical solutions meets the expected accuracy O(1/ω). Table 4.2 records the running times of the butterfly-algorithm based Huygens-Kirchhoff summation for computing all nine elements of G(r; r0 ) in Ω2 . The computational time meets the computational complexity O(N log N ) analyzed before, where N is the number of the mesh 129 points in Ω2 . Mesh in Ω2 31 × 31 × 11 61 × 61 × 21 121 × 121 × 41 241 × 241 × 81 ω 6π 12π 24π 48π NPW 5 5 5 5 E∞ (p = 9) 3.18E-2 2.87E-2 3.46E-2 5.34E-2 E∞ (p = 11) 3.18E-2 2.52E-2 1.48E-2 2.75E-2 E∞ (p = 13) 3.19E-2 2.47E-2 1.18E-2 9.1E-3 Table 4.1: Example 1 for the constant parameters. L∞ -norm errors between the numerical solutions of fast Huygens sweeping method and exact solutions. ω: the frequency parameter; NPW: the number of points per wavelength; p: the Chebyshev nodes used in each dimension; E∞ : the L∞ -norm errors between solutions by two different approaches. Mesh in Ω2 31 × 31 × 11 61 × 61 × 21 121 × 121 × 41 241 × 241 × 81 ω 6π 12π 24π 48π NPW 5 5 5 5 TM (p = 9) 57.71 129.35 551.73 3393.2 TM (p = 11) 74.36 195.0 927.02 5452.7 TM (p = 13) 75.47 219.62 1414.6 8206.6 Table 4.2: Example 1 for the constant parameters. Computational time using the butterfly algorithm. ω: the frequency parameter; NPW: the number of points per wavelength; TM (unit: s): CPU time for the construction of total nine elements of the Green’s function for the S-wave in the receiver domain Ω2 by the butterfly algorithm; p: the Chebyshev nodes used in each dimension; E∞ : the L∞ -norm errors between solutions by two different approaches. Figures 4.3, 4.4 and 4.5 show the comparison between the numerical solutions of Huygens sweeping method with Chebyshev order p = 13 and the exact solution at frequency ω = 24π. We can see that our solutions are consistent with the exact solutions. 4.3.2 Example 2: A Gaussian model We take λ = 1 and µ = 1 but variable ρ: (x−1)2 +(y−1)2 +(z−1)2 ρ = 9.0/(3.0 − 1.75e− 0.64 )2 . 130 (a) (b) (c) (d) Figure 4.3: Example 1 with r0 = (1.0, 1.0, 0.2)T and ω = 24π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) butterfly-algorithm−based Huygens sweeping method with p = 13; (b) exact solution. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: exact solution; Black circle: Huygens sweeping solution. Mesh 121 × 121 × 121. In this case, the exact solution is not available, so we compute the FDTD-based solutions as the reference solutions to check the accuracy of our method. The computational setup for our asymptotic methods is as follows: • The computational domain is Ω = [0, 2] × [0, 2] × [0, 2]. • The coarse mesh size is 51 × 51 × 51 with grid size h = 0.04. • The source point is (1.0, 1.0, 0.2)T . • The computational domain is partitioned as follows: the first layer containing the primary source is Ω1 = [0, 2] × [0, 2] × [0, 1.4]; one secondary source plane is placed at z = 1.2 and we coarsely sample 51 × 51 equally spaced secondary sources on truncated 131 (a) (b) (c) (d) Figure 4.4: Example 1 with r0 = (1.0, 1.0, 0.2)T and ω = 24π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) butterfly-algorithm−based Huygens sweeping method with p = 13; (b) exact solution. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: exact solution; Black circle: Huygens sweeping solution. Mesh 121 × 121 × 121. source domain S1 = [0, 2] × [0, 2] × {z = 1.2}; then the corresponding receiver domain is Ω2 = [0, 2] × [0, 2] × [1.4, 2], which is df = 0.2 wide away from the secondary source plane S1 . We use roughly 5 points per wavelength in the construction stage. Table 4.3 records the running time for constructing the Green’s functions G(r, r0 ) in Ω2 using the fast Huygen’s sweeping method. Different Chebyshev nodes are used in each dimension.We can see that as the mesh points are doubled in each dimension, the running time increases by about six times. Figure 4.6 shows the comparison of the numerical solutions of the real part of xx- component of Green’s function computed by two different methods: butterfly-algorithm 132 (a) (b) (c) (d) Figure 4.5: Example 1 with r0 = (1.0, 1.0, 0.2)T and ω = 24π. The real part of xz- component of G(r; r0 ) at y = 1.0 computed via (a) butterfly-algorithm−based Huygens sweeping method with p = 13; (b) exact solution. The detailed comparison of the real part of xz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: exact solution; Black circle: Huygens sweeping solution. Mesh 121 × 121 × 121. based Huygens sweeping method with order p = 13, and the FDTD method at frequency ω = 10π. The comparison of the numerical solutions for zz- components of the Green’s functions by these two methods are shown in Figure 4.7. In addition, we construct the Green’s functions at ω = 20π as shown in Figure 4.8 by using fast Huygens sweeping method while the FDTD method requires finer meshes which makes it impossible to compute the solutions. 133 Mesh in Ω2 61 × 61 × 21 121 × 121 × 41 241 × 241 × 81 337 × 337 × 105 ω 5π 10π 20π 80/3π NPW 5 5 5 5 TM (p = 9) 176.89 649.35 3716.7 4058.7 TM (p = 11) 264.23 1205.3 6168.0 7460.5 TM (p = 13) 220.84 1369.0 7931.5 8174.2 Table 4.3: Example 2 for the Gaussian model. Computational time using the butterfly algorithm. ω: the frequency parameter; NPW: the number of points per wavelength; TM (unit: s): CPU time for the construction of total nine elements of the Green’s function for the S-wave in the receiver domain Ω2 by the butterfly algorithm; p: the Chebyshev nodes used in each dimension; E∞ : the L∞ -norm errors between solutions by two different approaches. 4.3.3 Example 3: A Gaussian model We take ρ = 9 but variable λ and µ. Here we set λ = µ and (x−1.0)2 +(y−1)2 +(z−1)2 − µ = (3.0 − 1.75e 0.64 )2 . In this example, we compute the FDTD-based solution to check the accuracy of our method. The computational setup for our asymptotic method is as the following: • The computational domain is Ω = [0, 2] × [0, 2] × [0, 2]. • The coarse mesh size is 51 × 51 × 51 with grid size h = 0.04. • The source point is (0.8, 1.0, 0.2)T . • The computational domain is partitioned as follows: the first layer containing the primary source is Ω1 = [0, 2] × [0, 2] × [0, 1.4]; one secondary source plane is placed at z = 1.2 and we coarsely sample 51 × 51 equally spaced secondary sources on truncated source domain S1 = [0, 2] × [0, 2] × {z = 1.2}; then the corresponding receiver domain is Ω2 = [0, 2] × [0, 2] × [1.4, 2], which is df = 0.2 wide away from the secondary source plane S1 . 134 (a) (b) (c) (d) Figure 4.6: Example 2 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of xx-component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. We use four points per wavelength to capture the wave in butterfly algorithm. Figure 4.9, 4.10, and 4.11 shows the comparison of the numerical solutions of the real part of xx-, zz- , and xz- components of the Green’s functions computed by two different methods: the Huygens sweeping method with order p = 13, and the FDTD method at frequency ω = 12π. The numerical solutions of the Huygens sweeping method are consistent with the FDTD solutions. 135 (a) (b) (c) (d) Figure 4.7: Example 2 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of zz-component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD solution. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. 4.3.4 Example 4: A waveguide model We take ρ = 1 but variable λ and µ. Here we set λ = µ and 2 2 2 µ = (1.0 − 0.5e−6((x−1) +(y−1) ) ) . In this example, we have the following setup: • The computational domain is Ω = [0, 2] × [0, 2] × [0, 1.6]. • The coarse mesh size is 51 × 51 × 41 with grid size h = 0.04. • The source point is (1.0, 1.0, 0.2)T or (0.8, 1.0, 0.12)T . 136 (a) (b) Figure 4.8: Example 2 with r0 = (1.0, 1.0, 0.2)T and ω = 20π. The real part of (a): xx- and (b): zz- component of G(r; r0 ) at y = 1.0 computed by the Huygens sweeping method with p = 13. Mesh 241 × 241 × 241. • The computational domain is partitioned as follows: the first layer containing the primary source is Ω1 = [0, 2] × [0, 2] × [0, 0.8]; two secondary source planes are placed at z = 0.6 and z = 1.0, and we coarsely sample 51×51 equally spaced secondary sources on truncated source domains S1 = [0, 2]×[0, 2]×{z = 0.6} and S2 = [0, 2]×[0, 2]×{z = 1.0}; then the corresponding receiver domains are Ω2 = [0, 2] × [0, 2] × [0.8, 1.2] and Ω3 = [0, 2] × [0, 2] × [1.2, 1.6] which are df = 0.2 wide away from the secondary source planes S1 and S2 , respectively. The exact solution for this example is not available, so we use the FDTD method to ob- tain a reference solution. Approximately 5 points per wavelength is used in butterfly algo- rithm. First, we construct the numerical solutions of the Green’s functions at the source (1.0, 1.0, 0.2)T and at frequency ω = 10π by the fast Huygens sweeping method with order p = 13. The comparison with FDTD method solutions of xx- and zz- components of the Green’s functions are shown in Figures 4.12 and 4.13, respectively. Next, we use the same data tables for all secondary sources to compute the Green’s functions in the receiver domain Ω2 and Ω3 for a different source (0.8, 1.0, 0.2)T and different frequency ω = 12π. The comparison between the solutions of our method and FDTD 137 (a) (b) (c) (d) Figure 4.9: Example 3 with r0 = (0.8, 1.0, 0.2)T and ω = 12π. The real part of xx-component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. solutions are given in Figure 4.14 and 4.15. The numerical solutions of our method are consistent with the FDTD solutions. In addition, we construct the Green’s functions at higher frequency ω = 20π as shown in Figure 4.8 by the Huygens sweeping method. 138 (a) (b) (c) (d) Figure 4.10: Example 3 with r0 = (0.8, 1.0, 0.2)T and ω = 12π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b): 401 × 401 × 401. 139 (a) (b) (c) (d) Figure 4.11: Example 3 with r0 = (0.8, 1.0, 0.2)T and ω = 12π. The real part of xz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 121; mesh in (b):401 × 401 × 401. 140 (a) (b) (c) (d) Figure 4.12: Example 4 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=1.0, y=1.0 and (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 101 × 101 × 81; mesh in (b): 401 × 401 × 321. 141 (a) (b) (c) (d) Figure 4.13: Example 4 with r0 = (1.0, 1.0, 0.2)T and ω = 10π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=1.0, y=1.0 an (d): line x =0.8, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 101 × 101 × 81; mesh in (b): 401 × 401 × 321. 142 (a) (b) (c) (d) Figure 4.14: Example 4 with r0 = (0.8, 1.0, 0.12)T and ω = 12π. The real part of xx- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of xx-component of G(r; r0 ) at (c): line x=0.8, y=1.0 and (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 97; mesh in (b): 401 × 401 × 321. 143 (a) (b) (c) (d) Figure 4.15: Example 4 with r0 = (0.8, 1.0, 0.12)T and ω = 12π. The real part of zz- component of G(r; r0 ) at y = 1.0 computed via (a) the Huygens sweeping method with p = 13; (b) FDTD method. The detailed comparison of the real part of zz-component of G(r; r0 ) at (c): line x=0.8, y=1.0 an (d): line x =1.2, y=1.0. Red solid line: FDTD solution; Black circled line: solution of the Huygens sweeping method. Mesh in (a): 121 × 121 × 97; mesh in (b): 401 × 401 × 321. (a) (b) Figure 4.16: Example 4 with r0 = (1.0, 1.0, 0.2)T and ω = 20π. The real part of (a): xx- and (b): zz- component of G(r; r0 ) at y = 1.0 computed by the Huygens sweeping method with p = 13. Mesh 201 × 201 × 161. 144 Chapter 5 Eulerian partial-differential-equation methods for complex-valued eikonals in attenuating media This chapter is based on a modified version of the published work in [27]. We propose a unified framework to eulerianize several popular real-space Lagrangian ray-tracing methods so that we can develop efficient Eulerian partial-differential-equation methods for computing complex-valued eikonals, where the real and imaginary parts of the eikonal function describe wave propagation and attenuation effects, respectively. We first introduce the methodologies for computing the complex-valued traveltimes. Then, we apply the proposed algorithm to several attenuation models to demonstrate the performance and accuracy of the method. 145 5.1 High-order numerical methods for computing complex- valued traveltimes 5.1.1 Eulerian PDE framework for complex-valued traveltimes The correspondence principle indicates that we can treat wave propagation in a viscoelastic (or viscoacoustic) medium as wave propagation through an elastic (or acoustic) medium with complex-valued elastic parameters (or a complex-valued velocity). To model wave motion in such a medium efficiently, high-frequency asymptotic approximations provide an effective alternative to direct numerical methods. One of the essential ingredients for high-frequency asymptotics of viscous wave motion is the complex-valued eikonal function. We propose a unified Eulerian framework to compute complex-valued eikonal functions for several popular high-frequency asymptotic models of viscous wave motions. We assume that the complex-valued eikonal function τ consists of the real part T and the imaginary part T ∗ which satisfy the following eikonal and advection equation, respectively, 1 |∇T | = , T (xs ) = 0, (5.1) v(x) 1 ∇T · ∇T ∗ = 2 , T ∗ (xs ) = 0, (5.2) v (x)Q(x) where x is the real-valued position vector, v(x) is the real-valued reference velocity, and Q(x) is a quality-factor related real-valued function. Assuming that there is a unique ray connecting any source to any receiver, we put three popular asymptotic models into our framework. As we can see, provided that we choose an appropriate reference velocity and an appropriate quality-factor related function, our 146 framework is applicable to both weakly and strongly attenuating media. 5.1.2 Case (1): Viscoacoustic ray tracing and Eulerian equations Wave motion in a viscoacoustic medium can be characterized as wave propagation through an acoustic medium with a complex-valued velocity. The complex-valued velocity is given in terms of the real acoustic velocity c0 and the quality factor q, the latter representing the attenuation. If the attenuation is small (q −1 << 1, the weakly attenuating approximation), then an appropriate definition of the complex-valued velocity c is,    1 i 1 ω c(x) = c0 (x) 1 + + ln , (5.3) 2 q(x) π ω0 where ω is the angular frequency, ω0 is a reference angular frequency, and the dispersive term in the real part of the velocity ensures causality of solutions to the wave equation [1]. If q −1 << 1, then to the first-order approximation in q −1 , the ray paths defined in the high-frequency approximation by the real acoustic velocity c0 can be considered to be unaffected by attenuation and remain unchanged during the viscoacoustic wave motion, but the traveltime function becomes complex-valued and frequency-dependent due to the attenuation effect, which takes the following form by the Futterman’s dispersion relation [22, 23, 16, 36], T ∗ (x)   1 ω Tc (x) = T (x) − T ∗ (x) ln −i , (5.4) π ω0 2 147 where Z 1 T (x) = ds, (5.5) ray c0 (x) Z ∗ 1 T (x) = ds. (5.6) ray c0 (x)q(x) Here T is the traveltime in acoustic media from the source xs to x, and it satisfies the following eikonal equation, 1 |∇T (x)| = ; (5.7) c0 (x) the arc-length integrations in equations (5.5) and (5.6) are over the same ray path connecting the source xs to x defined by the real acoustic velocity c0 . The ray path can be either determined by the Fermat principle or implicitly defined by solving the eikonal equation (5.7). Since the directional derivative along the ray path defined by equation (5.7) is [45], ∂ = c0 (x)∇T (x) · ∇, (5.8) ∂s we can take the directional derivative along the ray path on both sides of equation (5.6) to have the following advection equation for T ∗ , 1 ∇T (x) · ∇T ∗ (x) = 2 . (5.9) c0 (x)q(x) This corresponds to our case that v(x) = c0 (x) and Q(x) = q(x) in equations (5.1) and (5.2). 148 5.1.3 Case (2): Real viscoelastic ray tracing and Eulerian equa- tions Wave motion in a viscoelastic medium can be described by a real-valued density ρ of the medium, complex-valued and frequency-dependent Lamé elastic coefficients λ and µ, and a real-valued angular frequency. The real parts, λR and µR , describe elastic properties of the medium, and the imaginary parts, λI and µI , describe attenuation. The velocities for P- and S- waves, s r λ + 2µ µ cp = , cs = , (5.10) ρ ρ are complex-valued and frequency-dependent. The strength of attenuation is evaluated using the quality factor for P- and S- waves [14], λR + 2µR (c2p )R µR (c2 )R qp = − I = − , qs = − I = − s2 I . (5.11) λ + 2µI (c2p )I µ (cs ) [75, 76] proposed to solve the P- and S- wave complex-valued eikonal equations using real ray-tracing methods, and he derived such methods by modifying the Hamiltonians for viscoelastic media to keep rays as trajectories in real space. The resulting real viscoelastic ray tracing equations in isotropic media are [75], dx dp 1 dτ I cI = V 2 p, = − ∇V, = − , (5.12) dτ R dτ R V dτ R cR where p is the slowness vector; τ R and τ I are the real and imaginary parts of the complex eikonal, respectively; cR and cI are the real and imaginary parts of the complex velocity, respectively; V is the real-valued ray velocity calculated from the complex-valued phase 149 velocity, 1 (cR )2 + (cI )2 V = = , (5.13) (c−1 )R cR with c = cp or c = cs for the P- or S- wave, respectively. The real part of the complex-valued eikonal, τ R , of the ray tracing system in equation 5.12 satisfies the following eikonal equation, 1 |∇τ R | = . (5.14) V (x) The imaginary part of the complex-valued eikonal τ I takes the following integration form, cI (x) Z τ I (x) = − ds, (5.15) ray V (x)cR (x) Similar to the viscoacoustic ray tracing case, using the directional derivative defined by equation (5.14) to take the directional derivative along the ray path on both sides of equation (5.15), we can have the following advection equation for the imaginary part of the complex- valued eikonal, τ I , cI (x) ∇τ R · ∇τ I = − 2 . (5.16) V (x)cR (x) cR (x) This corresponds to our case that T = τ R , T ∗ = τ I , v(x) = V(x) and Q(x) = − I in c (x) equations (5.1) and (5.2). 5.1.4 Case (3): Real elastic ray tracing and Eulerian equations In the real elastic ray-tracing theory, a viscoelastic medium is considered as the perturbation of a perfectly elastic medium so that the rays are traced in the elastic reference medium and 150 the effects of attenuation are calculated by first-order perturbations. The resulting real elastic ray-tracing equations are [16] dx dp 1 dτ I 1 = V02 p, = − ∇V0 , = , (5.17) dτ R dτ R V0 dτ R 2q where V0 is the real-valued reference velocity in the reference elastic medium. [23] take the weakly attenuating approximation and ignore (cI )2 in equation (5.13), V0 becomes V 0 = cR , (5.18) with cR = (cp )R and q = qp or cR = (cs )R and q = qs for the P- or S- wave, respectively. Similar to the real viscoelastic ray tracing case, we can have the following eikonal and advection equations for the real part, τ R , and the imaginary part, τ I , of the complex-valued eikonal, respectively, 1 |∇τ R | = , (5.19) V0 (x) 1 ∇τ R · ∇τ I = . (5.20) 2q(x)V02 (x) This corresponds to our case that T = τ R , T ∗ = τ I , v(x) = V0 (x) and Q(x) = 2q(x) in equations (5.1) and (5.2). 5.1.5 Factorized Eulerian PDEs Finite-difference schemes to the point-source eikonal equation (5.1) is widely used [77, 73, 55, 67, 61], but without proper treatment of the point-source singularity, most of these schemes only yield low accuracy near the source point [61]. Such initial errors at the source will spread 151 out to the entire computational domain due to the upwind nature of these schemes [61]. Adaptive refinement near the source [61] and factorizing out the point-source singularity explicitly from the point-source eikonal [54, 85, 20, 48, 50, 45, 64] provide two effective strategies for treating this singularity. Moreover, comparing equation (5.2) to equation (5.1), we realize that the imaginary part of the complex eikonal shares a similar singularity with the real part of the complex eikonal so that we will apply the factorization idea as well to the advection equation to treat the source singularity. We adopt a multiplicative factorization [54, 85, 20, 48, 45, 64] to the real part of the complex eikonal, T (x) = τ0 (x)τ1 (x), (5.21) where τ0 is the analytic traveltime function for a known homogeneous velocity model which captures the source singularity, and the unknown factor τ1 is computed from a finite- difference scheme. The analytic factor τ0 is taken to be, |x − xs | τ0 (x) = , (5.22) vs where vs is the velocity at the source location, and this choice corresponds to the first-order factorization [64, 45]. Inserting equation 5.21 into equation (5.1), we obtain the factored eikonal equation, 1 τ02 (x)|∇τ1 (x)|2 + 2τ0 (x)τ1 (x)∇τ0 (x) · ∇τ1 (x) + τ12 (x)|∇τ0 (x)|2 = . (5.23) v 2 (x) Once the gradient of the real part of the complex eikonal, ∇T (x), is available, we can use it as coefficients in the advection equation to compute the imaginary part of the com- 152 plex eikonal. To treat the source singularity, we apply a multiplicative factorization to the imaginary part, T ∗ (x) = T (x)T1∗ (x), (5.24) where T is the (just computed) real part of the complex eikonal capturing the source singu- larity, and the unknown perturbation factor T1∗ is computed by a finite-difference scheme. We remark in passing that, to capture the source singularity, we use T , which is solely re- lated to the velocity, rather than Q, the reciprocal of which, Q−1 , may be zero near source; the reason is that the Q-based factorization may render T ∗ to be zero everywhere, which is ineffective. Following [64], we also derive the high order factorization in the Appendix. Here we use the first-order factorization. Inserting equation (5.24) into equation (5.2), we obtain the factored advection equation, 1 T (x)∇T (x) · ∇T1∗ (x) + T1∗ (x)(∇T (x))2 = . (5.25) v 2 (x)Q(x) Once the factorized Eulerian PDEs are derived, we can design finite-difference schemes to solve these equations. 5.1.6 Third-order LxF-WENO sweeping method We will apply a third-order LxF-WENO sweeping method [34, 87, 64] to solve the factored eikonal equation (5.23), where high-order WENO approximations [31, 64] are essential to the success of the sweeping scheme. The third-order WENO scheme will yield real parts of the complex eikonal with high-order accuracy so that the numerical gradient ∇T (x) is also of high-order accuracy. Once the high-order accurate real part of the complex eikonal 153 is obtained, we can use it as coefficients in the factored advection equation (5.25) so that a third-order LxF-WENO sweeping method can be applied to solve equation (5.25). The LxF sweeping method [34, 87] offers a versatile and powerful approach for solving generic isotropic and anisotropic eikonal equations, such as quasi-P [60, 62] and quasi-S wave eikonal equations. To save space, we will only discuss 2-D discretizations of equation (5.25), and similar strategies apply to the discretization of equation (5.23) [64]. The extension to the 3-D case is not difficult. To apply the LxF sweeping scheme to equation (5.25), we rewrite the equation into the following form, H(x, z, T1∗ , p∗1x , p∗1z ) = f, (5.26) ∂T ∗ ∂T ∗ where p∗1x = ∂x1 , p∗1z = ∂z1 , and the functions H and f are defined by, H(x, z, T1∗ , p∗1x , p∗1z ) = T (x)∇T (x) · ∇T1∗ (x) + T1∗ (x)(∇T (x))2 , (5.27) 1 f= 2 . (5.28) v (x)Q(x) The third-order LxF-WENO sweeping method for T1∗ is defined by the following steps. (1) Initialization. The initialization is done by assigning values at a few grid points centered at the source point. In the Appendix, we provide a systematic high-order factor- ization for computing T1∗ . Here we use the first-order factorization to assign these values. These values are fixed during iterations. (2) Iterations. Since T1∗ is computed by a third-order WENO scheme, we will use grid indexing (i.e., (i, j)) instead of spatial coordinates to demonstrate the iteration process. The LxF sweeping method computes T1∗ via Gauss-Seidel iteration with four alternating 154 directions, 1) i = 1 : 1 : I and j = 1 : 1 : J; 2) i = 1 : 1 : I and j = J : −1 : 1; 3) i = I : −1 : 1 and j = 1 : 1 : J; 4) i = I : −1 : 1 and j = J : −1 : 1, where i and j are the indices for the x and z coordinate, respectively, and I and J are the total number of grid points in the x and z direction, respectively. At a grid point (i, j), the Lax-Friedrichs Hamiltonian [53, 34] allows us to obtain a new value T1∗new from old values T1∗old in the following way,   1 T1∗new (i, j) = αx αz dx + dz T1∗ (i + 1, j) − T1∗ (i − 1, j) T1∗ (i, j + 1) − T1∗ (i, j − 1)    ∗old f (i, j) − H i, j, T1 (i, j), , 2dx 2dz T ∗ (i + 1, j) + T1∗ (i − 1, j) T ∗ (i, j + 1) + T1∗ (i, j − 1)  +αx 1 + αz 1 , 2dx 2dz (5.29) where dx and dz are the grid sizes in the x and z direction, respectively, and αx and αz are artificial viscosities in the x and z direction, respectively. Following [87, 64, 45], we choose the following artificial viscosities,   ∂H ∂H αx = max + , (5.30) Ω ∂p∗1x ∂T1∗   ∂H ∂H αz = max + , (5.31) Ω ∂p∗1z ∂T1∗ where Ω is the entire computational domain. Following [87], we carry out the following replacement in equation 5.29 to introduce the third-order WENO approximation into the 155 sweeping iteration, T1∗ (i + 1, j) = T1∗old (i, j) + dx(p∗1x (i, j))+ , (5.32) T1∗ (i − 1, j) = T1∗old (i, j) − dx(p∗1x (i, j))− , (5.33) T1∗ (i, j + 1) = T1∗old (i, j) + dz(p∗1z (i, j))+ , (5.34) T1∗ (i, j − 1) = T1∗old (i, j) − dz(p∗1z (i, j))− , (5.35) where (p∗1x (i, j))+ and (p∗1x (i, j))− are third-order upwind WENO approximations of p∗1x (i, j), and (p∗1z (i, j))+ and (p∗1z (i, j))− are third-order upwind WENO approximations of p∗1z (i, j) [31]. (p∗1x (i, j))− and (p∗1x (i, j))+ are defined as the following,  ∗ T1 (i + 1, j) − T1∗ (i − 1, j)  (p∗1x (i, j))− =(1 − β− ) + 2dx ! (5.36) 3T1∗old (i, j) − 4T1∗ (i − 1, j) + T1∗ (i − 2, j) β− , 2dx 1 ε + (T1∗old (i, j) − 2T1∗ (i − 1, j) + T1∗ (i − 2, j))2 β− = , γ− = , (5.37) 1 + 2γ− 2 ε + (T1∗ (i + 1, j) − 2T1∗old (i, j) + T1∗ (i − 1, j))2  ∗ T1 (i + 1, j) − T1∗ (i − 1, j)  (p∗1x (i, j))+ =(1 − β+ ) + 2dx ! (5.38) −3T1∗old (i, j) + 4T1∗ (i + 1, j) − T1∗ (i + 2, j) β+ , 2dx 1 ε + (T1∗old (i, j) − 2T1∗ (i + 1, j) + T1∗ (i + 2, j))2 β+ = , γ+ = ; (5.39) 1 + 2γ+ 2 ε + (T1∗ (i + 1, j) − 2T1∗old (i, j) + T1∗ (i − 1, j))2 similarly, we can define (p∗1z (i, j))− and (p∗1z (i, j))+ . 156 (3) Convergence. If the following condition is satisfied, |T1∗new (i, j) − T1∗old (i, j)| ≤ δ, (5.40) the iteration converges and we terminate the iteration, where δ is a pre-defined threshold value. Once T1∗ is computed, the imaginary part is available from equation 5.24. Comparing with a first-order scheme, a high-order scheme can yield corresponding numerical derivatives with high-order accuracy in the Eulerian PDEs. Therefore, to achieve a certain specified accuracy, a high-order scheme just need to use a much coarser mesh than a first-order scheme does [61, 50]; since the number of grid points is greatly reduced, the computational cost can be reduced [61, 50]. This consideration justifies our choice of using a high-order WENO scheme here. 5.2 Numerical examples 5.2.1 Eulerian examples for viscoacoustic ray tracing To begin with, we apply our proposed algorithm to four cases of the viscoacoustic attenuating model, where the model is prescribed by a real-valued acoustic velocity and a real-valued quality factor. For the first case, we choose a velocity v with a constant vertical gradient. The velocity model is specified by v = 2000.0 + 0.5z (m/s). The Q model is homogeneous with Q = 50. Since [16] provides an analytic solution of the eikonal equation (5.1) for this constant-gradient velocity model, we may use this solution to validate our algorithm for the eikonal equation. 157 Moreover, since the Q model is homogeneous, the exact solution of the advection equation (5.2) can be obtained by dividing the exact traveltime by the Q value according to equations (5.5) and (5.6). The model dimension is 5km in depth and 5km laterally. One advantage of high-order WENO approximations is its high accuracy, which allows us to solve the eikonal and advection equations using large grid sizes. Therefore, we use a grid size of 50m in both x and z directions. The total number of grids is 101 × 101. We place a source at x = 2500m and z = 0m. Figures (5.1)a and (5.1)b show the computed real and imaginary parts of the complex eikonal for the first attenuating model, respectively. To validate their accuracies, we compare numerical solutions with corresponding analytic solutions, as shown in Figures (5.1)c and (5.1)d. The errors in the computed real part are of a magnitude of 10−6 , which is much smaller than a time sampling interval, such as 1ms of a typical seismic record. The errors in the imaginary part of the complex eikonal are of a magnitude of 10−7 , which also is quite accurate. This shows that the proposed method yields highly accurate complex eikonals under the weakly attenuating approximation for this case. In the second case, the velocity model as shown in Figure (5.2)a is extracted from the BP TTI velocity model. We further construct a Q model according to the extracted velocity model: we fill the zone of low velocity in the shallow region with low Q values to simulate the gas cloud, and we set the Q value in other places to be 10000 (as shown in Figure (5.2)b). Note that in displaying Figure (5.2)b, we clip the maximum Q value to 100. The model dimension is 8km in depth and 10km laterally. The grid size is 50m in both x and z directions. The total number of grid points is 201 × 161. The source is located at x = 5000m and z = 0m. The proposed method is used to compute the real and imaginary parts of the complex eikonal, as shown in Figure (5.3). The imaginary part of the eikonal in Figure (5.3)b shows that only ray paths passing through the gas cloud suffer from dispersion and 158 a) X(m) b) X(m) 0 2000 4000 0 2000 4000 0 0 Imaginary part(s) 1.5 0.03 Real part(s) Depth(m) 2000 2000 1.0 0.02 0.5 Depth(m) 0.01 4000 4000 0 0 c) X(m) d) X(m) 0 2000 4000 0 2000 4000 0 0 Error of imaginary part(s) 1.5 Error of real part(s) 6 Depth(m) Depth(m) 2000 1.0 2000 4 2 0.5 4000 4000 0 0 x10 -6 x10-7 Figure 5.1: The real and imaginary parts of the complex-valued eikonal for the constant gradient velocity model. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution under the weakly attenuating approximation. absorption, where the maximum value of the imaginary part is about 5ms. This demonstrates the strong seismic attenuation below the gas cloud. Since in this inhomogeneous attenuating model we do not have an analytic solution to validate the result, we use the wavefield snapshot obtained by a finite-difference wavefield extrapolator to validate the real part of the complex eikonal. The wavefield snapshot is obtained on a grid with mesh size of 10m in both x and z directions. Figure (5.4) is the wavefield snapshot overlaid by the contour of the computed real part of the eikonal at 3s, where the red curve is the contour of the real part. Since the contour of the real part matches well with the first-arrival wavefront in the wavefield snapshot, this demonstrates that the real part of the eikonal is highly accurate, even though it is computed on a grid of relatively large mesh size. To validate the computed imaginary part, we carry out ray tracings with a fourth order Runge-Kutta ODE integrator to obtain imaginary parts along two ray paths, where two black curves shown in Figure (5.2)a pass 159 through the gas cloud. Here the ray tracing is performed on a fine grid with mesh size of 10m. We use a nonlinear interpolation method to obtain imaginary parts along these two ray paths from the result in Figure (5.3)b. The comparison between the imaginary parts obtained by the proposed method and the ray tracing method is shown in Figure (5.5), and the two results match well. This shows that the imaginary part obtained by the proposed method is highly accurate under the weakly attenuating approximation. In addition, Figure (5.5) also shows that the attenuation increases rapidly as seismic rays pass through the gas cloud. a) X(m) x104 0 0.2 0.4 0.6 0.8 0 4500 2000 4000 Velocity(m/s) 3500 Depth(m) 4000 3000 2500 6000 2000 1500 8000 b) X(m) 4 x10 0 0.2 0.4 0.6 0.8 0 100 2000 90 Depth(m) 80 4000 Q 70 6000 60 50 8000 Figure 5.2: An attenuation model with gas cloud. (a) The acoustic velocity, (b) Q. Two black curves in (a) are two ray paths with takeoff angles being 0◦ and 20◦ . In the third case, we build an attenuating model based on a land scenario, where the velocity and Q models are shown in Figure (5.6). In the Q model, the Q value is very low in the shallow area to simulate strong attenuation caused by the near-surface region. 160 a) X(m) x104 0 0.2 0.4 0.6 0.8 0 3.5 2000 3.0 2.5 Depth(m) Real part(s) 2.0 4000 1.5 1.0 6000 0.5 0 8000 b) X(m) 4 x10 0 0.2 0.4 0.6 0.8 0 0.005 2000 Imaginary part(s) 0.004 Depth(m) 0.003 4000 0.002 6000 0.001 0 8000 Figure 5.3: The real and imaginary parts of the complex-valued eikonal for the gas clouded attenuating model. (a) Real part; (b) Imaginary part. The model dimension is 5km in depth and 5km laterally. The grid size is 50m in both x and z directions. The total number of mesh points is 101 × 101. The source is located at x = 2500m and z = 0m. Figure (5.7) shows the computed real and imaginary parts of the complex eikonal by the proposed method. The maximum value of the imaginary part in Figure (5.7)b is about 30ms, which shows a very strong attenuation due to the low Q zone in the near-surface region. To validate the result, we also use a wavefield snapshot and a ray-tracing result on a fine grid of mesh size of 10m. Figure (5.8) is the wavefield snapshot overlaid by the contour of the real part at 2s, where the contour matches well with the first- arrival wavefront in the wavefield snapshot. Figure 5.9 shows the comparison between the imaginary parts obtained by the proposed method and the ray-tracing method along two ray paths as shown in Figure (5.6)a, and these two results match well. This demonstrates that 161 X(m) 2000 4000 6000 8000 0 2000 Depth(m) 4000 6000 8000 Figure 5.4: Wavefield snapshot overlaid by the contour of the real part at 3s. The red curve is the contour of the real part. the proposed method produces highly accurate complex eikonals under weakly attenuating approximation. In the fourth case, we show a 3-D example. We build a 3-D inhomogeneous attenuating model with velocity and Q varying vertically. The velocity and Q models are specified by v = 1500.0 + 0.5z (m/s) and Q = 50 + 0.016z, respectively. The model dimension is 5km in the x-, y- and z- directions. The grid size is 50m in the x-, y- and z- directions. The total number of mesh points is 101 × 101 × 101. The source is located at x = 2500m, y = 2500m and z = 0m. Figure (5.10) shows the computed real and imaginary parts of the complex eikonal by the proposed method. This demonstrates that the proposed method performs well in 3-D applications. 5.2.2 Eulerian examples for real-elastic and real-viscoelastic ray tracing We now apply our proposed real-elastic and viscoelastic Eulerian PDE methods to a partic- ular velocity-attenuation model in [76], which is smoothly inhomogeneous with a constant 162 a) 0.004 Imaginary part(s) 0.002 0 0 2000 4000 Ray length(m) b) 0.004 Imaginary part(s) 0.002 0 0 2000 4000 Ray length(m) Figure 5.5: Comparison between the imaginary parts obtained by the Eulerian PDE method and the ray-tracing method for the gas clouded attenuating model. The imaginary part for rays with (a) 0◦ and (b) 20◦ takeoff angle. The red curve and blue dotted curve are the imaginary parts obtained by the ray tracing method and the Eulerian PDE method, respectively. gradient of the square of the complex slowness. The model is specified in the following way, c−2 (x) = v0−2 + Ax x + Az z, (5.41) where v0 is the background velocity, Ax and Az are gradients in the x and z direction, respectively. This complex velocity can also be converted into v and Q in equations (5.1) and (5.2) accordingly. [76] also proposes an analytic solution of the complex eikonal to this model by using complex ray tracing. In our computation, we set the model dimension to be 4km in depth and 10km laterally. We choose the grid size to be 50m in both x and z directions, so that the total number of mesh points is 81 × 201. The source is located at x = 0m and z = 0m. We consider two 163 a) X(m) 0 1000 2000 3000 4000 5000 0 3200 1000 3000 Velocity(m/s) 2000 2800 Depth(m) 2600 2400 3000 2200 2000 4000 1800 5000 b) X(m) 0 1000 2000 3000 4000 5000 0 180 1000 160 140 Depth(m) 2000 120 Q 3000 100 80 4000 60 5000 Figure 5.6: The attenuation model for a land scenario. (a) Acoustic velocity; (b) Q. Two black curves in (a) are two ray paths with takeoff angles being 0◦ and 20◦ . cases, Case A and Case B. In Case A, v0 = 1km/s, Ax = 0.1i, Az = 0.0, and the complex velocity is shown in Figure (5.11). This model is relatively simple with only lateral gradient along the x direction, but its quality factor can take a value as low as 1, which represents strong attenuation. Figures (5.12) and (5.13) are the real and imaginary parts of the complex eikonal computed by our real-elastic and real-viscoelastic Eulerian methods, respectively. To validate these computed results, we also compute their differences with the corresponding analytic solution. Note that we denote these differences according to the relative errors to make them comparable to those in [76]. The differences in Figures (5.12) and (5.13) show that the errors from the real- viscoelastic Eulerian method are less than 0.2%, and the real-viscoelastic Eulerian method yields higher accuracy than the real-elastic Eulerian method in this strongly attenuating 164 a) X(m) 0 1000 2000 3000 4000 5000 0 1000 2.0 Depth(m) Real part(s) 2000 1.5 1.0 3000 0.5 4000 0 5000 b) X(m) 0 1000 2000 3000 4000 5000 0 1000 0.025 Imaginary part(s) 0.020 Depth(m) 2000 0.015 3000 0.010 0.005 4000 0 5000 Figure 5.7: The real and imaginary parts of the complex-valued eikonal for the land atten- uating model. (a) Real part and (b) Imaginary part. model. The differences in Figures (5.12) and (5.13) are also comparable to those in [76], which show that the proposed methods can produce results comparable to those from the corresponding ray tracing methods. In Case B, v0 = 1km/s, Ax = 0.1i, Az = −0.15, and the complex velocity is shown in Figure (5.14). This model becomes more complicated due to non-zero gradients in both x and z directions, and it also represents strong attenuation. Figures (5.15) and (5.16) show the real and imaginary parts of the complex-valued eikonal computed by the real-elastic and real-viscoelastic Eulerian methods, respectively. We also compute their differences with the corresponding analytic solutions. Similarly, in comparison with the solution provided by the exact complex ray-tracing, the real-viscoelastic Eulerian method yields higher accuracy than the real-elastic Eulerian method. Comparing the errors in Case B to those in Case A, we 165 X(m) 0 1000 2000 3000 4000 5000 0 1000 2000 Depth(m) 3000 4000 5000 Figure 5.8: Wavefield snapshot overlaid by the contour of the real part at 2s. The red curve is the contour of the real part. can conclude that the approximation error due to the real-space modeling increases as the model complexity in attenuation increases. The differences in Figures (5.15) and (5.16) are also comparable to those in [76], which show that the proposed methods can produce results comparable to those from the corresponding ray tracing methods. 166 a) 0.02 Imaginary part(s) 0.01 0 0 2000 4000 Ray length(m) b) 0.02 Imaginary part(s) 0.01 0 0 2000 4000 Ray length(m) Figure 5.9: Comparison between the imaginary parts obtained by the Eulerian PDE method and the ray tracing method for the land attenuating model. The imaginary parts for rays with (a) 0◦ and (b) 20◦ takeoff angle. The red curve and blue dotted curve are the imaginary parts obtained by the ray tracing method and the Eulerian PDE method, respectively. a) 0 2.0 Depth(m) Real part(s) 2000 1.5 4000 1.0 4000 0.5 4000 Y(m) 2000 2000 X(m) 0 0 0 0.04 b) Imaginary part(s) 0 Depth(m) 0.03 2000 0.02 4000 0.01 4000 4000 Y(m) 2000 2000 X(m) 0 0 0 Figure 5.10: The real and imaginary parts of the complex-valued eikonal for the 3-D model. (a) Real part and (b) Imaginary part. 167 a) X(m) 4 x10 0 0.2 0.4 0.6 0.8 0 1000 Velocity(m/s) 950 Depth(m) 900 2000 850 800 4000 b) X(m) 4 x10 0 0.2 0.4 0.6 0.8 0 0 Depth(m) Velocity(m/s) -100 2000 -200 -300 4000 Figure 5.11: (a) Real and (b) Imaginary parts of the complex velocity in Case A. X(m) b) 4 a) x104 X(m) x10 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 Imaginary part(s) 0 0 3 Depth(m) Real part(s) 10 2 2000 5 2000 1 Depth(m) 0 0 4000 4000 c) X(m) 4 d) X(m) 4 x10 x10 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Relative error(%) 0 0 Relative error(%) 20 Depth(m) 6 15 4 2000 2000 Depth(m) 10 2 5 0 0 4000 4000 Figure 5.12: The complex-valued eikonal for the real-elastic Eulerian PDE method in Case A. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. 168 a) X(m) 4 b) X(m) 4 x10 x10 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0 Imaginary part(s) 2.5 Real part(s) Depth(m) Depth(m) 10 8 2.0 6 2000 1.5 2000 4 1.0 2 0.5 0 0 4000 4000 X(m) c) X(m) x104 d) x104 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Relative error(%) 0 0 Relative error(%) 0.15 Depth(m) Depth(m) 0.15 0.10 0.10 2000 2000 0.05 0.05 0 0 4000 4000 Figure 5.13: The complex-valued eikonal for the real-viscoelastic Eulerian PDE method in Case A. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. a) X(m) 4 x10 0 0.2 0.4 0.6 0.8 0 1600 Velocity(m/s) 1400 Depth(m) 2000 1200 1000 800 4000 b) X(m) 4 x10 0 0.2 0.4 0.6 0.8 0 0 Depth(m) Velocity(m/s) -200 2000 -400 4000 Figure 5.14: (a) Real and (b) imaginary parts of the complex velocity in Case B. 169 a) X(m) 4 b) X(m) 4 x10 x10 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 Imaginary part(s) 0 Real part(s) Depth(m) 10 8 4 2000 6 2000 Depth(m) 4 2 2 0 0 4000 4000 c) X(m) x104 d) X(m) x104 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 Relative error(%) Relative error(%) 0 0 15 Depth(m) 60 10 40 2000 2000 Depth(m) 5 20 0 0 4000 4000 Figure 5.15: The complex-valued eikonal for the real-elastic Eulerian PDE method in Case B. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. a) X(m) 4 b) X(m) 4 0 0.2 0.4 0.6 0.8 x10 0 0.2 0.4 0.6 0.8 x10 0 0 Imaginary part(s) 10 Depth(m) Real part(s) Depth(m) 3 8 6 2 2000 2000 4 1 2 0 0 4000 4000 c) X(m) 4 d) X(m) x104 x10 0.4 0.6 0.2 0.4 0.6 Relative error(%) 0.2 0.8 0.8 Relative error(%) 0 0 2.5 Depth(m) 1.0 0.8 2.0 0.6 1.5 2000 2000 1.0 Depth(m) 0.4 0.2 0.5 0 0 4000 4000 Figure 5.16: The complex-valued eikonal for the real-viscoelastic Eulerian PDE method in Case B. (a) Real part and (c) its difference with the analytic solution; (b) imaginary part and (d) its difference with the analytic solution. 170 Chapter 6 Conclusion Based on Hadamard’s method, we develop a novel ansatz for the vectorial three-dimensional point-source elastic wave equation in inhomogeneous media at high frequencies. We develop a new Hadamard’s ansatz to form the fundamental solution of the Cauchy problem for the time-domain point-source elastic wave equations (3.4) and (3.5) in the region close to the point source. We derive the governing equations for asymptotics involved in the ansatz, such as traveltime and the dyadic coefficients. We further propose matching conditions to deduce initial conditions of amplitude coefficients at the source. Consequently, the Fourier transform of Hadamard’s ansatz in time directly yields the Hadamard-Babich ansatz for the FDPS elastic wave equations (3.1). Finally, to validate our method, we truncate the ansatz after two terms and apply high-order Lax-Friedrichs WENO schemes to compute the involved asymptotic ingredients. Numerical results demonstrate that our new ansatz is capable of producing accurate asymptotic solutions in the region of space containing the point source but no other caustics. Incorporating this new ansatz into Huygens’ principle to treat caustics consists of the sec- ond project. Starting from the truncated Hadamard-Babich ansatz, we have developed a new fast Huygens sweeping method for computing the globally valid asymptotic Green’s functions of elastic wave equations in an inhomogeneous medium in the high frequency regime and in the presence of caustics. The new method uses the Huygens-Kirchhoff integral to integrate 171 many locally valid asymptotic Green’s functions into a globally valid asymptotic Green’s function so that caustics can be treated automatically. To accelerate matrix-vector products induced by the Huygens-Kirchhoff integral, we have used the butterfly algorithm to speed up the multiplication process with optimal complexity. Numerical examples demonstrate the performance, efficiency, and accuracy of our new method. Moreover, we proposed an Eulerian PDE method to compute complex-valued eikonals in attenuating media as an alternative solution to the ray-tracing method. Computing complex-valued eikonals efficiently in attenuating media is essential for seismic imaging and tomography. One major advantage of the proposed Eulerian method is that it computes complex-valued eikonals on regular grids which can be directly used by imaging and tomog- raphy methods. Our proposed method uses two Eulerian PDEs to govern the evolution of the real and imaginary parts of complex-valued eikonals. The real-space eikonal equation governs the evolution of the real part of the complex-valued eikonal, and a novel real-space advection equation governs the evolution of the imaginary part of the complex-valued eikonal. The factorization strategy is further applied to obtain factorized Eulerian PDEs to treat source singularities. Furthermore, a third-order LxF WENO sweeping method is proposed to solve these Eulerian PDEs. We applied the proposed Eulerian method to several attenuation models and have obtained satisfying results. 172 APPENDICES 173 Appendix A Derivation of some ingredients for governing equations of S and P waves The formula of R̃l−1 for the S wave in (3.95) Let us rewrite the governing equation for Ãl as the following,     1 l µ ρ (∇T · ∇)Ãl + [∇ · (µ∇T ) − (4l + 14)ρ]à + ∇T ∇ l · à = R̃l−1 , (A.1) 2µ 2ρ µ where ∇T ãl−1 l−1 µ∇T [(∇T · ∇)ãl−1 ] l−1 ∇T b̃l−1 l−1 ∇λãl−1 l R̃l−1 = − T + T − T − T 2 4ρ 8ρ 2µ (λ + µ)∇ãl−1 l B̃ l−1 l − T + T . (A.2) 2µ 2µ 174 Here B̃ l−1 , ãl−1 , and b̃l−1 are defined as,  l(l − 1) l−1 B̃ l−1 ≡ (λ + µ) l+1 ∇T (∇T · Ãl−1 ) − ∇(∇T · Ãl−1 ) (A.3) T Tl  l−1 l−1 1 l−1 − l ∇T (∇ · à ) + l−1 ∇(∇ · à ) T T l(l − 1)4ρ l−1 (l − 1)∇2 T l−1  +µ à − à µT l Tl  2(l − 1) l−1 1 2 l−1 − (∇T · ∇)à + l−1 ∇ à Tl T   −l + 1 l−1 1 l−1 +∇λ ∇T · à + l−1 ∇ · à Tl T 1 l−1 + l−1 ∇µ × (∇ × Ãl−1 ) − ∇µ × (∇T × Ãl−1 ) T Tl  l−1 l−1 1 l−1 +2 − l (∇µ · ∇T )à + l−1 (∇µ · ∇)à ; T T −(l − 1) 1 1 ãl−1 ≡ l ∇T · Ãl−1 + l−1 ∇ · Ãl−1 + l−1 ∇µ · Ãl−1 (A.4) T T (λ + µ)T 2µ(l − 1) l−1 µ2 l−1 µb̃l−2 − ∇T · à + ∇T · [(∇T · ∇)à ] − ; (λ + µ)T l (λ + µ)2ρT l (λ + µ)4ρT b̃l−1 ≡ 2ρ(−2l + 7)ãl−1 − (λ + µ)(∇T · ∇)ãl−1 − µ∇2 T ãl−1 −(∇T · ∇λ)ãl−1 − (∇T · ∇µ)ãl−1 + ∇T · B̃ l−1 . (A.5) The formula of c̃l−1 for the P wave in (3.137) We rewrite the governing equation for α̃l as the following,   1 (2l + 5)ρ ∇T · ∇α̃l + ∇ · (ρ∇T ) − α̃l = c̃l−1 , (A.6) 2ρ λ + 2µ 175 and c̃l−1 = T l cl−1 , where cl−1 is the same as (3.123). The formula for c̃l−1 is 1 1 c̃l−1 ≡ {[(14 − 4l)ρ − µ∇2 T − ∇T · ∇(λ + µ)] (∇T · C̃ l−1 ) 8ρ T (λ + µ)4ρl (λ + µ) + (∇T · C̃ l−1 ) − ∇T · ∇(∇T · C̃ l−1 ) (λ + 2µ)T T (λ + µ)4ρl (λ + µ)4ρ + (∇T · C̃ l−1 ) − (∇ · C̃ l−1 ) (λ + 2µ)T (λ + 2µ) 8µρl 2µ + (∇T · C̃ l−1 ) − ∇T · [(∇T · ∇)C̃ l−1 ] (λ + 2µ)T T 4ρ − (∇µ · C̃ l−1 ) + T l−1 ∇T · D̃ l−1 }, (A.7) λ + 2µ where C̃ l−1 = C l−1 T l satisfies λ + 2µ (l − 1)(λ + µ) C̃ l−1 ≡ {−ρ(4l − 18)Ãl−1 + ∇T (∇T · Ãl−1 ) (λ + µ)4ρ T 8(l − 1)ρµ l−1 − (λ + µ)∇(∇T · Ãl−1 ) + à − 2µ(∇T · ∇)Ãl−1 λ + 2µ − µ∇2 T Ãl−1 − ∇λ(∇T · Ãl−1 ) − (∇µ · ∇T )Ãl−1 + T l−1 D̃ l−2 }, (A.8) 176 and D̃ l−1 satisfies  l(l − 1) l−1 D̃ l−1 ≡(λ + µ) l+1 ∇T (∇T · Ãl−1 ) − ∇(∇T · Ãl−1 ) T Tl  l−1 l−1 1 l−1 − l ∇T (∇ · à ) + l−1 ∇(∇ · à ) T T l(l − 1)4ρ l−1 (l − 1)∇2 T l−1  +µ à − à µT l Tl  2(l − 1) l−1 1 2 l−1 − (∇T · ∇)à + l−1 ∇ à Tl T   −l + 1 l−1 1 l−1 + ∇λ ∇T · à + l−1 ∇ · à Tl T 1 l−1 + l−1 ∇µ × (∇ × Ãl−1 ) − ∇µ × (∇T × Ãl−1 ) T Tl   l−1 l−1 1 l−1 + 2 − l (∇µ · ∇T )à + l−1 (∇µ · ∇)à . (A.9) T T 177 Appendix B Hadamard ansatz for anisotropic wave equations Derivation of eikonal equations and transport equations To develop the Hadamard’s ansatz for waves in anisotropic elastic solids, we start with the fundamental equations. Hooke’s law states that the stress σij is related to the strain ekl through a stiffness tensor Cijkl by the relation σij = Cijkl ekl . (B.1) Therefore, the motion equation without body force takes the form ∂ 2U ρ = ∇ · σ, (B.2) ∂t2 where U = (Ui ) is the displacement vector. By the relation between strain and displacement,   1 ∂Uk ∂Ul ekl = + , (B.3) 2 ∂xl ∂xk 178 and the symmetry of the stiffness tensor, the motion equation leads to the wave equation ∂ 2 Uj ∂ ∂U ρ 2 = (Cijkl k ). (B.4) ∂t ∂xi ∂xl Inspired by our work for isotropic elastic waves, we shall seek an asymptotic solution of (B.4) in the following form, ∞ (l−3) 2 Uil (x)f+ X Üi (x, t) = (t − T (x)). (B.5) l=0 To derive the governing equations for the unknowns Uil and T , we shall need ∂t4 Ui and spatial derivatives of Ui . Since this is quite similar to our derivations for the isotropic elastic case, we can just use the formulas (3.35)-(3.40) directly. Inserting those formulas into the following equation ∂ 4 Uj ∂ ∂ Ük ρ = (C ijkl ), (B.6) ∂t4 ∂xi ∂xl which is the second time derivative of (B.4). (l−5) Equating individual coefficients of f+ to zero successively, we can obtain 0 =4ρT Ujl − Cijkl T,l T,i Ukl + 2ρ(2l − 9)Ujl−1 + Cijkl,i T,l Ukl−1 l−1 + C + Cijkl T,l Uk,i l−1 l−1 ijkl T,i Uk,l + Cijkl T,li Uk l−2 − C − Cijkl,i Uk,l l−2 ijkl Uk,li . (B.7) Setting l = 0 and remembering that U l = 0 for l < 0, we obtain the Christoffel’s equation, (Cijkl T,l T,i − 4ρT δjk )Uk0 = 0, (B.8) 179 which leads to the anisotropic eikonal equation for T , det(Cijkl T,l T,i − 4ρT δjk ) = 0, (B.9) where T (x) = τ 2 (x), and τ is the traveltime. So we can obtain the eikonal equation for T det(Cijkl T,l T,i − 4ρT δjk ) = det(aijkl pl pi − δjk ) = 0, (B.10) which is the same as the eikonal equation in [60, 62]. Here p = (pi ) = ∇τ , aijkl = Cijkl /ρ are the density-normalized elastic parameters. Next setting l = 1 yields 0 =4ρT Uj1 − Cijkl T,l T,i Uk1 − 14ρUj0 + Cijkl,i T,l Uk0 + Cijkl T,l Uk,i 0 +C 0 0 ijkl T,i Uk,l + Cijkl T,li Uk . (B.11) By equation (B.8), U 0 is a multiple of the normalized eigenvector g of the matrix (aijkl pl pi ), U 0 = U 0 g. By the symmetry of the stiffness tensor Cijkl and equation (B.8), we can obtain the equation for the amplitude U 0 , 0 = − 14ρU 0 + Cijkl,i T,l U 0 gk gj + Cijkl T,l (U 0 gk ),i gj + Cijkl T,i (U 0 gk ),l gj + Cijkl T,li U 0 gk gj . (B.12) 180 Verification of (B.9) in an isotropic medium When the wave propagates in an isotropic medium, the stiffness tensor Cijkl has the following form, Cijkl = λδij δkl + µ(δik δjl + δil δjk ). (B.13) This involves only two independent parameters, λ and µ, known as the lamé moduli. So the equation (B.8) reduces to ((λ + µ)T,j T,k + µT,l T,l − 4ρT δjk )Uk0 = 0, (B.14) or, in vector notation, ((λ + µ)∇T ∇T T + (µ∇T · ∇T − 4ρT )I)U 0 = 0. (B.15) Since ∇T ∇T T is a rank-one matrix, the eigenvalues are ∇T · ∇T , 0 and 0. Hence if det((λ + µ)∇T ∇T T + (µ∇T · ∇T − 4ρT )I) = 0, we can obtain two eikonal equations, µ|∇T |2 = 4ρT , (B.16) and (λ + 2µ)|∇T |2 = 4ρT . (B.17) The corresponding eigenvectors U 0 ⊥ ∇T for (B.16) and U 0 ∥ ∇T for (B.17). We can see that these are actually the two cases that we find in Chapter 3. Hence we have verified equation (B.9). 181 Appendix C High-order factorization for computing T ∗ According to the ray theory, we have the following relation from the eikonal equation 5.1 and the advection equation 5.2, dT 1 dT ∗ 1 = , = , (C.1) ds v ds vQ d corresponds to the tangential derivative along a ray path, and s is arc length. where ds When v and Q are constants, we can obtain the relation between T and T ∗ , T ∗ = Q 1 T. Therefore, in order to compute high order approximations to T ∗ near the source (here set at the origin), we factorize T ∗ as the following: T ∗ = T T1∗ , (C.2) where the singularity of T ∗ at the source is captured by T , and so the underlying factor T1∗ is smooth in the neighborhood of the source. Now inserting the above factorization into equation 5.2 and multiplying both sides by 182 two, we can obtain the corresponding equation for T1∗ : 2 2 ∇T 2 · ∇T1∗ + 2 T1∗ = 2 . (C.3) v v Q Assuming that 12 and Q 1 are smooth, we can expand T 2 , T ∗ , 1 and 1 into power series v 1 v2 Q near the source as illustrated in [64]: ∞ ∞ ∞ ∞ 1 1 T2 T1∗ X X X X = Tk ; = Uk ; = Sk ; = Qk . (C.4) v2 Q ν=0 ν=0 ν=0 ν=0 Tk is given in [64], and we know that T0 = 0, T1 = 0 and T2 = S0 |x|2 . Now inserting the above expansions into C.3, we can get ∞ ∞ ∞ ∞ ∞ ∞ ! ! ! ! ! ! X X X X X X ∇Tk · ∇Uk +2 Sk Uk =2 Sk Qk . (C.5) ν=2 ν=0 ν=0 ν=0 ν=0 ν=0 We can now equate the p-th degree terms to get the following recursive equation: X p X p X p ∇Tp−v+2 · ∇Uν + 2 Sp−ν Uν = 2 Sv Qp−ν . (C.6) ν=0 ν=0 ν=0 Using the relation T2 = S0 |x|2 and ∇T2 · ∇Up = 2pS0 Up , we can obtain the following recursive formulas for {Up } for p ≥ 0, Xp p−1 X p−1 X 2(p + 1)S0 Up = 2 Sv Qp−ν − ∇Tp−v+2 · ∇Uν − 2 Sp−ν Uν . (C.7) ν=0 ν=0 ν=0 183 We list some special cases for p = 0, 1, 2, 3, 4, 5. p=0: 2S0 U0 = 2S0 Q0 ⇒ U0 = Q0 ; (C.8) 1 p=1: 4S0 U1 = 2S0 Q1 + 2S1 Q0 − 2S1 U0 ⇒ U1 = Q1 ; (C.9) 2 p=2: 6S0 U2 = 2(S0 Q2 + S1 Q1 + S2 Q0 ) − ∇T3 · ∇U1 − 2(S2 U0 + S1 U1 ) Q2 S1 Q1 ∇T3 · ∇Q1 ⇒ U2 = + − ; (C.10) 3 6S0 12S0 p=3: 8S0 U3 = 2(S0 Q3 + S1 Q2 + S2 Q1 + S3 Q0 ) − ∇T4 · ∇U1 − ∇T3 · ∇U2 −2(S3 U0 + S2 U1 + S1 U2 ) Q3 S1 Q2 S2 Q1 S1 U2 ∇T4 · ∇Q1 ∇T3 · ∇U2 ⇒ U3 = + + − − − ; (C.11) 4 4S0 8S0 4S0 16S0 8S0 p=4: 10S0 U4 = 2(S0 Q4 + S1 Q3 + S2 Q2 + S3 Q1 + S4 Q0 ) − ∇T5 · ∇U1 − ∇T4 · ∇U2 −∇T3 · ∇U3 − 2(S4 U0 + S3 U1 + S2 U2 + S1 U3 ) Q4 S1 Q3 S2 Q2 S3 Q1 S2 U2 S1 U3 ⇒ U4 = + + + − − 5 5S0 5S0 10S0 5S0 5S0 ∇T5 · ∇Q1 ∇T4 · ∇U2 ∇T3 · ∇U3 − − − . (C.12) 20S0 10S0 10S0 184 BIBLIOGRAPHY 185 BIBLIOGRAPHY [1] K. Aki and P. Richards. Quantitative seismology. Freeman and Co., 1980. [2] G. S. Avila and J. B. Keller. The high-frequency asymptotic field of a point source in an inhomogeneous medium. Commun. Pure Appl. Math., 16:363–381, 1963. [3] V. M. Babich. The short wave asymptotic form of the solution for the problem of a point source in an inhomogeneous medium. USSR Computational Mathematics and Mathematical Physics, 5(5):247–251, 1965. [4] I. M. Babus̆ka and S. A. Sauter. Is the pollution effect of the FEM avoidable for the Helmholtz equation considering high wave numbers? SIAM Review, 42:451–484, 2000. [5] A. Bayliss, C. I. Goldstein, and E. Turkel. On accuracy conditions for the numerical computation of waves. J. Comput. Phys., 59:396–404, 1985. [6] J.-D. Benamou. Direct solution of multi-valued phase-space solutions for Hamilton- Jacobi equations. Commun. Pure Appl. Math., 52:1443–1475, 1999. [7] J. Blanch, J. Robertsson, and W. Symes. Modeling of a constant q: methodol- ogy and algorithm for an efficient and optimally inexpensive viscoelastic technique. Geophysics, 60:176–184, 1995. [8] J. O. Blanch and J. O. A. Robertsson. A modified Lax-Wendroff correction for wave propagation in media described by Zener elements. Geophys. J. Internat., 131:381–386, 1997. [9] M. Born and E. Wolf. Principles of optics. The Macmillan Company, 1964. [10] J. P. Boyd. Chebyshev and Fourier Spectral Methods. Second edition, Dover, New York, 2001. [11] E. Candes, L. Demanet, and L. Ying. A fast butterfly algorithm for the computation of Fourier integral operators. SIAM Multiscale Model. Simul., 7:1727–1750, 2009. [12] J. M. Carcione. Staggered mesh for the anisotropic and viscoelastic wave equation. Geophysics, 64:1863 –1866, 1999. [13] J. M. Carcione. Theory and modeling of constant-Q P- and S-waves using fractional time derivatives. Geophysics, 74(1):T1 –T11, 2009. 186 [14] J. M. Carcione. Wave fields in real media: Theory and numerical simulation of wave propagation in anisotropic, anelastic, porous and electromagnetic media: Handbook of Geophysical exploration (3rd ed.). Elsevier, 2015. [15] J. M. Carcione, F. Cavallini, F. Mainardi, and A. Hanyga. Time domain seismic mod- eling of constant-Q wave propagation using fractional derivatives. Pure and Applied Geophysics, 159:1719 –1736, 2002. [16] V. Cerveny. Seismic Ray Theory. Cambridge University Press, Cambridge, 2001. [17] R. Courant and D. Hilbert. Methods of mathematical physics, volume II. John Wiley- Sons, 1962. [18] L. Demanet, M. Ferrara, N. Maxwell, J. Poulson, and L. Ying. A butterfly algorithm for synthetic aperture radar imaging. SIAM J. Imaging Sci., 5:203–243, 2012. [19] J. Fang, J. Qian, L. Zepeda-Nunez, and H. Zhao. A hybrid approach to solve the high-frequency Helmholtz equation with source singularity in inhomogeneous media. J. Comp. Phys., 371:261–279, 2018. [20] S. Fomel, S. Luo, and H. K. Zhao. Fast sweeping method for the factored eikonal equation. J. Comput. Phys., 228:6440–6455, 2009. [21] F. G. Friedlander. Private communication to Robert Burridge, 1966. [22] W. Futterman. Dispersive body waves. Journal of the Geophysical Research, 67:5279 –5291, 1962. [23] D. Gajewski and I. Psencik. Vector wavefields for weakly attenuating anisotropic media by the ray method. Geophysics, 57(1):27 –38, 1992. [24] I.M. Gelfand and G.E. Shilov. Generalized Functions, volume 1. Academic Press, New York and London, 1964. [25] J. Hadamard. Lectures on Cauchy’s Problem in Linear Partial Differential Equations. Yale University Press; (reprinted Dover Publications, New York 1952), 1923. [26] Q. Hao and T. Alkhalifah. An acoustic eikonal equation for attenuating transversely isotropic media with a vertical symmetry axis. Geophysics, 82(1):C9 –C20, 2017. [27] J. Hu, J. Qian, J. Song, M. Ouyang, J. Cao, and Sh. Leung. Eulerian partial-differential- equation methods for complex-valued eikonals in attenuating media. GEOPHYSICS, 86(4):T179–T192, 2021. 187 [28] J. T. Hu, P. Wang, J. X. Cao, H. Z. Wang, and X. J. Wang. Frequency dependent complex traveltime computation in TI media with weak attenuation using Fermat’s principle based fast marching. pages 4040–4044, 2018. [29] X. Huang and S. Greenhalgh. Linearized formulations and approximate solutions for the complex eikonal equation in orthorhombic media and applications of complex seismic traveltime. Geophysics, 83(3):C115 –C136, 2018. [30] X. Huang, J. Sun, and S. Greenhalgh. On the solution of the complex eikonal equation in acoustic VTI media: a perturbation plus optimization scheme. Geophysical Journal International, 214(2):907 –932, 2018. [31] G. S. Jiang and D. Peng. Weighted ENO schemes for Hamilton-Jacobi equations. SIAM J. Sci. Comput., 21:2126–2143, 2000. [32] G. S. Jiang and C. W. Shu. Efficient implementation of weighted ENO schemes. J. Comput. Phys., 126:202–228, 1996. [33] C. Y. Kao, S. Osher, and J. Qian. Legendre transform based fast sweeping methods for static Hamilton-Jacobi equations on triangulated meshes. J. Comput. Phys., 227:10209– 10225, 2008. [34] C. Y. Kao, S. J. Osher, and J. Qian. Lax-Friedrichs sweeping schemes for static Hamilton-Jacobi equations. J. Comput. Phys., 196:367–391, 2004. [35] F.C. Karal Jr. and J. B. Keller. Elastic wave propagation in homogeneous and inhomo- geneous media. J. Acoust. Soc. Am., 31(6):694–705, 1959. [36] H. Keers, D. W. Vasco, and L. R. Johnson. Viscoacoustic crosswell imaging using asymptotic waveforms. Geophysics, 66(3):861 –870, 2001. [37] J. Keller and R. Lewis. Asymptotic methods for partial differential equations: the reduced wave equation and Maxwell’s equations. Surv. in Appl. Math., 1:1–82, 1995. [38] S. Kim and R. Cook. 3-D traveltime computation using second-order ENO scheme. Geophysics, 64:1867–1876, 1999. [39] M. Klimes and L. Klimes. Perturbation expansions of complex-valued traveltime along real-valued reference rays. Geophysical Journal International, 186:751 –759, 2011. [40] P. L. Lions. Generalized solutions of Hamilton-Jacobi equations. Pitman Advanced Publishing Program, 1982. [41] X. D. Liu, S. J. Osher, and T. Chan. Weighted Essentially NonOscillatory schemes. J. Comput. Phys., 115:200–212, 1994. 188 [42] Y. Liu, J. Song, R. Burridge, and J. Qian. A fast butterfly-compressed hadamard- babich integrator for high-frequency helmholtz equations in inhomogeneous media with arbitrary sources. Multiscale Modeling and Simulation, accepted, 2022. [43] W. Lu, J. Qian, and R. Burridge. Babich-expansion based fast Huygens sweeping methods for point-source Helmholtz equations. In SEG full Waveform Inversion: Depth Model Building Workshop (FWI 2015), pages 98–101. Society for Exploration Geophysi- cists, 2015. [44] W. Lu, J. Qian, and R. Burridge. Babich-like ansatz for three-dimensional point-source Maxwell’s equations in an inhomogeneous medium at high frequencies. SIAM J. Mul- tiscale Model. Simul., 14(3):1089–1122, 2016. [45] W. Lu, J. Qian, and R. Burridge. Babich’s expansion and the fast Huygens sweeping method for the Helmholtz wave equation at high frequencies. J. Comput. Phys., 313:478– 510, 2016. [46] W. Lu, J. Qian, and R. Burridge. Extending Babich’s ansatz for point-source Maxwell’s equations using Hadamard’s method. SIAM J. Multiscale Model. Simul., 16:727–751, 2018. [47] S. Luo and J. Qian. Factored singularities and high-order Lax-Friedrichs sweeping schemes for point-source traveltimes and amplitudes. J. Comput. Phys., 230:4742–4755, 2011. [48] S. Luo and J. Qian. Fast sweeping methods for factored anisotropic eikonal equations: multiplicative and additive factors. J. Sci. Comput., 52:360–382, 2012. [49] S. Luo, J. Qian, and R. Burridge. Fast Huygens sweeping methods for Helmholtz equations in inhomogeneous media in the high frequency regime. J. Comput. Phys., 270:378–401, 2014. [50] S. Luo, J. Qian, and R. Burridge. High-order factorization based high-order hybrid fast sweeping methods for point-source eikonal equations. SIAM J. Numer. Analy., 52:23–44, 2014. [51] S. Luo, J. Qian, and H.-K. Zhao. Higher-order schemes for 3-D traveltimes and ampli- tudes. Geophysics, 77:T47–T56, 2012. [52] J. Milnor. Morse Theory. Annals of Math., No. 51. Princeton University Press, Prince- ton, New Jersey, 1973. [53] S. J. Osher and C. W. Shu. High-order Essentially NonOscillatory schemes for Hamilton- Jacobi equations. SIAM J. Numer. Analy., 28:907–922, 1991. 189 [54] A. Pica. Fast and accurate finite-difference solutions of the 3-D eikonal equation pa- rameterized in celerity. In Expanded Abstracts, pages 1774–1777. Soc. Expl. Geophys., Tulsa, OK, 1997. [55] P. Podvin and I. Lecomte. Finite difference computation of traveltimes in very con- trasted velocity models: a massively parallel approach and its associated tools. Geophys. J. Int., 105:271–284, 1991. [56] J. Qian, W. Lu, L. Yuan, S. Luo, and R. Burridge. Eulerian geometrical optics and fast Huygens sweeping methods for three-dimensional time-harmonic high-frequency Maxwell’s equations in inhomogeneous media. SIAM J. Multiscale Modeling and Sim- ulation, 16:595–636, 2016. [57] J. Qian, S. Luo, and R. Burridge. Fast Huygens sweeping methods for multi-arrival Green’s functions of Helmholtz equations in the high frequency regime. Geophysics, 80:T91–T100, 2015. [58] J. Qian, J. Song, W. Lu, and R. Burridge. Hadamard–babich ansatz for point-source elastic wave equations in variable media at high frequencies. Multiscale Modeling & Simulation, 19(1):46–86, 2021. [59] J. Qian, J. Song, W. Lu, and R. Burridge. Truncated hadamard-babich ansatz and fast huygens sweeping methods for time-harmonic elastic wave equations in inhomogeneous media in the asymptotic regime. Minimax Theory and its Applications, accepted, 2022. [60] J. Qian and W. W. Symes. Paraxial eikonal solvers for anisotropic quasi-P traveltimes. J. Comput. Phys., 173:1–23, 2001. [61] J. Qian and W. W. Symes. An adaptive finite difference method for traveltime and amplitude. Geophysics, 67:167–176, 2002. [62] J. Qian and W. W. Symes. Finite-difference quasi-P traveltimes for anisotropic media. Geophysics, 67:147–155, 2002. [63] J. Qian, L. Yuan, Y. Liu, S. Luo, and R. Burridge. Babich’s expansion and high- order Eulerian asymptotics for point-source Helmholtz equations. Journal of Scientific Computing, 65:1–26, 2015. [64] J. Qian, L. Yuan, Y. Liu, S. Luo, and R. Burridge. Babich’s expansion and high- order Eulerian asymptotics for point-source Helmholtz equations. Journal of Scientific Computing, 67:883–908, 2016. [65] J. Qian, Y. T. Zhang, and H. K. Zhao. Fast sweeping methods for eikonal equations on triangulated meshes. SIAM J. Numer. Analy., 45:83–107, 2007. 190 [66] J. Qian, Y. T. Zhang, and H. K. Zhao. Fast sweeping methods for static convex Hamilton-Jacobi equations. J. Sci. Comp., 31:237–271, 2007. [67] F. Qin, Y. Luo, K. B. Olsen, W. Cai, and G. T. Schuster. Finite difference solution of the eikonal equation along expanding wavefronts. Geophysics, 57:478–487, 1992. [68] J. O. A. Robertsson, J. O. Blanch, and W. W. Symes. Viscoelastic finite-difference modeling. Geophysics, 59:1444–1456, 1994. [69] S. Serna and J. Qian. A stopping criterion for higher-order sweeping schemes for static Hamilton-Jacobi equations. J. Comput. Math., 28:552–568, 2010. [70] J. A. Sethian and A. M. Popovici. 3-D traveltime computation using the fast marching method. Geophysics, 64:516–523, 1999. [71] W. W. Symes and J. Qian. A slowness matching Eulerian method for multivalued solutions of eikonal equations. J. Sci. Comp., 19:501–526, 2003. [72] A. Toflove and S. C. Huganess. Computational Electrodynamics: The Finite Difference Time Domain Method, Second Editions. Artech House, Norwood, MA, 2000. [73] J. van Trier and W. W. Symes. Upwind finite-difference calculation of traveltimes. Geophysics, 56:812–821, 1991. [74] V. Vavrycuk. Real ray tracings in anisotropic viscoelastic media. Geophysical Journal International, 175:617 –626, 2008. [75] V. Vavrycuk. Velocity, attenuation and quality factor in anisotropic viscoelastic media: A perturbation approach. Geophysics, 73(5):D63 –D73, 2008. [76] V. Vavrycuk. On numerically solving the complex eikonal equation using real ray-tracing methods: A comparison with the exact analytical solution. Geophysics, 77(4):T109 – T116, 2012. [77] J. Vidale. Finite-difference calculation of travel times. Bull. Seis. Soc. Am., 78:2062– 2076, 1988. [78] U. Waheed, C. E. Yarman, and G. Flagg. An iterative, fast-sweeping-based eikonal solver for 3D tilted anisotropic media. Geophysics, 80(3):C49 –C58, 2015. [79] B. S. White. The stochastic caustic. SIAM J. Appl. Math., 44:127–149, 1984. [80] Y. Xie, J. Sun, Y. Zhang, and J. Zhou. Compensating for visco-acoustic effects in TTI reverse time migration. pages 3996–4001, 2015. 191 [81] Y. Xie, K. Xin, J. Sun, and C. Notfors. 3D prestack depth migration with compensation for frequency dependent absorption and dispersion. pages 2919–2913, 2009. [82] K. F. Xin, Y. He, Y. Xie, W. Q. Xu, and M. Wang. Robust Q tomographic inversion through adaptive extraction of spectral features. pages 3726–3730, 2014. [83] T. Xiong, M. Zhang, Y. T. Zhang, and C.-W. Shu. Fast sweeping fifth order weno scheme for static hamilton-jacobi equations with accurate boundary treatment. J. Sci. Comput., 45:514–536, 2010. [84] L. Ying. Sparse Fourier transform via butterfly algorithm. SIAM J. Sci. Comput., 31:1678–1694, 2009. [85] L. Zhang, J. W. Rector, and G. M. Hoversten. Eikonal solver in the celerity domain. Geophys. J. Internat., 162:1–8, 2005. [86] Y. Zhang, P. Zhang, and H. Zhang. Compensating for visco-acoustic effects in reverse time migration. pages 3160–3164, 2010. [87] Y. T. Zhang, H. K. Zhao, and J. Qian. High order fast sweeping methods for static Hamilton-Jacobi equations. J. Sci. Comp., 29:25–56, 2006. [88] H. K. Zhao. Fast sweeping method for eikonal equations. Math. Comp., 74:603–627, 2005. 192