NAME

       grdfft  -  Perform mathematical operations on grdfiles in the frequency
       domain


SYNOPSIS

       grdfft  in_grdfile  -Gout_grdfile  [  -Aazimuth  ]  [  -Czlevel   ]   [
       -D[scale|g]  ]  [ -E[x|y][w] ] [ -F[x|y]lc/lp/hp/hc ] [ -I[scale|g] ] [
       -L ] [ -M ] [ -Nstuff ] [ -Sscale ] [ -Tte/rl/rm/rw/ri ] [ -V ]


DESCRIPTION

       grdfft will take the 2-D forward Fast Fourier Transform and perform one
       or  more  mathematical operations in the frequency domain before trans-
       forming back to the space domain. An option is provided  to  scale  the
       data  before  writing  the new values to an output file. The horizontal
       dimensions of the grdfiles are assumed to be  in  meters.  Geographical
       grids  may  be  used by specifying the -M option that scales degrees to
       meters. If you have grdfiles with dimensions in km,  you  could  change
       this to meters using grdedit or scale the output with grdmath.
               No  space between the option flag and the associated arguments.
       Use upper case for the option flags and lower case for modifiers.

       in_grdfile
              2-D binary grd file to be operated on.

       -G     Specify the name of the output grd file.



OPTIONS

       -A     Take the directional derivative in the  azimuth  direction  mea-
              sured in degrees CW from north.

       -C     Upward  (for  zlevel  > 0) or downward (for zlevel < 0) continue
              the field zlevel meters.

       -D     Differentiate the field, i.e., take d(field)/dz. This is equiva-
              lent  to multiplying by kr in the frequency domain (kr is radial
              wave number). Append  a  scale  to  multiply  by  (kr  *  scale)
              instead.  Alternatively, append g to indicate that your data are
              geoid heights in meters and output should be  gravity  anomalies
              in mGal.  [Default is no scale].

       -E     Estimate  power  spectrum  in the radial direction. Place x or y
              immediately after -E to compute the  spectrum  in  the  x  or  y
              direction  instead. No grdfile is created; f (i.e., frequency or
              wave number), power[f], and 1 standard deviation in power[f] are
              written to stdout.  Append w to write wavelength instead of fre-
              quency.

       -F     Filter the data. Place x or y immediately after -F to  filter  x
              or  y  direction only; default is isotropic.  Specify four wave-
              lengths in correct units (see -M) to design a  bandpass  filter:
              wavelengths  greater  than lc or less than hc will be cut, wave-
              lengths greater than lp and less than hp  will  be  passed,  and
              wavelengths   in   between   will   be   cosine-tapered.   E.g.,
              -F1000000/250000/50000/10000 -M  will  bandpass,  cutting  wave-
              lengths  >  1000 km and < 10 km, passing wavelengths between 250
              km and 50 km. To make a highpass or lowpass filter, give hyphens
              (-) for hp/hc or lc/lp. E.g., -Fx-/-/50/10 will lowpass X, pass-
              ing  wavelengths  >  50  and   rejecting   wavelengths   <   10.
              -Fy1000/250/-/-  will  highpass Y, passing wavelengths < 250 and
              rejecting wavelengths > 1000.

       -I     Integrate the field, i.e., compute integral_over_z (field * dz).
              This  is  equivalent to divide by kr in the frequency domain (kr
              is radial wave number). Append a scale to divide by (kr * scale)
              instead.  Alternatively, append g to indicate that your data set
              is gravity anomalies in mGal and output should be geoid  heights
              in meters. [Default is no scale].

       -L     Leave  trend  alone.  By default, a linear trend will be removed
              prior to the transform.

       -M     Map units. Choose this option if your grdfile is a  geographical
              grid  and  you  want to convert degrees into meters. If the data
              are close to either pole, you  should  consider  projecting  the
              grdfile onto a rectangular coordinate system using grdproject.

       -N     Choose  or  inquire about suitable grid dimensions for FFT.  -Nf
              will force the FFT to use the dimensions of the data.  -Nq  will
              inQuire  about more suitable dimensions.  -Nnx/ny will do FFT on
              array size nx/ny (Must be >=  grdfile  size).   Default  chooses
              dimensions  >=  data  which optimize speed, accuracy of FFT.  If
              FFT dimensions >  grdfile  dimensions,  data  are  extended  and
              tapered to zero.

       -S     Multiply  each  element  by scale in the space domain (after the
              frequency domain operations).  [Default is 1.0].

       -T     Compute the isostatic  compensation  from  the  topography  load
              (input grdfile) on an elastic plate of thickness te. Also append
              densities for load, mantle, water, and infill in SI  units.   If
              te  ==  0 then the Airy response is returned. -T implicitly sets
              -L.

       -V     Selects verbose mode, which will send progress reports to stderr
              [Default runs "silently"].


EXAMPLES

       To  upward  continue  the  sea-level  magnetic  anomalies  in  the file
       mag_0.grd to a level 800 m above sealevel:

       grdfft mag_0.grd -C800 -V -Gmag_800.grd

       To transform geoid heights in m (geoid.grd) on a geographical  grid  to
       free-air gravity anomalies in mGal:

       grdfft geoid.grd -Dg -M -V -Ggrav.grd

       To  transform gravity anomalies in mGal (faa.grd) to deflections of the
       vertical (in micro-radians) in the 038 direction, we must  first  inte-
       grate  gravity  to get geoid, then take the directional derivative, and
       finally scale radians to micro-radians:

       grdfft faa.grd -Ig -A38 -S1e6 -V -Gdefl_38.grd

       Second vertical derivatives of gravity anomalies  are  related  to  the
       curvature of the field. We can compute these as mGal/m^2 by differenti-
       ating twice:

       grdfft gravity.grd -D -D -V -Ggrav_2nd_derivative.grd

       The first order gravity anomaly (in mGal) due to the compensating  sur-
       face  caused  by  the  topography load topo.grd (in m) on a 20 km thick
       elastic plate, assumed to be 4 km beneath the observation level can  be
       computed as

       grdfft     topo.grd    -T20000/2800/3330/1030/2300    -S0.022    -C4000
       -Gcomp_faa.grd

       where 0.022 is the scale needed for the first term in  Parker’s  expan-
       sion  for  computing  gravity  from  topography (= 2 * PI * G * (rhom -
       rhol)).


SEE ALSO

       gmt(l), grdedit(l), grdmath(l), grdproject(l)



GMT4.0                            1 Oct 2004                         GRDFFT(l)

Man(1) output converted with man2html