Traceprep TPWav

Wavelet Processing module

Version: 1.0 (back to TracePrep main index)

Introduction

Configuration

Program Menus and Controls

Running the application

Parameter set up

Program Messages

Introduction

The TracePrep TPWav module is a set of processes for single channel wavelet processing. It includes time domain predictive deconvolution, frequency domain zero phase "whitening", autocorrelation test and trace inversion. Use it to convolve an externally derived wavelet with the input traces.

Configuration

To install the TPWav module, run the TracePrep setup program. TPWav comprises a dynamic link library TPWav.DLL and a corresponding INI file TPWav.INI. These two files are added to the Lynx system directory (LynxSys) at installation. The help file (this file) is added to the docs subdirectory of LynxSys. For TracePrep to recognise the new module, the installation adds an entry to the TracePrep.INI file [packages] section, e.g.

[packages]
TPWav=vvvv

where vvvv is the version number of the TPWav module, found in the [lynx] section of TPWav.INI.

The [config] section in TPWav.INI contains module constants which can be edited manually, or through the LEAConfig application

Processes and Parameters

process index

ACTEST Trace Autocorrelation

DECON Predictive Deconvolution

NOTCH Notch Filter

INVERT Trace Inversion

WAVELET Convolve with Wavelet

ZDECON Zero phase deconvolution

Parameter setup

ACTEST - Trace Autocorrelation

Outputs the autocorrelation function of each input trace. Useful as a diagnostic tool when applying predicitive deconvolution.

Process ID
(type string) - TracePrep standard process ID

Process title
(type string, ) - A brief description of an instance of the process

Window start
(type single, limits 0.0 to 10000.0)
The start time on the input trace of the window, over which the autocorrelation will be calculated

Window End
(type single, limits 0.0 to 10000.0)
The end time on the input trace of the window, over which the autocorrelation will be calculated

Maximum Lag
(type single, limits 0.0 to 10000.0)
The maximum autocorrelation lag to be calculated. The output trace will be this number of milliseconds long.

DECON - Minimum Phase Predictive Deconvolution

A two window Wiener predictive deconvolution is calculated and applied, with new operators for every trace.

Predictive deconvolution reduces the effect of repetitive events, such as multiple reflections. The process has three stages:

  1. Calculate the trace autocorrelation.
  2. Calculate the prediction error operator.
  3. Apply the prediction error operator to the trace.

Because the characteristics of the trace change with time, the trace is usually segmented into two or more windows for design and application of the operators.

Process ID
(type string)
must be of the form DECON_xxxxx, where xxxxx is used to distinguish multiple occurrences of the process

Process title
(type string, )
A title, describing this process

Design
(type single, limits 0.0 to 10000)
determines the start of the operator's design window, that is the part of the input trace from which the autocorrelation is calculated.

to
(type single, limits 0.0 to 10000)
end of design window

Application
(type single, limits 0.0 to 10000)
determines the start of the window over which the operator will be applied

to
(type single, limits 0.0 to 10000)
end of the application window

Pred Distance
(type long integer, limits 0 to 100)
determines how much the operator tries to shorten the wavelet or multiple sequences in the trace. A short prediction distance (one sample interval) will result in a short wavelet but may amplify high and low frequency noise to an undesirable level. A longer prediction distance can be used to suppress longer period parts of the wavelet tail without undue noise amplification.

Operator Len
(type long integer, limits 0 to 1000)
controls the efficiency of the deconvolution. A longer operator will theoretically result in better deconvolution (at the expense of increased computation time). Operators longer than 300msec are rarely used, because of limitations in the accuracy of the assumptions on which predictive decon. is based

White noise %
(type single, limits 0.0 to 100)
stabilises the process against trace to trace variations in noise. At short prediction distances and long operator lengths it is advisable to add 0.5% or so of white noise. The operator application window determines the portion of the trace over which the operator will be applied. This allows the operator designed from a window in which the signal to noise ratio is good to be applied to another part of the trace in which the signal to noise ratio is poor. The more white noise that is added the less effect the decon will have. If more than about 15% white noise is added the decon will have very little effect (but will be nice and stable!).

NOTCH - Notch Filter

Applies a recursive filter, which suppresses frequencies at and around the notch frequency. Useful for suppressing mono-frequency noise such as 50 or 60Hz line frquency interference, or residual timing line noise in vectorised sections

Process ID
(type string) - TracePrep standard process ID

Process title
(type string, ) - A brief description of an instance of the process

Notch Frequency Hz
(type single, limits 50.0 to 1000.0)
Centre frequency at which maximum suppression will occur

Damping Factor
(type single, limits 0.0 to 1.0)
This controls the "sharpness" of the notch. A damping factor close to 1.0 will give a very sharp notch. Closer to zero will result in less attenuation at the notch frequency, but the notch will become broader

INVERT - Trace Inversion

INVERT converts input traces to pseudo acoustic impedance traces using direct integration or inversion.

Process ID
(type string) - TracePrep standard process ID

Process title
(type string) - A brief description of an instance of the process

Method
(type option, Integrate, Invert )
Determines the type of trace inversion applied.

Integrate. The output of integration option is simply a running sum of the input trace samples.

Y(1) = X(1) Y(i) = X(i) + Y(i-1), for i=2 to i=n

where X(1..n) is the input trace
Y(1..n) is the output trace n is the number of time samples in the input and output traces

Invert applies a recursion formula

Y(1) = A

Y(i) = Y(i-1) * (1.0 + R(i)) / (1.0 - R(i)), for i=2 to i=n

where A is the acoustic impedance at the surface (start impedance)
R(1..n) is the input reflectivity trace
Y(1..n) is the output acoustic impedance trace
n is the number of time samples in the input and output traces

The R(i) should be reflection coefficients, with values between -1.0 and 1.0. The R(i) can be generated (very approximately) by applying an RMS trace balance to the input trace to make the trace amplitudes approximate the (band limited) reflection series. The RMS level will need to be set in the range 0.02 to 0.2 in most cases.

Reflectivity RMS
(type single, limits -1.0 to 1.0)
Trace is scaled to this root mean square value prior to generating the acoustic impedance trace. Assuming that the input trace amplitudes have been corrected, relatively, to give an approximation to reflection coefficients, this parameter can be used to calibrate the traces to a know reflection coefficient. Remember that an rms of 1.0 corresponds to reflection coefficients in the range of -1.414 to +1.414 assuming that they are normally distributed.

Start Impedance
(type single, limits 1000.0 to 100000.0)
Notional acoustic impedance for output trace's first sample, in units velocity x density. For marine data this should be about 1480.

WAVELET - Convolve with Wavelet

Convolves a fixed wavelet with each input trace. Use to apply an externally generated filter to the data.

Process ID
(type string ) - TracePrep standard process ID

Process title
(type string) - A brief description of an instance of the process

Wavelet format
(type option, Sigman, List )
Determines the input wavlet format.

Wavelet format
(type option, Sigman, List )
Sigman format specifies a wavelet in Sigman ASCII format (see Sigman program)

List enables a list of coefficients to be entered by hand.

File Name
(type File)
Select the file for th Sigman format wavelet

Coefficients
(type string )
For the List wavelet format, enter a semicolon delimited list of samples, e.g.

0.0;1.0;-0.5;0.25;-0.125;0.0675;0.0;0.0

T-zero index
(type long integer, limits -1000 to 1000)
The zero based index of the time zero sample in the list. In the above example, a T-zero index of 1 would mean that the second sample, of value 1.0, would be at time zero.

ZDECON - Zero phase deconvolution

Zero phase deconvolution is a frequency domain process for "whitening" the spectrum of the input trace. This has the effect of narrowing time duration of the wavelet convolved with the reflection sequence represented by the input trace. The ZDECON process applies the following sequence for each input trace

Consider an amplitude spectrum X(f), which is the modulus of the Fourier Transform of an input trace, and the desired uniform spectrum U(f). The required whitening function A(f) is the amount by which each frequency component must be amplified to bring it up to the required uniform level, and is given by

A(f) = U(f) / X(f) (equation 1)

A white spectrum is the case where U(f) = 1.0 for all frequencies. It is clear that when X(f) is small, A(f) will be large, resulting in very high amplification. Also, X(f) will tend to be small when the signal is small. If we assume that the noise is uniform across the spectrum, application of A(f) will tend to amplify the noise unduly in the weak parts of the spectrum. To get around this problem, we use a modified amplification function :

A(f) = U(f) / (X(f) + W(f)) (equation 2)

where W(f) is given by :

if X(f) > c, then W(f) = 0, if X(f) <= c then W(f) = c - X(f)

The constant c is, picturesquely, called the "water level", because it has the effect of "filling up" the troughs in the amplitude spectrum graph of X(f) up to the level c. It puts an upper limit on the amplification that will be applied in any part of the spectrum. The water level c can be expressed as a percentage of the maximum value of X(f). In this case, setting c to 100% will cause A(f) to be the same for all f, ie the spectrum will be unmodified. Conversely, if c is set to zero, the spectral amplification will approach infinity in parts of the input spectrum which tend to zero.

Seismic data generally occupy a restricted range of frequencies, so we can be fairly sure that the input spectrum will become small towards zero and the Nyquist frequency. To allow for this, equation (2) is further modified in the ZDECON process by applying a linear taper which reduces A(f) to zero at these frequencies. The amplification function becomes

A(f) = B(f)*U(f) / (X(f) + W(f)) (equation 3)

where the taper function B(f) is given by :

B(f) = (f - f1)/f1 for 0 <= f < f1,
B(f) = 1.0 for f1 < f < f2,
B(f) = (fNyq - f)/(fNyq - f2) for f2 <= f < fNyq

Process ID
(type string) - TracePrep standard process ID

Process title
(type string ) - A brief description of an instance of the process

Minimum Freq Hz
(type single, limits 0 to 1000)
The approximate lowest frequency at which significant signal should be found in the input traces.

Maximum Freq Hz
(type single, limits 0 to 1000)
the approximate highest frequency at which significant signal should be found in the input traces.

Outside the maximum and minimum frquency limits, the amplification function is linearly tapered to zero, towards zero frequency the Nyquist frequency.

Water level %
(type single, limits 0.1 to 100)
This is expressed as a percentage of the maximum value found in the input trace amplitude spectrum. Increasing the water level smooths the gain function A(f) and prevents undue noise amplification. Setting the water level to 100 percent will cause the program to "do nothing". A value around 5 to 10 percent is a good starting point.

Program Messages

bad wavelet sample a bad sample value was found in a SIGMAN file

header format error badSigheaderfmt

bad time in header badSigTime

bad no of samples badSigNoSamps

sample interval mismatch sampintMismatch