NAME
dds_segy - SEGY format, Data Dictionary System
SYNOPSIS
Data Dictionary System, SEGY binary format.
DESCRIPTION
DDS supports the Society of Exploration Geophysicists SEG-Y
format.
format= segy attributes
comment= effective default for segy output
format= segy -GREEN ebcdic float 4 ibm ebcdic block_tape
0
tab(|); lI lB l lB l l. Attributes|Description
green|control word prefix GREEN|control word prefix and suf-
fix -green|no green prefix -GREEN| ebcdic|SEGY card header
ascii| integer n|sample type and precision float n|
ieee|sample style cray| ibm| block_tape n{k/m}|tape block
size
DDS automatically detects the attributes of input binary
data. If they conflict with attributes explicitly defined
by format, a warning is issued and the override is honored.
Output data attributes take predefined defaults, unless
explicitly overridden.
The SEGY seismic format is described by three major types,
segy_card, segy_binary, and segy_trace. This format is
created using the DDS_PATH/segy.fmt dictionary.
DDS_PATH/segy.map provides default map definitions.
CARD HEADER FIELDS
The SEGY card header contains a sequence of fields. The
field values, associated with the binary data, are also
available as dictionary definitions (i.e. segy_card3200=
...). They may be examined in the dictionary by end users
or retrieved by application programs. End users may over-
ride the field value associated with binary input data.
comment= override card header value
segy_card3200=
"C 1 CLIENT AMOCO COMPANY..."
"C 2 LINE AREA WEST DELTA #75/90..."
"C 3 REEL NO 000014 DAY-START OF REEL..."
...
"C40 END EBCDIC..."
The fields within the segy_card type may be summarized by
their nominal offset, name, type, and element count.
tab(|); lB l l l lB l lB lB lB l. Off|Name|Type|N|Comment
*|segy_green|segy_int|0|"SEGY green word prefix"
0|card3200|card80|40|"forty, 80 column cards"
3200|PadCard|byte1|0|"SEGY Card header pad"
*|segy_GREEN|segy_int|0|"SEGY green word suffix"
BINARY HEADER FIELDS
The SEGY binary header contains a sequence of fields. The
field values, associated with the binary data, are also
available as dictionary definitions (i.e. segy_LineNum=
...). They may be examined in the dictionary by end users
or retrieved by application programs. End users may over-
ride the field value associated with binary input data.
comment= override binary header value
segy_NumTrc= 48
segy_SmpInt= 8000
The fields within the segy_binary type may be summarized by
their nominal offset, name, type, and element count.
tab (|); lB l l l lB l lB lB lB l. Off|Name|Type|N|Comment
*|segy_green|segy_int|0|"SEGY green word prefix"
0|JobNum|segy_int|1|"Job identification number"
4|LineNum|segy_int|1|"Line number (only one line per reel)"
8|ReelNum|segy_int|1|"Reel number"
12|NumTrc|segy_short|1|"Number of data traces per record"
14|NumAux|segy_short|1|"Number of auxiliary traces per
record" 16|SmpInt|segy_short|1|"Sample interval in u-sec
(this reel)" 18|OrigSmpInt|segy_short|1|"Sample interval in
u-sec (original)" 20|NumSmp|segy_short|1|"Number of samples
per trace (this reel)" 22|OrigNumSmp|segy_short|1|"Number of
samples per trace (original)" 24|FmtCode|segy_short|1|"Data
sample format code (1 f4ibm, 2 i4, 3 i2, 5 f4)"
26|CdpFold|segy_short|1|"CDP fold (expected traces per CDP
ensemble)" 28|SortCode|segy_short|1|"Trace sorting code (1
none, 2 CDP, 3 fold, 4 stack)"
30|VertSumFlag|segy_short|1|"Vertical sum code (1 none, n
sum)" 32|SwpFreqStart|segy_short|1|"Sweep frequency at
start" 34|SwpFreqEnd|segy_short|1|"Sweep frequency at end"
36|SwpLength|segy_short|1|"Sweep length (m-sec)"
38|SwpCode|segy_short|1|"Sweep type code (1 linear, 2 par, 3
exp)" 40|SwpChan|segy_short|1|"Trace number of sweep chan-
nel" 42|SwpTprStart|segy_short|1|"Sweep trace taper length
in m-sec, start" 44|SwpTprEnd|segy_short|1|"Sweep trace
taper length in m-sec, end"
46|SwpTprType|segy_short|1|"Taper type (1 linear, 2 cos^2)"
48|CorrFlag|segy_short|1|"CorrFlag data traces (1 no, 2
yes)" 50|GainFlag|segy_short|1|"Binary gain recovered (1
yes, 2 no)" 52|AmpFlag|segy_short|1|"Amplitude recovery
method (1 no, 2 sph, 3 agc)"
54|UnitsFlag|segy_short|1|"Measurement system (1 meters, 2
feet)" 56|PolarityFlag|segy_short|1|"Impulse signal polarity
(1 neg, 2 pos)" 58|VibLagFlag|segy_short|1|"Vibratory polar-
ity code: 1-8"
60|SpareBinI2|integer2|170|"Unassigned--for optional infor-
mation" 60|SpareBinI4|integer4|85|"Unassigned--for optional
information" 60|SpareBinF4|float4|85|"Unassigned--for
optional information"
60|SpareBinF4ibm|float4ibm|85|"Unassigned--for optional
information"
400|PadBinary|byte1|0|"excess bytes after binary header"
*|segy_GREEN|segy_int|0|"SEGY green word suffix"
TRACE HEADER FIELDS
The fields within the segy_trace type may be summarized by
their nominal offset, name, type, and element count.
tab(|); lB l l l lB l lB lB lB l. Off|Name|Type|N|Comment
*|segy_green|segy_int|0|"SEGY green word prefix"
0|LineTrcNum|segy_int|1|"Trace sequence number within line"
4|ReelTrcNum|segy_int|1|"Trace sequence number within reel"
8|FieldRecNum|segy_int|1|"Original field record number"
12|FieldTrcNum|segy_int|1|"Trace number within the original
field rec" 16|SrcPtNum|segy_int|1|"Energy source point
number" 20|CdpNum|segy_int|1|"CDP ensemble number"
24|CdpTrcNum|segy_int|1|"Trace number within the CDP ensem-
ble" 28|TrcIdCode|segy_short|1|"Trace identification code:
1-8" 30|VertStack|segy_short|1|"Number of vertically summed
traces" 32|HorzStack|segy_short|1|"Number of horizontally
stacked traces" 34|DataUse|segy_short|1|"Data use (1 produc-
tion, 2 test)" 36|DstSgn|segy_int|1|"Distance from source to
group, signed" 40|GrpElev|segy_int|1|"Receiver group eleva-
tion" 44|SrcElev|segy_int|1|"Surface elevation at source"
48|SrcDepth|segy_int|1|"Source depth below surface (posi-
tive)" 52|GrpDatum|segy_int|1|"Datum elevation at receiver
group" 56|SrcDatum|segy_int|1|"Datum elevation at source"
60|WatDepthSrc|segy_int|1|"Water depth at source"
64|WatDepthGrp|segy_int|1|"Water depth at group"
68|ElevScaler|segy_short|1|"Scalar to be applied to all
elevations" 70|XYScaler|segy_short|1|"Scalar to be applied
to all coordinates" 72|SrcX|segy_int|1|"Source coordinate X"
76|SrcY|segy_int|1|"Source coordinate Y"
80|GrpX|segy_int|1|"Group coordinate X"
84|GrpY|segy_int|1|"Group coordinate Y"
88|XYUnits|segy_short|1|"Coordinate units (1 length, 2 arc
sec)" 90|WeathVel|segy_short|1|"Weathering velocity"
92|SubWeathVel|segy_short|1|"Subweathering velocity"
94|UpholeTmSrc|segy_short|1|"Uphole time at source"
96|UpholeTmGrp|segy_short|1|"Uphole time at group"
98|SrcStatic|segy_short|1|"Source static correction"
100|GrpStatic|segy_short|1|"Group static correction"
102|TotalStatic|segy_short|1|"Total static applied"
104|LagTmBreak|segy_short|1|"Lag time A. Time in ms"
106|LagTmSrc|segy_short|1|"Lag time B. Time in ms"
108|LagTmSmpOne|segy_short|1|"Delay recording time. Time in
ms" 110|MuteStart|segy_short|1|"Mute time--start"
112|MuteEnd|segy_short|1|"Mute time--end"
114|TrcNumSmp|segy_short|1|"Number of samples in this trace"
116|TrcSmpInt|segy_short|1|"Sample interval in us for this
trace" 118|GainType|segy_short|1|"Gain type of field instru-
ments: 1-4" 120|GainConst|segy_short|1|"Instrument gain con-
stant" 122|GainInit|segy_short|1|"Instrument early or ini-
tial gain (db)" 124|CorrFlag|segy_short|1|"CorrFlag (1 no, 2
yes)" 126|SwpFreqStart|segy_short|1|"Sweep frequency at
start" 128|SwpFreqEnd|segy_short|1|"Sweep frequency at end"
130|SwpLength|segy_short|1|"Sweep length in ms"
132|SwpType|segy_short|1|"Sweep type (1 linear, 2 par, 3
exp, 4 other)" 134|SwpTprStart|segy_short|1|"Sweep trace
taper length at start in ms"
136|SwpTprEnd|segy_short|1|"Sweep trace taper length at end
in ms" 138|SwpTprType|segy_short|1|"Taper type (1 linear, 2
cos^2, 3 other)" 140|AntiAliasFreq|segy_short|1|"Alias
filter frequency, if used"
142|AntiAliasSlope|segy_short|1|"Alias filter slope"
144|NotchFreq|segy_short|1|"Notch filter frequency, if used"
146|NotchSlope|segy_short|1|"Notch filter slope"
148|LowCutFreq|segy_short|1|"Low cut frequency, if used"
150|HighCutFreq|segy_short|1|"High cut frequency, if used"
152|LowCutSlope|segy_short|1|"Low cut slope"
154|HighCutSlope|segy_short|1|"High cut slope"
156|DateYear|segy_short|1|"Year data recorded"
158|DateDay|segy_short|1|"Day of year"
160|DateHour|segy_short|1|"Hour of day (24 hour clock)"
162|DateMin|segy_short|1|"Minute of hour"
164|DateSec|segy_short|1|"Second of minute"
166|DateType|segy_short|1|"Time basis code (1 local, 2 gmt,
3 other)" 168|TrcWeight|segy_short|1|"Trace weighting fac-
tor" 170|RollSwtch1|segy_short|1|"Geophone group number of
roll switch pos 1" 172|RollTrace1|segy_short|1|"Geophone
group number of trace number one"
174|RollTraceN|segy_short|1|"Geophone group number of last
trace" 176|RollGapSize|segy_short|1|"Gap size (total number
of groups dropped" 178|OverTravel|segy_short|1|"Overtravel
associated with taper"
180*|SpareI2|integer2|30|"Unassigned--for optional
information" 180*|SpareI4|integer4|15|"Unassigned--for
optional information" 180*|SpareF4|float4|15|"Unassigned--
for optional information"
180*|SpareF4ibm|float4ibm|15|"Unassigned--for optional
information" 182*|SrcPnt|segy_short|1|"USP src point above
this depth pt" 184*|SoPtNm|segy_short|1|"USP source point
number" 186*|RecInd|segy_short|1|"USP rec location index GI"
188*|ShotNum|segy_short|1|"shot number"
190*|RefStatSrc|segy_short|1|"DISCO refraction static
source" 192*|RefStatGrp|segy_short|1|"DISCO refraction
static group" 198*|SrcPnt_ieee|float4|1|"USP src point above
this depth pt" 198*|SrcPnt_ibm|float4ibm|1|"USP src point
above this depth pt"
194*|LinInd|segy_short|1|"Line Index"
196*|SrRcMX|segy_int|1|"Source to Receiver Mid Point X co-
ordinate" 200*|SrRcMY|segy_int|1|"Source to Receiver Mid
Point Y co-ordinate" 204*|CDPBCX|segy_int|1|"CDP Bin Center
X co-ordinate" 208*|CDPBCY|segy_int|1|"CDP Bin Center Y co-
ordinate" 212*|DstUsg|segy_short|1|"Unsigned Trace Distance"
214*|SrRcAz|segy_short|1|"Source to Receiver Azimuth times
10000" 216*|SrcLoc|segy_short|1|"USP Source Index times 10"
218*|RecNum|segy_short|1|"USP RecNum"
220*|FlReFN|segy_short|1|"USP FlReFN"
222*|CdpStatic|segy_short|1|"Dons famous Cdp Static USP ToS-
tAp" 224*|RfSrEl|segy_short|1|"Reference Surface Elevation"
??? see GrpDatum 226*|DePtEl|segy_short|1|"Depth Point
Elevation" 228*|FlDtEl|segy_short|1|"Floating Datum Eleva-
tion"
240|Samples|*|-1|"trace samples"
*|segy_PadTrace|byte1|0|"excess bytes after trace samples"
*|segy_GREEN|segy_int|0|"SEGY green word suffix"
The Spare trace header field begins at byte offset 180. It
accommodates a maximum of 60 bytes of non-standard, but
often vital, information. Within the DDS SEGY format,
unions (Fortran equivalences) are used to divide the spare
area into meaningful fields. The entire area can be
accessed as an array of integers or floats, using SpareI2,
SpareI4, SpareF4, and SpareF4ibm. Locations commonly used
by contractors have also been predefined (see SrcPnt,
SoPtNm, RecInd, ShotNum, RefStatSrc, RefStatGrp,
SrcPnt_ieee, and SrcPnt_ibm). Users may add fields to this
union by defining add_segy.
comment= supplement the SEGY spare trace header.
skip 4 bytes, and add two fields.
type:add_segy= {4 byte1 field_a field_b}
fmt:*:segy.field_a= segy_int "field 'a' description"
fmt:*:segy.field_b= segy_short "field 'b' description"
USP to SEGY MAP
Default map definition are provided for usp input. Each map
definition name is prefixed by "map:usp:segy.".
tab(|); lB lB. segy_field=|usp_expression SrcDepth=|ShtDep
FieldRecNum=|RecNum RecNum=|RecNum CdpTrcNum=|TrcNum
SrcPnt=|SrcPnt CdpNum=|DphInd FieldTrcNum=|PrTrNm
HorzStack=|FoldNm GrpDatum=|RfSrEl GrpX=|RcPtXC GrpY=|RcPtYC
GrpElev=|GrpElv SrcElev=|SrPtEl SrcPtNum=|SoPtNm
SoPtNm=|SoPtNm SrcX=|SrPtXC SrcY=|SrPtYC DstSgn=|DstSgn
DISCO to SEGY MAP
Default map definition are provided for disco input. Each
map definition name is prefixed by "map:disco:segy.".
tab(|); lB lB. segy_field=|disco_expression
LineTrcNum=|LINETRC ReelTrcNum=|REELTRC FieldRecNum=|ShotNum
FieldTrcNum=|CHAN SrcPtNum=|ESPNUM CdpNum=|CDP
RecNum=|field("RECNUM", void) CdpTrcNum=|SEQNO
TrcIdCode=|TRACEID VertStack=|VSTACK HorzStack=|FOLD
DataUse=|DATAUSE DstSgn=|SOFFSET GrpElev=|RELEV
SrcElev=|SELEV SrcDepth=|SDEPTH GrpDatum=|RDATUM
SrcDatum=|SDATUM WatDepthSrc=|WDEPTHSO WatDepthGrp=|WDEPTHRC
ElevScaler=|field("ED-SCAL", void) XYScaler=|field("CO-
SCAL", void) SrcX=|field("SHT-X", void) SrcY=|field("SHT-Y",
void) GrpX=|field("REC-X", void) GrpY=|field("REC-Y", void)
XYUnits=|COORUNIT WeathVel=|WVEL SubWeathVel=|SUBWVEL
UpholeTmSrc=|SHUPHOLE UpholeTmGrp=|RCUPHOLE
SrcStatic=|SHSTAT GrpStatic=|RCSTAT TotalStatic=|STAPPLY
LagTmBreak=|LAGTIMEA LagTmSrc=|LAGTIMEB LagTmSmpOne=|DELAY
MuteStart=|MUTESTRT MuteEnd=|MUTEEND TrcNumSmp=|NSAMPLES
TrcSmpInt=|SRATE GainType=|GAINTYPE GainConst=|INGCONST
GainInit=|INITGAIN CorrFlag=|CORRFLAG SwpFreqStart=|SWEEPSRT
SwpFreqEnd=|SWEEPEND SwpLength=|SWEEPLNG SwpType=|SWEEPTYP
SwpTprStart=|SWEEPSTP SwpTprEnd=|SWEEPETP
SwpTprType=|TAPERTYP AntiAliasFreq=|ALIASFIL
AntiAliasSlope=|ALIASLOP NotchFreq=|NOTCHFIL
NotchSlope=|NOTCHSLP LowCutFreq=|LOWCUT HighCutFreq=|HIGHCUT
LowCutSlope=|LOWCSLOP HighCutSlope=|HICSLOP DateYear=|YEAR
DateDay=|DAY DateHour=|HOUR DateMin=|MINUTE DateSec=|SECOND
DateType=|TIMEBASE TrcWeight=|TRWEIGHT RollSwtch1=|RSTASWP1
RollTrace1=|RSTATRC1 RollTraceN=|RSTATRCN
RollGapSize=|GAPSIZE OverTravel=|OVERTRVL
SrcPnt=|field("CDP-STAT", void) SoPtNm=|field("SHT-STAT",
void) RecInd=|field("REC-STAT", void)
read_segy
The read_segy definition allows the end user to request spe-
cial processing when reading traces. Keywords are used to
request or reject individual features. Default values are
show in bold in the following table.
tab(|); l l. keyword|description, assuming sort= ?
CdpTrcNum CdpNum RecNum|(deferred) verify sequential sort_3
(CdpNum) numbering -RecNum|accept any sort_3 (CdpNum) value
TrcNum|(deferred) verify sequential sort_2 (CdpTrcNum)
numbering -TrcNum|accept any sort_2 (CdpTrcNum) value
LineTrc|(deferred) LineTrcNum, verify sequential LineTrc
numbering -LineTrc|-LineTrcNum, accept any LineTrc value
ReelTrc|(deferred) ReelTrcNum, verify sequential ReelTrc
numbering -ReelTrc|-ReelTrcNum, accept any ReelTrc value
drop_dead|skip read, if trace is dead (TrcIdCode == 2)
-drop_dead|allow dead traces to be read zero_dead|zero trace
samples, if trace is dead -zero_dead|don't change samples,
if trace is dead pad_dead|(deferred) create dead traces, if
sort_2 (CdpTrcNum) not sequential -pad_dead|don't create
dead traces, if non-sequential drop_live|skip read, if trace
is live (TrcIdCode == 1) -drop_live|allow live traces to be
read drop_aux|skip read, if trace is auxiliary (TrcIdCode !=
1) -drop_aux|allow auxiliary (non-live) traces to be read
trc_sync|(deferred) reset trace counter to 1, if sort_3
(CdpNum) changes -trc_sync|reset trace counter after reach-
ing size_2 (NumTrc) trc_valid|(deferred) Error, if final
sort_2 (CdpTrcNum) is not sequential -trc_valid|read any-
thing you're given
read_segy can be used to solve problems with trace input.
The following examples assume there are four traces per
record. Live traces are denoted by (CdpTrcNum,CdpNum), dead
by <CdpTrcNum,CdpNum>, and missing by "none".
If "read_segy= " is defined (default), all input traces
are processed.
tab(|); lB l l l l lB. given|(1,5)|(2,5)|(3,5)|(4,5)
|(1,9)|<2,9>|<3,9>|(4,9)
|<1,9>|(2,9)|(3,9)|(4,9)|CdpNum 9 repeat
|(1,n)|(2,n)|(3,n)|<4,n>
read|(1,5)|(2,5)|(3,5)|(4,5) |(1,9)|<2,9>|<3,9>|(4,9)
|<1,9>|(2,9)|(3,9)|(4,9)|CdpNum 9 repeat
|(1,n)|(2,n)|(3,n)|<4,n>
If "read_segy= drop_dead", dead input traces are dropped.
tab(|); lB l l l l lB. given|(1,5)|(2,5)|(3,5)|(4,5)
|(1,9)|<2,9>|<3,9>|(4,9)
|<1,9>|(2,9)|(3,9)|(4,9)|CdpNum 9 repeat
|(1,n)|(2,n)|(3,n)|<4,n>
read|(1,5)|(2,5)|(3,5)|(4,5) |(1,9)|none|none|(4,9)
|none|(2,9)|(3,9)|(4,9)|CdpNum 9 repeat
|(1,n)|(2,n)|(3,n)|none
write_segy
The write_segy definition allows the end user to request
special processing when writing traces. Keywords are used
to request or reject individual features. Default values
are show in bold in the following table.
tab(|); l l. keyword|description, assuming sort= ?
CdpTrcNum CdpNum RecNum|force sequential sort_3 (CdpNum)
numbering -RecNum|honor sort_3 (CdpNum) mapping TrcNum|force
sequential sort_2 (CdpTrcNum) numbering -TrcNum|honor sort_2
(CdpTrcNum) mapping LineTrc|LineTrcNum, force sequential
LineTrc numbering -LineTrc|-LineTrcNum, honor LineTrc map-
ping ReelTrc|ReelTrcNum, force sequential ReelTrc numbering
-ReelTrc|-ReelTrcNum, honor ReelTrc mapping NumSmp|force
trace NumSmp to size_1 -NumSmp|honor trace NumSmp mapping
drop_dead|skip write, if trace is dead (TrcIdCode == 2, or
NumSmp <= 0) -drop_dead|allow dead traces to be written
zero_dead|zero trace samples, if trace is dead
-zero_dead|don't change samples, if trace is dead
pad_dead|create dead traces, if sort_2 (CdpTrcNum) not
sequential -pad_dead|don't create dead traces, if non-
sequential drop_live|skip write, if trace is live (TrcIdCode
== 1) -drop_live|allow live traces to be written
drop_aux|skip write, if trace is not live (TrcIdCode != 1)
-drop_aux|allow non-live traces to be written trc_sync|reset
trace counter to 1, if sort_3 (CdpNum) changes
-trc_sync|reset trace counter after reaching size_2 (NumTrc)
trc_valid|Error, if final sort_2 (CdpTrcNum) is not sequen-
tial -trc_valid|write anything you're given
write_segy can be used to solve problems with trace index-
ing. The following examples assume there are four traces
per record. Live traces are denoted by (CdpTrcNum,CdpNum),
dead by <CdpTrcNum,CdpNum>, and missing by "none".
If "write_segy= " is defined (default), output traces are
simply padded. The header mapping for sort_2 (CdpTrcNum)
and sort_3 (CdpNum) is preserved.
tab(|); lB l l l l lB. given|(1,5)|(2,5)|(3,5)|(4,5)
|(1,9)|none|none|(4,9) |none|(2,9)|(3,9)|(4,9)|CdpNum
9 repeat |(1,n)|(2,n)|(3,n)|none
write|(1,5)|(2,5)|(3,5)|(4,5) |(1,9)|<2,9>|<3,9>|(4,9)
|<1,9>|(2,9)|(3,9)|(4,9)|CdpNum 9 repeat
|(1,n)|(2,n)|(3,n)|<4,n>
If "write_segy= TrcNum RecNum", output is sequentially
numbered and padded. The header mapping for sort_2
(CdpTrcNum) and sort_3 (CdpNum) is lost.
tab(|); lB l l l l lB. given|(?,?)|(?,?)|(?,?)|(?,?)
|(?,?)|(?,?)|(?,?)|(?,?) |(?,?)|(?,?)|none|none|10
input traces
write|(1,1)|(2,1)|(3,1)|(4,1) |(1,2)|(2,2)|(3,2)|(4,2)
|(1,3)|(2,3)|<3,3>|<4,3>|pad last record
If "write_segy= TrcNum", output sort_2 (CdpTrcNum) is
sequential and padded. The header mapping for sort_3
(CdpNum) is preserved.
tab(|); lB l l l l lB.
given|(?,5)|(?,5)|(?,7)|(?,7)|CdpNum 5 short
|(?,7)|(?,7)|(?,8)|(?,8)|CdpNum 7 wraps
|(?,8)|none|none|none|CdpNum 8 short and wraps
write|(1,5)|(2,5)|(3,7)|(4,7)|CdpNum 5 short
|(1,7)|(2,7)|(3,8)|(4,8)|CdpNum 7 wraps
|(1,8)|<2,8>|<3,8>|<4,8>|CdpNum 8 short and wraps
If "write_segy= trc_sync TrcNum", output sort_2
(CdpTrcNum) is sequential, padded and synchronized with
changes in sort_3 (CdpNum). The header mapping for
sort_3 (CdpNum) is preserved.
tab(|); lB l l l l lB.
given|(?,5)|(?,5)|none|none|CdpNum 5 short
|(?,7)|(?,7)|(?,7)|(?,7) |(?,7)|(?,7)|none|none|CdpNum
7 repeat |(?,8)|(?,8)|none|none|CdpNum 8 short
write|(1,5)|(2,5)|<3,5>|<4,5> |(1,7)|(2,7)|(3,7)|(4,7)
|(1,7)|(2,7)|<3,7>|<4,7> |(1,8)|(2,8)|<3,8>|<4,8>
If "write_segy= trc_sync", output is padded and sort_2
(CdpTrcNum) is synchronized with changes in sort_3
(CdpNum). The header mapping for sort_2 (CdpTrcNum) and
sort_3 (CdpNum) is preserved. This variation is particu-
larly useful when converting to usp format, from a format
which may not carry along dead traces (segy, disco).
tab(|); lB l l l l lB. given|(1,5)|none|(3,5)|none
|none|(2,7)|none|(4,7) |(1,7)|(2,7)|(3,7)|(4,7)|CdpNum
7 repeat |(1,8)|none|none|(4,8)
write|(1,5)|<2,5>|(3,5)|<4,5> |<1,7>|(2,7)|<3,7>|(4,7)
|(1,7)|(2,7)|(3,7)|(4,7)|CdpNum 7 repeat
|(1,8)|<2,8>|<3,8>|(4,8)
SEE ALSO
tab(|); lB l. dds(1)|overview dds_user(1)|user guide
dds_map(1)|map expressions dds_expert(1)|symbolic names
dds_format(1)|generic format dds_disco(1)|Disco format
dds_usp(1)|Disco format dds_segy(1)|Disco format
dds_rosetta(1)|Rosetta Stone, "Standard" formats
cdds_api(3)|"C" Application Program Interface
fdds_api(3f)|Fortran Application Program Interface
AUTHOR
R. L. Selzler, APR, Tulsa
COPYRIGHT
copyright 2001, Amoco Production Company
All Rights Reserved
an affiliate of BP America Inc.
Man(1) output converted with
man2html