Session: Computational Wave Propagation: Basic Theory Igel H., Fichtner A., Käser M., Virieux J., Seriani G., Capdeville Y., Moczo P. The finite-difference method The pseudo-spectral method
The problem
Displacement u, elastic parameters E(x) vary only in one direction. Density and Lame parameters and . shear waves P waves with the corresponding velocities P wavesshear waves The wave equation
… we disregard … 3-dimensionality External forces Viscoelastic behaviour Anisotropic behaviour Non-linear elasticity Etc. … and even further simplify and re-write to …
… motion of a string … Displacement u, shear modulus (x), density vary only in one direction x.
The velocity-stress formulation stress-strain Extrapolation usually low-order Generalized Interpolation Low-order to spectral accuracy
Other forms of the elastic wave equation Strong form (see Moczo et al.) Displacement – stress Displacement – velocity – stress Velocity – stress Displacement Weak form (more later) Projection on test functions
Numerical methods Finite differences Pseudospectral methods Finite (spectral) elements (Fichtner) Discontinuous Galerkin (Käser) Frequency domain methods (Virieux) Cell methods (Seriani) (Boundary integral methods, lattice solids, discrete wavenumber, finite volumes, etc).
Finite Differences forward difference backward difference centered difference
... or even … … in space and for time … This turns out to be a useful approximation!
Discrete space-time Space and time discretization Regular, 1D
Our first FD wave algorithm Space discretization Regular, 1D
… and the explicit extrapolation scheme … Do for all times … Stop! Source term
… staggered grids … ? mm-1/2m+1/2 l l+1/2 l-1/2 Time Space the only unknown
Results
Numerical dispersion Time Amplitude
Von Neumann Analysis plane wave analysis continuous discrete Conditional stability
Numerical dispersion phase velocity - group velocity Theoretical prediction of phase and group velocities as a function of wavelength. In 2-D, 3-D this effect depends on direction (-> grid anisotropy)
Well, let us have a closer look at the space derivatives (because there is not so much we can do about the time derivative …)
The pseudospectral approach in the discrete world that means, we can … Discrete Spectrum Exact derivative
PS Algorithm (displacement) Derivatives calculated by DFT (forward and inverse transform and multiplication with –ik) …. cool algorithm, but …
… some more thoughts on the spectral derivative operator „-ik“ … using the convolution theorem … Differential operator in space domain The function we want to differentiate
f „Convolution“ d d*f
This is the derivative operater d(x) and it s discrete version (dots) The numerical wave number as a function of true wave number (ik as a function of k)
Finite difference - Pseudospectral Length of (convolutional) operator Increasing accuracy Increasing floating point operations Taylor coefficients point Fourier (Chebysheff) coefficients nx-point FD PS
FD in real 3-D applications Cartesian Geometry Spherical coordinates Sections Axisymmetric Rheologies Viscolastic Anisotropic Poroelastic Dynamic rupture
Finite Differences - Pros and Cons PROS simple theory Explicit scheme – no matrix inversion Easy parallelization Easy model generation (on regular grids) Easy adaptation to specific problems CONS Boundary conditions difficult to implement Requires large number of grid points per wavelength (in particular surface waves) Large memory requirement Inefficient for models with strong velocity variations Topography not easily implemented
Pseudospectral Method - Pros and Cons PROS Beautiful! Exact space derivatives Explicit scheme – no matrix inversion Centred scheme (anisotropy) Accurate implementation of boundary condition (Chebyshev) Memory efficient (less points per wavelength w.r.t. FD) CONS Global communication scheme (inefficient parallelization) Irregular grid points (Chebyshev) –> stability problems Boundary conditions difficult for Fourier Method
Final thoughts Some of the fundamental concepts of computational seismology can be understood from FD schemes (e.g., stability, dispersion) Each QUEST researcher should be able to Understand what time steps and grid distances are appropriate for a specific Earth velocity models Understand what affects the accuracy of wave simulations (np/ ; operators used, wave type, complexity of velocity model, propagation distance, etc.) Know the possible traps of (community) algorithms (black boxes) Know how to benchmark simulation codes (for accuracy)