next up previous contents
Next: SUPEF - Wiener predictive Up: 1D Filtering Operations Previous: SUBFILT - apply Butterworth   Contents

SUCONV, SUXCOR - convolution, correlation with a user-supplied filter

The standard operations of convolution and cross correlation may be performed with suconv and suxcor, respectively. The filter may be supplied as a vector input on the commandline, or as a file containing a single trace in SU format. In addition to taking the input as a single trace, it is possible to supply a panel of filters, each to be used trace by trace on a panel of SU data.

An example of correlating a vibroseis sweep may be seen by creating vibroseis-like data, with suvibro, suplane and suconv. To make ``vibroseis'' suplane data

% suvibro > junk.vib.su
% suplane | suconv sufile=junk.vib.su > plane.vib.su

Because surange tells us that

% surange < junk.vib.su
1 traces:
 tracl=1 ns=2500 dt=4000 sfs=10 sfe=60
 slen=10000 styp=1

there are 2500 samples on the vibroseis sweep, we can do the following correlation

%  suxcor < plane.vib.su sufile=junk.vib.su |
     suwind itmin=2500 itmax=2563 | sushw key=delrt a=0.0 > data.su
(this line is broken to make it fit on the page here, the real
command is typed on a single line)
The value of itmin=sweeplength and itmax=sweeplength+nsout where nsout is the number of samples expected in the output. The final step using sushw is to set the trace delay to 0. Choosing itmin=sweeplength will ensure that the data start at the correct value. Choosing nsout=sweeplength-nsin, where nsin is the number of samples in the input, will yield the correct number of samples to keep.


next up previous contents
Next: SUPEF - Wiener predictive Up: 1D Filtering Operations Previous: SUBFILT - apply Butterworth   Contents
John Stockwell 2007-04-10