SYNOPSIS

PERL PROGRAM NAME:

AUTHOR: Juan Lorenzo (Perl module only)

DATE:

DESCRIPTION:

Version:

USE

NOTES

Examples

SYNOPSIS

SEISMIC UNIX NOTES SUMIGPREFFD - The 2-D prestack common-shot Fourier finite-difference

depth migration.
sumigpreffd <indata >outfile [parameters] ",
Required Parameters: ",
nxo= number of total horizontal output samples
nxshot= number of shot gathers to be migrated
nz= number of depth sapmles
dx= horizontal sampling interval
dz= depth sampling interval
vfile= velocity profile, it must be binary format.
Optional Parameters:
fmax=25 the peak frequency of Ricker wavelet used as source wavelet
f1=5
f2=10
f3=40
f4=50 frequencies to build a Hamming window
lpad=9999
rpad=9999 number of zero traces padded on both
sides of depth section to determine the
migration aperature, the default
values are using the full aperature.
verbose=0 silent, =1 additional runtime information
Notes:
The input velocity file consists of C-style binary floats. ",
The structure of this file is vfile[iz][ix]. Note that this means that
the x-direction is the fastest direction instead of z-direction! Such a
structure is more convenient for the downward continuation type
migration algorithm than using z as fastest dimension as in other SU ",
programs.
Because most of the tools in the SU package (such as unif2, unisam2, ",
and makevel) produce output with the structure vfile[ix][iz], you will
need to transpose the velocity files created by these programs. You may
use the SU program \'transp\' in SU to transpose such files into the
required vfile[iz][ix] structure.
(In C v[iz][ix] denotes a v(x,z) array, whereas v[ix][iz]
denotes a v(z,x) array, the opposite of what Matlab and Fortran
programmers may expect.) ",
Also, sx must be monotonically increasing throughout the dataset, and
and gx must be monotonically increasing within a shot. You may resort
your data with \'susort\', accordingly.
The scalco header field is honored so this field must be set correctly.
See selfdocs of \'susort\', \'suchw\'. Also: sukeyword scalco
Credits: CWP, Baoniu Han, bhan@dix.mines.edu, April 19th, 1998
Modified: Chris Stolk, 11 Dec 2005, - changed data input
to remove erroneous time delay.
Modified: CWP, John Stockwell 26 Sept 2006 - replaced Han's
"goto-loop" with "do { }while loops".
Fixed it so that sx, gx, and scalco are honored.
Trace header fields accessed: ns, dt, delrt, d2
Trace header fields modified: ns, dt, delrt

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 dx

sub dz

sub f1

sub f2

sub f3

sub f4

sub fmax

sub lpad

sub nxo

sub nxshot

sub nz

sub rpad

sub verbose

sub vfile

sub get_max_index

max index = number of input variables -1