SYNOPSIS

PERL PROGRAM NAME:

AUTHOR: Juan Lorenzo (Perl module only)

DATE:

DESCRIPTION:

Version:

USE

NOTES

Examples

SYNOPSIS

SEISMIC UNIX NOTES SUXPICKER - X-windows WIGgle plot PICKER of a segy data set

 suxpicker <stdin [optional parameters] | ...				



 Optional parameters:						 	



 key=(keyword)		if set, the values of x2 are set from header field

			specified by keyword				

			specified by keyword				

 n2=tr.ntr or number of traces in the data set (ntr is an alias for n2)



 d1=tr.d1 or tr.dt/10^6	sampling interval in the fast dimension	

   =.004 for seismic 		(if not set)				

   =1.0 for nonseismic		(if not set)				



 d2=tr.d2			sampling interval in the slow dimension	

   =1.0 			(if not set)				



 f1=tr.f1 or tr.delrt/10^3 or 0.0  first sample in the fast dimension	



 f2=tr.f2 or tr.tracr or tr.tracl  first sample in the slow dimension	

   =1.0 for seismic		    (if not set)			

   =d2 for nonseismic		    (if not set)			



 verbose=0              =1 to print some useful information		





 tmpdir=	 	if non-empty, use the value as a directory path	

		 	prefix for storing temporary files; else if the	

	         	the CWP_TMPDIR environment variable is set use	

	         	its value for the path; else use tmpfile()	



 Note that for seismic time domain data, the "fast dimension" is	

 time and the "slow dimension" is usually trace number or range.	

 Also note that "foreign" data tapes may have something unexpected	

 in the d2,f2 fields, use segyclean to clear these if you can afford	

 the processing time or use d2= f2= to override the header values if	

 not.									



 If key=keyword is set, then the values of x2 are taken from the header

 field represented by the keyword (for example key=offset, will show	

 traces in true offset). This permit unequally spaced traces to be plotted.

 Type	 sukeyword -o	to see the complete list of SU keywords.	



 See the xpicker selfdoc for the remaining parameters.			





 Credits:



	CWP: Dave Hale and Zhiming Li (xpicker, etc.)

	   Jack Cohen and John Stockwell (suxpicker, etc.)



 Notes:

	When the number of traces isn't known, we need to count

	the traces for xpicker.  You can make this value "known"

	either by getparring n2 or by having the ntr field set

	in the trace header.  A getparred value takes precedence

	over the value in the trace header.



	When we do have to count the traces, we use the "tmpfile"

	routine because on many machines it is implemented

	as a memory area instead of a disk file.



	If your system does make a disk file, consider altering

	the code to remove the file on interrupt.  This could be

	done either by trapping the interrupt with "signal"

	or by using the "tmpnam" routine followed by an immediate

	"remove" (aka "unlink" in old unix).



	When we must compute ntr, we don't allocate a 2-d array,

	but just content ourselves with copying trace by trace from

	the data "file" to the pipe into the plotting program.

	Although we could use tr.data, we allocate a trace buffer

	for code clarity.

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 d1

sub d2

sub f1

sub f2

sub key

sub n2

sub tmpdir

sub verbose

sub get_max_index

max index = number of input variables -1