Back to SIOSEIS Examples.          Go to the list of seismic processes.          Go to SIOSEIS introduction.

Healy Sub-Bottom Profiler Plots - variable ship speed.

	Sub-bottom profilers (SBP) "shoot" according to a time based
rate rather than a uniform distance based rate.   Furthermore, the
ping rate may vary when the target (water bottom) depth varies.  
Some data processing algorithms such as migration, require the data
to be equally spaced.  Seismic data are T-X data  Time-Distance, 
where T is the two-way travel time and X is distance from some 
origin.  Reflection seismologist plot data so that positive T is 
the vertical axis with time zero at the top of the plot in a 
vertical direction. 
     A time based ping rate also leads to non-uniform spatial 
sampling when the ship speed varies.

	This example explains some techniques that I have tried to 
display SBP data with uniform spatial sampling.  The example will 
conclude with an example with FK migration, which also requires 
uniform spatial sampling.

Normal plot with uniform trace spacing by ping rate.

     The distance between pings (dbpts produced by geom parameter 
lprint 512) is:
at 0100z:
  shot= 5973 dbpts=  10.1515025 dangle=  57.9564838
  shot= 5974 dbpts=  6.75044032 dangle=  56.962798
  shot= 5975 dbpts=  6.72645055 dangle=  56.1465037
at 0200z:
  shot= 7567 dbpts=  1.59143656 dangle=  146.641759
  shot= 7568 dbpts=  1.112336 dangle=  143.66612
  shot= 7569 dbpts=  1.13571118 dangle=  140.964489
at 0300z:
  shot= 9235 dbpts=  7.13398217 dangle=  96.6953839
  shot= 9236 dbpts=  7.10242506 dangle=  95.965716
  shot= 9237 dbpts=  7.10329813 dangle=  95.9700171
at 0400z:
  shot= 11044 dbpts=  1.03377684 dangle=  140.343057
  shot= 11045 dbpts=  1.08036152 dangle=  142.475739
  shot= 11046 dbpts=  1.04234059 dangle=  145.092582

     Note that the apparent course is considerably different when
dbpts (distance between points) is different.

     My first approach was to use the SIOSEIS refraction plotting
parameter HSCALE - "plot by range".  Process GEOM parameter TYPE 17
uses the first trace as the spatial origin and calculates the
"along track" distance, which is inserted into the SEG-Y 
"range" location (long integer word 10).  PLOT parameter HSCALE
plots every trace so that the plot distance is HSCALE * RANGE
inches from the first trace.  Plot ignores traces that have a
range equal to or less than the last plotted one (i.e. ranges
must increase or the trace is not plotted).
     NIBS 2859 means that the plot file is composed of 300 dots
per inch.  HSCALE 1800 then means that the distance bewteen plot
traces in 6 (1800 / 300).  The plot of only 30 minutes with hscale 1800.
The blank spaces are whenever there' more than 6m between traces.
A  plot with HSCALE 3600 or trace spacing of 12m is significantly better.
Notice that the annotation at the top is the range every 100 traces
and the annotation is the GMT associated with the tagged (annotated)
trace. The same plot but with annotation at 5 minute intervals.

     Process PROUT option   info 1 of file env-2006_227_0100z-0400z.sgy showed:
env-2006_227_0100z-0400z. Begins: day227 01:00:00, lat:   77  8 22.679 long:  177 51 16.337
env-2006_227_0100z-0400z.   Ends: day227 04:00:59, lat:   76 49 36.801 long:  178  5 51.288 data times: 1.466 to  2.133 secs.

converting to decimal minutes and using program distance:
73>distance
  Enter the latitude of the first point (deg, min)
77 8.37798333  
  Enter the longitude of the first point (deg, min)
177 51.27228333
  Enter the latitude of the second point (deg, min)
76 49.61335
  Enter the longitude of the second point (deg, min)
178 5.8548
  The distance between the two points is  35432.8884 meters.
  The distance between the two points is  19.1322289 nautical miles.


     Using lsd I found there are 5099 traces.  Therefore the average
distance between pings is 6.948m.
     HSCALE 2100 would have been a better choice (dbrps 7 * 300 dots per inch).

     Rather than just throw out the excess data (pings that are very close
to one another), we could stack or sum them.  GEOM TYPE 17 not only
computes the distance each trace is from the first trace, it assigns
a "bin number" or RP where the bin width is DBRPS.  For example, with
DBRPS 7, traces with ranges 0-6 are assigned the first RP number, ranges
7-13 the next, 14-20 the next, etc.  The plot of the data with a 7m stacking
bin size doesn't show much differences from the previous plot because
dead traces were not created when there were no traces in the 3m bin.
Successive traces were plotted adjacent to each other regardless of
the range from the origin.  e.g.
lsd data 1 10
      SHOT   TR       RP    TR ID  RANGE DELAY NSAMPS    SI   YR DAY HR MIN SEC
      5990     1      22     1  1    151  1866   5333    50 2006 227  1   0  44
      5991     1      23     1  1    159  1866   5333    50 2006 227  1   0  46
      5992     1      24     1  1    169  1866   5333    50 2006 227  1   0  48
      5993     1      25     1  1    177  1866   5333    50 2006 227  1   0  51
      5994     1      26     1  1    184  1866   5333    50 2006 227  1   0  53
.
      7568     1    1612     1  1  11276  1733   5333    50 2006 227  2   0   7
      7573     1    1613     1  1  11282  1733   5333    50 2006 227  2   0  18
      7578     1    1614     1  1  11290  1733   5333    50 2006 227  2   0  29
      7582     1    1615     1  1  11298  1733   5333    50 2006 227  2   0  38
      7585     1    1616     1  1  11305  1733   5333    50 2006 227  2   0  44
      7588     1    1617     1  1  11311  1733   5333    50 2006 227  2   0  51
      7592     1    1618     1  1  11320  1733   5333    50 2006 227  2   0  59
Notice the shot numbering.

Migration of Sub-Bottom Profiler Data

Yilmaz states spatial aliasing occurs as: FrequencyThreshold = v / (4 * deltaX * sin(theta)) where theta is the structural dip. Thus for 45 degrees: deltaX of 1m aliases at 530Hz 2m 265 3m 176 4m 132 5m 106 6m 88 7m 75 For 15 degrees: deltaX of 1m aliases at 1442Hz 2m 721 3m 480 4m 360 5m 288 6m 240 7m 206Hz Using the above example with a 7m stack and 2x500 filter, followed by decimation by 4 and an fk migration, the plot isn't too bad!

Healy 2006 Knudsen migration examples.

Example 1

Example 1 covers day 229, 0500z to 0700z. Based on previous work (see SBP plotting and migration) step 1 is to create a smaller file of just the two hours of data we're interested in. The script assumes the data are already in envelope form and combines several steps of the previous work. The data are filtered and decimated in the output file and a plot is generated as well. The prout info 1 parameter displayed: env-2006_229_0500z-0700z. Begins: day229 05:00:01, lat: 77 41 13.544 long: 176 35 36.182 env-2006_229_0500z-0700z. Ends: day229 07:00:59, lat: 77 45 42.490 long: 176 32 37.709 data times: 1.066 to 1.467 secs. Using program distance, this data segment is 8423.65818 meters. lsd shows the file has 4734 shots, thus the average distance between pings is 1.8 m The jumps in the above plot are caused by changes in the SEGY deep water delay, which are produced on the Knudsen when the SBP "phase" is changed. DISKIN parameter SET 1.1 1.45 will eliminate these changes and make a constant data window for FK processing. Using fkmigr deltax 1.8 and plotting every trace, produced an over migrated plot. fkmigr delta 1.8 with plot hscale 900 yielded this plot. fkmigr delta 1.8 with plot hscale 1800 yielded this plot. Using a 3m bin/stack, fkmigr deltax 3, and plot hscale 1800 results in a great plot. I don't understand the light shaded "cone" areas. (Is it due to the point sources being "out of plane" or off to the side of the ship's track rather than directly under the ship.?)

Example 2

Example 2 covers day 222, 1220z to 1330z, covering 5700m with 7594 pings (deltax = .75m). The high ping rate is because Knudsen pings faster in shallow water. The ping to ping distance calculation may be quite poor because the ping rate is so much higher than the GPS update rate. The plot with just hscale 1800 is not quite as good as the plot with a 3m stack and hscale 1800. The plot with 3m stack bin and fkmigr deltax 3 is interesting.