Program sfmake_ix_indx | MAKE Iline Xline INDX files for quick 3D data subsets (superbins)
[SYNOPSIS]
sfmake_ix_indx < infile.rsf > out.rsf verbose=1 ilinemin=-1e31 ilinemax=-1e31 xlinemin=-1e31 xlinemax=-1e31 ilineinc=10 input= headers= iline= xline= indxdir=
[COMMENTS]

These indexes are intended to be used by future sftahsort and sftah5dinterp.

EXAMPLE:
Runnning the programs:

sfmake_ix_indx           \
verbose=1             \
input=npr3_fielda.rsf \
indxdir=npr3_field    \
ilineinc=10           \
iline=iline           \
xline=xline           \
append=no             \
>/dev/null 
sfmake_ix_indx           \
verbose=1             \
input=npr3_fieldb.rsf \
indxdir=npr3_field    \
ilineinc=10           \
iline=iline           \
xline=xline           \
append=yes            \
>/dev/null 

Will create a set of files:
npr3_field/il0
npr3_field/il5
...
npr3_field/il350
and
npr3_field/filename_indx

The file npr3_field/il15 will contain the trace headers of the traces with 
trace header "iline" nearest to 15.  The file also has the file number and
the trace number, so you can locate the trace in the input files (either 
npr3_fielda.rsf or npr3_fieldb.rsf.  The trace headers in the file are all 
sorted by xline.  With this information you can quickly find all the traces
that are in a range of ilines and xlines.  This supports sftah5dinterp which
processes all the traces in a midpoint superbin that might be 800 meters by 800
meters (about 16 ilines and 32 xlines).  This is not a simple sort problem 
because sftah5dinterp processes data in overlapping bin (i.e. the 800 meter 
superbin centers moveup by 400 meters).  Overlapping superbins are supported by
allowing traces to be reread.

The program also allows sftahsort to read from multiple files. This is useful
on larger 3D projects where the input data is on multiple segy files.  
Previously I merged the files into one big file after running sfsegyread.  This
required an additional copy of all the data to be saved on disk.    

[PARAMETERS]
string  | headers | = |   | 	

     Trace header file name.  Default is the input data file
     name, with the final .rsf changed to _hdr.rsf 
  
string  | iline | = |   | 	

     header key for the main index key.  This should be iline, but you 
     may have non-standard trace headers or a wierd use of this program 
  
int     | ilineinc | =10 |   | 	

     incrment in iline for the index
  
float   | ilinemax | =-1e31 |   | 	

     maximum "iline" header key to include in the index.  Use this parameter
     to remove null trace headers or traces outside project area.
  
float   | ilinemin | =-1e31 |   | 	

     minimum "iline" header key to include in the index.  Use this parameter
     to remove null trace headers or traces outside project area.
  
string  | indxdir | = |   | 	

     The name of the directory containing the iline,xline index.  This 
     directory will be in DATAPATH (probably the environment variable). The 
     directory also continues a file "filenames", a list of the trace and 
     header files that contributes to this index. The directory contains files 
     with names "indx#" here # is an integer multiple of ilineinc. These files 
     contains a record for each contributing trace with filenumber, 
     tracenumber, and the trace header. The file containing the trace is 
     determined using the  can be read by using the filenumber and the 
     "filenames" file.  The tracenumber defines the location of the trace 
     in the file.
  
string  | input | = |   | 	

     Input file for traces amplitudes
  
int     | verbose | =1 |   | 	

     flag to control amount of print
     0 terse, 1 informative, 2 chatty, 3 debug
  
string  | xline | = |   | 	
float   | xlinemax | =-1e31 |   | 	

     maximum "xline" header key to include in the index.  Use this parameter
     to remove null trace headers or traces outside project area.
  
float   | xlinemin | =-1e31 |   | 	

     minimum "xline" header key to include in the index.  Use this parameter
     to remove null trace headers or traces outside project area.
  
[DIRECTORY]
user/karl
