NAME

     horvel3d  - 3D automatic horizon velocity or gamma (residual
     nmo) picking


SYNOPSIS

     horvel3d [ -Nntap ] [ -Ootap ] [ -Pstkpik ] [ -Pstkpik  ]  [
     -Pstkpik  ]  [  -gamma ] [ -vvelpik ] [ -snord ] [ -tthr ] [
     -pnext ] [ [ -gigate ] [ -B ] [ -A ] ] [ -x1x1 ] [ -y1y1 ] [
     -x2x2  ] [ -y2y2 ] [ -x3x3 ] [ -y3y3 ] [ -x4x4 ] [ -y4y4 ] [
     -cldmcldm ] [ -ildmildm ] [ -llog ] [ -vsvmin ] [ -vevmax  ]
     [  -liminlimin ] [ -limaxlimax ] [ -dimindimin ] [ -dimaxdi-
     max ] [ -didmididmi ] [ -lidmilidmi  ]  [  -didmodidmo  ]  [
     -lidmolidmo  ]  [  -L ] [ -FT ] [ -ordiord ] [ -iteriter ] [
     -itypityp ] [ -SM ] [ -nfnf ] [ -debug ] [ -f2m ] [ -m2f ] [
     -xsd ] [ -V ] [ -? ]


DESCRIPTION

     horvel3d consumes semblance records from 3D CDP gathers, two
     optional pick segments defining a velocity fairway, and hor-
     izons picked from a  stacked  volume  and  emits  a  set  of
     automatically  picked velocity or gamma functions in special
     TDFN format suitable for reading by vi3d which  generates  a
     velocity tape format volume.

     The default pick format is Landmark horizon file  format  (5
     colmuns: line #, trace #, X coordinate, Y corrdinate, time).
     If xsd picks are used they must be in extended trace  header
     pick  format with at least DphInd and LinInd toggled (LI and
     DI numbering of the cells making up the  survey).  Currently
     these  are  the  only indeces the program uses to locate the
     input semblances within the survey. The  LinInd  and  DphInd
     trace  header  entries of the semblance data must be correct
     and correspond to the LI and DI numbers of the gathers  from
     which  they  were computed. This is the only way a semblance
     record can be located on the survey grid.

     If picking horizons must be done using xsd it can be done on
     either  inline or crossline cuts through the stacked volume,
     e.g. every 10th inline. A horizon is  defined  by  its  pick
     color only which currently means a limitation of 12 horizons
     (an xsd limit). When picking each LI or DI  slice  fromt  he
     volume  care  should be taken to assign the correct color to
     each horizon picked since these will have to  correspond  to
     previously  picked slices and will have to conform with sub-
     sequently picked slices.

     Optionally, the event horizons can be either smoothed  using
     a  median  smoother  or  can be fitted with a surface. It is
     also a good idea to  smooth  the  semblance  gathers  before
     input  to  the picker. This can be done using fkkstrip -pass
     -l3 which should produce the required  smoothing  and  still
     maintain enough resolution for a precise pick.
     The stack picked horizons are used for each semblance  spec-
     trum  to  restrict  the  automatic  picker to a single time,
     rather than have it wander all over the  spectrum.   Lateral
     (velocity)  wandering  is  further  restricted  by a fairway
     (generated by picking two RMS velocity curves on one of  the
     semblance  spectra  or  on a vertical stack of all available
     spectra. For each time the semblances are stacked vertically
     over the time gate to build up signal and the resulting sem-
     blance is then searched for maxima.  For  each  horizon  the
     picker  chooses  an initial semblance peak and checks to see
     if there is a velocity inversion or the  peak  sits  at  the
     edge  of  the  fairway.  If so another semblance peak (along
     the same curve but at a higher velocity) is chosen,  and  so
     on  up  to a specified number of trials, each cycle checking
     for velocity inversion.  If no legitimate peak (velocity) is
     found  that  horizon  is  bypassed for that CDP and the user
     notified in the printout file.  In the case of  no  horizons
     producing  a  velocity  for  that  location  the location is
     skipped.

     Provision has been made for using semblances  computed  from
     3D  gathers  that  have  been generated using a much coarser
     survey grid. This is often useful in  land  data  where  the
     normal bin size results in gathers having low fold and ulti-
     mately produces crappy semblances. By building super gathers
     much better quality semblances can be used. This coarse grid
     then must be related back to the  finer  bins  used  in  the
     stack.

     Between control points where velspec has been run  the  vi3d
     will  interpolate velocities so it's a good idea in areas of
     structure that you run as many velspecs as you can stand.

     The output from horvel3d is a TDFN-like format  file:  there
     is  a  0TDFN  line  containing  the  LI and DI number of the
     analysis location; this is followed  by  regular  1TDFN  ...
     9TDFN lines containing the time-velocity pairs (a 9TDFN ter-
     minates the sequence for that analysis  location).  vi3d  is
     used to read this file (with a suitable 1MC3D header line st
     the start - see the vi3d documentation for details).

     horvel3d gets both its data and its parameters from  command
     line arguments.  The picks are in named files created by xsd
     using the extended trace header format.

  Command line arguments
     -N ntap
          Enter the input semblance set name or file  immediately
          after  typing  -N  unless  the  input is from a pipe in
          which case the -N entry must be  omitted.   This  input
          file  should include the complete path name if the file
          resides   in   a    different    directory.     Example
          -N/b/vsp/dummy  tells  the  program  to  look  for file
          'dummy' in directory '/b/vsp'.

     -O otap
          Enter the output velocity TDFN function data  set  name
          or  file  immediately  after  typing -O. The default is
          stdout.

     -P stkpik
          For Landmark horizon files each horizon will  have  its
          own  -P[] command line entry, i.e. each horizon must be
          in a separate file.  For xsd  horizon  mode  enter  the
          file  name  containing the horizon picks made on the LI
          or DI xsd-plotted slices through  the  stacked  volume.
          Be  sure  to  plot  the slices using the correct sample
          interval. Each horizon will be defined by a pick  color
          selected  from  the  pick color palette (which you will
          have to do for each horizon and for  each  new  slice).
          Save  the  picks  using  the extended trace header pick
          format.  Horizons do not have to go all the way  across
          the  section  but will be automatically extended to the
          survey boundaries at whatever time the  last  pick  was
          made.

     -gamma
          Enter the command line argument '-gamma'  to  auto-pick
          gamma  or  residual nmo generated semblances, e.g. sem-
          blance from rnmospec

     -v velpik
          Enter the  file  name  containing  the  fairway  picks.
          These  consist  of 2 picks made on a semblance spectrum
          (again left to right, top to  bottom)  which  represent
          the  lowest  and  highest  RMS  velocity-time functions
          allowed, i.e. the picker will not be  allowed  to  look
          beyond  these limits at each time horizon.  When saving
          the xsd picks use the extended trace header format  and
          toggle  DstSgn - the trace header slot in which velspec
          writes the velocity. Not used in gamma (residual) mode.

     -s nord
          For automatic mode enter the order of smoothing of  the
          semblance curves.  Default = 5

     -t thr
          Enter lower semblance threshold to  accept.  Semblances
          below this value will be set to zero and ignored by the
          peak picker. Default: for X-T case = 0.0,  for  gamma-T
          case = 0.5

     -l log
          For automatic mode enter the sequential cell cumulative
          count  increment to output the semblance curves between
          the fairway for all horizons.  Obviously only the  con-
          trol  semblance  analysis  points are referred to here.
          If you have say 4  analysis  locations  throughout  the
          survey  and you want to generate curves for all of them
          then set log to 1.  The curves are output to stderr  so
          the  horvel3d command line should have >& at the end of
          it and just before the name of the file  to  store  the
          curves.   The  curves may then be plotted using xgraph.
          (See example below).  Default is no curve output. Warn-
          ing: this can generate lots of output in a hurry.

     -g igate
          For automatic mode enter  the  number  of  samples  (in
          time)  in  the  semblance  gate.  This is the number of
          isotime semblance curves that are stacked together  for
          each  event  before  the  resulting  semblance curve is
          searched for peaks.  Default = 8 samples.

     -B   Enter the command line argument '-B' to hang  the  sem-
          blance  time gate below the horizon time. Default is to
          center the time gate on the horizon time.

     -A   Enter the command line argument '-A' to hang  the  sem-
          blance  time gate above the horizon time. Default is to
          center the time gate on the horizon time.

     -p next
          For automatic mode enter the number of semblance  peaks
          to  test  at  each horizon.  If a velocity inversion is
          found for a peak then the program searches the semblace
          curve  for  a peak at a higher velocity (but lower sem-
          blance value).  Default = 3

     -vs vmin
          Enter optional minimum velocity to peg the zero time of
          each  trace.   This will have no effect on the picking,
          only on the output velocity tape.  Default is to ignore
          this option. Not used in gamma mode.

     -ve vmax
          Enter optional maximum velocity to peg the end time  of
          each  trace.   This will have no effect on the picking,
          only on the output velocity tape.  Default is to ignore
          this option. Not used in gamma mode.

     -limin limin
          Enter the minimum LI (x-line) number of the stack.  The
          default  is  to  use  whatever is in the semblance line
          header which may or may not be correct.  It's  best  to
          input  this  and  the  other 3 limits below. When using
          semblances generated using one set of  cell  dimensions
          (usually  very  coarse)  and  horizon  stack data using
          another set this command line parameter must be set  to
          the minimum LI number of the actual stack volume.

     -limax limax
          Enter the maximum LI (x-line) number of the stack.  The
          default  is  to  use  whatever is in the semblance line
          header which may or may not be correct.  It's  best  to
          input  this  and  the  other 2 limits below. When using
          semblances generated using one set of  cell  dimensions
          (usually  very  coarse)  and  horizon  stack data using
          another set this command line parameter must be set  to
          the maximum LI number of the actual stack volume.

     -dimin dimin
          Enter the minimum DI (n-line) number of the stack.  The
          default  is  to  use  whatever is in the semblance line
          header which may or may not be correct.  It's  best  to
          input  this  and the other limit below. When using sem-
          blances generated using  one  set  of  cell  dimensions
          (usually  very  coarse)  and  horizon  stack data using
          another set this command line parameter must be set  to
          the minimum DI number of the actual stack volume.

     -dimax dimax
          Enter the maximum DI (n-line) number of the stack.  The
          default  is  to  use  whatever is in the semblance line
          header which may or may not be correct.  It's  best  to
          input  this  and  the  other 2 limits below. When using
          semblances generated using one set of  cell  dimensions
          (usually  very  coarse)  and  horizon  stack data using
          another set this command line parameter must be set  to
          the maximum DI number of the actual stack volume.

     -lidmi lidmi
          Enter cell dimension in the LI  direction  (x-line)  of
          the  stacked  volume  from which the horizon picks were
          made. Default is to assume the  semblances  were  taken
          from gathers with the same cell dimensions as the stack
          volume.

     -didmi didmi
          Enter cell dimension in the DI  direction  (inline)  of
          the  stacked  volume  from which the horizon picks were
          made. Default is to assume the  semblances  were  taken
          from gathers with the same cell dimensions as the stack
          volume.

     -lidmo lidmo
          Enter cell dimension in the LI  direction  (x-line)  of
          the semblance data. Default is to assume the semblances
          were taken from gathers with the same  cell  dimensions
          as the stack volume.

     -didmo didmo
          Enter cell dimension in the DI  direction  (inline)  of
          the semblance data. Default is to assume the semblances
          were taken from gathers with the same  cell  dimensions
          as the stack volume.

     -FT  Enter the command line argument '-FT' to fit a  surface
          of specified order to each horizon.

     -ord iord
          Enter the order of surface  to  fit.  The  higher  this
          value  the  more detail will be preserved in the fitted
          surface. Default is 14 (the maximum order).

     -iter iter
          Enter the number of iterations used in the computations
          to obtain the fit. Default is 5

     -ityp ityp
          Enter the type of fit: 1 = robust fit  (default);  0  =
          least  squares.   The robust fit will be less dominated
          by isolated large changes in  the  input  surface  than
          will least squares.

     -SM  Enter the command line argument '-FT'  to  smooth  each
          horizon using an nf x nf median smoother.

     -nf nf
          Enter the length of one side of the  box  used  in  the
          median smoother. Must be at least 3 but beware that run
          time goes up as the square of this number.

     -L   Enter the command line argument '-L' to turn  off  (for
          velocity) / tuen on (for gamma) calculation and removal
          of linear trend line through each  horizon's  semblance
          curve.  The default mode (not -L) is some times helpful
          in cases where the semblance curves  are  characterized
          by  strong trends either toward the lower fairway limit
          or toward the higher limit to give the  peak  picker  a
          better chance of scoring on the first try.

     -V   Enter the command line argument '-V' to get  additional
          printout.

     -?   Enter the command line  argument  '-?'  to  get  online
          help.   The program terminates after the help screen is
          printed.


BUGS

     No automatic picker is  foolproof.   Failure  to  provide  a
     tight  fairway  or  sloppiness  in  picking  horizons on the
     stacked section will result in  bad  velocities  even  given
     sophisticated  logic  to  determine  bad initial picks. Also
     increasing the igate parameter increases signal to noise but
     making  it too large runs the risk of associating a velocity
     with a strong nearby reflector you didn't want.  For fairway
     picking it's a good idea to take all the velspec spectra and
     vertically stack them ( rstak  -nnrec,  where  nrec  is  the
     total  number  of  spectra  in the data set.  This shows the
     velocity limits overall better than looking at a few indivi-
     dual spectra.


SAMPLE COMMAND LINE

     1) picking velocities and diagnostics

     horvel3d -Nspectra -Phorzn1 -Phorzn2 -vfwaypiks -Ovout  -l50
     >& curve

     This generates a set of velocity functions, vout, and a  set
     of semblance curves for the horizons of sequential record 50
     and store these in the file curve.

     xgraph < curve

     This plots the curves.


     2) picking and velocity tape generation

     horvel3d -Nspectra -Pstackpiks -vfwaypiks -Ovout

     which generates the velocity functions, vout.  The  velocity
     tape volume is then generated by

     vi3d -e2800 -dt4 -Cvi3d.cards

     where an end time of 2800ms with a sample  interval  of  4ms
     has  been chosen. The file vi3d.cards contains the file out-
     put by horvel3d with a 1MC3D card inserted at the top.


     3) picking using different cell sizes

     horvel3d -Nspectra -Pstackpiks -vfwaypiks -Ovout

              -limin1 -limax76 -dimin1 -dimax76

              -lidmi1000 -lidmo200 -didmi600 -didmo200

     where the stacked volume has LIs and Dis that range from 1 -
     76  on  a grid with a bin size of 200x200. The semblances on
     the other hand were computed on gathers that were on  a  bin
     1000x600.

     4) picking residual nmo (gamma)

     fkkstrip -Nsembs -l3 -pass | \
     horvel3d -gamma -g 4 -Ph1 -Ph2 -Ph3 -Ph4 \
              -x1 5600 -y1 0 -x2 5600 -y2 16000 -x3 22400 \
              -y3 16000 -x4 22400 -y4 0 -Ovout

     where we have smoothed the semblance  gathers  before  input
     into  the  picking code and where we have defined the survey
     in terms of the corner XYs. The file vout is then ready  for
     input  to vi3d or slvr (horizon driven velocity volume). The
     corections are then made using rnmo.


SEE ALSO

     velspec, rnmospec, vi3d, slvr


AUTHOR

     Paul Gutowski, EPTG, (422) 3146, zprg03@trc.amoco.com


COPYRIGHT

     copyright 2001, Amoco Production Company
               All Rights Reserved
          an affiliate of BP America Inc.




























Man(1) output converted with man2html