NAME
sr3d2 - 3D binning, bin sort using inline, crossline or ser-
pentine trajectory over survey area or subset of survey
area.
SYNOPSIS
sr3d2 [ -Nntap ] [ -Ootap ] [ -Ddtap ] [ -Pptap ] [ -slisli
] [ -elieli ] [ -sdisdi ] [ -ediedi ] [ -lisris ] [ -liilii
] [ -disdis ] [ -diidii ] [ -risris ] [ -riirii ] [ -type-
type ] [ -modemode ] [ -L ] [ -X ] [ -flexbin ] [ -off ] [
-foldifold ] [ -dmindmin ] [ -dmaxdmax ] [ -ddelddel ] [
-radiusrrad ] [ -nsampnsamp ] [ -stop ] [ -moredata ] [ -go
] [ -logilog ] [ -nodead ] [ -V ] [ -VV ] [ -? -h -help ]
DESCRIPTION
sr3d2 is the second in a pair of routines required in order
to bin sort seismic data. The first routine sr3d1 will have
already been executed on your input dataset creating a prel-
iminary sr3d1 table that is required [along with the same
seismic data used to generate that table] by sr3d2. sr3d2
application has two modes of operation [-stop] and [-go].
During the initial [-stop] pass the sr3d1 table is examined
to extract the global binning parameters and the total
number of live traces that were passed through sr3d1. This
information combined with any sr3d2 command line options
determines the size requirements of the sr3d2 volume. If
enough disk space can be found the sr3d2 volume is formed,
the sr3d1 table is updated for any changes present on the
sr3d2 command line and the program terminates. It is a good
idea to backup a copy of your sr3d1 table prior to running
sr3d2 -stop. If the program crashes for any reason while
the sr3d1 file is open it could be corrupted. As it costs a
lot to recreate that file it is best not to take chances.
On sr3d2 -stop has run to completion it is possible to exe-
cute sr3d2 in the [-go] mode. The sr3d2 volume, besides
being internally organized for very fast sorting, contains
no dead traces [as defined by StaCor = 30000] and is hence
as compact a volume as you will have on disk short of util-
izing data compression.
In [-go] mode the only data required by sr3d2 is the input
sr3d2 volume and sr3d1 table. It is therefore possible [and
usually desireable] at this point to remove all previous
data from disk. The output binned data may be sent to
either a disk file or an output pipe. The terms LI [line
index] and DI [depth index] form a two dimensional index
system used to locate one inside the global bin system. The
initial bin [LI,DI] = [1,1] is located in the [x1,y1] corner
[as defined by the corner coordinates used in the sr3d1
run]. Traversing from corner 1 to corner 2 [x2,y2] will
take one in the direction of increasing DI index. Continu-
ing from corner 2 to corner 3 [x3,y3] is to travel in the
direction of increasing LI index. You can see then that the
[LI,DI] indexing is strictly user controlled and can form
any relationship you desire with the field acquisition. In
practice, DI's usually increment inline and LI's crossline.
There are many options affecting the set of traces to be
included in a given output bin. The default is simply out-
put the collection of all traces whose source-receiver mid-
points lie within a bin. The default sort order, assuming
inline sorting, outputs cells in DI order starting at Corner
1 and moving along side 1-2; subsequent lines step to the
next LI along side 1-4. If crossline sorted output is
requested (from step sr3d1 -X) the data are output in LI
order for each DI starting starting at Corner 1 and moving
toward corner 4; subsequent LIs step down to the next DI
(along side 1-2).
Offset binning may be requested in which case the command
line entries [-dmin, -dmax, -ddel] are required to define a
model spread. The output format will be organized as giant
records, each record will be associated with whatever input
trace offsets fall within the granularity of the model
spread offset slots. Each record will have a number of
traces equal to the total number of cells requested from the
survey with one trace per cell (live or dead). When examin-
ing cell contents for a trace that fits the output offset
criteria the first trace to pass the test is used, the rest
are ignored. Future enhancements of this routine will
result in the closest appropriate trace to the current bin
center being output. Also at the moment be certain that
your model spread spans the entire offset distribution of
your dataset. This is especially critical for the first and
last bin as any trace offsets outside the range will fall
into those bins and may be used inappropriately. Future
enhancements will allow an individual offset or range of
offsets to be output. At the moment ALL offsets will be
supplied.
In any of the above options you may limit the output in
terms of LI and/or DI range using [-sli, -eli, -sdi, -edi].
You may cause the output bin nomenclature to start at some-
thing other than [LI,DI] = [1,1] using [-lis, -lii, -dis,
-dii] on the command line.
In practice the output from sr3d2 is often passed through
the routine binstk to regularize the offset distribution
within the bins prior to stacking. Failure to perform this
partial stack may result in amplitude inconsistencies on the
stacked data often referred to as glitches. These are
caused by variations in the offset distribution within adja-
cent bins due to feathering, line orientation etc. during
acquisition.
The latest release of sr3d2 has been extensively modified
from the old reliable code. If you experience any difficulty
with this version you may run the old version by placing -
version old on the command line. In this case please give
us a call and let us know what happened so we can quickly
kill any cockroaches that may be lurking in this release.
Input to sr3d2 (ntap) can be stdin ; output (otap) can be to
stdout ; the sr3d2 volume (dtap) however must be on disk.
sr3d2 gets both its data and its parameters from command
line arguments. These arguments specify the input seismic
data, output binned data, the sr3d1 sort table, and sr3d2
volume file name.
Command line arguments
-N ntap
Enter the input data set name or file immediately after
typing -N unless the input is from a pipe in which case
the -N entry must be omitted. If the -go option is
chosen below then this input must be omitted since the
intermediate sort file has already been built complete
with proper headers with the -stop run. This input file
should include the complete path name if the file
resides in a different directory. Example
-N/b/vsp/dummy tells the program to look for file
'dummy' in directory '/b/vsp'.
-O otap
Enter the sorted output data set name. This can be
piped to stdout
-D dtap
Enter the sr3d2 volume name(s). This cannot be piped
and must be on disk. If for some reason the entire
sr3d2 volume cannot fit into one disk partion (e.g. the
disk is too small or your workstation has a 2Gb file
size limit) the multiple file names may be specified
(e.g. -Dtmp1 -Dtmp2 -D/export/data1/tmp3). This essen-
tially splits up the sr3d2 volume into smaller pieces.
Note: it is much more efficient in storeage to save the
-D files and the table created by sr3d1 and to use the
-go option in sr3d2 to serve up the sorted data than to
save the actual sorted data.
-P ptap
Enter the input sr3d1 sort table name immediately after
typing -P.
-sli sli
Enter the starting LI to output. Valid only with -go.
Default = 1.
-eli eli
Enter the ending LI to output. Valid only with -go.
Default = last LI
-sdi sdi
Enter the starting DI to output. Valid only with -go.
Default = 1.
-edi edi
Enter the ending DI to output. Valid only with -go.
Default = last DI.
-lis lis
Enter the starting LI record number, [LinInd]. Default
= 1. Note: this is only a renumber option.
-lii lii
Enter the LI record number increment. Default = 1.
Note: this is only a renumber option.
-dis dis
Enter the starting DI record number, [DphInd]. Default
= 1. Note: this is only a renumber option.
-dii dii
Enter the DI record number increment. Default = 1.
Note: this is only a renumber option.
-ris ris
Enter the starting RI record number, [RecNum]. This
indexing is usedDefault = 1. Note: this is only a
renumber option.
-rii rii
Enter the RI record number increment. Default = 1.
Note: this is only a renumber option.
-type type
Enter 0 for data ordered from smallest LI to largest LI
as DI increases; enter 1 for data ordered alternately
from smallest LI to largest LI, then largest to smal-
lest (called serpentine order) as DI increases.
-mode mode
Enter the sort mode: 1= common midpoint; 2= common
receiver; 3= common source; 4= common centroid; 5= com-
mon midpoint with CDP centers (default).
-L Enter the command line argument -L if the output is to
be organized into one record per line (per LI);
otherwise the output will be one record per cell the
the number of records equal to the number of cells in
the survey.
-X Enter the command line argument -X if the output is to
be sorted in Crossline order. That is all LI's for the
initial DI then incrementing along subsequent DI's.
-flexbin
Enter the command line argument -flexbin to output
flexbin sorted data. This option requires that the
model spread information [-dmin, -dmax, -ddel] has been
included on the command line. An offset histogram is
formed for each output cell. Emply histogram bins will
be populated by the closest trace available. The algo-
rithm looks only at adjacent cells. If no appropriate
trace can be found in these cells a dead trace will be
output for that offset. The main affect of this option
is to regularize the output character of the dataset.
Variations due to an erratic offset distribution often
result in rapid bin to bin character variation as
stacked traces with a radically different offset mix
are situated in near proximity. Flexbinning combined
with a binstk prior to stacking go a long way to reduc-
ing such effects.
-off Enter the command line argument -off to output sorted
data in constant offset volumes based on an input model
spread. The output format will be organized as giant
records, each record will be associated with whatever
input trace offsets fall within the granularity of the
model spread offset slots. Each record will have a
number of traces equal to the total number of cells in
the survey with one trace per cell (live or dead). The
proper LI & DI indexes will be in the trace headers.
NOTE: for most land data because of the irregular
recording there will likely be a large number of unpo-
pulated cells for some offsets so it is possible that
this option will most likely be for the marine case.
You may choose to enter -off in concert with -flexbin
to help aliviate this problem. 'Another way land data
might be processed this way would be to first output
CDP gathers, bin them into the model spread (see
binstk), output the results to disk, and then use a
second pass of sr3d1/sr3d2. The binstk would synthesize
a more regular distribution of offsets in the CDP data.
-dmin dmin
Enter the near offset of the model spread. Remember
that all traces less than this value will fall in the
first bin of the model spread. In the case of an offset
sort this may produce undersired effects if the full
range of offsets in the data is not spanned by these
parameters. Default = 0
-dmax dmax
Enter the far offset of the model spread. Remember that
all traces greater than this value will fall in the
last bin of the model spread. In the case of an offset
sort this may produce undersired effects if the full
range of offsets in the data is not spanned by these
parameters. Default = none [This entry is manditory for
-off or -flexbin options].
-ddel ddel
Enter the group interval of the model spread. Default =
none [This entry is manditory for -off or -flexbin
options].
-radius rrad
Enter the radial limit that you wish to flex over in
the units of your coordinate system. An entry larger
than the distance to the furthest point in the adjacent
bins results in flexbinning over only the adjacent
bins. There is currently no way to extend this dis-
tance as we are too afraid of aliasing. Default =
1.0e30.
-fold ifold
Enter new output fold. When flex binning it is some-
times the case that the current fold is insufficient to
capture a reasonable distribution of offsets. The user
should test some values here but this value should
never be less than the default fold. Default is the
original fold generated by the sr3d1 run.
-nsamp nsamp
Enter output number of samples override. This allows
doing a sr3d1 using a windowed input data set (e.g.
nsamp=1) but do the sr3d2 using a specified number of
samples.
-stop
Enter the command line argument -stop to generate the
sr3d2 volume then stop. This is useful for big data
sets when sorts take a long time and the user wants to
essentially pause the final output sort to examine the
printout messages for a final check before beginning
the final sort output.
-moredata
Enter the command line argument -moredata to break up
the data stream into sr3d2. This way portions of the
data can be run through sr3d2 -stop and the job put on
hold (e.g. for long jobs conflicting with scheduled
machine downtime). The only restriction is that the
data must be in the same order as was used in sr3d1.
-go Enter the command line argument -go if the sr3d2 volume
has already been created by a prior run of sr3d2. This
enables the program to proceed directly to outputting
sorted traces.
NOTE: If neither -stop nor -go is present on the command
line the routine will build the sr3d2 volume and continue to
output binned data without stopping.
-log ilog
Enter the log message frequency (in traces). This will
cause a message to be written to the screen (stderr)
every time ilog traces have been read.
-nodead
Enter the command line argument '-nodead' to avoid out-
putting totally dead gathers. This option is ignored
for the offset sort case.
-V Enter the command line argument '-V' to cause a message
to be written to the screen (stderr) every time an
input record has been read.
-VV Enter the command line argument '-VV' for debug level
verbose output. DO NOT USE this option on production
runs as your printout file will likely be larger than
your sr3d2 volume. An enormous quantity of information
will be output [most of which is really only useful to
a programmer] but if you want lots of detail about how
the program is operating this should do it.
-? -h -help
Enter the command line argument '-?', -h or -help to
get online help. The program terminates after the help
screen is printed.
EXAMPLES
xcram -r | sr3d2 -Dsr3d2_volume -Psr3d1.table | xcram
where we bring in the input data from tape and send the out-
put sorted data on to tape. The file sr3d1.table is the
sort table created by sr3d1.
sr3d2 -Nindata
-D/export/data1/sr3d2_volumeA -D/export/data2/sr3d2_volumeB
-Psr3d1.table -Oodata
where all files reside on disk but the sr3d2 volume file has
been broken up into 2 separate files on 2 different disk
partitions.
sr3d2 -Nindata
-D/export/data1/temp_fileA -D/export/data1/temp_fileB
-Psr3d1.table -stop
sr3d2
-D/export/data1/temp_fileA -D/export/data1/temp_fileB
-Psr3d1.table -go -Oodata
where the first sr3d2 step builds the intermediate sort file
then stops. The second sr3d2 starts immediately serving
sorted data using the presort table from sr3d1 and the
intermediate files from the first sr3d2 step. Note that the
second step has no input file. The second sr3d2 is fast
relative to the previous step so the -stop/-go sequence is
useful is you are running a number of flows requiring the
sorted data.
sr3d2
-Dsr3d2_volume -Psr3d1.table -go -flexbin -dmin200 -dmax4250
-ddel50 -Oodata
where a pre-existing sr3d2 volume is being accessed to feed
up binned data using an offset model invoked by the -dmin,
-dmax, -ddel parameters with flexbinning requested. Note
that the bin center information loaded to the flexed traces
will be that of the output bin NOT the bin they started out
in. The header information for SrPtXC and SrPtYC remains
untouched so that one could, with a little detective work,
plot out which traces were flexed.
sr3d2
-Dsr3d2_volume -Psr3d1.table -go -off -dmin200 -dmax4250
-ddel50 -Oodata
where a pre-existing sr3d2 volume is being accessed to feed
up binned data using an offset model invoked by the -dmin,
-dmax, -ddel parameters with offset sorting requested.
sr3d2
-Dsr3d2_volume -Psr3d1.table -go -off -flexbin -dmin200
-dmax4250 -ddel50 -Oodata
where a pre-existing sr3d2 volume is being accessed to feed
up binned data using an offset model invoked by the -dmin,
-dmax, -ddel parameters with both offset sorting and flex-
binning requested.
BUGS
unknown
SEE ALSO
sr3d1, presort3d, sisort3d, pack3d
AUTHOR
Original SIS code by Gary Ruckgaber; UNIX port done by Paul
Gutowski
Major re-write to add flexbinning and get code in shape for
compression by Paul Garossino
COPYRIGHT
copyright 2001, Amoco Production Company
All Rights Reserved
an affiliate of BP America Inc.
Man(1) output converted with
man2html