NAME
mctsqueeze - module to perform a multi-component time-
squeeze, as for a layer-stripping operation on split-shear
reflection data. Accepts four input traces (xx,xy,yx,yy),
and applies a trace-wise variable delay to the yy trace (by
default), and of dt/2 to the xy and yx traces.
SYNOPSIS
mctsqueeze [ -Nroot_ntap ] [ -Oroot_otap ] [ -Pxsd_ptap ] [
-PFpro_fast ] [ -PSpro_slow ] [ -rsirs ] [ -reire ] [ -nsins
] [ -neine ] [ -sindex ] [-fmax hz] [ -V ] [ -? ] [ -h ]
DESCRIPTION
mctsqueeze
This routine is needed to complement
multisource/multireceiver rotation of shear reflection data,
to resolve the effects of azimuthal anisotropy, in the case
where the principal directions of such anisotropy vary with
depth. In such a case, it is not sufficient to rotate
independently at each time-step, since the shear-waves will
split (and re-split while upcoming) at every horizon where
the anisotropy changes its orientation. This appears to be
a common circumstance in the sedimentary crust; Winterstein
and Meadows (Geoph, 56, 1331, 1991) show that where they
have used the VSP version of the present algorithm, they do
find that the direction varies, on a coarse-layer basis.
Hence, the rotation must be followed by an analysis to
determine at which reflection time the optimum angle of
reflection no longer adequately fulfills the Alford cri-
terion (ie elimination of signal on the off-diagonal
(mismatched) traces). This determines the time correspond-
ing to the bottom of a coarse layer of uniform anisotropic
direction. Then, application of routine mctsqueeze performs
a layer-stripping action, replacing the split-shear dis-
placements at this layer-bottom by a single wave, polarized
in the fast direction. The operation is then repeated for
the next layer. See details in APR report F93-G-17 (Section
III).
Strictly speaking, the algorithm should be applied only to
traces resulting from a single raypath; a stacked trace may
be an acceptable noise-reduced surrogate for a vertical-ray
trace under certain (poorly-understood) conditions.
In order to eliminate the need for you to input manually all
four input and four output filenames, a MULTICOMPONENT NAM-
ING CONVENTION is used (see below). Hence, the input files
are identified on the command line (after "-N") by the root
of their filenames only, as with a matrix. (BUT see IKP
exception, below!)
mctsqueeze static-squeezes the slow trace by an amount dt
[defined in the attached control pick files] down to the
control datum then performs a static shift below to the end
of data.. It also squeezes the two off-diagonal traces by an
amount dt/2, since each of these corresponds to travel down
as a fast mode, and up as a slow mode (or vvs). The static
squeeze applied is output to an xgraph file
root_name_Xgraph. This file may be plotted using xgraph to
show the time delay vs cdp data. The trace-wise
horizon/datum information for the current iteration is
stored in the next available trace header location of TVPTnn
and TVPVnn where the picks from the 11 or fast section are
stored in the TVPV variable and the picks from the 22 or
slow section are stored in the TVPT variable.
If the slow trace is NOT the 22 trace, you must specify it,
eg as 11, after "-s" There is NO provision at present for
handling 11 becoming slower than 22 along the line. It is
EXPECTED that the user has handled this problem during rota-
tion [using the trace-varient capabilities of rottnsr].
Command line arguments
-N root_ntap [default: none]
Enter the input data set root filename immediately
after typing -N. This input filename-root should
include the complete path name if the files reside in a
different directory. For example, -N/b/mc/test tells
the program to look for files test.11, test.12,
test.21, and test.22 in directory '/b/mc'.
-O root_otap [optional]
Enter the output data set root filename immediately
after typing -O. This output filename-root should
include the complete path name if you want the files to
reside in a different directory. For example,
-O/b/mc/testout tells the program to create files
testout.shms.xx.11, testout.shms.xx.12,
testout.shms.xx.21, and testout.shms.xx.22 in directory
'/b/mc'.
-P xsd_ptap [optional]
Enter the XSD header value filename immediately
after typing -P. This file gives the user the oppor-
tunity of applying a trace variant time squeeze to the
data. The file must contain two segments. The first
segment should be a reference horizon picked from the
fast shear dataset. The second is the same event
picked on the slow shear dataset. The header mnemonic
DphInd should be detected when generating the header
value file . mctsqueeze will calculate a time
squeeze based on the difference between these horizons
for each cdp of the output dataset. If the slow shear
pick drifts above the fast shear pick in time, the pro-
gram will react by assuming the slow horizon is now the
fast horizon and change the sign on the time squeeze.
The program uses linear interpolation between picks on
the horizon and extrapolates using the first or last
value of the horizon to cdp's outside the range picked.
-PF promax_fast [optional]
Enter the ProMAX pmx filename picked from the fast
shear section immediately after typing -PF. This file
must have a PKEYVALUE=CDP and a ZKEYVALUE=TIME. It
doesn't matter what the SKEYVALUE is. The same
interpolation/extrapolation rules apply as used with
the -P option above. If this option is used the -PS
entry must also be used.
-PS promax_slow [optional]
Enter the ProMAX pmx filename picked from the slow
shear section immediately after typing -PS. This file
must have a PKEYVALUE=CDP and a ZKEYVALUE=TIME. It
doesn't matter what the SKEYVALUE is. The same
interpolation/extrapolation rules apply as used with
the -P option above. If this option is used the -PF
entry must also be used.
-rs irs [Default: first record]
Enter start record number.
-re ire [Default: last record]
Enter end record number.
-ns ins [Default: first trace]
Enter the starting trace for rotation. trace.
-ne ine [Default: last trace]
Enter the ending trace for rotation.
-s index [Default: 22]
Enter the index of the slow principal component.
-fmax hz [Default: option turned off]
Enter the maximum frequency of interest containted in
the dataset. The routine will report to the print file
any occurance of a squeeze that results in data with
frequencies lower than this being temporally aliased.
This parameter is not required. It is here for qc pur-
poses only.
-V Enter the command line argument '-V' to get additional
printout.
-? or -h
Enter the command line argument '-?' or -h to get
online help. The program terminates after the help
screen is printed.
MULTICOMPONENT NAMING CONVENTION
All multicomponent files are stored as SEPARATE COMPONENTS
in SIS format, and conform to all conventions established
for single- component seismic data (including headers, his-
torical line headers, etc.). The tie between the various
components is established in their names, which end in
'.ij', like subscripts on a matrix. The subscripts i and j
are taken as integers (1,2, or 3) following the normal alge-
braic convention (also adapted in the proposed multi- com-
ponent data standards of the SEG) as follows:
* The FIRST subscript (i) refers to the orientation of the
source, since the source action occurs prior to the recep-
tion.
* The SECOND subscript (j) refers to the orientation of the
receiver.
* The indices refer to a RIGHT-HANDED coordinate system,
which may be either:
# line-oriented (if only a single line is under considera-
tion), or
# map-consistent (if multiple line-orientations are con-
sidered, then most multicomponent situations require that a
single coordinate system be used throughout, in order to
avoid error).
As long as one is consistent, some flexibility is avail-
able, but it is easy to err; the best advice is to just fol-
low the "most natural" choices defined below. Use your
creativity somewhere else.
* The POLARITY of the signals must conform to the coordinate
system, so that a positive trace value on any component
implies motion in the positive direction of that axis. With
multicomponent data, it is much easier to screw up the
polarities than with single-component data (roughly 3**2 = 9
times easier!); take care (in both acquisition and process-
ing)!
* The numerical identifiers are:
1 = x-axis (horizontal) If line-oriented, this is most
naturally the INLINE direction (since we are accustomed to
drawing x-z cross-sections); the polarity must be the same
on both sides of the source. If map-consistent, this is
most naturally EAST.
2 = y-axis (horizontal) If line-oriented, this is most
naturally the CROSSLINE direction, and (right-handed) care
must be used in the polarity. If map-consistent, this is
most naturally SOUTH, rather than north.
3 = z-axis (vertical) Whether line-oriented or map-
consistent, the SEG convention is to take positive DOWN,
rather than up, as a physicist might prefer. (This conven-
tion, along with +x = East, is what forces +y to be South.)
In some contexts (eg in an offset VSP), the indexing may
correspond to another right-handed coordinate system (eg
with the z-axis aligned with the downgoing ray, and the x-
axis lying in the saggital plane). In such a case, this
coordinate system should be derived from the foregoing by a
proper rotation.
ALGORITHM
mctsqueeze gets both its data and its parameters from com-
mand line arguments. These arguments specify the input, the
start and end records, the start and end traces, the slow
index, the two-way time squeeze, and the verbose printout
flag. See details of the algortihm in APR report F93-G-17
(Section III).
IKP processing
If mctsqueeze is run inside IKP, the input and output com-
ponents are connected via the process box, rather than by
the command line argument -N. The connections are specified
in the following manner: inputs 0,3,5,7 are for input com-
ponents in THIS ORDER: 11, 12, 21, 22 (using here the above
MULTICOMPONENT NAMING CONVENTION). You must specify the
FULL identifier for each input; ie NOT just the name-root,
as is done outside IKP (consequently, the names need not
conform to the CONVENTION). Similarly, outputs 1,4,6,8 are
for the output components (in the same order as the input).
Again, you must specify fully the desired destination of
these outputs. Output 9 is for the output xgraph quality
control file which may be plotted using xgraph and plots
time delay versus cdp.
BUGS
None known; please notify the AUTHOR if you find any.
SEE ALSO
rotvctr(1) rottnsr(1) rltt(1) wrot(1) grot(1) rotzs2(1)
AUTHOR
Leon Thomsen (APR x 3920)
Extensive Updates .. Garossino [March 95]
COPYRIGHT
copyright 2001, Amoco Production Company
All Rights Reserved
an affiliate of BP America Inc.
Man(1) output converted with
man2html