manpagez: man pages & more
man surface(1)
Home | html | info | man
surface(1)                            GMT                           surface(1)




NAME

       surface - Grid table data using adjustable tension continuous curvature
       splines


SYNOPSIS

       surface [ table ]  -Goutputfile.nc
        -Iincrement
        -Rregion [  -Aaspect_ratio ] [  -Cconvergence_limit[%] ] [  -Lllower ]
       [  -Luupper ] [  -Nmax_iterations ] [  -Q ] [  -Ssearch_radius[m|s] ] [
       -T[i|b]tension_factor ] [  -V[level] ] [  -Zover-relaxation_factor ]  [
       -aflags  ]  [  -bibinary  ]  [  -dinodata  ] [ -eregexp ] [ -fflags ] [
       -hheaders ] [ -iflags ] [ -r ] [ -:[i|o] ]

       Note: No space is allowed between the option flag  and  the  associated
       arguments.


DESCRIPTION

       surface  reads  randomly-spaced (x,y,z) triples from standard input [or
       table] and produces a binary grid file  of  gridded  values  z(x,y)  by
       solving:
          (1 - T) * L (L (z)) + T * L (z) = 0

       where T is a tension factor between 0 and 1, and L indicates the Lapla-
       cian operator. T = 0 gives the aminimum curvaturea  solution  which  is
       equivalent  to  SuperMISP  and  the ISM packages. Minimum curvature can
       cause undesired oscillations and false  local  maxima  or  minima  (See
       Smith  and  Wessel,  1990),  and  you may wish to use T > 0 to suppress
       these effects. Experience suggests T ~  0.25  usually  looks  good  for
       potential field data and T should be larger (T ~ 0.35) for steep topog-
       raphy data.  T = 1 gives a harmonic surface (no maxima  or  minima  are
       possible  except  at  control  data points). It is recommended that the
       user pre-process the data with blockmean, blockmedian, or blockmode  to
       avoid  spatial  aliasing  and  eliminate redundant data. You may impose
       lower and/or upper bounds on the solution. These may be entered in  the
       form  of  a  fixed  value,  a  grid with values, or simply be the mini-
       mum/maximum input data values. Natural boundary conditions are  applied
       at the edges, except for geographic data with 360-degree range where we
       apply periodic boundary conditions in the longitude direction.


REQUIRED ARGUMENTS

       -Goutputfile.nc
              Output file name. Output is a binary 2-D .nc file. Note that the
              smallest grid dimension must be at least 4.

       -Ixinc[unit][+e|n][/yinc[unit][+e|n]]
              x_inc  [and  optionally  y_inc] is the grid spacing. Optionally,
              append a suffix modifier.  Geographical  (degrees)  coordinates:
              Append  m  to indicate arc minutes or s to indicate arc seconds.
              If one of the units e, f, k, M, n or u is appended instead,  the
              increment  is assumed to be given in meter, foot, km, Mile, nau-
              tical mile or US survey foot, respectively,  and  will  be  con-
              verted  to  the equivalent degrees longitude at the middle lati-
              tude of the region (the conversion depends  on  PROJ_ELLIPSOID).
              If  y_inc is given but set to 0 it will be reset equal to x_inc;
              otherwise it will be converted to degrees latitude. All  coordi-
              nates:  If +e is appended then the corresponding max x (east) or
              y (north) may be slightly adjusted  to  fit  exactly  the  given
              increment  [by default the increment may be adjusted slightly to
              fit the given domain]. Finally, instead of giving  an  increment
              you  may  specify the number of nodes desired by appending +n to
              the supplied integer argument; the increment  is  then  recalcu-
              lated  from  the  number  of nodes and the domain. The resulting
              increment value depends on whether you  have  selected  a  grid-
              line-registered  or  pixel-registered grid; see App-file-formats
              for details. Note: if -Rgrdfile is used then  the  grid  spacing
              has already been initialized; use -I to override the values.

       -Rxmin/xmax/ymin/ymax[+r][+uunit] (more a|)
              Specify the region of interest.


OPTIONAL ARGUMENTS

       table  One  or  more ASCII (or binary, see -bi[ncols][type]) data table
              file(s) holding a number of data columns. If no tables are given
              then we read from standard input.

       -Aaspect_ratio
              Aspect  ratio.  If  desired, grid anisotropy can be added to the
              equations. Enter aspect_ratio, where  dy  =  dx  /  aspect_ratio
              relates  the  grid  dimensions.  [Default  = 1 assumes isotropic
              grid.]

       -Cconvergence_limit[%]
              Convergence limit. Iteration is assumed to have  converged  when
              the  maximum absolute change in any grid value is less than con-
              vergence_limit. (Units same as  data  z  units).  Alternatively,
              give  limit  in  percentage  of  rms  deviation  by appending %.
              [Default is scaled to 1e-4 of the root-mean-square deviation  of
              the  data  from a best-fit (least-squares) plane.].  This is the
              final convergence limit at the desired grid spacing; for  inter-
              mediate  (coarser)  grids  the  effective  convergence  limit is
              divided by the grid spacing multiplier.

       -Lllower and -Luupper
              Impose limits on the output  solution.  llower  sets  the  lower
              bound.  lower  can  be  the name of a grid file with lower bound
              values, a fixed value, d to set to minimum input value, or u for
              unconstrained  [Default]. uupper sets the upper bound and can be
              the name of a grid file with upper bound values, a fixed  value,
              d  to  set  to  maximum  input  value,  or  u  for unconstrained
              [Default]. Grid files used to set the limits may  contain  NaNs.
              In  the presence of NaNs, the limit of a node masked with NaN is
              unconstrained.

       -Nmax_iterations
              Number  of  iterations.  Iteration  will  cease   when   conver-
              gence_limit  is  reached  or  when  number of iterations reaches
              max_iterations.  This  is  the  final  iteration  limit  at  the
              desired  grid  spacing;  for  intermediate  (coarser)  grids the
              effective iteration limit is scaled by the grid  spacing  multi-
              plier.  [Default is 500.]

       -Q     Suggest  grid  dimensions which have a highly composite greatest
              common factor. This allows surface to use  several  intermediate
              steps  in  the  solution,  yielding  faster run times and better
              results. The sizes suggested by -Q can be achieved  by  altering
              -R  and/or  -I.  You can recover the -R and -I you want later by
              using grdsample or grdcut on the output of surface.

       -Ssearch_radius[m|s]
              Search radius. Enter search_radius in same units  as  x,y  data;
              append  m  to indicate arc minutes or s for arc seconds. This is
              used to initialize the grid before the first  iteration;  it  is
              not  worth  the time unless the grid lattice is prime and cannot
              have regional stages. [Default = 0.0 and no search is made.]

       -T[i|b]tension_factor
              Tension factor[s]. These must be between 0 and 1. Tension may be
              used  in  the  interior  solution (above equation, where it sup-
              presses spurious oscillations) and in  the  boundary  conditions
              (where  it tends to flatten the solution approaching the edges).
              Using zero for both values results in a minimum  curvature  sur-
              face  with  free  edges,  i.e.,  a  natural  bicubic spline. Use
              -Titension_factor to set interior tension, and -Tbtension_factor
              to set boundary tension. If you do not prepend i or b, both will
              be set to the same value. [Default = 0 for  both  gives  minimum
              curvature solution.]

       -V[level] (more a|)
              Select  verbosity  level  [c].  -V3  will report the convergence
              after each iteration; -V will report only  after  each  regional
              grid is converged.

       -Zover-relaxation_factor
              Over-relaxation factor. This parameter is used to accelerate the
              convergence; it is a number between 1 and 2. A value of 1  iter-
              ates  the  equations exactly, and will always assure stable con-
              vergence.  Larger values overestimate  the  incremental  changes
              during  convergence,  and will reach a solution more rapidly but
              may become unstable. If you use a large value for  this  factor,
              it is a good idea to monitor each iteration with the -Vl option.
              [Default = 1.4 converges quickly and is almost always stable.]

       -acol=name[^<i>a|] (more a|)
              Set aspatial column associations col=name.

       -bi[ncols][t] (more a|)
              Select native binary input. [Default is 3 input columns].

       -dinodata (more a|)
              Replace input columns that equal nodata with NaN.

       -e[~]^<i>apattern^<i>a | -e[~]/regexp/[i] (more a|)
              Only accept data records that match the given pattern.

       -f[i|o]colinfo (more a|)
              Specify data types of input and/or output columns.

       -h[i|o][n][+c][+d][+rremark][+rtitle] (more a|)
              Skip or produce header record(s). Not used with binary data.

       -icols[+l][+sscale][+ooffset][,^<i>a|] (more a|)
              Select input columns and transformations (0 is first column).

       -r (more a|)
              Set pixel node registration [gridline].

       -:[i|o] (more a|)
              Swap 1st and 2nd column on input and/or output.

       -^ or just -
              Print a short message about the  syntax  of  the  command,  then
              exits (NOTE: on Windows just use -).

       -+ or just +
              Print  an extensive usage (help) message, including the explana-
              tion of any module-specific  option  (but  not  the  GMT  common
              options), then exits.

       -? or no arguments
              Print a complete usage (help) message, including the explanation
              of all options, then exits.


GRID VALUES PRECISION

       Regardless of the precision of the input data, GMT programs that create
       grid  files  will  internally  hold  the grids in 4-byte floating point
       arrays. This is done to conserve memory and furthermore most if not all
       real  data  can be stored using 4-byte floating point values. Data with
       higher precision (i.e., double precision values) will lose that  preci-
       sion  once  GMT  operates on the grid or writes out new grids. To limit
       loss of precision when processing data you should always consider  nor-
       malizing the data prior to processing.


EXAMPLES

       To  grid  5  by  5  minute  gravity  block means from the ASCII data in
       hawaii_5x5.xyg, using a tension_factor = 0.25,  a  convergence_limit  =
       0.1  milligal,  writing  the result to a file called hawaii_grd.nc, and
       monitoring each iteration, try:

              gmt surface hawaii_5x5.xyg -R198/208/18/25 -I5m -Ghawaii_grd.nc -T0.25 -C0.1 -Vl


BUGS

       surface will complain when more than one data point is  found  for  any
       node  and  suggest  that  you  run blockmean, blockmedian, or blockmode
       first. If you did run these decimators and still get  this  message  it
       usually  means  that  your  grid spacing is so small that you need more
       decimals in the output format used. You may specify more decimal places
       by  editing  the parameter FORMAT_FLOAT_OUT in your gmt.conf file prior
       to running the decimators or choose binary input  and/or  output  using
       single or double precision storage.

       Note  that  only gridline registration is possible with surface. If you
       need a pixel-registered grid you can  resample  a  gridline  registered
       grid using grdsample -T.


SEE ALSO

       blockmean(1), blockmedian(1), blockmode(1), gmt(1), grdcut(1),
       grdsample(1), greenspline(1), nearneighbor(1), triangulate(1),
       sphtriangulate(1)


REFERENCES

       Smith, W. H. F, and P. Wessel, 1990, Gridding with continuous curvature
       splines in tension, Geophysics, 55, 293-305.


COPYRIGHT

       2017, P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis, and F. Wobbe



5.4.2                            Jun 24, 2017                       surface(1)

gmt5 5.4.2 - Generated Thu Jun 29 16:34:48 CDT 2017
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.