NAME

     fxydecon - do fxydecon  (true  3-D  fxdecon)  on  a  seismic
     dataset.   This  routine  attenuates  random noise with a 2-
     dimensional complex-valued filter (2-D  spatial  filter)  on
     common  frequency  slices.  Keywords:  [random  noise decon,
     deconvolution, attenuation, 3D, 2D, fxdecon]



SYNOPSIS

     fxydecon [ -Nntap ] [ -Ootap ] [ -wdiskworkdir ] [ -w1win1 ]
     [  -w2win2 ] [ -w3win3 ] [ -wo1woverlap1 ] [ -wo2woverlap2 ]
     [ -wo3woverlap3 ] [ -l2loper2 ] [ -l3loper3 ] [ -nsnstr ]  [
     -nenetr  ] [ -rsnrst ] [ -renred ] [ -V ] [ -?  or  -h or  -
     help ]


DESCRIPTION

     fxydecon : fxydecon is  a  3-D  noise  attenuation  routine,
     similar  to fxdecon except that it does 3-D filtering rather
     than the 2-D filtering done by fxdecon.  3-D  filtering  has
     an advantage over 2-D filtering in that it can retain events
     such as faults which appear discontinuous in  2-D,  but  are
     predictable in 3-D.

     fxydecon gets both its data and its parameters from  command
     line  arguments.  These arguments specify the input, output,
     the design window,window  overlaps,  operator  lengths,  the
     start  and  end  traces,  start  and end records and verbose
     printout, if desired.

  Command line arguments
     -N ntap  [default: stdin]
          Enter the input data 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  [default: stdout]
          Enter the output data  set  name  or  file  immediately
          after  typing -O. This output file is not required when
          piping the output to another process. The  output  data
          set also requires the full path name (see above).

     -wdisk wdisk  [default: present directory]
          This specifies the work disk.  Enter a directory  where
          the  work  dataset will reside.  This work dataset will
          be three times the size of  the  input  dataset  to  be
          processed.(Input,  output,  weights)   Since  the  work
          dataset is unlinked just after allocation to avoid  the
          need  to  manually  delete it if the program terminates
          unexpectedly, you will not be  able  to  see  the  work
          dataset  while  the job is running.  The default is the
          directory the program is running from.

     -w1 win1  [default:trace length]
          This is the window length in  time  (the  first  dimen-
          sion).   The  events in this window should all be about
          the character and with similar dip.  Generally 1000  ms
          is  a good starting point.  If the window is too small,
          there will be too few samples to get good resolution of
          the  predictable  data;  if the window is too long, the
          data will be poorly predicted by the finite-size opera-
          tor.

     -w2 win2  [default:number of traces in a record]
          This is the window length within the record (the second
          dimension).   The  events  in this window should all be
          about the character and with similar dip.  Generally 30
          traces  is  a  good  starting  point,  depending on the
          charater of the data.

     -w3 win3  [default:number of records]
          This is the window length across the records (the third
          dimension).   The  events  in this window should all be
          about the character and with similar dip.  Generally 30
          traces  is  a  good  starting  point,  depending on the
          charater of the data.

     -wo1 woverlap1  [default: 1.5]
          This sets the overlap of the windows in time.  1.5 sets
          a 50 percent overlap, 1.0 means no overlap. (The number
          of overlapping windows will be this  number  times  the
          number of windows of length win1 with no overlap.)

          -wo2 woverlap2  [default: 1.5]
          This sets the overlap of  the  windows  in  the  second
          dimension.  The use is the same as for -wo1.

          -wo3 woverlap3  [default: 1.5]
          This sets the overlap  of  the  windows  in  the  third
          dimension.  The use is the same as for -wo1.

          -l2 loper2  [default: 3]
          This sets the operator length in the second  dimension.
          Note that this should be smaller than the corresponding
          operator in fxdecon, since the number of filter coeffi-
          cients  will  be  loper2  * loper3.  Also note that the
          time to calculate the filters goes  as  the  number  of
          coefficients  cubed,  i.e., a 4 by 2 filter will take 8
          times longer to calculate than a 2 by 2 filter, a 4  by
          4  filter will take 64 times longer to calculate than a
          2 by 2 filter.

          -l3 loper3  [default: 3]
          This sets the operator length in the  third  dimension.
          See the discussion of -l2.

          -ns nstr  [default: 1]
          Enter the start trace number.

     -ne netr  [default: last trace of record]
          Enter the end trace number.

     -rs nrst  [default: 1]
          Enter start record number.

     -re nred  [default: last record]
          Enter end record number.

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

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


DISCUSSION

     For a more complete  discussion,  see  Abma  and  Claerbout,
     1995,  Geophysics,  60,  1887-1896,  or,  Abma, 1995, Least-
     squares separation of signal and noise with multidimensional
     filters:  Ph.D. thesis, Stanford University, esp. chapter 5,
     as well as several SEG extended abstracts covering fxydecon.


BUGS

       Unknown  so far.   There  are  a  few  issues  that  other
     developers might disagree with.  The biggest one is that the
     prediction is done four times on each frequency slice,  then
     the  results of the four slices merged together.  The advan-
     tages of this approach is that it is simple,  and  the  same
     operation  is applied to every window (subvolume) processed.
     The windows in the middle of the volume could  be  predicted
     with  a  single  filter,  but the windows at the edges would
     need careful consideration of the direction of the filtering
     to  treat  the  edges  properly.  Note that in any case, the
     four traces at the corner of a block of data cannot be  well
     predicted because of the shapes of the 2-D filters.  Another
     arguement for the merging of  the  four  filter  results  is
     that,  although for a prefect synthetic event, the result of
     filtering four times will be the same as using  one  filter,
     real  data  contains noise (hence the need for this program)
     that will reduce the effectiveness of the filters.   Averag-
     ing  the  results  in the middle of the windows seems like a
     reasonable approach.
         Another issue is how many iterations should be  used  in

     calculating  the  complex-valued  filter  coefficients.  The
     value used here is the maximum required by theory.  In prac-
     tice a smaller number may be used, but a risk is taken.
         This routine will take more  time  than  two  passes  of
     fxdecon,  but should produce a better result when 3-D events
     are present.


SEE ALSO

     fxdecon(1)


AUTHOR

     Ray Abma, UTG, 281-366-4604
         This routine is a merge of the USP Fortran template, the
     disk access subroutines from The C Programming Language, and
     routines from my thesis disk.

          copyright 2001, Amoco Production Company
                   All rights reserved
             an affiliate of BP America Inc.


































Man(1) output converted with man2html