NAME
dds_expert - Data Dictionary System, expert
SYNOPSIS
Data Dictionary System, standard names.
DESCRIPTION
This describes the names used by DDS for special dic-
tionaries, definitions, and values. Only names that are
potentially meaningful to both end users and programmers are
included here. Names that are only relevant to "C" or For-
tran programmers are described in cdds_api(3) and
fdds_api(3f).
DICTIONARIES
Dictionaries contain a chronological sequence of defini-
tions. This history describes processing parameters and
binary data. Each dictionary is identified by its filename
or a special mnemonic.
tab(|); l lB lB l. mnemonic|dictionary description
stdin:|standard input stdout:|standard output par:|control
parameters cmd:|command line arguments env:|environment
variables fdn:|file descriptor (fd7:, ...) tmpn:|temporary
(tmp4:, tmp_vel:, ...) null:|the empty dictionary
CONTROL
Application programs are controlled by definitions that
specify dictionary names. These dictionaries describe
binary data that is input, output, or modified.
in= input_dictionary_name
out= output_dictionary_name
mod= modify_dictionary_name
in= Hline207.a
out= Hline207.b
The format of the binary data is normally defined within the
input dictionary. An override is required, if the input
dictionary does not exist, or the default is not acceptable.
The default format for output data is the same as the input
format. Application programs may allow the user to override
this default.
format= fmt_name attributes
out_format= fmt_name attributes
comment= define input format (no input dictionary)
format= segy
comment= override the output format
out_format= usp
The name of the binary data is normally defined within the
input dictionary. An override is required, if the input
dictionary does not exist, or the default is not acceptable.
data= input_filename
out_data= output_filename
mod_data= modify_filename
comment= define input data (no input dictionary)
data= line33.usp
comment= override the output data filename
out_data= stdout:
Each application program can select the name of control
definitions. Most use the standard names of in, out, or
mod. If auxiliary datasets are required, alternate names
may be used.
vel= velocity_dictionary
vel_format= velocity_format_override
vel_data= velocity_filename_override
hdr= header_only_dictionary
HISTORY
Dictionaries accumulate a comprehensive history of process-
ing that has been applied to binary data. Each application
program that uses DDS marks its place in history with a
title. Following the title are all parameters introduced by
the processing step.
DDS_Rev= 2.1a 5/1/94
cmd_title= bridge, convert seismic data
cmd_name= sun4/bridge
cmd_user= zrls13
cmd_date= Thu Jun 2 09:12:13 1994
cmd_host= gpss83
cmd_cwd= /tmp_mnt/home/trcgp/src/lib/dds
cmd_pid= 24205
processing_parameters= ...
CUBES
Standard names are used to describe multi-dimension data
stored in binary files. These may describe a dense data
cube or a sparse array. Dimension precedence follows For-
tran conventions; the first subscript varies most rapidly.
The cube size is defined by 1 to N integers, all of which
must be greater than zero. In Fortran '90 terms, this
describes the array shape and rank (number of dimensions).
size= n1 n2 n3 ...
A data cube may be described by additional definitions. A
value for each dimension defined by size should be speci-
fied.
tab(|); lB lI l. axis=|a1 a2 a3 ...|unique strings < 32
characters. |t, x, y, z|time and space. |w, kx, ky,
kz|frequency and wave number transforms. |T, px, py,
pz|tau-p transforms. |shot|shot domain (shot station
number). |station|station domain (receiver station number).
|channel|channel domain (recording channel number).
|offset|offset domain (relative bin number). |cdp|common
depth point number. |phone|multi component (polarization
code). |property|general (Vp, Vs, Density, ... code).
|?|unknown axis
origin=|o1 o2 o3 ...|float, coordinate of first sample.
delta=|d1 d2 d3 ...|float, signed increment between samples.
||zero? see axis_name= coordinates.
units=|u1 u2 u3 ...|strings < 32 characters. |sec, msec,
usec|time. |feet, meters|space. |feet/sec,
meters/sec|velocity. |hertz|frequency. |?|unknown units
sort=|f1 f2 f3 ...|field names
step=|s1 s2 s3 ...|sort increment
base=|b1 b2 b3 ...|sort sort origin
Some cube attributes are specific to the Connection Machine
architecture.
tab(|); lB lI l. cm_layout=|l1 l2 l3 ...|keywords. |serial
news send|TMC conventions. |disk|out-of-core extensions.
cm_fms=|n|Integer. |1 2 4 8 ...|number of processors, fixed
Machine size.
cm_pad=|pad_style|keyword (optional +- gravity prefix).
|zero|expand as needed, fill with zeros. |copy|expand as
needed, fill with nearest. |chop|truncate as needed.
|none|preserve size.
cm_pad_axis=|p1 p2 p3 ...|keywords (see cm_pad=).
BINARY DATA
Several definitions are used to describe binary data. Their
values are retrieved, when binary data is opened by an
application program.
Data defines the filename for binary data. It may be
defined by the user, when the input is explicitly named. It
is defined by DDS, when creating a default filename for out-
put data. If the binary data is attached to a dictionary,
the value is dict:.
data= filename
comment= binary data filename is "line33-"
data= line33-
comment= binary data is attached to dictionary
data= dict:
Format defines the format and attributes associated with
binary data. Format must be defined by the user, when a
history dictionary does not exist for input data. Standard
formats are described in dds_usp(1), dds_segy(1),
dds_disco(1), and dds_rosetta(1). Generic DDS formats are
described in dds_format(1).
format= fmt_name attributes
comment= standard segy format
format= segy
comment= same thing, explicitly
format= segy ebcdic float 4 ibm
Type definitions are used to describe the structure of
existing binary data. The names are always prefixed by
"type:". Type definitions are kept in the history associ-
ated with binary data. DDS types are the fundamental unit
for data transfer and buffer mapping.
type:name= subtype size align "note"
comment= simple type definition
type:TVPair= usp_short 200 2 "Time/value pairs"
Fmt definitions describe how to derive DDS types, given an
old and new format. The names are always prefixed by
"fmt:". Default fmt definitions are kept in special dic-
tionaries named "DDS_PATH/*.fmt". If any DDS types are
derived from fmt definitions, the type definition is saved
in the data dictionary. This provides a comprehensive his-
tory of binary data formats.
fmt:old:new.type= subtype size align "note"
comment= Disco "SHT-X" format, given usp input.
fmt:usp:disco.SHT-X= disco_float 1 0 $SrPtXC
Alias definitions are created by DDS, when the user over-
rides the defaults for "data" and "format". For example,
application programs may allow the end user to define
"out_format= fmt_name" and "out_data= filename".
comment= change "format" references to "out_format"
$format= out_format
comment= change "data" references to "out_data"
$data= out_data
MAP DEFINITIONS
Map definitions control the conversion of field values
between type buffers. The definition names are always pre-
fixed by "map:". Default map definitions are kept in spe-
cial dictionaries named "DDS_PATH/*.map". DDS copies them
from the default dictionary into the data dictionary, if
they are used. This provides a comprehensive history of how
processing has changed the binary data. Programs or users
may override default map definitions.
map:in:out.field= expression
map:segy:usp.RecNum= OrigRecNum
TRACE_READ, TRACE_WRITE
End users may define a default action, when reading and
writing certain types of traces. For example, dead trace
samples may be zeroed when writing, or dropped entirely when
reading. The trace_read and trace_write definitions provide
a default. It may be overridden by individual application
programs; they have ultimate control over data transfer.
trace_read= flags
trace_write= flags
tab(|); lI lB lB l. flags|description. pad_dead|pad dead
traces, when missing zero_dead|zero samples in dead traces
drop_dead|skip dead trace i/o drop_live|skip live trace i/o
drop_aux|skip auxiliary trace i/o
comment= zero dead trace samples
trace_write= zero_dead
comment= drop dead and auxiliary traces
trace_read= drop_dead drop_aux
DIRECTORY PATHS
DDS_PATH defines a search path for special dictionaries used
during execution. The value may specify multiple direc-
tories, delimited by white space. DDS_PATH itself is
retrieved from the extended dictionaries.
comment= give precedence to WEBG defaults
DDS_PATH= /webg/dds /explprod/phase2/usp/dds
DATA_PATH and CM_DATA_PATH define the path used when creat-
ing files for output binary data. The default path is the
current working directory. Users may write binary data to
an alternate file system. It may provide high capacity,
alternate charges, or special backups. DATA_PATH and
CM_DATA_PATH are retrieved from the extended dictionaries.
comment= default path for binary output data
DATA_PATH= /data/gpss83/data1/zrls13/work
CM_DATA_PATH= /sda16/zrls13/work
DATA_SUFFIX defines the suffix used when creating default
filenames for output binary data. The default suffix is the
output format name. DATA_SUFFIX is retrieved from the
extended dictionaries.
comment= suffix binary data filenames with "@"
DATA_SUFFIX= @
SPECIAL DICTIONARIES
Special dictionaries are required for run time support.
These must reside within a directory named by DDS_PATH.
These dictionaries are summarized by the following table.
tab(|); l lB lB l. Dictionary|Description.
fmt_name.fmt|format creation. disco.fmt|Disco.
segy.fmt|segy. usp.fmt|usp. sep.fmt|sep. cube.fmt|cube.
fmt_name.map|field conversion. segy.map|map to segy.
usp.map|map to usp. disco.map|map to disco.
host.dds|host defaults site.dds|site defaults
Custom versions of these dictionaries may be created. They
may reflect local conventions for header mapping or special
binary formats. DDS_PATH defines the directory search pre-
cedence for special dictionaries. Custom dictionaries are
used, if found before the defaults installed with DDS.
EXTENDED DICTIONARIES
Extended dictionaries are used to find some definitions.
These include DDS_PATH, DATA_PATH, CM_DATA_PATH, DATA_SUFFIX
and device attributes. Extended dictionaries are searched
until the desired definition is found. Each level broadens
the scope from problem specific to a wider arena.
tab(|); l lB lB l. Dictionary|Purpose (precedence).
env:|temporary defaults (highest) data_dict|problem specific
$(HOME)/.ddsrc|user defaults DDS_PATH/host.dds|host defaults
DDS_PATH/site.dds|site defaults (lowest)
PRIME TYPES
Prime types are used to describe the format of binary data.
Primes are predefined by DDS and their meaning is host
independent. They may be described by their genus, name,
byte precision, and byte order.
tab(|); l l l lB lB lB lB lB l l.
genus|name|P|swap|description void|bad|0||error
|void|0||null field byte|byte1|1||raw byte sequence
|byte1x|1|yes| char|ascii1|1|| |ascii1x|1|yes|
|ebcdic1|1||big blue |ebcdic1x|1|yes|
unsigned|unsigned1|1||2's compliment |unsigned2|2||
|unsigned4|4|| |unsigned8|8|| |unsigned1x|1|yes|
|unsigned2x|2|yes| |unsigned4x|4|yes| |unsigned8x|8|yes|
integer|integer1|1||2's compliment |integer2|2||
|integer4|4|| |integer8|8|| |integer1x|1|yes|
|integer2x|2|yes| |integer4x|4|yes| |integer8x|8|yes|
float|float4|4||IEEE style |float8|8|| |float4ibm|4||IBM
style |float8ibm|8|| |float8cray|8||Cray style
complex|complex8|8||IEEE style (real, imaginary) |com-
plex16|16|| |complex8ibm|8||IBM style |complex16ibm|16||
|complex16cray|16||Cray style
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