SUCHW - Change Header Word using one or
two header word fields
suchw <stdin >stdout [optional parameters]
Required parameters:
none
Optional parameters:
key1=cdp,... output
key(s)
key2=cdp,... input
key(s)
key3=cdp,... input
key(s)
a=0,... overall
shift(s)
b=1,... scale(s)
on first input key(s)
c=0,... scale
on second input key(s)
d=1,... overall
scale(s)
The value of header word key1 is computed
from the values of
key2 and key3 by:
val(key1) = (a + b * val(key2) + c *
val(key3)) / d
Examples:
Shift cdp numbers by -1:
suchw <data >outdata a=-1
Add 1000 to tracr value:
suchw
key1=tracr key2=tracr a=1000 <infile >outfile
We set
the receiver point (gx) field by summing the offset
and shot point
(sx) fields and then we set the cdp field by
averaging the sx and gx fields (we choose to
use the actual
locations for the cdp fields instead of the
conventional
1, 2, 3, ... enumeration):
suchw <indata key1=gx key2=offset
key3=sx b=1 c=1 |
suchw key1=cdp key2=gx key3=sx b=1 c=1 d=2
>outdata
Do both operations in one call:
suchw<indata key1=gx,cdp key2=offset,gx
key3=sx,sx b=1,1 c=1,1 d=1,2 >outdata
Credits:
SEP: Einar Kjartansson
CWP:
Jack K. Cohen
CWP: John
Stockwell, 7 July 1995, added array of keys feature
Delphi: Alexander Koek, 6 November 1995,
changed calculation so
headers of different types can be expressed in each other