Zero phase conversion
Theory
Input data
Input DataItem
Input gather
Angle residual picking
Parameters
Angle grid
Min angle
Max angle
Step
Solver params
Lambda
Smooth operator window
Spectrum smooth X
Spectrum smooth Y
Radius of summing spectrums
Window size
Window step
Settings
Auto-connection
Bad data values option { Fix, Notify, Continue }
Calculate difference
Number of threads
Skip
Output data
Output DataItem
Output gather
Gather of difference
Information
There is no information available for this module so the user can ignore it.
Examples
Actions
Precalculate all spectrums
Calculate spectrum for selected bin
-------------------------
Clear angle picking
Load angle picking
Save angle picking
Video lesson
YouTube video lesson, click here to open [VIDEO IN PROCESS...]
Related articles
Yilmaz. O., 1987, Seismic data processing: Society of Exploration Geophysicist
* * * If you have any questions, please send an e-mail to: support@geomage.com * * *
![]()
Input data
Input DataItem
The top-level data connection that carries the seismic gather into the module. Connect this to the output of the preceding processing step in your workflow.
Input SEG-Y data handle
Optional SEG-Y file handle used when reading trace data directly from disk. Leave unconnected if data is already in memory from a prior read step.
Input trace headers
The trace header collection associated with the input gather. Headers supply bin coordinates (X, Y) that are used to locate each trace on the location map and to group nearby traces when summing skewness spectra.
Input gather
The seismic gather to be converted to zero phase. Each trace in the gather is processed independently: a skewness spectrum is computed and the phase rotation needed to minimise wavelet skewness is applied trace by trace.
Input stack line
Input crooked line
Input bin grid
Input sorted headers
Angle residual picking
The time-varying phase-rotation angle picks that control how much phase correction is applied at each time level. You create these picks interactively in the Skewness panel: click on the ridge of maximum inverse skewness for the selected bin, then interpolate across time. The module requires a valid set of angle picks before execution; use the Save angle picking custom action to store picks to disk and Load angle picking to restore them in a later session.
Parameters
Zero phase conversion removes the phase component from the embedded seismic wavelet, making reflections symmetric and easier to tie to well data. The module works by computing an inverse skewness spectrum for each trace. The trace is phase-rotated through a user-defined range of angles using the Hilbert transform; at each angle the skewness (asymmetry) of the waveform is measured. The angle at which skewness is minimised corresponds to zero phase. The user picks this optimal rotation angle as a function of two-way time on the skewness spectrum display, and the module then applies that time-varying phase rotation to produce the corrected output gather. Spectra from neighbouring bins within a user-defined spatial radius can be stacked to increase stability in low-signal areas.
Prepare data for debug
Internal diagnostic option used during development. Leave this set to the default value of Off for normal processing.
Do not recalculate spectrums
When enabled, the module re-uses skewness spectra that were previously calculated and stored in memory rather than recomputing them. This can speed up repeated execution after spectra have been pre-computed using the Precalculate all spectrums custom action. Default: Off.
Angle grid
Defines the range and resolution of phase-rotation angles over which the skewness spectrum is computed. A wider range ensures the zero-phase angle is not missed, while a finer step gives higher resolution in the spectrum display. The trade-off is computation time: halving the step doubles the number of rotated copies that must be evaluated for each trace.
Min angle
The minimum phase-rotation angle (in degrees) included in the skewness spectrum. Default: -180 degrees. If you already know the approximate phase of your data (for example from well ties), you can narrow this range to speed up computation and reduce clutter in the spectrum display.
Max angle
The maximum phase-rotation angle (in degrees) included in the skewness spectrum. Default: 180 degrees. Together with Min angle, this defines the full 360-degree phase search space by default.
Step
Angular sampling interval (in degrees) of the skewness spectrum. Default: 5 degrees. Smaller values produce a finer spectrum but increase computation time proportionally. A step of 1 to 2 degrees is sufficient for most datasets; use the default 5-degree step for a rapid initial scan.
Solver params
Controls the numerical quality and stability of the inverse skewness calculation. Adjusting these parameters affects how clearly the zero-phase ridge appears in the spectrum display, and how robust the result is in the presence of noise.
Lambda
Regularisation weight that stabilises the inverse skewness calculation in low-signal windows. Default: 0.5. Increasing Lambda suppresses noise and produces a smoother spectrum but may reduce the contrast of the zero-phase ridge. Reducing Lambda sharpens the spectrum at the cost of increased sensitivity to noise. The useful range is approximately 0.01 to 5.0.
Smooth operator window
Length (in samples) of the running-average operator applied when computing the inverse skewness at each angle. Default: 40 samples. A larger window smooths the instantaneous skewness estimate along the time axis, which helps on noisy data but reduces temporal resolution of the phase correction. Set to 0 to disable smoothing.
Spectrum smooth X
Smoothing half-width (in samples) applied along the angle axis of the skewness spectrum before display and picking. Default: 4 samples. Use larger values to make the zero-phase ridge visually easier to identify when picking, especially on noisy datasets. Valid range: 0 to 10000.
Spectrum smooth Y
Smoothing half-width (in samples) applied along the time axis of the skewness spectrum before display and picking. Default: 4 samples. Increasing this value laterally blurs the spectrum in the time direction, which can help reveal slowly varying phase trends across the record but reduces sensitivity to abrupt phase changes. Valid range: 0 to 10000.
Radius of summing spectrums
The spatial search radius (in metres) within which skewness spectra from neighbouring bins are summed together to improve signal-to-noise before picking. Default: 20 m. Increasing this radius averages more traces and produces a cleaner spectrum at the cost of spatial resolution. On data with a regular bin grid, set the radius to approximately one to three bin spacings. Reduce this value when the phase changes rapidly across the survey area.
Window size
Length (in seconds) of the sliding analysis window used to estimate the phase rotation at each time step. Default: 0.08 s (80 ms). The window must be long enough to include several complete wavelet cycles; a length of 3 to 5 dominant periods is a reasonable starting point. Shorter windows allow more rapid temporal variations in phase to be tracked but become less stable on noisy data.
Window step
The shift (in seconds) between successive analysis windows along the trace. Default: 0.04 s (40 ms). With the default settings the windows overlap by 50%. Setting the step equal to the window size produces non-overlapping windows and faster execution; setting it smaller than half the window size increases overlap and smooths the applied phase correction over time.
Settings
Auto-connection
When enabled, g-Platform automatically connects compatible data items from the previous module in the workflow to the matching input ports of this module. This is the standard setting for most pipeline configurations.
Bad data values option { Fix, Notify, Continue }
Determines how the module responds when it encounters traces containing invalid (NaN or infinity) sample values. Fix replaces bad values with zero before processing. Notify writes a warning message and continues. Continue passes the data through unchanged without any notification.
Calculate difference
When enabled, the module computes the difference between the input and output gathers (input minus output) and writes it to the Gather of difference output port. This is useful for QC: the difference gather should show the removed phase distortion with little residual signal if the correction is successful.
Execute on { CPU, GPU }
Selects the processing hardware. Use CPU for standard execution. GPU acceleration, if available, can significantly reduce runtime on large gathers.
Distributed execution
Enables distribution of the processing workload across multiple compute nodes in a cluster environment. When active, the following sub-parameters become relevant: Bulk size, Limit number of threads on nodes, and Job suffix.
Bulk size
The minimum number of gathers sent to each cluster node in a single distributed job. Larger values reduce communication overhead but may cause uneven load distribution if the dataset is small.
Limit number of threads on nodes
Caps the number of CPU threads used per cluster node during distributed execution. Use this to share compute resources with other jobs running concurrently on the same nodes.
Job suffix
An optional text tag appended to the distributed job name to help identify this processing step in the cluster job queue.
Set custom affinity
Affinity
Number of threads
The number of parallel CPU threads used during execution. Increasing this value reduces runtime on multi-core workstations. Set to the number of physical CPU cores available for the best throughput without overloading the system.
Skip
When enabled, this module is bypassed and the input data is passed through to the output unchanged. Use this to temporarily disable the phase correction while testing other parts of the processing flow.
Output data
Output DataItem
The top-level data connection that carries all output items to the next module. Connect this to the input of the subsequent processing step.
Output SEG-Y data handle
Output trace headers
Output gather
The phase-corrected seismic gather. Each trace has been rotated by the time-varying angle derived from the picked inverse skewness ridge, so the output wavelet is symmetric (zero phase). The trace amplitudes are preserved; only the phase character of the wavelet is changed.
Output stack line
Output crooked line
Output bin grid
Output sorted headers
Gather of difference
The difference gather (input minus output), produced only when Calculate difference is enabled. Inspect this gather to verify that the phase correction has isolated the expected wavelet distortion and that no primary reflections have been inadvertently removed.
Information
Graphics
Custom actions
Precalculate all spectrums
Computes and stores the inverse skewness spectrum for every trace in the gather. Running this action before interactive picking ensures that clicking on a bin in the Location map panel immediately displays its spectrum without delay. On large datasets, precalculation may take some time but significantly speeds up the subsequent picking session.
Calculate spectrum for selected bin
Computes the summed inverse skewness spectrum for the currently selected bin, using all traces within the Radius of summing spectrums and applying the spectrum smoothing parameters. The result is displayed in the Skewness panel. Use this action to check the spectrum for a single bin of interest before running a full pre-calculation.
-------------------------
Clear angle picking
Deletes all current angle picks after prompting for confirmation. Use this to start the picking session from scratch if the existing picks are incorrect or outdated.
Load angle picking
Reads a set of previously saved angle picks from a .corr file. The loaded picks are matched to the current bin geometry and displayed in the Skewness panel. This is useful for resuming work across sessions or for applying previously accepted picks to a new dataset with the same geometry.
Save angle picking
Saves the current angle picks to a .corr file. Save picks after each interactive session to avoid losing work, and before modifying parameters that would change the spectrum and require re-picking.
Video lesson
YouTube video lesson, click here to open [VIDEO IN PROCESS...]
Related articles
Yilmaz. O., 1987, Seismic data processing: Society of Exploration Geophysicist
* * * If you have any questions, please send an e-mail to: support@geomage.com * * *
![]()