SYNOPSIS

PERL PROGRAM NAME:

AUTHOR: Juan Lorenzo (Perl module only)

DATE:

DESCRIPTION:

Version:

USE

NOTES

Examples

SYNOPSIS

SEISMIC UNIX NOTES SUKDMIG2D - Kirchhoff Depth Migration of 2D poststack/prestack data

    sukdmig2d  infile=  outfile=  ttfile=   [parameters] 		



 Required parameters:							

 infile=stdin		file for input seismic traces			

 outfile=stdout	file for common offset migration output  	

 ttfile=		file for input traveltime tables		



 ...  The following 9 parameters describe traveltime tables:		

 fzt= 			first depth sample in traveltime table		

 nzt= 			number of depth samples in traveltime table	

 dzt=			depth interval in traveltime table		

 fxt=			first lateral sample in traveltime table	

 nxt=			number of lateral samples in traveltime table	

 dxt=			lateral interval in traveltime table		

 fs= 			x-coordinate of first source			

 ns= 			number of sources				

 ds= 			x-coordinate increment of sources		



 Optional Parameters:							

 dt= or from header (dt) 	time sampling interval of input data	

 ft= or from header (ft) 	first time sample of input data		

 dxm= or from header (d2) 	sampling interval of midpoints 		

 fzo=fzt		    z-coordinate of first point in output trace	

 dzo=0.2*dzt		vertical spacing of output trace 		

 nzo=5*(nzt-1)+1 	number of points in output trace		",	

 fxo=fxt		    x-coordinate of first output trace 		

 dxo=0.5*dxt		horizontal spacing of output trace 		

 nxo=2*(nxt-1)+1  	number of output traces 			",	

 off0=0		   	first offest in output 			

 doff=99999		offset increment in output 			

 noff=1	 	number of offsets in output 			",	

 absoff=0      flag for using absolute offsets of input traces		

               =0 means use offset=gx-sx                		

               =1 means use abs(gx-sx)                  		

 limoff=0      flag for only using input traces that fall within the range

               of defined output offset bins (off0,doff,noff) 		

               =0 means use all input traces                 		

               =1 means limit traces used by offset           		

 fmax=0.25/dt		frequency-highcut for input traces		

 offmax=99999		maximum absolute offset allowed in migration 	

 aperx=nxt*dxt/2  	migration lateral aperature 			

 angmax=60		migration angle aperature from vertical 	

 v0=1500(m/s)		reference velocity value at surface		",	

 dvz=0.0  		reference velocity vertical gradient		



 ls=1			flag for line source				

 jpfile=stderr		job print file name 				



 mtr=100  		print verbal information at every mtr traces	

 ntr=100000		maximum number of input traces to be migrated	

 npv=0			flag of computing quantities for velocity analysis

 rscale=1000.0 	scaling for roundoff error suppression		



   ...if npv>0 specify the following three files:			

 tvfile=tvfile		input file of traveltime variation tables	

			tv[ns][nxt][nzt]				

 csfile=csfile		input file of cosine tables cs[ns][nxt][nzt]	

 outfile1=outfile1	file containning additional migration output   	

			with extra amplitude				



 Notes:								

 1. Traveltime tables were generated by program rayt2d (or other ones)	

    on relatively coarse grids, with dimension ns*nxt*nzt. In the	

    migration process, traveltimes are interpolated into shot/gephone 	

    positions and output grids.					

 2. Input seismic traces must be SU format and can be any type of 	

    gathers (common shot, common offset, common CDP, and so on).	", 

 3. Migrated traces are output in CDP gathers if velocity analysis	

    is required, with dimension nxo*noff*nzo.  			", 

 4. If the offset value of an input trace is not in the offset array 	

    of output, the nearest one in the array is chosen. 		

 5. Memory requirement for this program is about			

    	[ns*nxt*nzt+noff*nxo*nzo+4*nr*nzt+5*nxt*nzt+npa*(2*ns*nxt*nzt   

	+noff*nxo*nzo+4*nxt*nzt)]*4 bytes				

    where nr = 1+min(nxt*dxt,0.5*offmax+aperx)/dxo. 			

 6. Amplitudes are computed using the reference velocity profile, v(z),

    specified by the parameters v0= and dvz=.				

 7. Input traces must specify source and receiver positions via the header

    fields tr.sx and tr.gx. Offset is computed automatically.		

 8. if limoff=0, input traces from outside the range defined by off0, doff, 

    noff, will get migrated into the extremal offset bins/planes.  E.g. if 

    absoff=0 and limoff=0, all traces with gx<sx will get migrated into the 

    off0 bin.





 Author:  Zhenyue Liu, 03/01/95,  Colorado School of Mines 

 Modifcations:

    Gary Billings, Talisman Energy, Sept 2005:  added absoff, limoff.



 Trace header fields accessed: ns, dt, delrt, d2

 Trace header fields modified: sx, gx



 

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 absoff

sub angmax

sub aperx

sub csfile

sub doff

sub ds

sub dt

sub dvz

sub dxm

sub dxo

sub dxt

sub dzo

sub dzt

sub fmax

sub fs

sub ft

sub fxo

sub fxt

sub fzo

sub fzt

sub infile

sub jpfile

sub limoff

sub ls

sub mtr

sub noff

sub npv

sub nr

sub ns

sub ntr

sub nxo

sub nxt

sub nzo

sub nzt

sub off0

sub offmax

sub offset

sub outfile

sub outfile1

sub rscale

sub ttfile

sub tvfile

sub v0

sub get_max_index

max index = number of input variables -1