You are on page 1of 12

Seismic Forward Modeling

E. S. Krebes, Department of Geology and Geophysics, University of Calgary, Calgary


change very much over distances of the order of the dominant wavelength. This rule of thumb also implies that high frequency is a relative term ray theory could also be used with frequencies that would be considered low in certain situations, as long as the heterogeneity is so weak that the rule of thumb applies. Under these conditions of high frequency, the travel time T(x) of the wave from the source to a point x = (x,y,z) in a heterogeneous isotropic medium obeys the eikonal equation, (1) a non-linear partial differential equation, where = (x) is the seismic wave speed (for either a P or S wave) at the point x. The eikonal equation (1) can be obtained by substituting a trial solution for u into the equation of motion and making the appropriate high-frequency approximations. Much recent work has been done on computing travel times by solving the eikonal equation, especially using the finite difference method (see below), which is computationally efficient (see, e.g., Vidale, 1990; van Trier and Symes, 1991; and Kim and Cook, 1999). To actually trace a ray through a medium, a set of ray equations must generally be solved. Consider first a single isotropic heterogeneous medium in which varies smoothly with x. For a given wave speed (x), the geometrical ray path can be determined, i.e., the coordinates of any and all points x on the ray path can be computed, by solving the following system of ordinary differential equations: (2)

Introduction
The technique of forward modeling in seismology begins with the numerical solution of the equation of motion for seismic waves, or more specifically, the numerical computation of theoretical or synthetic seismograms, for a given geological model of the subsurface. The idea is then to compare the synthetic seismic traces with real seismic data acquired in the field. If the two agree to within an acceptable level of accuracy, the given geological model can be taken to be a reasonably accurate model of the subsurface. If not, the geological model is altered, and new synthetic traces are computed and compared with the data. This process continues iteratively until a satisfactory match is obtained between the synthetics and the real data. The forward modeling approach is, in a sense, the opposite of the inverse modeling approach in which the parameters of the geological model are computed from the acquired real data. Both methods though ultimately have the same goal the determination of the geological structure and lithology of the subsurface. As mentioned above, in forward modeling, one attempts to solve the equation of motion for seismic waves, which is nothing more than the mathematical expression of Newtons second law of motion, i.e., force = mass x acceleration, for material particles in a solid body set in motion by elastic waves. It is a second-order partial differential equation for the vector displacement u experienced by a point or particle in a solid medium due to the passage of a wave. Once u is known (after solving the equation of motion), the displacements of geophones can be computed and synthetic seismograms can be produced. There are a number of computational methods, and variants thereof, that are commonly used to compute the synthetic seismic traces, such as ray theory, the finite difference method, and the reflectivity method. All the methods have their individual advantages and disadvantages, and an in-depth modeling effort for a given data set can involve the use of several methods. In this article, I will discuss some of the basic principles and concepts of some of these methods. Many seismologists have contributed to the development of these methods, and it is unfortunately not possible to represent all of them in this article.

Ray theory
Ray theory can be used to compute seismic wave travel times and amplitudes along ray paths in a heterogeneous medium when the frequencies present in the wave are high enough so that the geometrical optics approximation can be used. As a rule of thumb, in order for ray theory to be applicable, the medium parameters (e.g., the Lam parameters and , or the P and S wave speeds) should not

Figure 1. A ray path in a vertically heterogeneous medium in which the wave velocity varies with depth z as = exp(z2). The horizontal and vertical directions are offset and depth, respectively. The ray starts at the origin with a take-off angle of 5.74 and has a travel time of 1.79 s. Continued on Page 29

28 CSEG RECORDER April 2004

Article
Seismic Forward Modeling
Continued from Page 28

Contd

where s is the arc length along the ray path. q T is called the slowness vector. It points in the direction of travel of the wave, i.e., it is tangential to the ray path at any point on the ray path. Note that the eikonal equation (1) can be written as qq = q2 = 1/2. The quantity q = 1/ is the reciprocal of the wave speed (hence the term slowness). For convenience in numerically solving (2), ds is often replaced by dT in (2), so that the more useful quantity T (the travel time) is used in the equations, rather than the arc length s. Figure 1, which was produced by numerically solving (2), shows an example of a ray path in a medium in which the velocity varies with depth z as = exp(z2). The standard ray tracing equations (2) can be modified and approximated to simplify and facilitate ray tracing in complex subsurface structures. For example, consider a geometrical ray R going between two points in a certain region of the subsurface, and suppose that the paths of the nearby adjacent rays in this region do not deviate much from the ray R. Such nearby rays are called paraxial rays. In this case, first-order Taylor expansions can be used to approximate the wave speed = (x) for the paraxial rays. Then, using a coordinate system centred on the ray results in a coupled system of linear differential equations for the components of slowness and the coordinates, which are generally easier to solve than (2). Such methods, and modifications thereof, are generally called paraxial ray tracing methods or dynamic ray tracing methods (see, e.g., erven, 2001). Ray amplitudes can also be computed, in the high-frequency approximation, by solving the so-called transport equation for the wave. For example, in the relatively simple case of an acoustic wave, the transport equation for the amplitude A(x) of the pressure wave at the point x is

error). In some of the simpler cases however, mathematical formulas can be developed which allow one to compute, relatively easily, the travel times and amplitudes for the rays at any offsets without actually tracing or shooting any rays. For example, consider the case of a geometrical ray in a medium consisting of a stack of flat homogeneous isotropic horizontal elastic layers, a model commonly used in land exploration seismology. Figure 2 shows an example of such a ray. If the source is a spherically symmetric point source located on the surface, then the travel time and amplitude of the wave arriving at the receiver can be computed from relatively simple algebraic formulas as follows. First, the desired source-receiver offset X is chosen. Then the ray parameter p for the ray going from the source to the receiver is computed by numerically solving the equation (4) for p, where m is the number of ray segments, and hj and j are the layer thickness and wave speed, resp., for the jth ray segment (assumed to be known). p is simply the horizontal component of the slowness vector along the ray, i.e., p = qx . Snells law states that p is constant along the ray path, i.e., p = sin(j)/j , j = 1, , m, where j is the angle that the jth ray segment makes with the vertical axis. Consequently, once p is determined, the take-off angle 1 of the ray can be computed if needed, as well as all the other angles j . Equation (4) can be solved easily using any root-finding method, e.g., the NewtonRaphson method. Once p is known, the travel time T of the ray can be computed from

(5) (3) Once T is known (e.g., by solving the eikonal equation 1), A can be computed, in principle. Tracing a ray between known source and receiver points in a structurally complex geological model of the subsurface is generally done by a ray shooting method, in which the take-off angle of a ray (the angle at which the ray leaves the source point) is determined iteratively (essentially through trial and The amplitude A() of the wave at the receiver for a single frequency can be computed from (6) where Y is the product of displacement reflection and transmission coefficients along the ray path, and L is the geometrical spreading factor which gives the amplitude loss due to the geometrical spreading of the wavefront, and i is the imaginary unit. For a ray such as the one in Figure 2, L is given by (7)

Figure 2. A typical geometrical ray of m segments in a layered medium.

A complex exponential is used in (6) for mathematical convenience it is the real part that represents the physical sinusoidal wave. Sometimes in practice, L is roughly estimated simply by the total length of the ray path. However, this estimate can be very inaccurate in general, differing from the correct L computed from (7) by a large amount (e.g., a factor of 2 or 3 or more).
Continued on Page 30
April 2004 CSEG RECORDER 29

Article
Continued from Page 29

Contd
T from (5). The real part of T, i.e., Re(T), gives the actual travel time of the wave, and the imaginary part, Im(T), gives the absorption factor, resulting in an exponential amplitude decay due to absorption (in (6), eiT becomes eiT = e-Im(T) eiRe(T) ). As p is complex, Y and L in (6) also become complex, as well as b in (8). These results are then used in (8) to compute the waveform. For super-critical offsets, care must be taken to correctly choose the signs of the square roots (cj ) in the above formulas, to avoid errors. For example, the waveform discrepancy at 1.5 km shown in Figure 12 of Hearn and Krebes, 1990, is due to an erroneous sign choice, and not due to anelastic effects. One of the main drawbacks of the ray method is that it is not accurate near critical offsets. For instance, for the ray in Figure 2, if the incidence angle at the deepest reflection point were near the critical angle for the P or S transmitted wave (at which the transmitted wave becomes evanescent, and propagates along the interface), then the ray amplitude computed from (6) and (8) above would not be accurate. Corrections can be made to ray theory to improve the accuracy in these cases, but they often involve elaborate and cumbersome mathematical extensions, and they are often not generally or easily applicable (e.g.,erven and Ravindra, 1971; Plumpton and Tindle, 1989; Gallop, 1999; Thomson, 1990; Aki and Richards, 2002). Figure 3 shows a set of seismic traces in which basic ray theory amplitudes agree well with exact calculations for pre-critical offsets, and reasonably well for post-critical offsets, but not at all for near-critical offsets. Including a mathematical correction to the basic ray theory result in Figure 3 to include the head wave (the refraction arrival) would have improved the accuracy in the post-critical zone, and the extent of the zone of inaccuracy surrounding the critical offset would also have been reduced but not eliminated. Figure 4 shows a comparison of the ray

Seismic Forward Modeling


If the mathematical form of the source pulse is known, then the amplitude of the waveform (consisting of a superposition of frequencies) at the receiver can also be computed. For example, the displacement u of the receiver is given by an inverse Fourier transform, i.e., (8)

where S() is the frequency spectrum of the source pulse, and b, the polarization vector, is a unit vector in the positive direction of displacement (defined by convention). For example, for an incoming P wave traveling in the xz plane, b = [sin(m), 0, cos(m)] = [pm, 0, cm]. If the free surface effect is included, b would be more complicated it would have to include the free surface reflection coefficients (the free surface effect takes into account the fact that the displacement of the receiver is affected not only by the incoming wave, but also by the waves reflected off the surface). Equation (8) is normally computed using a fast Fourier transform algorithm. The above method can then be used to compute synthetic seismograms which can be compared with real data to obtain a geological model of the subsurface. For sub-critical offsets, this method can also be easily extended to the case of absorbing (dissipative, anelastic) layers one simply goes through the same calculations (4)-(8) but with complex-valued and frequency-dependent wave speeds j (Hearn and Krebes, 1990). For example, if the quality factors Qj (typically frequency-independent) for each ray segment are known (Qj = for no absorption), then j Vj ()[1 - i/(2Qj )], where Vj is the real wave speed. One then obtains, by solving (4), a complex-valued p, which one then uses to compute a complex-valued travel time

Figure 3. Synthetic SH seismograms for two anelastic isotropic half spaces separated by an interface, with the source and receiver 500 m above the interface. The densities, shear wave speeds, and QS values in the upper and lower half spaces are 1.5 and 2.0 g/cm3, 1.0 and 2.0 km/s, and 50 and 100, respectively. The dominant frequency of the wavelet is 50 Hz. The critical offset is 0.577 km. The solid line traces give the exact response (computed by the -k method of Abramovici et al., 1990) and the dashed line traces are computed by ray theory. The figure is taken from Le et al. (2004).

Figure 4. Amplitude versus offset curves for the SH case for two elastic isotropic half spaces separated by an interface, with the source and receiver 1000 m above the interface. The densities and shear wave speeds in the upper and lower half spaces are 2.0 and 2.0 g/cm3, and 1.0 and 2.0 km/s, respectively. The frequency is 20 Hz. The graph shows the exact result computed by numerical evaluation of the generalized reflection integral, and the approximate result computed with ray theory. Continued on Page 31

30 CSEG RECORDER April 2004

Focus Article
Seismic Forward Modeling
Continued from Page 30

Contd

theory amplitude and the exact amplitude against offset. Again, we see that ray theory amplitudes are quite accurate for small offsets corresponding to sub-critical angles, are reasonably accurate for super-critcal offsets, but not at all accurate for near-critical offsets. For deep reflectors in horizontally layered media, the reflection angles are generally small (well below critical), and ray theory can safely be used to produce synthetic seismograms. However, for shallow reflectors with large velocity contrasts, reflection angles can be large for the larger offsets, in which case ray theory could not be used for near-critical angles and offsets. Reflections near critical angles could also occur for deeper reflectors if they are dipping. Ray theory is also inaccurate near caustic zones, where rays from a single source converge or focus because of changing velocity gradients, for example. Focusing of wave energy obvi ously produces high amplitudes (e.g., a magnifying lens can focus sunlight enough to burn paper), but in the ray theory approximation, the computed ray amplitudes are infinite at caustics, because the geometrical spreading factor L 0 there. L is a measure of the spreading of the wavefronts, and so when they converge rather than spread, L decreases (and vanishes at the caustic in ray theory). In addition, as ray theory is a high frequency approximation, or low wavelength approximation, it cannot be applied accurately to structures with thin layers, thin meaning thinner than a dominant wavelength, roughly speaking. Ray theory also does not produce the complete or full wave field: ray-synthetic seismograms do not contain the waveforms for all the waves arriving at the receiver, but only those for the specific rays selected by the user. Of course, one may include as many rays as one wants in a typical computation, but one is often not sure in advance whether a particular ray will have a high enough amplitude to make it worthy of inclusion (although some progress has been made in this regard in determining threshold amplitudes of rays see, e.g., Hron, 1971, 1972). Ray theory can also be extended and applied to more complex cases involving other types of sources, laterally heterogeneous layers, interfaces of any dip and strike, curved interfaces, and anisotropic media (e.g., Richards et al, 1991; Chapman, 1985, erven, 2001; Aki and Richards, 2002; Penk et al., 1996). However, the additional mathematical theory and numerical computations involved are generally extensive, and the final results still generally include the inaccuracies mentioned in the preceding paragraphs. Nevertheless, in spite of the drawbacks, basic ray theory is still widely used to compute synthetic seismograms, because of the relative simplicity of the simpler versions of the method, the fast computational times, and the fact that the ray paths for all the events on ray-synthetic seismograms can be identified from the event travel times (because the rays comprising the synthetic are chosen by the user). In particular, ray theory is very useful for computing travel times, if not always signal amplitudes. However, for more accurate amplitude computations, and for synthetics which include all the possible waves than can arrive at a receiver, one must resort to exact or nearlyexact full-wave methods, such as those discussed below.

Generalized Ray Theory The geometrical ray theory result in (6) and (8) above, an approximation to the exact wavefield, makes use of only one value of the ray parameter p, namely, the value (call it p0) which satisfies (4), the equation for X. A more accurate result would involve an appropriate superposition of waves with different ray parameter values. A simplistic way to see this is shown in Figure 5, which shows a 4-segment geometrical ray, with ray parameter p0, representing the reflected wave going from a source point at x = 0 to a receiver at a known offset x = X0. The layers are homogeneous. The plane wavefronts associated with the geometrical ray are also shown in Figure 5. In addition, another ray with ray parameter p and with a larger offset X(p) is shown. This ray does not arrive at the receiver point X0. Nevertheless, note that the plane wavefronts associated with this ray also strike the receiver. Consequently, in this sense, this ray also contributes to the displacement at the receiver, and should therefore be included in the computation of the receiver response if greater accuracy is desired. In fact, one can then surmise that superimposing the contributions of all such rays with different p values might give the exact response, i.e., the full wavefield, or at least a more accurate response, which is in fact the case. By analyzing this problem mathematically, with the intent of obtaining the exact response, one obtains a formula expressing the displacement of the receiver, due to the reflection from the second interface in Figure 5, as an integral over p, with p going from 0 to (the superposition of plane waves mentioned in the previous paragraph). In fact, this integral contains within it not only the displacement due to the reflected wave but also that due to the head wave (the refraction arrival) from the second interface the integral is said to give the generalized reflection response. In Figure 5, the geometrical ray path and the ray path associated with the head wave, taken together, can be called a generalized ray. The basic geometrical ray formula (6) is actually the lowest-order approximation of the generalized reflection integral. Mathematical formulas for generalized ray responses can also

Figure 5. A two-layer-over-half-space model in which velocity increases with depth. The geometrical ray and head wave between the source and receiver are shown, as well as a ray with parameter p arriving at the offset X(p). The figure represents a simple way of understanding the concept of a generalized ray. Continued on Page 32
April 2004 CSEG RECORDER 31

Article
Continued from Page 31

Contd
were welded together at the interface. T is also sometimes called the stress vector because its components are the normal and shear components of the stress tensor. The boundary conditions, when expressed as mathematical equations and solved, yield the formulas for the reflection and transmission coefficients. Y in (6) is a product of such coefficients. For plane wave propagation in the xz plane (where x is offset and z is depth) of a vertically heterogeneous solid medium (e.g., a stack of horizontal homogeneous layers, or a medium in which the medium parameters vary smoothly with depth), the displacement u and the traction T can be computed anywhere in the medium using the propagator matrix. More specifically, for plane harmonic P-SV waves, u and T at any depth z can be computed from given values of u and T at some depth z0 by using the following equation:

Seismic Forward Modeling


include multiples and any other wave types than are associated with the ray. Typically, they are applied for high frequencies (which in this case means travel times much greater than the wave period, or source-receiver offsets much greater than the wavelength). They are appealing because they give the complete (or nearly complete) wavefield at the receiver, and have been used in the literature to calculate exact synthetic seismograms. The fact that they are superpositions of plane waves means that plane wave reflection and transmission coefficients can be used in the integrands. Note however that in computing synthetic seismograms for a layered geological model, it is still up to the user to decide which generalized rays to include in the computation. If certain generalized rays are left out of the calculation that should have been included, the synthetics will not include the corresponding events, which could hamper interpretation when the synthetics are compared with real data. Also, a disadvantage of generalized ray theory is that the integrals are notoriously difficult to evaluate the integrands oscillate wildly. However, numerical methods have been developed to evaluate them as efficiently as possible (see, e.g., Aki and Richards, 2002). The exact results in Figures 3 and 4 were computed by evaluating generalized ray integrals. Matrix Methods When computing synthetic seismograms for the stack of layers in Figure 2 using basic geometrical ray theory or generalized ray theory, one must select the particular rays to include in the synthetics. For example, it is common to choose only the primary reflections (rays which reflect only once before returning to the receiver). However, in some cases, one may wish to include multiples (rays which reflect more than once), such as the ray in Figure 2. Clearly, there are an infinite number of multiples in a stack of layers, but only a finite number of them can be included in a synthetic based on the ray methods discussed above. The choice of which multiples to include depends on the problem one is attempting to solve. Typically, one would wish to include the multiples whose amplitudes are above a specified threshold, and mathematical formulas have been developed to facilitate the choice (Hron, 1971, 1972). Also, it is clear that the more rays (primaries or multiples) that are included, the greater the computation time. However, it is in fact possible to include all the multiples (an infinite number) by using the so-called propagator matrix method. This is in essence done by replacing an infinite series with a finite expression, in the same sense that the infinite series 1 + x + x2 + x3 + is equivalent to the function 1/(1-x). The basic ideas involved in the propagator matrix method are described in the following paragraphs. The boundary conditions that seismic waves satisfy at each interface are that the x, y and z components of displacment u and traction T (the force per unit area acting across an interface due to a wave) must be continuous across the interface, i.e., their values in the layers above and below the interface must match at the interface. These are called welded-contact boundary conditions, and they express the fact that two layers move as a unit at the interface when disturbed by a wave they move as if they

(9) where u and T are 2x1 column vectors whose elements are the vector components of displacement (ux and uz) and traction (Tx and Tz), respectively, and where P(z, z0) is the propagator matrix, a 4x4 matrix containing the medium parameters, the frequency, the ray parameter, and the vertical phase factors of the plane waves. The column vector f is called the displacementstress vector. For a stack of layers, f can be continued through the layers because f contains precisely the quantities that are continuous across an interface. In other words, if we know f in the first layer, we can compute f in the last layer (or any layer). Also, for a stack of layers, the propagator matrix P(z, z0) is itself the product of a sequence of matrices, known as layer matrices, and their inverses, which contain the parameters for the individual layers. The propagator matrix method can be used to solve a number of different types of problems in seismic forward modeling in vertically heterogeneous media. For example, it can be used to compute the reflection and transmission coefficients for a stack of horizontal homogeneous layers (as opposed to the coefficients for a single interface). More precisely, suppose that a downgoing plane wave of a given frequency is incident upon the top layer of a stack of such layers. The incident wave will be transmitted into the stack and be multiply reflected and transmitted inside all the layers. The upgoing wave emerging from the top of the stack into the incidence medium will be a superposition of all the upgoing waves (produced by multiple reflection and transmission at all the interfaces of the stack) passing upwards through the top of the stack. The relative amplitude of this upgoing wave can be thought of as the reflection coefficient of the stack. It will be a function of the thicknesses, densities and wave speeds of all the layers. Similarly, the downgoing wave in the medium below the stack will be a superposition of all the downgoing waves (due to multiple reflection and tranmission in the interior of the stack) passing through the bottom of the stack. The relative amplitude of this downgoing wave can be thought of as the transmission coefficient of the stack. It is
Continued on Page 33

32 CSEG RECORDER April 2004

Article
Seismic Forward Modeling
Continued from Page 32

Contd

important to note that the stack reflection and transmission responses contain the contributions of all the multiples (there are an infinite number of them). The stack coefficients are also functions of frequency, whereas interface coefficients are not (except for dissipative media). Such stack reflection and transmission coefficients have been used in the so-called reflectivity method (e.g., Fuchs and Mller, 1971) and its variants, which is a popular method for computing synthetic seismograms for a stack of horizontal layers for forward modeling purposes. As an example of an application of the reflectivity method, consider a geological model consisting of a single layer overlying a stack of many thin layers, and suppose one wants to model the reflection response of the thinlayer stack due to a point source in the single upper layer. The continuation equation (9) would be used to obtain the amplitude of the wave incident upon the stack, the stack reflection response, and to continue it to a receiver on the surface. Then, an integral over the ray parameter p is performed to obtain the generalized reflection response, and also an integral over the frequency to obtain the waveform at the r eceiver. In practice, the integral over p is often limited to sub-critical values, as the interest is often just in the small-angle body wave response. The resulting waveform would contain all the multiples as well as the primary reflections. The reflectivity method can also be combined with other methods to enhance the output of the modeling process. For example, it can be combined with asymptotic ray theory (Hron, 1971, 1972) in which multiples with sufficiently large amplitudes are ray-traced and included in the synthetics, to give the so-called ray-reflectivity method (Daley and Hron, 1982). One advantage of this combination is that all the events on the synthetics can be identified (in terms of ray paths). Matrix methods are also used in a technique sometimes called the recursive reflectivity method (e.g., Kennett, 2001). In this technique, mathematical formulas for the stack reflection and transmission coefficients for a single layer are first developed by systematically adding up the contributions of all the individual multiple reflections and transmissions in the layer to obtain the total response. The resulting sum is an infinite series, which is replaced by a finite expression using the abovementioned formula, 1 + x + x2 + x3 + = 1/(1-x) , where x is a product of the internal reflection coefficients of the layer and a vertical phase factor. These one-layer stack formulas are then used to obtain the stack coefficient formulas for a two-layer stack, which are in turn used to obtain the formulas for a threelayer stack, etc. These formulas all have the same mathematical form, regardless of the number of layers involved. Although the stack coefficients for any size stack can be computed in this way, it can be shown that a more efficient two-step recursive procedure can be developed for computing them. This procedure involves applying vertical phase factors to bring the stack coefficients from the bottom of a given layer to the top of the layer, then using the stack coefficient formulas to cross the interface into the bottom of the next layer above the given one. This process is continued recursively.

As mentioned above, an integral over the ray parameter p can also be performed to obtain the generalized reflection response, and also an integral over the frequency to obtain the waveform at the receiver. It can be shown that these many-layer stack formulas give the same result as the propagator matrix method. Although they are more complicated and involve more computation, they offer several advantages over the propagator matrix approach: (a) the reflection and transmission processes of individual wave modes (P and S) can be followed more easily, (b) P-S conversions can be included or left out (which is useful for determining the effect of conversions on the synthetics, (c) useful approximate formulas can be developed from the exact stack formulas, e.g., approximate formulas for the case in which only a single conversion is allowed, (d) if the infinite series is used in the formulas (instead of the corresponding finite expression), it can be truncated to include only as many multiples as desired (which is useful for determining the effect of multiples), (e) if the infinite series is used, the individual terms have a very simple dependence on frequency, allowing the formulas to be used with other frequency-based methods, and (f) the terms in the formulas are directly related to the physical processes occurring in the stack (the multiple reflections and transmissions), allowing more physical insight into the processes, whereas the propagator matrix approach gives only the combined cumulative effect. If however, only the total response is required, the propagator matrix method is generally easier and more straightforward to use. The matrix methods discussed above can also be used for wavefield extrapolation (e.g., Bale and Margrave, 2003), which is a part of most seismic wave equation migration processes, and also other inversion methods which contain a forward modeling stage. The finite difference method Another popular seismic forward modeling method is the finite difference (FD) method, which is a numerical method for solving partial differential equations. It can be applied to the seismic equation of motion to compute the displacement u at any point in the given geological model, e.g., at the surface (for generating synthetic seismograms for comparison with recorded data), or at some depth z (for doing wavefield extrapolation or downward continuation, a stage of wave equation migration). There are a number of variants of the method, and many small improvements have been made to the basic method by many researchers. The main idea behind the FD method is to compute the wavefield u(x,y,z,t) at a discrete set of closely-spaced grid points (xl , ym , zn , tq ) , with l, m, n, q = 0, 1, 2, 3, 4, 5, , by approximating the derivatives occurring in the equation of motion with finite difference formulas, and recursively solving the resulting difference equation. As an example of a finite difference formula for approximating a derivative, consider the basic definition of a derivative, which can be found in any elementary calculus text, i.e.,
Continued on Page 34
April 2004 CSEG RECORDER 33

Article
Continued from Page 33

Contd

Seismic Forward Modeling

(10) This leads to the forward-difference approximation for dy/dx, given by (11) where x is a small finite-sized interval or grid step in the x direction (adjacent grid points in the x direction are separated by the amount x). Similarly, the backward-difference approximation is given by (12) and the central-difference approximation is given by (16) which can be used to recursively compute u at the grid point (x, t+ t) if one knows the value of u at the grid points (x,t) and (xx,t). Given some starting values, i.e., initial conditions or initial values, such as u(x,0) = f(x), where f(x) is an arbitrary function of x (the waveform at t = 0) and given values of the grid steps x and t, i.e, a value for g, one can then compute the values u(x, t) for all x, which are then in turn used to compute the values u(x, 2t) for all x, etc. In other words, u can be computed at all times t by marching forward in time in this way. It can be shown that if one chooses x and t so that g 1, then (16) is a stable FD scheme, i.e., the errors resulting from making FD approximations to the derivatives remain finite they do not grow without limit as the time-marching computations progress. In fact, if one chooses g = 1, the resulting simple FD scheme, u(x, t+t) = u(x-x,t), gives the exact solution to (14). For g < 1 however, the scheme in (16) is first-order accurate in space (x) and time (t), because the errors in the forward- and backward-difference approximations used for the derivatives are of first order in x and t. If one naively uses the forward-difference approximation (11) to approximate both u/x and u/t in (14), then one obtains an unstable FD scheme, in which the error grows without limit during the computations, regardless of the value of g. In general, for any 3D partial differential equation, such as the elastic equation of motion, it is necessary to choose the correct FD approximations to the derivatives appearing in the equation, and to choose appropriate values for the step sizes x, y, z and t, to ensure numerical stability. Often, a preliminary mathematical analysis of the partial differential equation under study is useful, and sometimes necessary, to determine which type of FD approximations to use. The 3D seismic equation of motion, a second-order partial differential equation in the displacement u, can be solved in the same way, although the resulting difference equation is much more complicated than (16). Normally, the difference equation is marched forward in time t, with u being computed at all values of x, y and z for each time level. Because the wavefield is then known everywhere, it is possible to create movies of the wavefronts propagating through the material, which are helpful in understanding seismic wave propagation. FD computations are extremely time-consuming. 3D FD computer programs for realistic geological models can take many hours to run. Consequently, it is common practice to do FD calculations in 2D instead, to reduce the computation time. Also, various computational techniques have been developed to improve efficiency. Even in 2D however, computation times are typically much longer than those of other methods, such as ray theory. However, as computer technology advances, 3D calculations should become more practical.

(13) It can be easily shown, by applying the Taylor series expansion to these formulas, that the error made in using the forward- and backward-difference approximations in (11) and (12) is of order x (i.e., it is linear in the small quantity x), but that the error for the central-difference approximation in (13) is of order (x)2 (it is quadratic in x). Consequently, the central-difference formula in (13) is a more accurate approximation to dy/dx. As an example of the application of the FD method, consider the 1D partial differential equation (14)

where u = u(x,t). It is known as the one-way wave equation because it admits solutions representing waves travelling with constant speed c in the positive x direction but not the negative x direction. In mathematical terms, the exact solution is u = f(xct), where f is an arbitrary function. Since the exact solution of (14) is known, one would not of course need to use the FD method to solve (14) in practice we use it here only as a simple example of how to apply the FD method. There are many ways to obtain a FD approximation to this equation. For example, one possibility is to use a backwarddifference approximation for u/x and a forward-difference approximation for u/t, resulting in the equation (15) where t is a small finite-sized interval or grid step in the t direction. Upon re-arrangement, one obtains

Continued on Page 35
34 CSEG RECORDER April 2004

Article
Seismic Forward Modeling
Continued from Page 34

Contd

Accuracy of the computed solution is another primary concern in FD computations. One way to generally improve the accuracy of the FD solution is to use smaller grid step sizes (while making sure that the stability condition is always satisfied, e.g., g 1 for (16) ). However, this increases the computation time. In addition, if the grid step sizes are made too small, accuracy can decrease, due to the occurrence of significant roundoff error. Another way to generally improve accuracy, without reducing the grid step sizes, is to use higher-order approximations for the derivatives. As indicated above, the forward- and backward-difference approximations used in (11) and (12) lead to first-order accurate FD schemes, but the central-difference approximation leads to second-order accurate FD schemes, and is commonly used in constructing typical FD schemes. Higherorder approximation formulas, involving a series or combination of forward-, backward- or central-difference approximations, can be used as well, but they result in more complicated and cumbersome FD schemes and in an increased computation time. An unwanted artifact of FD calculations is a degradation of the accuracy of the solution caused by grid dispersion (e.g., Alford et al., 1974). This occurs if the spatial grid steps are chosen too large, i.e., if the grid is too coarse. To avoid grid dispersion, a typical rule of thumb is that the spatial grid steps should be no larger than one-tenth the size of the shortest wavelength in the wavefield, i.e., there should be at least 10 grid points per wavelength. If higher-order FD schemes are used (i.e., if higher-order derivative approximations are used), this number can be reduced, e.g., 5 grid points per wavelength (e.g., Alford et al., 1974; Levander, 1988). However, this does not necessarily result in a reduction in computation time, as the higher-order schemes are more complicated. The main advantage of using FD methods in seismic modelling is that they produce the full wavefield all the different types of waves that exist (reflections, refractions, etc.) generally will appear in the computed solution with correct amplitudes and phases. One difficulty of the method is the question of how to insert a given type of source of waves. A straightforward way to do this is to use an exact solution in the vicinity of the source, and then continue the solution with the FD method. Other ways involve modifications of this approach (e.g., Alterman and Karal, 1968; Kelly et al., 1976). A number of different variants of the FD method are in use, for example, the velocity-stress FD method (e.g., Madariaga, 1976; Virieux, 1986). In this method, the equation of motion, which is a second-order partial differential equation in the particledisplacement u, is re-expressed as a coupled system of first-order partial differential equations in the components of the particlevelocity (u/t) and the traction T. First-order equations are generally easier to solve. In addition, the use of staggered grids, in which the particle-velocity components and the traction components are computed on different grids which are shifted or staggered relative to each other by half a spatial grid step in all directions, makes for efficient and accurate computation. Another popular variant of the FD method is the pseudo-spectral method (Kosloff and Baysal, 1982). In this method, the time

derivatives are still computed using a FD approximation in the time domain, but the space derivatives are computed in the wavenumber domain. More specifically, to obtain a spatial derivative, say ux/x, at a given time level, a spatial Fourier transform is performed on the sequence of wavefield values ux (known from a previous stage of the FD computation) along the x direction to obtain the wavenumber (kx ) spectrum of ux (another sequence of numbers). Then this new sequence is multiplied by ikx which, in the kx domain, is equivalent to taking the derivative ux /x (i is the imaginary unit). Finally, an inverse spatial Fourier transform is performed on this altered sequence to give the differentiated sequence of values ux /x in the x domain. The same technique is applied to the other components and in the other 2 spatial directions. The results are then used to compute all the wavefield values at the next time level. The method gives quite accurate results because the spatial derivatives are done in the wavenumber domain, avoiding the inaccuracies associated with FD approximations to derivatives. Another advantage of this method is that it requires considerably fewer grid points per wavelength than the standard FD schemes in the space-time domains, making it attractive for 3D computations. With todays computers, running at 2-3 GHz or higher, medium-sized 3D model computations can be done in several hours or less. Another unwanted artifact of the FD method is the generation of artificial reflections. These are reflections coming from the edges of the numerical grid, rather than from the bona-fide geological interfaces in the model. For example, to compute a value for ux at the time t+t for a node at the very edge of the grid, one generally needs to know the value of ux at the earlier time t at a node just off the grid (many FD schemes work that way). If one naively sets the off-grid value equal to zero, then strong artificial reflections from the grid edge are produced, because by setting the off-grid displacement value equal to zero, one is implicitly making the off-grid region into a rigid medium, resulting in an elastic-rigid interface. The resulting impedance contrast produces the artificial reflections which propagate back into the grid, and appear in the synthetics. To suppress such artificial reflections, non-reflecting or absorbing boundary conditions are used at the grid edges. In the case of non-reflecting boundary conditions, FD schemes which are different from the one used in the interior of the grid (which is based on the standard equation of motion) are used. These alternate schemes are mathematically designed so that the arti ficial reflections produced have low (ideally zero) amplitudes. Sometimes they involve solving one-way wave equations near the grid edges equations whose solutions are waves which can travel in one direction only, i.e., off the grid but not back on to it. In the case of absorbing boundary conditions, one uses schemes which absorb the energy of the artificial reflections. Typically, the grid is enlarged by a small amount a few layers and a modified FD scheme which includes the effects of physical absorption or dissipation is solved in the added grid zone. If the FD scheme used in the interior of the grid already accounts for seismic wave absorption (i.e., if it is based on an equation of motion containing absorption terms see, e.g., Emmerich and Korn, 1987; Krebes and Quiroga-Goode, 1994),
Continued on Page 36
April 2004 CSEG RECORDER 35

Article
Continued from Page 35

Contd
These figures illustrate how various physical effects in seismic wave propagation can be investigated, because the FD method produces the full wavefield. Figure 6 and 7 show 2D synthetic shot records for an explosive acoustic pressure source buried at depths of 8 m and 18 m, resp., in a horizontal homogeneous elastic layer overlying a rigid half-space. The synthetics show the expected events, i.e., the direct arrival, the dispersive surface wave and the reflection. They also show how the deeper source results in a lowering of the resolution and a reduction in the surface wave amplitude. Figures 8 and 9 again show 2D synthetic shot records for a source consisting of a force directed vertically downward at a point on the surface (e.g., a hammer blow). The non-symmetric source generates both a P wave and an SV wave. The geological model is a horizontal homogeneous elastic layer overlying a homogeneous elastic half-space. The top of the elastic layer is a free surface. The synthetics show the expected events, i.e., the direct arrival, the reflected and converted waves, the head waves (refraction arrivals) and the prominent dispersive guided waves. They also show the amplitude and phase (polarity) relationships among the wave types. In addition, Figure 9, for the horizontal component of particle motion, shows a polarity reversal in all events as one goes from the left side of the record to the right side. This happens because the waves arriving at geophones left and right of centre produce geophone motions whose x components of displacement have opposite signs. Some numerical artifacts can also be seen in Figure 9 on the lower left and lower right edges of the grid. Figures 10-16 show a series of snapshots of the wavefronts corresponding to the shot records in Figures 8 and 9, at the

Seismic Forward Modeling


then it is a simple matter to suppress artificial reflections one simply makes Q very small near the grid edges. Q is a measure of the elastic quality of the medium the lower the Q, the more absorbing or dissipative the medium is (Q = for a perfectly elastic medium in which waves experience no absorption). As with all computational methods, non-reflecting and absorbing boundary conditions have their limitations, but in general, they work quite well. Figures 6-16 show examples of synthetic shot records and wavefronts computed with the standard 2D FD method. Figures 6 and 7 were produced by Peter Manning and Gary Margrave, and Figures 8-16 were produced by Louis Chabot, all members of the CREWES project at the University of Calgary.

Figure 6. A 2D synthetic shot record produced by the finite difference method for a buried pressure source. The horizontal axis is the source-receiver offset in meters and the vertical axis is the 2-way travel time in milliseconds. The geological model is a flat elastic layer over a rigid half-space. The upper surface of the elastic layer is a free surface (e.g., an air/rock interface). The source depth is 8 m. The figure was produced by Peter Manning and Gary Margrave, CREWES project, U. of Calgary.

Figure 7. Same as Figure 6, except the source depth is 18 m. The figure was produced by Peter Manning and Gary Margrave, CREWES project, U. of Calgary.

Figure 8. A 2D synthetic shot record for the vertical component of geophone motion produced by the finite difference method for a surface source. The horizontal axis is the source-receiver offset in meters and the vertical axis is the 2-way travel time in seconds. The model is 3 km x 1 km. The geological model is a flat elastic layer with a free upper surface overlying an elastic half-space. The source is a vertically directed point force located on the free surface. The density, P and S wave velocities in the elastic layer are 2.1 g/cm3, 1000 m/s and 500 m/s, resp., and in the half-space they are 2.3 g/cm3, 1850 m/s and 925 m/s. Figures 8-16 were produced by Louis Chabot. Continued on Page 37

36 CSEG RECORDER April 2004

Article
Seismic Forward Modeling
Continued from Page 36

Contd

Figure 9. Same as Figure 8, except it is for the horizontal component of motion.

Figure 11. Same as Figure 10, except the elapsed time is 500 ms.

Figure 10. Fixed-time plot, or "snapshot", of the wavefronts corresponding to the shot records and geological model of Figures 8 and 9, produced by the finite difference method, at an elapsed time of 300 ms (the source is activated at time t = 0). The horizontal component of particle motion is shown in the upper half and the vertical component in the lower half. The locations of the free surface (where the source is) and the interface between the layer and half-space can be inferred from the locations of the incident and reflected wavefronts on this and the following figures.

Figure 12. Same as Figure 10, except the elapsed time is 600 ms.

nature of the wavefield produced by a non-symmetric source, even for a simple one-layer model. Regarding point (e) in the preceding paragraph, the variation of amplitude observed along the wavefronts is consistent with the radiation pattern for a vertically directed point force (known from theoretical studies of seismic wave propagation). For example, this radiation pattern predicts that a downwards hammer blow would result in mainly a large vertical (longitudinal) displacement of the medium at points vertically below the source point, with little or no horizontal (transverse) displacement at these points (which one might also predict using physical intuition). This prediction is confirmed, for example, in the transmitted P wavefront in Figure 12 (the lowermost wavefront in each half, upper and lower, of the figure) for the horizontal component, the centre of the transmitted P wavefront has zero amplitude, but for the vertical component, it has a high amplitude. A good way to study Figures 10-16, with the intent of understanding wave propagation, is to select a certain wave and
Continued on Page 38
April 2004 CSEG RECORDER 37

following fixed times: 300 ms, 500 ms, 600 ms, 800 ms, 1000 ms, 1200 ms, and 1400 ms. The upper half of each figure shows the horizontal component of motion and the lower half shows the vertical component. Several interesting wave propagation features can be seen in the figures they show (a) that the hammer blow source produces both a downgoing P and SV wave; (b) that there is a downgoing head wave connecting the downgoing P and SV wavefronts emerging from the source point; (c) the upgoing Pand SV head waves (refraction arrivals) produced by the transmitted P wavefront beyond the critical angle (when it breaks away from the other wavefronts at the interface); (d) the expected left-to-right polarity reversal in the horizontal component; (e) the variation of amplitude along some of the reflected and transmitted wavefronts due to the non-symmetric hammer blow source; and (f) the complex

Article
Continued from Page 37

Contd
follow what happens to it from one snapshot to the next (as time progresses). For example, consider the first reflected P wave the vertical component. Beginning with Figure 10 (lower half), which shows the downgoing high-amplitude incident P wave that has not yet reached the interface, we move to Figure 11 and note the beginnings of the first reflected P wave. Since the incident P wave is reflecting off a medium (the halfspace) which has a larger acoustic impedance (density x Pwave velocity), the vertical component of displacement experiences a polarity reversal (the central peak of the reflected P wavelet is white, not black as for the incident P wave). This is just like the polarity reversal in displacement experienced, upon reflection, by an incident wave on thin string connected to a thick rope. We then follow the reflected P wave upwards in Figures 12 and 13, where it then reflects off the free surface. This free surface reflection can be seen in Figure 14 note that there is now no polarity reversal in the vertical component of displacement because the wave is reflecting off a medium with a lower acoustic impedance, i.e., the air layer (although there is a polarity reversal in the pressure at the free surface a compression reflects as a rarefaction, i.e., a dilatation, off a medium with a lower acoustic impedance). We then follow the P wave reflected from the free surface back down to the interface in Figure 15, after which it reflects off the interface with another polarity reversal (due again to the larger impedance in the halfspace), which can be seen in Figure 16. Note also the decreasing amplitude of the wave. FD forward modeling has also been done for solid media containing interfaces that are not in welded contact with each other (e.g., Slawinski and Krebes, 2002a, 2002b). Non-welded contact means that the displacement u is no longer continuous across an interface, although the traction T still is. Media containing joints, fractures and faults may in some cases fall into this category.

Seismic Forward Modeling

Figure 13. Same as Figure 10, except the elapsed time is 800 ms.

Figure 14. Same as Figure 10, except the elapsed time is 1000 ms.

Figure 15. Same as Figure 10, except the elapsed time is 1200 ms.

Figure 16. Same as Figure 10, except the elapsed time is 1400 ms.

Continued on Page 39
38 CSEG RECORDER April 2004

Article
Seismic Forward Modeling
Continued from Page 38

Contd

Other methods Forward modeling has also been done with other methods. For example, some success has been achieved with the finite element method. This method still involves computations on a grid or mesh, but involves representing the components of the solution u(x,y,z,t) to the equation of motion as linear superpositions of appropriately selected basis functions. For example, see the articles in Kelly and Marfurt (1990), as well as Moczo et al. (1997), Kay and Krebes (1999), and the review article by Carcione et al. (2002). The finite element method gives reliable results, and it can be more flexible and more accurate than FD methods when the geological interfaces in the model are irregular, but it is also more difficult to implement and apply than the FD method. A variety of other methods have also been used for models with irregular interfaces (see, e.g., Penk et al., 1996). Lastly, seismic wave propagation in media containing smallscale heterogeneities such as cracks, fractures and inclusions, which scatter the waves, can be usefully modelled by solving integral equations which describe their behaviour (e.g., see the references listed by Carcione et al., 2002).

Gallop, J.B., 1999. Asymptotic Descriptions of Seismic Waves. Ph.D. thesis, University of Alberta. Hearn, D. and Krebes, E.S., 1990. On computing ray-synthetic seismograms for anelastic media using complex rays, Geophysics, v. 55, p. 422-432. Hron, F., 1971. Criteria for selection of phases in synthetic seismograms for layered media. Bull. Seism. Soc. Am., v. 61, p. 765-779. Hron, F., 1972. Numerical methods of ray generation in multilayered media. Methods in Computational Physics, v. 12, ed. B.A. Bolt, Academic Press, New York. Kay, I., and Krebes, E.S., 1999. Applying finite element analysis to the memory variable formulation of wave propagation in anelastic media . Geophysics, v. 64, p. 300-307. Kelly, K.R. and Marfurt, K.J. (eds.), 1990. Numerical Modeling of Seismic Wave Propagation. Society of Exploration Geophysicists, Tulsa. Kelly, K.R., Ward, R.W., Treitel, S., and Alford, R.M., 1976. Synthetic seismograms: a finite-difference approach. Geophysics, v.41, p. 2-27. Kennett, B.L.N., 2001. The Seismic Wavefield. Volume 1: Introduction and Theoretical Development. Cambridge University Press, Cambridge, U.K. Kim, S., and Cook, R., 1999. 3-D traveltime computation using second order ENO scheme. Geophysics, v. 64, p. 1867-1876. Kosloff, D. and Baysal, E., 1982. Forward modelling by a Fourier method. Geophysics, v. 47, p. 1402-1412. Krebes, E.S. and Quiroga-Goode, 1994. A standard finite-difference scheme for the time-domain computation of anelastic wavefields. Geophysics, v. 59, p. 290-296. Le, L.H.T., Krebes, E.S. and Quiroga-Goode, G.E., 1994. Synthetic seismograms for SH waves in anelastic transversely isotropic media. Geophys. J. Int., v. 116, p. 598-604. Levander, A.R. 1988. Fourth-order finite-difference P-SV seismograms. Geophysics, v. 53, p. 1425-1436. Madariaga, R., 1976. Dynamics of an expanding circular fault. Bull. Seism. Soc. Am., v. 66, p. 639-666. Moczo, P., Bistricky, E., and Bouchon, M., 1997. Hybrid Modeling of P-SV Seismic Motion at Inhomogeneous Viscoelastic Topographic Structures. Bull. Seism. Soc. Am., v. 87, p. 1305-1323. Plumpton, N.G. and Tindle, C.T., 1989. Saddle point analysis of the reflected acoustic field, J. Acoust. Soc. Am., v. 85, p. 1115-1123. Penk, I., erven, V., and Klimes, L., 1996. Seismic Waves in Laterally Inhomogeneous Media, Part I. Birkhuser Verlag, Basel, Switzerland. Richards, P.G., Witte, D.C. and Ekstrom, G., 1991. Generalized ray theory for seismic waves in structures with planar nonparallel interfaces. Bull. Seism. Soc. Am., v. 81, p 1309-1331. Slawinski, R., and Krebes, E.S., 2002a. Finite-difference modeling of SH-wave propagation in nonwelded contact media. Geophysics, v. 67, p. 1656-1663. Slawinski, R., and Krebes, E.S., 2002b. The homogeneous finite-difference formulation of the P-SV-wave equation of motion. Stud. Geophys. Geod., v. 46, p. 731-751. Thomson, C.J., 1990. Corrections for critical rays in 2-D seismic modelling. Geophys. J. Int., v. 103, p. 171-210. Van Trier, J., and Symes, W.W., 1991. Upwind finite-difference calculations of traveltimes. Geophysics, v. 56, p. 812-821. Vidale, J., 1990. Finite-difference calculation of traveltimes in three dimensions. Geophysics, v. 55, p. 521-526. Virieux, J., 1986. P-SV wave propagation in heterogeneous media: velocity-stress finite difference method. Geophysics, v. 51, p. 889-901.

Acknowledgements
Thanks go to Louis Chabot, formerly of the CREWES project in the Department of Geology and Geophysics at the University of Calgary, and Peter Manning and Gary Margrave of the CREWES project, for the finite difference synthetics.

References
Abramovici, F., Le, L.H.T., and Kanasewich, E.R., 1990. The solution of Cagniards problem for a SH line source in elastic and anelastic media, calculated using -k integrals. Bull. Seism. Soc. Am., v. 80, p. 1297-1310. Aki, K. and Richards, P.G., 2002. Quantitative Seismology. 2nd edition, University Science Books, Sausalito, California. Alford, R.M., Kelly, K.R. and Boore, D.M., 1974. Accuracy of finite-difference modeling of the acoustic wave equation. Geophysics, v. 39, p. 834-842. Alterman, Z.S. and Karal, F.C. Jr., 1968. Propagation of elastic waves in layered media by finite difference methods. Bull. Seism. Soc. Am., v. 58, p. 367-398. Bale, R.A. and Margrave, G., 2003. Elastic wavefield extrapolation in HTI media. CREWES Research Report, v. 15. Carcione, J. M., Herman, G. C. and ten Kroode, A. P. E., 2002, Seismic modelling : Geophysics 67, 1304-1325. erven, V., 2001. Seismic Ray Theory. Cambridge University Press., Cambridge, UK. erven, V. and Ravindra, R., 1971. Theory of Seismic Head Waves. University of Toronto Press, Toronto, Canada. Chapman, C.H., 1985. Ray theory and its extensions : WKBJ and Maslov seismograms. J. Geophys., v. 58, p. 27-43. Daley, P. and F. Hron, 1982. Ray-reflectivity method for SH-waves in stacks of thin and thick layers. Geophys. J. R. astr. Soc., v. 69, p. 527-535. Emmerich, H. and M. Korn, 1987. Incorporation of attenuation into time-domain computations of seismic wave fields. Geophysics, v. 52, p. 1252-1264. Fuchs, K. and Mller, G., 1971. Computation of synthetic seismograms with the reflectivity method and comparison with observations. Geophys. J. R. astr. Soc., v. 23, p. 417-433.

Further Reading
Carcione, J.M., 2001. Wave Fields in Real Media: Wave Propagation in Anisotropic, Anelastic and Porous Media. Pergamon Press, Amsterdam. Kelly, K.R. and Marfurt, K.J. (eds.), 1990. Numerical Modeling of Seismic Wave Propagation. Society of Exploration Geophysicists, Tulsa. Slawinski, M.A., 2003. Seismic Elsevier/Pergamon, Amsterdam.

Waves

and

Rays

in

Elastic

Media.

April 2004 CSEG RECORDER 39

You might also like