next up previous contents [pdf] index

Next: C program Up: An example: Finite-Difference modeling Previous: An example: Finite-Difference modeling


This section presents time-domain finite-difference modeling [1] written with the RSF library. The program is demonstrated with the C, C++ and Fortran 90 interfaces. The acoustic wave-equation

can be written as

$\displaystyle \Delta U - \frac{1}{v^2}\frac{\partial^2U}{\partial t^2} = f(t)\vert\Delta U - f(t)\vert v^2 = \frac{\partial^2U}{\partial t^2},$    

where $ \Delta$ is the Laplacian symbol, $ f(t)$ is the source wavelet, $ v$ is the velocity, and $ U$ is a scalar wavefield. A discrete time-step involves the following computations:

$\displaystyle U_{i+1} = [\Delta U - f(t)]v^2\Delta t^2 + 2U_i - U_{i-1},$    

where $ U_{i ? 1}$ , $ U_i$ and $ U_{i + 1}$ represent the propagating wavefield at various time steps. In this exercise we shall use a discrete Laplacian accurate up to the fourth order and the second derivative of time is accurate up to the second order.