SUPSCONTOUR - PostScript
CONTOUR plot of a segy data set
supscontour <stdin [optional parameters] | ...
Optional parameters:
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.
See the pscontour selfdoc for the remaining
parameters.
On NeXT: supscontour
< infile [optional parameters] |
open
Trace header fields accessed: ns, ntr, tracr,
tracl, delrt, trid,
dt, d1, d2, f1, f2
Credits:
CWP: Dave Hale and Zhiming Li (pscontour, etc.)
Jack Cohen and John Stockwell (supscontour, etc.)
Delphi: Alexander Koek, added support
for irregularly spaced traces
Aarhus University: Morten W. Pedersen copied
everything from the xwigb
source and just replaced all occurencies
of the word
Notes:
When the number of traces isn't known, we
need to count
the traces for
pscontour. 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.
In
/luton/home/mikew/su/su32.9/src/su/graphics/psplot:
SUPSCONTOUR - PostScript CONTOUR plot of a
segy data set
supscontour <stdin [optional parameters] |
...
Optional parameters:
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.
See the pscontour selfdoc for the remaining
parameters.
On NeXT: supscontour
< infile [optional parameters] |
open
Trace header fields accessed: ns, ntr, tracr,
tracl, delrt, trid,
dt, d1, d2, f1, f2
Credits:
CWP: Dave Hale and Zhiming Li (pscontour, etc.)
Jack Cohen and John Stockwell (supscontour, etc.)
Delphi: Alexander Koek, added support for irregularly spaced
traces
Aarhus University:
Morten W. Pedersen copied everything from the xwigb
source and just
replaced all occurencies of the word
Notes:
When the
number of traces isn't known, we need to count
the traces for pscontour.
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.