DOCUMENTATION
SYNOPSIS
PERL PROGRAM NAME: SUXCOR - correlation with user-supplied filter
AUTHOR: Juan Lorenzo (Perl module only)
DATE:
DESCRIPTION:
Version:
USE
NOTES
Examples
SEISMIC UNIX NOTES
SUXCOR - correlation with user-supplied filter
suxcor <stdin >stdout filter= [optional parameters]
Required parameters: ONE of
sufile= file containing SU traces to use as filter
filter= user-supplied correlation filter (ascii)
Optional parameters:
vibroseis=0 =nsout for correlating vibroseis data
first=1 supplied trace is default first element of
correlation. =0 for it to be second.
panel=0 use only the first trace of sufile as filter
=1 xcor trace by trace an entire gather
ftwin=0 first sample on the first trace of the window
(only with panel=1)
ltwin=0 first sample on the last trace of the window
(only with panel=1)
ntwin=nt number of samples in the correlation window
(only with panel=1)
ntrc=48 number of traces on a gather
(only with panel=1)
Trace header fields accessed: ns
Trace header fields modified: ns
Notes: It is quietly assumed that the time sampling interval on the
single trace and the output traces is the same as that on the traces
in the input file. The sufile may actually have more than one trace,
but only the first trace is used when panel=0. When panel=1 the number
of traces in the sufile MUST be the same as the number of traces in
the input.
Examples:
suplane | suwind min=12 max=12 >TRACE
suxcor<DATA sufile=TRACE |...
Here, the su data file, "DATA", is correlated trace by trace with the
the single su trace, "TRACE".
suxcor<DATA filter=1,2,1 | ...
Here, the su data file, "DATA", is correlated trace by trace with the
the filter shown.
Correlating vibroseis data with a vibroseis sweep:
suxcor < data sufile=sweep vibroseis=nsout |...
is equivalent to, but more efficient than:
suxcor < data sufile=sweep |
suwind itmin=nsweep itmax=nsweep+nsout | sushw key=delrt a=0.0 |...
sweep=vibroseis sweep in SU format, nsweep=number of samples on
the vibroseis sweep, nsout eqis equal to the
desired number of samples on output
or
suxcor < data sufile=sweep |
suwind itmin=nsweep itmax=nsweep+nsout | sushw key=delrt a=0.0 |...
tsweep=sweep length in seconds, tout=desired output trace length in seconds
In the spatially variant case (panel=1), a window with linear slope
can be defined:
ftwin is the first sample of the first trace in the gather,
ltwin is the first sample of the last trace in the gather,
ntwin is the lengthe of the window,
ntrc is the the number of traces in a gather.
If the data consists of a number gathers which need to be
correlated with the same number gathers in the sufile, ntrc
assures that the correlating window re-starts for each gather.
The default window is non-sloping and takes the entire trace
into account (ftwin=ltwin=0, ntwin=nt).
Credits:
CWP: Jack K. Cohen, Michel Dietrich
CWP: modified by Ttjan to include cross correlation of panels
permitting spatially and temporally varying cross correlation.
UTK: modified by Rick Williams for vibroseis correlation option.
CAVEATS:
In the option, panel=1 the number of traces in the sufile must be
the same as the number of traces on the input.
Trace header fields accessed: ns
Trace header fields modified: ns
CHANGES and their DATES
sub Step
collects switches and assembles bash instructions by adding the program name Keeps track of actions for execution in the system
sub note
collects switches and assembles bash instructions by adding the program name
sub clear
sub filter
ASCII data filter
sub first
supplied trace is default first element of correlation if 1
0 for it to be second
sub ftwin
first sample on the first trace of the window
panel =1
sub itmin
sub ltwin
first sample on the last trace of the window
panel =1
sub nsout
sub ntrc
sub ntwin
sub panel
decide whether to use first trace of sufile as filter (=0)
or to xcor trace by trace an entire gather
sub sufile
Define the data to be used as the correlation
This is the 'filter'
sub sweep
sub tsweep
sub vibroseis
sub get_max_index
max index = number of input variables -1