SYNOPSIS
PERL PROGRAM NAME:
AUTHOR: Juan Lorenzo (Perl module only)
DATE:
DESCRIPTION:
Version:
USE
NOTES
Examples
SYNOPSIS
SEISMIC UNIX NOTES SUCDDECON - DECONvolution with user-supplied filter by straightforward
Complex Division in the frequency domain
sucddecon <stdin >stdout [optional parameters]
Required parameters:
filter= ascii filter values separated by commas
...or...
sufile= file containing SU traces to use as filter
(must have same number of traces as input data
for panel=1)
Optional parameters:
panel=0 use only the first trace of sufile as filter
=1 decon trace by trace an entire gather
pnoise=0.001 white noise factor for stabilizing results
(see below)
sym=0 not centered, =1 center the output on each trace
verbose=0 silent, =1 chatty
Notes:
For given time-domain input data I(t) (stdin) and deconvolution
filter F(t), the frequency-domain deconvolved trace can be written as:
I(f) I(f) * complex_conjugate[F(f)]
D(f) = ----- ===> D(f) = ------------------------
F(f) |F(f)|^2 + delta
The real scalar delta is introduced to prevent the resulting deconvolved
trace to be dominated by frequencies at which the filter power is close
to zero. As described above, delta is set to some fraction (pnoise) of
the mean of the filter power spectra. Time sampling rate must be the
same in the input data and filter traces. If panel=1 the two input files
must have the same number of traces. Data and filter traces don't need to
necessarily have the same number of samples, but the filter trace length
length be always equal or shorter than the data traces.
Trace header fields accessed: ns, dt
Trace header fields modified: none
Credits:
CWP: Ivan Vasconcelos
some changes by John Stockwell
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,dt
Trace header fields modified: none
User's notes (Juan Lorenzo) untested
CHANGES and their DATES
Import packages
instantiation of packages
Encapsulated hash of private variables
sub Step
collects switches and assembles bash instructions by adding the program name
sub note
collects switches and assembles bash instructions by adding the program name
sub clear
sub filter
sub panel
sub pnoise
sub sufile
sub sym
sub verbose
sub get_max_index
max index = number of input variables -1