Wayne Baldwin, USGS, pointed out that the "old" method of swell filtering using process MIX created incorrect results depending on the dip of the seafloor.
Simple ExampleWith a single linear slope, a single trace is out of line. (see script below) This example shows why the "old" swell produces incorrect results. Synthetic input Plot after 11 trace header mix method. Plot after process SWELL.
Complex ExampleThis example has a periodic "swell" and a dipping event with two high amplitude spikes. Compare the time of the spikes - new process SWELL is correct. Plot - Dipping water bottom and dipping event without heave. Plot - Dipping water bottom and dippint event with heave. Plot - Swell removed with new process SWELL (n 20) Plot - Swell removed using old header mix methiod.
The Old Method using header mix.The "old" method of swell filtering follows the following steps: 1) Pick the water bottom and store the times in segy header 50. (Any water bottom time may be used. e.g. Knudsen picks and stores the water depth in segy word 16 and the depth can be converted to time.) 2) The water bottom time is saved/copied into segy word 59 via process header. 3) Determine the swell period (count the traces between the peaks). Use the period as a window length for a running average of water bottom times. In sioseis this is accomplished by a running mix (average) of word 59, with the resulting average stored in segy word 59. The average is thus the current trace and the previous N traces. 4) A trace time shift is calculated by subtracting the water bottom time (in word 50) from the average water bottom time (in word 59) computed by mix. The time shift is stored in segy word 60. 5) The trace is then shifted in time using the contents of word 60. The script: sioseis << eof procs syn weight filter wbt header mix header2 shift plot end #procs syn weight filter plot end syn ntrcs 50 secs .6 ttva 2 .1 1500 1 x 0 xinc 12.5 end end weight twp 31 4 end end filter pass 20 80 end end prout ftr 1 ltr 1 sets 0 .2 fno 0 lno 99999 end end wbt thres .6 track .05 end end header fno 0 lno 999999 r59 = r50 end end mix type 4 hdr 59 weight 1 1 1 1 1 1 1 1 1 1 end end header2 fno 0 lno 999999 ftr 0 ltr 999 r60 = r59 - r50 end end shift fno 0 lno 999999 indices r60 end end plot ann shottr anninc 10 srpath sunfil.ras vscale 2 def .02 trpin 30 end end end eof display -rotate 90 sunfil.ras &