Trace geometry & SEG-Y headers
Learning objectives
- Derive a trace’s CMP and offset from its shot and receiver positions
- Explain why the fold profile has a characteristic trapezoidal shape
- Read a SEG-Y trace header and identify the six fields that matter most
- Recognize the three classic header bugs that eat a processor’s week
Every trace lives in at least three coordinate systems: shot, receiver, and midpoint. Every processing step cares about a different one. Getting these consistent — making sure what your software thinks is the CMP of a trace is actually where the reflection it imaged came from — is the entire point of geometry QC.
1. The two coordinates per trace
A trace is recorded by one receiver for one shot. Those two positions give you everything else:
The common midpoint (CMP) is the halfway point between shot and receiver. For a flat horizontal reflector, every trace with the same CMP “sees” the same subsurface point, but at different angles of incidence. Stacking those traces — after correcting the travel times for the angle — gives you a boosted signal at that point. Three decades of processing theory pivot on that one sentence.
2. The CMP sort
Raw data comes in shot order: one shot, all its receivers, next shot, and so on. To stack, you re-sort the traces so all traces with the same CMP sit together. That re-sorted collection of traces is a CMP gather.
The widget below shows a 1D survey (30 shots × 60 receivers = 1800 traces). Click any bar on the fold profile to see the CMP gather that bin contains — the full header table of which shot-receiver pairs ended up there.
Notice the trapezoidal fold profile. Near the ends of the survey, few shot-receiver pairs have midpoints at that CMP — only the nearest shots contribute. In the middle, every shot within range contributes, and fold hits its maximum plateau. The trapezoid’s ramp length equals the spread length; its plateau equals the survey’s effective coverage. Designing a survey to give uniform fold over your target area is survey-design job one.
3. SEG-Y: the trace + its header
The industry-standard format for seismic is SEG-Y. Every SEG-Y file contains:
- A 3200-byte textual header (EBCDIC or ASCII) — the human-readable who/when/where.
- A 400-byte binary header — sample rate, sample count, format code.
- A stream of traces. Each trace = a 240-byte trace header followed by the samples themselves.
The 240-byte trace header has 80+ fixed fields at fixed byte offsets. You will encounter thousands of SEG-Y files in your career; the six fields you must recognize are:
- Field record number (FFID) — which shot.
- Trace number within record — which receiver within that shot.
- Shot point X, Y — where the source fired.
- Receiver X, Y — where the trace was recorded.
- Offset — (signed) distance shot ↔ receiver.
- CMP X, Y (inline, crossline) — the midpoint that the geometry software has assigned.
These are the columns in the widget’s header table (with inline/crossline as X only, since we are in 1D).
4. Three header bugs that eat weeks
- Scalar on coordinates is wrong. SEG-Y stores coordinates as integers with an implicit scalar (bytes 71-72). If the scalar is 100 but the software reads 1, your survey silently spreads over 100× the real extent. Migration blows up.
- CMP field is empty or stale. Software re-computes the CMP from shot/receiver X, Y — but if CMP was set during recording and not updated after the crew moved the real receivers, the bin number is fiction. Fold map looks fine; stacked image is blurred.
- Byte-swap on a big-endian SEG-Y. SEG-Y is officially big-endian, but many legacy writers emit little-endian. Headers look gibberish; you guess the swap; you proceed; half the traces have valid geometry and half do not.
Every processing shop has a checklist for SEG-Y load QC: print a few header values, display a fold map, plot shot lines, compare trace counts against the vendor report. Skipping this step is how weeks disappear.
5. 2D vs 3D sorting
The widget is 1D (one line). In 2D the CMP is a 1D axis (inline), and fold is a 1D profile. In 3D, CMP is a 2D bin (inline × crossline); fold is a 2D map. Offset distribution is still 1D per bin; azimuth is an extra dimension per bin in 3D. Modern processing keeps all four axes (inline, crossline, offset, azimuth) when it matters — AVO analysis, anisotropy, 4D — and marginalizes over them when it does not.
6. From geometry to the rest of processing
Once geometry is loaded cleanly and CMP bins are populated, most of the rest of processing is a sequence of operations on CMP gathers:
- Velocity analysis (§3.3) picks semblance maxima on gathers.
- NMO correction (§3.2) flattens hyperbolae within a gather.
- Stacking collapses the gather to a single trace.
- Pre-stack migration (§5) keeps the gather unflattened and moves each trace to its imaged position.
If the geometry is wrong, all of the above is wrong. This is why we spend a whole section on it.
A CMP bin collects all traces whose shot and receiver share a midpoint; stacking that collection is the first big SNR gain; and every downstream algorithm trusts that the CMP field in the header is actually correct.
Where this goes next
Section §1.4 is a catalogue of everything in the trace that is not signal: ground roll, swell, direct arrivals, multiples, and ambient noise. Each has a signature; each needs its own attenuator. Knowing which one you are looking at is half the battle.
References
- Sheriff, R. E., Geldart, L. P. (1995). Exploration Seismology (2nd ed.). Cambridge UP.
- Yilmaz, Ö. (2001). Seismic Data Analysis (2 vols.). SEG.
- Claerbout, J. F. (1976). Fundamentals of Geophysical Data Processing. McGraw-Hill.