Forward and adjoint simulations of seismic wave propagation on fully unstructured hexahedral meshes
Summary (5 min read)
2 G OV E R N I N G E Q UAT I O N S
- Let us briefly summarize the equations governing seismic wave propagation implemented in SPECFEM3D.
- For more technical details, the reader is referred to Komatitsch & Tromp (1999) .
- SPECFEM3D Version 2.0 'Sesame' implements wave propagation in coupled (an)elastic and acoustic materials on local scales.
- The authors may thus safely neglect additional effects that would arise from self-gravitation and rotation (Komatitsch & Tromp 2002b , 2005; Chaljub et al. 2007) , which are important at longer periods.
- In the following, the authors first discuss (an)elastic wave propagation and subsequently consider acoustic waves.
2.1 Elastic domain
- For elastic materials, the displacement wavefield s(x, t) is governed by EQUATION where ρ denotes mass density, T the stress tensor and f the seismic source.
- The initial conditions are EQUATION To accommodate simulations under pre-stressed conditions, these initial conditions may be modified in an appropriate manner.
- The stress tensor T is linearly related to the strain via the constitutive relationship EQUATION ) where c denotes the stiffness tensor that describes the elastic properties of the medium.
- When and where necessary, the authors use Clayton-Engquist-Stacey absorbing conditions (Clayton & Engquist 1977; Stacey 1988; Quarteroni et al. 1998) to absorb outgoing waves on fictitious boundaries of the mesh, thereby representing a semi-infinite domain.
- Additional computations need to be performed in PML layers, in particular in corners, where contributions along several directions are summed (Komatitsch & Martin 2007) .
3 M E S H I N G , M E S H PA RT I T I O N I N G A N D L OA D B A L A N C I N G
- The first step in a SEM consists of constructing a high-quality mesh for the region of interest.
- The authors outline the key issues based on various 3-D examples.
- Fig. 1 draws the schematic workflow from meshing and partitioning to finally running spectral-element simulations.
3.1 Hexahedral meshing
- The authors subdivide the model volume into a set of non-overlapping, hexahedral elements.
- To construct hexahedral meshes, their examples make use of an external hexahedral mesher, such as CUBIT (Blacker et al. 1994) .
- In the Mount St Helens region, the mesh employs a mesh tripling layer to increase resolution at the topographic surface.
- Finally, the filled coffee cup model discretized into hexahedra couples an elastic domain for the cup with an acoustic domain for the coffee inside the cup.
- It facilitates the design of simpler, alternative meshes for layercake models.
3.2 Partitioning and load balancing
- Balancing the computational load and distributing the mesh on a large number of cores is crucial for optimized high-performance simulations (Martin et al. 2008a ).
- Most of the computation time is spent resolving the divergence of the stress tensor in each element.
- The total number of spectral-elements is ∼24 000, such that each partition contains ∼6000 elements after decomposition.
- Partitioning and load balancing equally distributes the elements over the different cores, since the whole domain is purely elastic.
SPECFEM3D Version 2.0 'Sesame' 725
- In a final, separate step the authors generate mesh databases for each partition needed for the spectral-element solver.
- These databases contain Gauss-Lobatto-Legendre (GLL) points for all spectral elements.
- Material properties are assigned to these GLL points, and thus sampling resolution of a geological model not only depends on element size but also on polynomial degree.
- Furthermore, the generation of mesh databases automatically detects interfaces between elastic and acoustic domains, needed for coupling seismic waves from one domain to another.
- Load-balancing of the simulation persists, because the authors keep the polynomial degree fixed for all spectral elements.
3.3 Overlapping computation and communication
- The elements that compose the mesh slices shown in Figs 2 and 3 are in contact through a common face, edge or point.
- To allow for overlap of communication between compute nodes with computations within each mesh slice-thereby speeding up the simulation-a list of all elements in contact with any other mesh slice through a common face, edge or point is created.
- Members of this list are termed 'outer' elements, and all other elements are termed 'inner' elements, as illustrated in Fig. 4 .
- Once the outer elements have been identified following a standard procedure (see e.g. Danielson & Namburu 1998; Martin et al.
- While MPI messages are travelling across the network, computations are performed on inner elements.
4.1 Validation example: two-layer model
- The SEM has been well benchmarked against discrete wavenumber methods for layercake models by Komatitsch & Tromp (1999) .
- A mesh tripling layer is placed below the upper layer, between 3 km and 10 km, with the wave speed properties of the lower layer.
- The source-time function is a Ricker wavelet with a dominant frequency of 0.4 Hz.
- The authors are interested in how the code behaves when the number of calculations is decreased linearly with the number of CPU cores (strong scaling), and how performance varies when the number of calculations on each core is kept constant while increasing the total number of CPU cores (weak scaling).
- The authors run the simulation for a duration of 4000 time steps and show the corresponding average elapsed time per time step in Fig. 6 (a).
4.2 Mount St Helens example: layercake model with surface topography
- The authors read in this data set using CUBIT and create a surface honouring these data points.
- Note that once the wavefield hits the model boundary, it gets absorbed by the Clayton-Engquist-Stacey absorbing boundary conditions.
4.3 L'Aquila example: layercake model honouring surface and Moho topography
- The purpose of this example is to show that additional surfaces may be honoured by the mesh, for example the Moho.
- The authors import not only surface topography, but also create a Moho surface that is honoured by the boundaries of the spectral elements.
- The mesh for the L'Aquila region was built using an additional 'Python' library that semi-automates the mesh creation process with CUBIT (Casarotti et al. 2008) .
- Fig. 8 shows several snapshots of the seismic wavefield at consecutive times for an anelastic material, using a kinematic source description for the 2009 April 6, L'Aquila earthquake.
- Hz and may be used to discriminate between different wave speed models and/or kinematic source solutions.
4.4 SEG/EAGE salt dome example: exploration model
- The authors new spectral-element package can combine acoustic and (an)elastic simulations by coupling these distinct domains.
- The authors generate acoustic waves in the top water layer and propagate them down through a salt dome body included in the lower, anelastic domain.
- The mesh honours the surface of the salt dome and the fluid-solid boundary, that is, the bathymetry.
- The source is a pressure source, located slightly below the free surface in the water layer, with a Ricker source-time function.
- Note how these reflected/refracted waves, which include P-to-S converted waves, are recorded in the water layer.
4.5 Asteroid example: arbitrarily shaped model
- This final example shows that their new software package may be used for simulating wave propagation in arbitrarily shaped models, such as asteroid Eros, which was imaged by the NEAR spacecraft in 2000-2001.
- To simulate a thin, 70 m regolith layer superimposed on strong bedrock, as suggested by Robinson et al. (2002) , the authors assigned a low wave speed material to the elements touching the free surface and a high wave speed material to elements inside the asteroid, representing solid bedrock.
- The regolith layer strongly increases physical dispersion of surface waves.
- Peak ground accelerations are plotted in Fig. 11 for a simulation without a regolith layer, showing that refocussing occurs on the asteroid.
5 A D J O I N T S E N S I T I V I T Y K E R N E L S
- An important goal in seismology is to use differences between observed and simulated seismograms to improve Earth and source models, that is, the authors are interested in the inverse problem.
- An elegant way to address this issue is to take advantage of adjoint methods (Tarantola 1984; Tromp et al. 2005) to calculate Fréchet derivatives for a pre-defined objective function.
- These derivatives may then be used in a conjugate-gradient approach to minimize differences between data and synthetics.
- The key ingredients of such an adjoint approach are sensitivity kernels.
5.1 Elastic sensitivity kernels
- The misfit kernels are given by EQUATION EQUATION where lm and † jk denote elements of the strain and adjoint strain tensors, and where the authors have suppressed the spatial dependence to avoid clutter.
- I are the traceless strain deviator and its adjoint, respectively.
- Note that a suitable parametrization for isotropic inversions is to use bulk sound wave speed = √ κ/ρ, shear wave speed β and density ρ (Tarantola 1987) .
- The P wave at the receiver is used to construct a traveltime adjoint source for the kernel simulation.
- Such kernels may be used, for example, in ocean acoustics, non-destructive testing and medical tomography.
5.2 Acoustic sensitivity kernels
- For acoustic simulations, the kernels are given by EQUATION EQUATION ) where φ and φ † denote the acoustic scalar potential and adjoint potential, respectively.
- To illustrate these kernels, the authors use a model with acoustic and elastic regions.
- Variation within the measurement window as the pressure misfit for the adjoint source.
- The kernels highlight how the pressure waveform in the chosen measurement window is affected by a head wave (a Scholte wave) travelling along the seafloor.
- They do exhibit non-zero sensitivity in the elastic domain, due to P-to-S coupling along the seafloor.
5.3 Noise sensitivity kernels
- As demonstrated by Tromp et al. (2010) , noise cross-correlation sensitivity kernels may also be calculated based on an adjoint method, and the new package has the necessary capabilities to perform such calculations.
- The isotropic ensemble sensitivity kernels are given by where EQUATION EQUATION EQUATION EQUATION denote the traceless ensemble strain deviator and corresponding adjoint.
- Fig. 14 shows the isotropic kernel K β calculated according to eq. ( 20) using the primary isotropic ensemble sensitivity kernels given.
- Note that these noise sensitivity kernels exhibit strong 3-D variability.
6 C O N C L U S I O N S A N D F U T U R E W O R K
- The authors have taken advantage of recent advances in high-performance computing, fully unstructured hexahedral meshing, load balancing and mesh partitioning to facilitate forward and adjoint simulations of seismic wave propagation in coupled fluid and solid domains.
- The authors new open source software package, SPECFEM3D Version 2.0 'Sesame', performs acoustic and (an)elastic simulations of seismic wave propagation in complex geological models.
- Partitioning and load balancing meshes may be accomplished based on graph partitioning software, such as SCOTCH.
- In particular for simulations in medical tomography, strong attenuation and related dispersion play a dominant role.
A C K N O W L E D G M E N T S
- The authors thank two anonymous reviewers for comments which improved the manuscript.
- All simulations were performed on a Dell cluster built and maintained by the Princeton Institute for Computational Science & Engineering (USA).
- The open source spectral-element software package SPECFEM3D Version 2.0 'Sesame' used for this paper is available for download via CIG.
- 3-D graphics were produced with the open source visualization application Paraview.
- The authors acknowledge support by the US National Science Foundation under grant EAR-0711177.
Did you find this useful? Give us your feedback
Citations
337 citations
Cites methods from "Forward and adjoint simulations of ..."
...For this reason, we have evaluated SMPI, the component of SimGrid that makes it possible to simulate MPI applications, for both benchmarks and complex applications, including the full LinPACK suite [81], the Sweep3D [82] benchmark, the BigDFT Density Functional Theory application [83], and the SpecFEM3D geodynamics application [84] that is part of the PRACE benchmark....
[...]
264 citations
220 citations
213 citations
Cites background from "Forward and adjoint simulations of ..."
...Yellowstone is currently debated in terms of its size, depth extent and resolution (e.g. Smith & Braile 1994; Pierce & Morgan 2009; Faccenna et al. 2010; Fouch 2012)....
[...]
196 citations
References
5,322 citations
Additional excerpts
...…meshing tools, such as Abaqus (SIMULIA 2008), ANSYS (ANSYS 2011), GOCAD (Mallet 1992; Caumon et al. 2009), GiD (Gardia-Donoro et al. 2010; Ribó et al. 2011), Gmsh (Geuzaine & Remacle 2009), TrueGrid (Noble & Nuss 2004; Rainsberger 2006) or Salome (Ribes & Caremoli 2007; Bergeaud et al. 2010)....
[...]
...Gmsh: A three-dimensional finite ele- ment mesh generator with built-in pre- and post-processing facilities, Int....
[...]
...One may readily use other meshing tools, such as Abaqus (SIMULIA 2008), ANSYS (ANSYS 2011), GOCAD (Mallet 1992; Caumon et al. 2009), GiD (Gardia-Donoro et al. 2010; Ribó et al. 2011), Gmsh (Geuzaine & Remacle 2009), TrueGrid (Noble & Nuss 2004; Rainsberger 2006) or Salome (Ribes & Caremoli 2007; Bergeaud et al. 2010)....
[...]
...Hexahedral meshes may be generated based on packages such as CUBIT, Abaqus, ANSYS, GOCAD, GiD, Gmsh, TrueGrid or Salome, but the simple in-house mesher used in previous versions of SPECFEM3D remains available for backcompatibility....
[...]
4,632 citations
3,753 citations
3,198 citations
"Forward and adjoint simulations of ..." refers methods in this paper
...An elegant way to address this issue is to take advantage of adjoint methods (Tarantola 1984; Tromp et al. 2005) to calculate Fréchet derivatives for a pre-defined objective function....
[...]
2,168 citations
Related Papers (5)
Frequently Asked Questions (13)
Q2. What is the key aspect of mesh partitioning?
Another key aspect of mesh partitioning is minimization of the number of edge cuts, because this reduces the amount of MPI communications between processor cores (an edge cut occurs when two contiguous elements are assigned to distinct cores).
Q3. What is the name of the software package used for this paper?
The open source spectral-element software package SPECFEM3D Version 2.0 ‘Sesame’ used for this paper is available for download via CIG.
Q4. What is the way to generate hexahedral meshes?
Hexahedral meshing is also attractive for the SEM because it benefits from reduced errors and generally smaller element counts compared to tetrahedral meshing (Hesthaven & Teng 2000; Komatitsch et al. 2001; Vos et al. 2010).
Q5. What is the significance of the non-linear effects?
Note that non-linear effects are sometimes observed, for example, non-linear soil amplification, and non-linear constitutive relationships become important for studying such effects, for example, for risk mitigation (Xu et al. 2003; Dupros et al. 2010).
Q6. What is the importance of balancing the mesh?
Balancing the computational load and distributing the mesh on a large number of cores is crucial for optimized high-performance simulations (Martin et al. 2008a).
Q7. What is the key aspect of partitioning and load balancing?
Partitioning and load balancing equally distributes the elements over the different cores, since the whole domain is purely elastic.
Q8. What is the effect of the wavefield on the model boundary?
Note that once the wavefield hits the model boundary, it gets absorbed by the Clayton–Engquist–Stacey absorbing boundary conditions.
Q9. What is the acoustic wavefield for the asteroid?
To simulate a thin, 70 m regolith layer superimposed on strong bedrock, as suggested by Robinson et al. (2002), the authors assigned a low wave speed material to the elements touching the free surface and a high wave speed material to elements inside the asteroid, representing solid bedrock.
Q10. What is the source-time function of the wavefield?
The source–time function corresponds to a Dirac pulse low-pass filtered up to a cut-off frequency of 5 Hz. Fig. 10 displays wavefield snapshots for the first ∼10 s of the simulation.
Q11. What is the cost of partitioning a spectral element?
During partitioning, the authors therefore weight each element according to its associated domain type and computational cost to balance the overall numerical cost rather than simply the number of elements between partitions.
Q12. Why are the initial models restricted to spherical symmetry?
Because of the limitations of these approximate theories, only parts of seismograms can be used, and initial models are generally restricted to be spherically symmetric.
Q13. Why do the authors focus on this particular tool kit?
The authors focus on this particular mesh generation tool kit because it is a well-documented and feature-rich package, on which most of their own experience is based.