This book is an introductory text to a range of numerical methods used today to simulate time-dependent processes in Earth science, physics, engineering, and many other fields. The physical problem of elastic wave propagation in 1D serves as a model system with which the various numerical methods are introduced and compared. The theoretical background is presented with substantial graphical material supporting the concepts. The results can be reproduced with the supplementary electronic material provided as python codes embedded in Jupyter notebooks. The book starts with a primer on the physics of elastic wave propagation, and a chapter on the fundamentals of parallel programming, computational grids, mesh generation, and hardware models. The core of the book is the presentation of numerical solutions of the wave equation with six different methods: 1) the finite-difference method; 2) the pseudospectral method (Fourier and Chebyshev); 3) the linear finite-element method; 4) the spectral-element method; 5) the finite-volume method; and 6) the discontinuous Galerkin method. Each chapter contains comprehension questions, theoretical, and programming exercises. The book closes with a discussion of domains of application and criteria for the choice of a specific numerical method, and the presentation of current challenges.
Heiner Igel studied geophysics in Karlsruhe and Edinburgh. He obtained his doctoral degree in 1993 from the Institut de Physique du Globe in Paris developing parallel forward and inverse modelling tools for wave propagation problems. He then moved to the Institute of Theoretical Geophysics in Cambridge, UK, where he worked on wave simulation techniques for regional and global seismic wave propagation. In 1999 he became Professor of Seismology at the Ludwig-Maximilians-University Munich. His current interests include full-waveform inversion, high-performance computing, and rotational ground motions. He is a member of the German National Academy of Sciences.