FWI & RTM

Full Waveform Inversion (FWI) & Reverse Time Migration (RTM)

g-Platform's most advanced tools for high-resolution model building and imaging, in 2D and 3D. FWI updates the velocity model from the full recorded wavefield rather than from picked travel times; RTM images it with two-way wave propagation, shot by shot.

2D / 3D
FWI and RTM projects
Full wavefield
Amplitudes, phases, all wave types
GPU + multi-node
Distributed execution
Three-dimensional depth velocity model cut by migrated seismic panels in g-Platform
Velocity model building workspace in g-Platform
Depth-migrated section with depth gathers and semblance panels in g-Platform
In view
Depth velocity model & image
FWI and RTM are two halves of one engine. Reverse time migration is what turns a velocity model into an image — and it is also what full waveform inversion runs, once per source, on every iteration. The inversion forward-models each shot through the current model, cross-correlates the source and residual wavefields into an RTM image and an illumination volume, and uses that image as the gradient that updates the velocity. Model building and imaging advance together: every iteration writes its RTM image, its gradient and the model behind them out as QC views, so you watch the inversion work instead of waiting for it. The run's own output is the updated depth velocity volume — the production image follows from RTM depth imaging on that finished model (step 6 below).
Full waveform inversion

Velocity from the whole wavefield, not from picks.

FWI matches modelled seismograms against the recorded ones and turns what is left over into a velocity update — so it resolves detail that travel-time tomography and conventional velocity analysis cannot reach.

Full-wavefield misfit
Synthetic shot records are modelled through the current velocity model and compared with the recorded seismograms; the residual is what drives the update.
Beyond travel-time tomography
Because the update comes from waveform matching rather than travel-time picks, FWI resolves velocity detail well past the reach of conventional tomography.
RTM-style gradient
The forward-propagated source and the back-propagated residual are cross-correlated into an image and an illumination volume; the illumination-normalised image becomes the gradient.
Conjugate-gradient updates
Each gradient is combined with the previous one into a search direction, converted to a step in slowness, and applied to the model inside minimum and maximum velocity clamps.
Automatic step size
A line search re-models a reduced set of sources at several trial steps and fits a curve to the misfit to find the optimum — or applies a fixed step once you know a good one.
Low to high frequency
Start at low frequencies for robust model building, then widen the band step by step to add detail — the frequency-continuation strategy that keeps the inversion clear of cycle-skipping.
Aperture & artefact control
A depth-to-aperture table limits how far each shot contributes and fades it out smoothly at the edge, while a Laplacian filter strips long-wavelength migration artefacts out of the gradient.
Nine open processing points
Insert your own modules inside the engine: condition the input, modelled and residual seismograms, post-process the RTM image, shape the wavelet, or smooth the model after every update.
Reverse time migration

Two wavefields, imaged where they meet.

Knowing the wavefield at one time and the velocity field, you can predict it a step forward or a step backward. RTM propagates the source wavefield forward from the shot and the recorded wavefield backward from the receiver surface, then images the subsurface at their zero-lag cross-correlation — the same time, same place principle. It works in the shot domain, migrating shot by shot, and writes both the image and its illumination volume.

Prestack
RTM 2D

Shot-domain reverse time migration from regularized shot gathers, with a selectable imaging condition, angle-gather output, decimation factor, additional aperture, absorbing padding and your choice of wavelet.

Prestack depth
RTM depth

Depth-domain reverse time migration with a free-surface option, executed on CPU or GPU and spread across a cluster through distributed execution, thread limits and affinity control.

3D, distributed
RTM3D depth distributed

The 3D depth RTM module built for distributed runs, so a full survey can be migrated across the nodes of a processing cluster.

Post-stack
Post RTM 3D

Works straight from a stacked volume: forward-model a synthetic response by exploding reflector, migrate the stack into depth, or refine the depth velocity volume by comparing modelled and real data.

Workflow

Six steps from a starting model to a migrated image.

1
Bring a starting model
A smooth depth velocity model on a single constant datum — from refraction or reflection tomography, or by depth-converting a well-constrained RMS field.
2
Settle the wavelet
Connect an estimated source signature, or let the module extract a wavelet from each shot record on the first iteration.
3
QC a single shot
Run single-shot modelling and compare the observed gather against its synthetic before committing to a full multi-iteration run.
4
Invert low to high
Iterate at low frequency first, decimating sources to keep the cost down, then widen the band and reduce the decimation for production quality.
5
Watch it converge
Intermediate models, RTM images and gradients are written along a chosen inline and crossline every iteration, and the volume can go to SEG-Y at each step.
6
Migrate & condition gathers
Take the updated model into RTM depth imaging, produce angle gathers, and carry them on into further velocity updates and AVO/AVA work.
Run & scale

Tuned for real surveys, not toy models.

Every parameter below is exposed in the module and ships with a sensible default, so a first run is a matter of adjusting a few rather than dialling in an inversion from scratch. A handful still have to be set for your project — the source wavelet, and a fast local path for the wavefield snapshots, one per worker node on a distributed run.

Typical run settings
Defaults as shipped, with the range production work uses
Iterations
Three by default. Three to five confirms the inversion is moving the right way; fifteen to thirty or more once the settings are validated.
Velocity clamps
1400 to 6000 m/s, re-applied after every update so the model stays physically plausible and the modelling stays stable.
Source decimation
Every eighth source by default. Coarse for early tests, down toward every source for a final production gradient.
Record window
Shot records cropped to the first second by default, which cuts both modelling time and the data moved per shot.
Modelling grid
A 20 m finite-difference interval at a 0.1 ms time step, the two bound together by the stability condition.
Frequency
25 Hz dominant modelling frequency, set to match the peak frequency of the wavelet and the useful bandwidth of the data.
Compute & data handling
What the engine does with your cluster and your SEG-Y
GPUs
Up to 24 devices in parallel, counted separately for the gradient pass and for the line-search re-modelling so the two workloads can be balanced.
Distributed
Multi-node execution, with each worker node given its own local path for wavefield snapshots.
Snapshots
The forward wavefield is checkpointed to fast local disk for the backward pass, or kept resident in GPU memory where there is room for it.
Data streaming
Shot records are streamed from SEG-Y on demand, so the full survey never has to fit in memory at once.
Outputs
The updated depth velocity volume, plus per-iteration velocity models and RTM images written to SEG-Y for review outside g-Platform.
QC views
Inline and crossline slices of the model before and after inversion, and the observed shot beside its modelled counterpart.
Modules in this group
Inversion, migration and modelling modules that make up the FWI and RTM workflow
Full waveform inversion 2D FWI 2D FWI 3D Full waveform inversion (distributed, 2D) RTM 2D RTM depth RTM3D depth distributed Post RTM 3D Multisource RTM Multisource RTM (distributed, 2D) FD-RTM 2D modelling RTM imaging RTM imaging post processing
More g-Platform capabilities

FWI and RTM sit inside the whole processing chain.

The same project, the same batch processing and the same cluster carry a survey from field tape through to depth. These are the other topics in the g-Platform workflow.

FAQ

Questions, answered.

What is the difference between FWI and RTM?
RTM is a migration. It propagates the source wavefield forward from the shot, propagates the recorded wavefield backward from the receiver surface, and images the subsurface where the two correlate at zero lag. FWI is a velocity model building loop that drives the same wavefield machinery: it models synthetic shot records through the current model, compares them with the recorded seismograms, and turns the residual into a velocity update. In g-Platform the FWI modules build an RTM-style image and an illumination volume at every iteration, and that image is what becomes the gradient.
Do FWI and RTM run in both 2D and 3D?
Yes. g-Platform ships Full waveform inversion 2D for 2D lines and FWI 3D for full surveys, alongside RTM 2D, RTM depth, a distributed 3D depth RTM and Multisource RTM. Already-stacked volumes have their own post-stack pair, FWI 2D and Post RTM 3D. The same workflow carries from a 2D line to a full 3D survey.
What starting velocity model does FWI need?
A smooth, geologically reasonable depth velocity model sitting on a single constant datum, typically produced by refraction or reflection tomography or by depth-converting a well-constrained RMS field. It has to be kinematically accurate enough at the lowest inversion frequency: a large mismatch stalls the inversion in a local minimum. Starting at low frequency and widening the band as the model improves is the standard way to avoid cycle-skipping.
What hardware does a 3D FWI run need?
The modules are GPU-accelerated and run distributed across nodes, with up to 24 GPU devices per run and separate device counts for the gradient pass and the line search. Shot records are streamed from SEG-Y on demand, so the full survey never has to fit in memory, and the forward wavefield is checkpointed to fast local disk or kept resident in GPU memory.
Get started

Run FWI and RTM on your own data.

From a tomographic starting model to an updated depth velocity volume, then an RTM depth image built on it — talk to Geomage about a demo, or take g-Platform for a trial run.