Pre-stack depth migration: Kirchhoff

Part 5 — Imaging (migration)

Learning objectives

  • Write the Kirchhoff depth-migration operator in terms of ray-traced travel times
  • Explain the role of travel-time tables (Green's functions) and eikonal solvers
  • Relate Snell-law ray bending to why time-domain methods misposition reflectors under lateral velocity variation
  • State when depth migration is necessary and what it costs compared to time migration

PSTM (§5.3) uses the double-square-root formula with an RMS velocity per midpoint. That works as long as rays between source, scatterer, and receiver travel through nearly the same average velocity — mild vertical gradients, gentle lateral variation. When the earth has strong lateral velocity contrasts — salt flanks, volcanic sills, over-thrust blocks — rays bend significantly at each contrast, and the straight-line travel-time assumption breaks. Pre-stack depth migration (PSDM) replaces RMS velocity with an explicit v(x,z)v(x,z) model and replaces the algebraic ellipse with ray-traced travel times.

1. The Kirchhoff depth-migration operator

For each image point (xo,zo)(x_o, z_o) and each pre-stack trace D(xs,xr,t)D(x_s, x_r, t), the PSDM image accumulates

I(xo,zo)=D(xs,xr,Ts(xo,zo)+Tr(xo,zo))I(x_o, z_o) = \sum D(x_s, x_r, T_s(x_o, z_o) + T_r(x_o, z_o))

where Ts(xo,zo)T_s(x_o, z_o) is the one-way travel time from the source at xsx_s to the image point, and Tr(xo,zo)T_r(x_o, z_o) is the time from the image point to the receiver at xrx_r. Both are ray-traced through v(x,z)v(x,z). In a constant-velocity medium the sum Ts+Tr=tobsT_s + T_r = t_{obs} defines the same ellipse PSTM uses; in a varying medium it defines a more complex isochron that bends wherever the ray does.

2. Where the travel times come from

Computing T(xs,xo,zo)T(x_s, x_o, z_o) for every image pixel and every shot is the dominant cost of PSDM. Two standard methods:

  • Ray tracing. Shoot rays from the source in many directions, integrate along each ray through v(x,z)v(x,z) using Snell's law at interfaces (or the eikonal characteristics in smooth media). Good for smooth velocity models; can miss shadow zones and turning waves.
  • Eikonal solvers. Solve the partial differential equation T2=1/v2|\nabla T|^2 = 1/v^2 directly on the grid, typically by the Fast Marching Method or Fast Sweeping Method. Handles complex velocity models, guaranteed to produce a travel time everywhere (up to first arrivals).

Either way, the output is a pre-computed travel-time table T(xs;x,z)T(x_s; x, z) — one 2D field per shot. During the migration loop each pre-stack trace is convolved with the two travel-time tables (source and receiver) to produce an image contribution.

3. The widget — ray bending at a single interface

Psdm Raytrace DemoInteractive figure — enable JavaScript to interact.

The widget shows a two-layer v(x,z)v(x,z) model: top layer with V1=1800 m/sV_1 = 1800\ \text{m/s}, bottom layer with V2=3000 m/sV_2 = 3000\ \text{m/s}, interface at 600 m depth. Source at the surface, target in the lower layer. The dashed grey line is the straight-ray path — what a PSTM-style constant-velocity calculation would use. The solid yellow line is the ray-traced path that satisfies Snell's law at the interface:

sinθ1/V1=sinθ2/V2\sin\theta_1 / V_1 = \sin\theta_2 / V_2

The info strip reports both travel times and the error between them. At the default geometry the ray-traced time is several percent shorter than the straight-line time — that few-percent error, compounded across the source and receiver legs and summed over many shots, is what mispositions a PSTM image under a salt body or a velocity ramp.

Experiment to try: push V2 to 4200 m/s (extreme contrast, like salt) and watch the ray bend sharply at the interface. Straight-line time overshoots by 10–15 %. That error in travel time becomes a lateral position error of the same order in the migrated image — enough to put a target on the wrong side of a fault.

4. Why time migration cannot fix this

Time migration uses a single RMS velocity per CMP that averages over the vertical velocity profile. RMS velocity is correct for vertical travel but systematically wrong for non-vertical rays through laterally varying media: the rays see different velocity paths than the vertical assumption. The PSTM ellipse is therefore positioned correctly only for rays that happen to travel vertically — i.e., near zero offset and nearly flat geology. As soon as the geology dips or the velocity changes laterally, PSTM mispositions the reflector. The mispositioning is exactly the integral of the ray-traced error over the migration aperture.

5. What PSDM costs

  • Velocity model building. PSDM is only as good as its input velocity model. Production PSDM is almost always run iteratively with velocity-model refinement (§5.9) — a single migration run is rare. Each iteration can cost weeks of CPU time.
  • Travel-time table storage. A 3D travel-time table for one shot at Δx=12.5 m\Delta x = 12.5\ \text{m}, 10 km wide, 8 km deep is ~400 MB. Thousands of shots per survey. Disk I/O dominates modern PSDM implementations.
  • Migration loop. For each output voxel, sum contributions from all traces whose travel-time arrivals land at the observed sample. Typical production PSDM is 10–50× the cost of PSTM. Anisotropic or elastic PSDM multiplies that by another 3–10×.

6. When PSDM is worth it

  • Sub-salt imaging. Salt is a 4000–4500 m/s body embedded in 2000–3000 m/s sediment. Rays bend drastically at the salt boundary; time migration is hopeless here.
  • Sub-basalt. Extensive volcanic sills have similar properties.
  • Thrust belts. Steep velocity contrasts across thrust fronts cause lateral velocity jumps of 1000–2000 m/s that PSTM cannot handle.
  • Steep-dip 3D. Anywhere dips exceed ~60° with variable velocities; time-domain methods misposition even with modest lateral gradients.

7. What PSDM cannot do

  • Turning waves. A first-arrival ray-traced table gives only one travel time per image pixel. Turning rays (waves that bend back upward through a low-velocity zone) have two or more arrivals; Kirchhoff PSDM ignores all but the first and loses the signal. One-way WE (§5.6) or RTM (§5.7) are required.
  • Shadow zones. Regions where no first-arrival ray reaches get zero migration energy. Beam migration (§5.5) partly fixes this.
  • Amplitude fidelity. Simple Kirchhoff sums sacrifice amplitude accuracy for speed. Amplitude-preserving PSDM adds the ray Jacobian, obliquity, and proper aperture weighting.
**The one sentence to remember**

Kirchhoff PSDM replaces PSTM's algebraic ellipse with a ray-traced travel-time table in v(x,z)v(x,z); it correctly handles lateral velocity variation at the cost of needing an accurate velocity model and an expensive precomputed travel-time kernel.

Where this goes next

§5.5 introduces beam migration — a compromise between Kirchhoff's single ray per image pixel and full wavefield extrapolation. Instead of one ray, you send a bundle of rays (a "beam") with a prescribed lateral width and migrate energy along the beam, improving shadow-zone coverage and amplitude fidelity at modest extra cost.

References

  • Schneider, W. A. (1978). Integral formulation for migration in two and three dimensions. Geophysics, 43, 49.
  • Stolt, R. H., Benson, A. K. (1986). Seismic Migration: Theory and Practice. Geophysical Press.
  • Yilmaz, Ö. (2001). Seismic Data Analysis (2 vols.). SEG.
  • Etgen, J., Gray, S. H., Zhang, Y. (2009). An overview of depth imaging in exploration geophysics. Geophysics, 74, WCA5.

This page is prerendered for SEO and accessibility. The interactive widgets above hydrate on JavaScript load.