Provided by: gmt-common_5.2.1+dfsg-3build1_all bug

NAME

       grdmath - Reverse Polish Notation (RPN) calculator for grids (element by element)

SYNOPSIS

       grdmath  [ min_area[/min_level/max_level][+ag|i|s |S][+r|l][ppercent] ] [ resolution[+] ] [ increment ] [
       ] [  ] [ region ] [ [level] ] [ -bi<binary> ] [ -di<nodata> ] [ -f<flags> ] [ -h<headers> ] [ -i<flags> ]
       [ -n<flags> ] [ -r ] [ -x[[-]n] ] operand [ operand ] OPERATOR [ operand ] OPERATOR ... = outgrdfile

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

DESCRIPTION

       grdmath will perform operations like add, subtract, multiply, and divide on one or  more  grid  files  or
       constants   using   Reverse  Polish  Notation  (RPN)  syntax  (e.g.,  Hewlett-Packard  calculator-style).
       Arbitrarily complicated expressions may therefore be evaluated; the final result is written to an  output
       grid  file. Grid operations are element-by-element, not matrix manipulations. Some operators only require
       one operand (see below). If no grid files are used in the expression then options -R, -I must be set (and
       optionally -r). The expression = outgrdfile can occur as many times as the depth of the stack  allows  in
       order  to  save  intermediate results.  Complicated or frequently occurring expressions may be coded as a
       macro for future use or stored and recalled via named memory locations.

REQUIRED ARGUMENTS

       operand
              If operand can be opened as a file it will be read  as  a  grid  file.   If  not  a  file,  it  is
              interpreted as a numerical constant or a special symbol (see below).

       outgrdfile
              The name of a 2-D grid file that will hold the final result. (See GRID FILE FORMATS below).

OPTIONAL ARGUMENTS

       -Amin_area[/min_level/max_level][+ag|i|s|S][+r|l][+ppercent]
              Features  with  an  area smaller than min_area in km^2 or of hierarchical level that is lower than
              min_level or higher than max_level will not be plotted [Default is 0/0/4 (all features)].  Level 2
              (lakes) contains regular lakes and wide river bodies which we normally include as lakes; append +r
              to just get river-lakes or +l to just get regular lakes.  By default (+ai) we select the ice shelf
              boundary as the coastline for Antarctica; append +ag to instead select the ice grounding  line  as
              coastline.  For expert users who wish to print their own Antarctica coastline and islands via psxy
              you  can use +as to skip all GSHHG features below 60S or +aS to instead skip all features north of
              60S.  Finally, append +ppercent to exclude polygons whose percentage  area  of  the  corresponding
              full-resolution feature is less than percent. See GSHHG INFORMATION below for more details. (-A is
              only relevant to the LDISTG operator)

       -Dresolution[+]
              Selects  the  resolution  of  the  data  set  to  use  with  the  operator LDISTG ((f)ull, (h)igh,
              (i)ntermediate, (l)ow, and (c)rude). The resolution drops off by 80% between data sets [Default is
              l].  Append + to automatically select a lower resolution should the one requested not be available
              [abort if not found].

       -Ixinc[unit][=|+][/yinc[unit][=|+]]
              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, nautical mile or US survey foot, respectively, and will be converted  to
              the  equivalent  degrees longitude at the middle latitude 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 coordinates: If = 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  +  to  the  supplied  integer
              argument;  the  increment  is  then  recalculated  from  the  number  of nodes and the domain. The
              resulting  increment  value  depends  on  whether  you  have  selected  a  gridline-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.

       -M     By default any derivatives calculated are in z_units/ x(or y)_units. However, the user may  choose
              this  option  to  convert  dx,dy  in  degrees of longitude,latitude into meters using a flat Earth
              approximation, so that gradients are in z_units/meter.

       -N     Turn off strict domain match checking when multiple grids are  manipulated  [Default  will  insist
              that each grid domain is within 1e-4 * grid_spacing of the domain of the first grid listed].

       -R[unit]xmin/xmax/ymin/ymax[r] (more ...)
              Specify the region of interest.

       -V[level] (more ...)
              Select verbosity level [c].

       -bi[ncols][t] (more ...)
              Select  native  binary  input.  The  binary  input option only applies to the data files needed by
              operators LDIST, PDIST, and INSIDE.

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

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

       -g[a]x|y|d|X|Y|D|[col]z[+|-]gap[u] (more ...)
              Determine data gaps and line breaks.

       -h[i|o][n][+c][+d][+rremark][+rtitle] (more ...)
              Skip or produce header record(s).

       -icols[l][sscale][ooffset][,...] (more ...)
              Select input columns (0 is first column).

       -n[b|c|l|n][+a][+bBC][+c][+tthreshold] (more ...)
              Select interpolation mode for grids.

       -r (more ...)
              Set pixel node registration [gridline]. Only used with -R -I.

       -x[[-]n] (more ...)
              Limit number of cores used in multi-threaded algorithms (OpenMP required).

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

       -+ or just +
              Print an extensive usage (help) message, including the explanation 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 options, then exits.

       --version
              Print GMT version and exit.

       --show-datadir
              Print full path to GMT share directory and exit.

OPERATORS

       Choose among the following 169 operators. "args" are the number of input and output arguments.
                                 ───────────────────────────────────────────────────
                                   Operator    args   Returns
                                 ───────────────────────────────────────────────────
                                   ABS         1 1    abs (A)
                                 ───────────────────────────────────────────────────
                                   ACOS        1 1    acos (A)
                                 ───────────────────────────────────────────────────
                                   ACOSH       1 1    acosh (A)
                                 ───────────────────────────────────────────────────
                                   ACOT        1 1    acot (A)
                                 ───────────────────────────────────────────────────
                                   ACSC        1 1    acsc (A)
                                 ───────────────────────────────────────────────────
                                   ADD         2 1    A + B
                                 ───────────────────────────────────────────────────
                                   AND         2 1    B if A == NaN, else A
                                 ───────────────────────────────────────────────────
                                   ARC         2 1    return arc(A,B) on [0 pi]
                                 ───────────────────────────────────────────────────
                                   ASEC        1 1    asec (A)
                                 ───────────────────────────────────────────────────
                                   ASIN        1 1    asin (A)
                                 ───────────────────────────────────────────────────
                                   ASINH       1 1    asinh (A)
                                 ───────────────────────────────────────────────────
                                   ATAN        1 1    atan (A)
                                 ───────────────────────────────────────────────────
                                   ATAN2       2 1    atan2 (A, B)
                                 ───────────────────────────────────────────────────
                                   ATANH       1 1    atanh (A)
                                 ───────────────────────────────────────────────────
                                   BCDF        3 1    Binomial          cumulative
                                                      distribution function for  p
                                                      = A, n = B, and x = C
                                 ───────────────────────────────────────────────────
                                   BPDF        3 1    Binomial probability density
                                                      function  for  p = A, n = B,
                                                      and x = C
                                 ───────────────────────────────────────────────────
                                   BEI         1 1    bei (A)
                                 ───────────────────────────────────────────────────
                                   BER         1 1    ber (A)
                                 ───────────────────────────────────────────────────
                                   BITAND      2 1    A & B (bitwise AND operator)
                                 ───────────────────────────────────────────────────
                                   BITLEFT     2 1    A << B  (bitwise  left-shift
                                                      operator)
                                 ───────────────────────────────────────────────────
                                   BITNOT      1 1    ~A  (bitwise  NOT  operator,
                                                      i.e.,      return      two's
                                                      complement)
                                 ───────────────────────────────────────────────────
                                   BITOR       2 1    A | B (bitwise OR operator)
                                 ───────────────────────────────────────────────────
                                   BITRIGHT    2 1    A  >> B (bitwise right-shift
                                                      operator)
                                 ───────────────────────────────────────────────────
                                   BITTEST     2 1    1 if bit B of A is set, else
                                                      0 (bitwise TEST operator)
                                 ───────────────────────────────────────────────────
                                   BITXOR      2 1    A ^ B (bitwise XOR operator)
                                 ───────────────────────────────────────────────────
                                   CAZ         2 1    Cartesian azimuth from  grid
                                                      nodes to stack x,y (i.e., A,
                                                      B)
                                 ───────────────────────────────────────────────────
                                   CBAZ        2 1    Cartesian  back-azimuth from
                                                      grid  nodes  to  stack   x,y
                                                      (i.e., A, B)
                                 ───────────────────────────────────────────────────
                                   CDIST       2 1    Cartesian  distance  between
                                                      grid  nodes  and  stack  x,y
                                                      (i.e., A, B)
                                 ───────────────────────────────────────────────────
                                   CDIST2      2 1    As  CDIST  but only to nodes
                                                      that are != 0
                                 ───────────────────────────────────────────────────
                                   CEIL        1 1    ceil (A)  (smallest  integer
                                                      >= A)
                                 ───────────────────────────────────────────────────
                                   CHICRIT     2 1    Chi-squared  critical  value
                                                      for alpha = A and nu = B
                                 ───────────────────────────────────────────────────
                                   CHICDF      2 1    Chi-squared       cumulative
                                                      distribution   function  for
                                                      chi2 = A and nu = B
                                 ───────────────────────────────────────────────────
                                   CHIPDF      2 1    Chi-squared      probability
                                                      density  function for chi2 =
                                                      A and nu = B
                                 ───────────────────────────────────────────────────
                                   COMB        2 1    Combinations n_C_r, with n =
                                                      A and r = B
                                 ───────────────────────────────────────────────────
                                   CORRCOEFF   2 1    Correlation coefficient r(A,
                                                      B)
                                 ───────────────────────────────────────────────────
                                   COS         1 1    cos (A) (A in radians)
                                 ───────────────────────────────────────────────────
                                   COSD        1 1    cos (A) (A in degrees)
                                 ───────────────────────────────────────────────────
                                   COSH        1 1    cosh (A)
                                 ───────────────────────────────────────────────────
                                   COT         1 1    cot (A) (A in radians)
                                 ───────────────────────────────────────────────────
                                   COTD        1 1    cot (A) (A in degrees)
                                 ───────────────────────────────────────────────────
                                   CSC         1 1    csc (A) (A in radians)
                                 ───────────────────────────────────────────────────
                                   CSCD        1 1    csc (A) (A in degrees)
                                 ───────────────────────────────────────────────────
                                   CURV        1 1    Curvature of A (Laplacian)
                                 ───────────────────────────────────────────────────
                                   D2DX2       1 1    d^2(A)/dx^2 2nd derivative
                                 ───────────────────────────────────────────────────
                                   D2DY2       1 1    d^2(A)/dy^2 2nd derivative
                                 ───────────────────────────────────────────────────
                                   D2DXY       1 1    d^2(A)/dxdy 2nd derivative
                                 ───────────────────────────────────────────────────
                                   D2R         1 1    Converts Degrees to Radians
                                 ───────────────────────────────────────────────────
                                   DDX         1 1    d(A)/dx     Central      1st
                                                      derivative
                                 ───────────────────────────────────────────────────
                                   DDY         1 1    d(A)/dy      Central     1st
                                                      derivative
                                 ───────────────────────────────────────────────────
                                   DEG2KM      1 1    Converts  Spherical  Degrees
                                                      to Kilometers
                                 ───────────────────────────────────────────────────
                                   DENAN       2 1    Replace   NaNs   in  A  with
                                                      values from B
                                 ───────────────────────────────────────────────────
                                   DILOG       1 1    dilog (A)
                                 ───────────────────────────────────────────────────
                                   DIV         2 1    A / B
                                 ───────────────────────────────────────────────────
                                   DUP         1 2    Places duplicate of A on the
                                                      stack
                                 ───────────────────────────────────────────────────
                                   ECDF        2 1    Exponential       cumulative
                                                      distribution  function for x
                                                      = A and lambda = B
                                 ───────────────────────────────────────────────────
                                   ECRIT       2 1    Exponential     distribution
                                                      critical value for alpha = A
                                                      and lambda = B
                                 ───────────────────────────────────────────────────
                                   EPDF        2 1    Exponential      probability
                                                      density function for x  =  A
                                                      and lambda = B
                                 ───────────────────────────────────────────────────
                                   ERF         1 1    Error function erf (A)
                                 ───────────────────────────────────────────────────
                                   ERFC        1 1    Complementary Error function
                                                      erfc (A)
                                 ───────────────────────────────────────────────────
                                   EQ          2 1    1 if A == B, else 0
                                 ───────────────────────────────────────────────────
                                   ERFINV      1 1    Inverse error function of A
                                 ───────────────────────────────────────────────────
                                   EXCH        2 2    Exchanges  A  and  B  on the
                                                      stack
                                 ───────────────────────────────────────────────────
                                   EXP         1 1    exp (A)
                                 ───────────────────────────────────────────────────
                                   FACT        1 1    A! (A factorial)
                                 ───────────────────────────────────────────────────
                                   EXTREMA     1 1    Local  Extrema:   +2/-2   is
                                                      max/min,   +1/-1  is  saddle
                                                      with   max/min   in   x,   0
                                                      elsewhere
                                 ───────────────────────────────────────────────────
                                   FCDF        3 1    F   cumulative  distribution
                                                      function for F = A, nu1 = B,
                                                      and nu2 = C
                                 ───────────────────────────────────────────────────
                                   FCRIT       3 1    F   distribution    critical
                                                      value  for  alpha = A, nu1 =
                                                      B, and nu2 = C
                                 ───────────────────────────────────────────────────
                                   FLIPLR      1 1    Reverse order of  values  in
                                                      each row
                                 ───────────────────────────────────────────────────
                                   FLIPUD      1 1    Reverse  order  of values in
                                                      each column
                                 ───────────────────────────────────────────────────
                                   FLOOR       1 1    floor (A) (greatest  integer
                                                      <= A)
                                 ───────────────────────────────────────────────────
                                   FMOD        2 1    A   %   B  (remainder  after
                                                      truncated division)
                                 ───────────────────────────────────────────────────
                                   FPDF        3 1    F    probability     density
                                                      function for F = A, nu1 = B,
                                                      and nu2 = C
                                 ───────────────────────────────────────────────────
                                   GE          2 1    1 if A >= B, else 0
                                 ───────────────────────────────────────────────────
                                   GT          2 1    1 if A > B, else 0
                                 ───────────────────────────────────────────────────
                                   HYPOT       2 1    hypot  (A,  B) = sqrt (A*A +
                                                      B*B)
                                 ───────────────────────────────────────────────────
                                   I0          1 1    Modified Bessel function  of
                                                      A (1st kind, order 0)
                                 ───────────────────────────────────────────────────
                                   I1          1 1    Modified  Bessel function of
                                                      A (1st kind, order 1)
                                 ───────────────────────────────────────────────────
                                   IFELSE      3 1    B if A != 0, else C
                                 ───────────────────────────────────────────────────
                                   IN          2 1    Modified Bessel function  of
                                                      A (1st kind, order B)
                                 ───────────────────────────────────────────────────
                                   INRANGE     3 1    1 if B <= A <= C, else 0
                                 ───────────────────────────────────────────────────
                                   INSIDE      1 1    1    when   inside   or   on
                                                      polygon(s) in A, else 0
                                 ───────────────────────────────────────────────────
                                   INV         1 1    1 / A
                                 ───────────────────────────────────────────────────
                                   ISFINITE    1 1    1 if A is finite, else 0
                                 ───────────────────────────────────────────────────
                                   ISNAN       1 1    1 if A == NaN, else 0
                                 ───────────────────────────────────────────────────
                                   J0          1 1    Bessel function  of  A  (1st
                                                      kind, order 0)
                                 ───────────────────────────────────────────────────
                                   J1          1 1    Bessel  function  of  A (1st
                                                      kind, order 1)
                                 ───────────────────────────────────────────────────
                                   JN          2 1    Bessel function  of  A  (1st
                                                      kind, order B)
                                 ───────────────────────────────────────────────────
                                   K0          1 1    Modified  Kelvin function of
                                                      A (2nd kind, order 0)
                                 ───────────────────────────────────────────────────
                                   K1          1 1    Modified Bessel function  of
                                                      A (2nd kind, order 1)
                                 ───────────────────────────────────────────────────
                                   KEI         1 1    kei (A)
                                 ───────────────────────────────────────────────────
                                   KER         1 1    ker (A)
                                 ───────────────────────────────────────────────────
                                   KM2DEG      1 1    Converts    Kilometers    to
                                                      Spherical Degrees
                                 ───────────────────────────────────────────────────
                                   KN          2 1    Modified Bessel function  of
                                                      A (2nd kind, order B)
                                 ───────────────────────────────────────────────────
                                   KURT        1 1    Kurtosis of A
                                 ───────────────────────────────────────────────────
                                   LCDF        1 1    Laplace           cumulative
                                                      distribution function for  z
                                                      = A
                                 ───────────────────────────────────────────────────
                                   LCRIT       1 1    Laplace         distribution
                                                      critical value for alpha = A
                                 ───────────────────────────────────────────────────
                                   LDIST       1 1    Compute minimum distance (in
                                                      km if  -fg)  from  lines  in
                                                      multi-segment ASCII file A
                                 ───────────────────────────────────────────────────
                                   LDIST2      2 1    As   LDIST,  from  lines  in
                                                      ASCII file  B  but  only  to
                                                      nodes where A != 0
                                 ───────────────────────────────────────────────────
                                   LDISTG      0 1    As  LDIST,  but  operates on
                                                      the GSHHG dataset  (see  -A,
                                                      -D for options).
                                 ───────────────────────────────────────────────────
                                   LE          2 1    1 if A <= B, else 0
                                 ───────────────────────────────────────────────────
                                   LOG         1 1    log (A) (natural log)
                                 ───────────────────────────────────────────────────
                                   LOG10       1 1    log10 (A) (base 10)
                                 ───────────────────────────────────────────────────
                                   LOG1P       1 1    log   (1+A)   (accurate  for
                                                      small A)
                                 ───────────────────────────────────────────────────
                                   LOG2        1 1    log2 (A) (base 2)
                                 ───────────────────────────────────────────────────
                                   LMSSCL      1 1    LMS scale estimate (LMS STD)
                                                      of A
                                 ───────────────────────────────────────────────────
                                   LOWER       1 1    The lowest  (minimum)  value
                                                      of A
                                 ───────────────────────────────────────────────────
                                   LPDF        1 1    Laplace  probability density
                                                      function for z = A
                                 ───────────────────────────────────────────────────
                                   LRAND       2 1    Laplace  random  noise  with
                                                      mean A and std. deviation B
                                 ───────────────────────────────────────────────────
                                   LT          2 1    1 if A < B, else 0
                                 ───────────────────────────────────────────────────
                                   MAD         1 1    Median   Absolute  Deviation
                                                      (L1 STD) of A
                                 ───────────────────────────────────────────────────
                                   MAX         2 1    Maximum of A and B
                                 ───────────────────────────────────────────────────
                                   MEAN        1 1    Mean value of A
                                 ───────────────────────────────────────────────────
                                   MED         1 1    Median value of A
                                 ───────────────────────────────────────────────────
                                   MIN         2 1    Minimum of A and B
                                 ───────────────────────────────────────────────────
                                   MOD         2 1    A  mod  B  (remainder  after
                                                      floored division)
                                 ───────────────────────────────────────────────────
                                   MODE        1 1    Mode  value (Least Median of
                                                      Squares) of A
                                 ───────────────────────────────────────────────────
                                   MUL         2 1    A * B
                                 ───────────────────────────────────────────────────
                                   NAN         2 1    NaN if A == B, else A
                                 ───────────────────────────────────────────────────
                                   NEG         1 1    -A
                                 ───────────────────────────────────────────────────
                                   NEQ         2 1    1 if A != B, else 0
                                 ───────────────────────────────────────────────────
                                   NORM        1 1    Normalize       (A)       so
                                                      max(A)-min(A) = 1
                                 ───────────────────────────────────────────────────
                                   NOT         1 1    NaN  if  A == NaN, 1 if A ==
                                                      0, else 0
                                 ───────────────────────────────────────────────────
                                   NRAND       2 1    Normal, random  values  with
                                                      mean A and std. deviation B
                                 ───────────────────────────────────────────────────
                                   OR          2 1    NaN if B == NaN, else A
                                 ───────────────────────────────────────────────────
                                   PCDF        2 1    Poisson           cumulative
                                                      distribution function for  x
                                                      = A and lambda = B
                                 ───────────────────────────────────────────────────
                                   PDIST       1 1    Compute minimum distance (in
                                                      km  if  -fg)  from points in
                                                      ASCII file A
                                 ───────────────────────────────────────────────────
                                   PDIST2      2 1    As  PDIST,  from  points  in
                                                      ASCII  file  B  but  only to
                                                      nodes where A != 0
                                 ───────────────────────────────────────────────────
                                   PERM        2 1    Permutations n_P_r, with n =
                                                      A and r = B
                                 ───────────────────────────────────────────────────
                                   PLM         3 1    Associated          Legendre
                                                      polynomial   P(A)  degree  B
                                                      order C
                                 ───────────────────────────────────────────────────
                                   PLMg        3 1    Normalized        associated
                                                      Legendre   polynomial   P(A)
                                                      degree     B     order     C
                                                      (geophysical convention)
                                 ───────────────────────────────────────────────────
                                   POINT       1 2    Compute  mean  x  and y from
                                                      ASCII file A and place  them
                                                      on the stack
                                 ───────────────────────────────────────────────────
                                   POP         1 0    Delete  top element from the
                                                      stack
                                 ───────────────────────────────────────────────────
                                   POW         2 1    A ^ B
                                 ───────────────────────────────────────────────────
                                   PPDF        2 1    Poisson         distribution
                                                      P(x,lambda),  with x = A and
                                                      lambda = B
                                 ───────────────────────────────────────────────────
                                   PQUANT      2 1    The B'th  Quantile  (0-100%)
                                                      of A
                                 ───────────────────────────────────────────────────
                                   PSI         1 1    Psi (or Digamma) of A
                                 ───────────────────────────────────────────────────
                                   PV          3 1    Legendre  function  Pv(A) of
                                                      degree v = real(B) + imag(C)
                                 ───────────────────────────────────────────────────
                                   QV          3 1    Legendre function  Qv(A)  of
                                                      degree v = real(B) + imag(C)
                                 ───────────────────────────────────────────────────
                                   R2          2 1    R2 = A^2 + B^2
                                 ───────────────────────────────────────────────────
                                   R2D         1 1    Convert Radians to Degrees
                                 ───────────────────────────────────────────────────
                                   RAND        2 1    Uniform     random    values
                                                      between A and B
                                 ───────────────────────────────────────────────────
                                   RCDF        1 1    Rayleigh          cumulative
                                                      distribution  function for z
                                                      = A
                                 ───────────────────────────────────────────────────
                                   RCRIT       1 1    Rayleigh        distribution
                                                      critical value for alpha = A
                                 ───────────────────────────────────────────────────
                                   RINT        1 1    rint  (A) (round to integral
                                                      value nearest to A)
                                 ───────────────────────────────────────────────────
                                   RPDF        1 1    Rayleigh probability density
                                                      function for z = A
                                 ───────────────────────────────────────────────────
                                   ROLL        2 0    Cyclicly shifts  the  top  A
                                                      stack items by an amount B
                                 ───────────────────────────────────────────────────
                                   ROTX        2 1    Rotate  A  by the (constant)
                                                      shift B in x-direction
                                 ───────────────────────────────────────────────────
                                   ROTY        2 1    Rotate A by  the  (constant)
                                                      shift B in y-direction
                                 ───────────────────────────────────────────────────
                                   SDIST       2 1    Spherical             (Great
                                                      circle|geodesic)    distance
                                                      (in  km)  between  nodes and
                                                      stack (A, B)
                                 ───────────────────────────────────────────────────
                                   SDIST2      2 1    As SDIST but only  to  nodes
                                                      that are != 0
                                 ───────────────────────────────────────────────────
                                   SAZ         2 1    Spherical  azimuth from grid
                                                      nodes  to  stack  lon,   lat
                                                      (i.e., A, B)
                                 ───────────────────────────────────────────────────
                                   SBAZ        2 1    Spherical  back-azimuth from
                                                      grid nodes to stack lon, lat
                                                      (i.e., A, B)
                                 ───────────────────────────────────────────────────
                                   SEC         1 1    sec (A) (A in radians)
                                 ───────────────────────────────────────────────────
                                   SECD        1 1    sec (A) (A in degrees)
                                 ───────────────────────────────────────────────────
                                   SIGN        1 1    sign (+1 or -1) of A
                                 ───────────────────────────────────────────────────
                                   SIN         1 1    sin (A) (A in radians)
                                 ───────────────────────────────────────────────────
                                   SINC        1 1    sinc (A) (sin (pi*A)/(pi*A))
                                 ───────────────────────────────────────────────────
                                   SIND        1 1    sin (A) (A in degrees)
                                 ───────────────────────────────────────────────────
                                   SINH        1 1    sinh (A)
                                 ───────────────────────────────────────────────────
                                   SKEW        1 1    Skewness of A
                                 ───────────────────────────────────────────────────
                                   SQR         1 1    A^2
                                 ───────────────────────────────────────────────────
                                   SQRT        1 1    sqrt (A)
                                 ───────────────────────────────────────────────────
                                   STD         1 1    Standard deviation of A
                                 ───────────────────────────────────────────────────
                                   STEP        1 1    Heaviside   step   function:
                                                      H(A)
                                 ───────────────────────────────────────────────────
                                   STEPX       1 1    Heaviside  step  function in
                                                      x: H(x-A)
                                 ───────────────────────────────────────────────────
                                   STEPY       1 1    Heaviside step  function  in
                                                      y: H(y-A)
                                 ───────────────────────────────────────────────────
                                   SUB         2 1    A - B
                                 ───────────────────────────────────────────────────
                                   SUM         1 1    Sum of all values in A
                                 ───────────────────────────────────────────────────
                                   TAN         1 1    tan (A) (A in radians)
                                 ───────────────────────────────────────────────────
                                   TAND        1 1    tan (A) (A in degrees)
                                 ───────────────────────────────────────────────────
                                   TANH        1 1    tanh (A)
                                 ───────────────────────────────────────────────────
                                   TAPER       2 1    Unit  weights cosine-tapered
                                                      to zero within A and B of  x
                                                      and y grid margins
                                 ───────────────────────────────────────────────────
                                   TCDF        2 1    Student's    t    cumulative
                                                      distribution function for  t
                                                      = A, and nu = B
                                 ───────────────────────────────────────────────────
                                   TCRIT       2 1    Student's   t   distribution
                                                      critical value for alpha = A
                                                      and nu = B
                                 ───────────────────────────────────────────────────
                                   TN          2 1    Chebyshev         polynomial
                                                      Tn(-1<t<+1,n),  with  t = A,
                                                      and n = B
                                 ───────────────────────────────────────────────────
                                   TPDF        2 1    Student's   t    probability
                                                      density  function for t = A,
                                                      and nu = B
                                 ───────────────────────────────────────────────────
                                   UPPER       1 1    The highest (maximum)  value
                                                      of A
                                 ───────────────────────────────────────────────────
                                   WCDF        3 1    Weibull           cumulative
                                                      distribution function for  x
                                                      =  A, scale = B, and shape =
                                                      C
                                 ───────────────────────────────────────────────────
                                   WCRIT       3 1    Weibull         distribution
                                                      critical  value  for alpha =
                                                      A, scale = B, and shape = C
                                 ───────────────────────────────────────────────────
                                   WPDF        3 1    Weibull density distribution
                                                      P(x,scale,shape), with  x  =
                                                      A, scale = B, and shape = C
                                 ───────────────────────────────────────────────────
                                   WRAP        1 1    wrap   A   in  radians  onto
                                                      [-pi,pi]
                                 ───────────────────────────────────────────────────
                                   XOR         2 1    0 if A == NaN and B ==  NaN,
                                                      NaN if B == NaN, else A
                                 ───────────────────────────────────────────────────
                                   Y0          1 1    Bessel  function  of  A (2nd
                                                      kind, order 0)
                                 ───────────────────────────────────────────────────
                                   Y1          1 1    Bessel function  of  A  (2nd
                                                      kind, order 1)
                                 ───────────────────────────────────────────────────
                                   YLM         2 2    Re  and  Im  orthonormalized
                                                      spherical harmonics degree A
                                                      order B
                                 ───────────────────────────────────────────────────
                                   YLMg        2 2    Cos   and   Sin   normalized
                                                      spherical harmonics degree A
                                                      order     B     (geophysical
                                                      convention)
                                 ───────────────────────────────────────────────────
                                   YN          2 1    Bessel function  of  A  (2nd
                                                      kind, order B)
                                 ───────────────────────────────────────────────────
                                   ZCDF        1 1    Normal            cumulative
                                                      distribution function for  z
                                                      = A
                                 ───────────────────────────────────────────────────
                                   ZPDF        1 1    Normal  probability  density
                                                      function for z = A
                                 ───────────────────────────────────────────────────
                                   ZCRIT       1 1    Normal distribution critical
                                                      value for alpha = A
                                 ┌───────────┬──────┬──────────────────────────────┐
                                 │           │      │                              │
SYMBOLS                          │           │      │                              │
--
NOTES ON OPERATORS                │        │                                       │
--

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 precision once GMT operates on the grid or  writes  out  new  grids.  To
       limit  loss  of  precision  when processing data you should always consider normalizing the data prior to
       processing.

GRID FILE FORMATS

       By default GMT writes out grid as single precision floats  in  a  COARDS-complaint  netCDF  file  format.
       However,  GMT  is  able  to  produce  grid  files  in many other commonly used grid file formats and also
       facilitates so called "packing" of grids, writing out floating point data as 1- or  2-byte  integers.  To
       specify  the  precision, scale and offset, the user should add the suffix =id[/scale/offset[/nan]], where
       id is a two-letter identifier of the grid type and precision, and scale and  offset  are  optional  scale
       factor  and  offset to be applied to all grid values, and nan is the value used to indicate missing data.
       In case the two characters id is not provided, as in =/scale than  a  id=nf  is  assumed.   When  reading
       grids,  the  format  is generally automatically recognized. If not, the same suffix can be added to input
       grid file names. See grdconvert and Section grid-file-format of the GMT Technical Reference and  Cookbook
       for more information.

       When  reading  a  netCDF  file  that  contains  multiple  grids,  GMT  will  read,  by default, the first
       2-dimensional grid that can find in that  file.  To  coax  GMT  into  reading  another  multi-dimensional
       variable  in  the grid file, append ?varname to the file name, where varname is the name of the variable.
       Note that you may need to escape the special meaning of ? in your shell program by putting a backslash in
       front of it, or by placing the filename and suffix between quotes or double quotes. The  ?varname  suffix
       can  also  be  used  for  output  grids  to  specify a variable name different from the default: "z". See
       grdconvert and Sections modifiers-for-CF and grid-file-format of the GMT Technical Reference and Cookbook
       for more information, particularly on how to read splices of 3-, 4-, or 5-dimensional grids.

GEOGRAPHICAL AND TIME COORDINATES

       When the output grid type is netCDF, the coordinates will be labeled "longitude", "latitude",  or  "time"
       based  on the attributes of the input data or grid (if any) or on the -f or -R options. For example, both
       -f0x -f1t and -R90w/90e/0t/3t will result in a longitude/time grid. When the x, y,  or  z  coordinate  is
       time, it will be stored in the grid as relative time since epoch as specified by TIME_UNIT and TIME_EPOCH
       in  the  gmt.conf  file or on the command line. In addition, the unit attribute of the time variable will
       indicate both this unit and epoch.

STORE, RECALL AND CLEAR

       You may store intermediate calculations to a named variable that you may recall and place on the stack at
       a later time. This is useful if you need access to a computed quantity many times in your  expression  as
       it  will  shorten  the  overall  expression and improve readability. To save a result you use the special
       operator STO@label, where label is the name you choose to give the quantity. To recall the stored  result
       to  the  stack  at  a  later  time,  use  [RCL]@label, i.e., RCL is optional. To clear memory you may use
       CLR@label. Note that STO and CLR leave the stack unchanged.

GSHHS INFORMATION

       The coastline database is GSHHG (formerly GSHHS) which is compiled  from  three  sources:   World  Vector
       Shorelines  (WVS), CIA World Data Bank II (WDBII), and Atlas of the Cryosphere (AC, for Antarctica only).
       Apart from Antarctica, all level-1 polygons (ocean-land boundary) are derived from the more accurate  WVS
       while   all   higher   level  polygons  (level  2-4,  representing  land/lake,  lake/island-in-lake,  and
       island-in-lake/lake-in-island-in-lake boundaries) are taken from WDBII.  The Antarctica  coastlines  come
       in  two  flavors:  ice-front  or grounding line, selectable via the -A option.  Much processing has taken
       place to convert WVS, WDBII, and AC data into usable form for GMT: assembling closed polygons  from  line
       segments,  checking  for  duplicates,  and  correcting  for crossings between polygons.  The area of each
       polygon has been determined so that the user may choose not to draw features smaller than a minimum  area
       (see  -A);  one  may  also  limit  the  highest  hierarchical  level of polygons to be included (4 is the
       maximum). The 4 lower-resolution databases were derived from  the  full  resolution  database  using  the
       Douglas-Peucker  line-simplification  algorithm.  The classification of rivers and borders follow that of
       the WDBII. See the GMT Cookbook and Technical Reference Appendix K for further details.

MACROS

       Users may save their favorite operator combinations as  macros  via  the  file  grdmath.macros  in  their
       current  or  user  directory.  The  file may contain any number of macros (one per record); comment lines
       starting with # are skipped. The format for the macros is name = arg1 arg2 ... arg2 : comment where  name
       is  how  the macro will be used. When this operator appears on the command line we simply replace it with
       the listed argument list. No macro may call another macro. As an example,  the  following  macro  expects
       three arguments (radius x0 y0) and sets the modes that are inside the given circle to 1 and those outside
       to 0:

       INCIRCLE = CDIST EXCH DIV 1 LE : usage: r x y INCIRCLE to return 1 inside circle

       Note:  Because  geographic  or time constants may be present in a macro, it is required that the optional
       comment flag (:) must be followed by a space.

EXAMPLES

       To compute all distances to north pole:

              gmt grdmath -Rg -I1 0 90 SDIST = dist_to_NP.nc

       To take log10 of the average of 2 files, use

              gmt grdmath file1.nc file2.nc ADD 0.5 MUL LOG10 = file3.nc

       Given the file ages.nc, which holds seafloor ages in m.y., use the relation depth(in m) = 2500  +  350  *
       sqrt (age) to estimate normal seafloor depths:

              gmt grdmath ages.nc SQRT 350 MUL 2500 ADD = depths.nc

       To  find  the  angle  a  (in degrees) of the largest principal stress from the stress tensor given by the
       three files s_xx.nc s_yy.nc, and s_xy.nc from the relation tan (2*a) = 2 * s_xy / (s_xx - s_yy), use

              gmt grdmath 2 s_xy.nc MUL s_xx.nc s_yy.nc SUB DIV ATAN 2 DIV = direction.nc

       To calculate the fully normalized spherical harmonic of degree 8 and order 4 on a 1  by  1  degree  world
       map, using the real amplitude 0.4 and the imaginary amplitude 1.1:

              gmt grdmath -R0/360/-90/90 -I1 8 4 YML 1.1 MUL EXCH 0.4 MUL ADD = harm.nc

       To extract the locations of local maxima that exceed 100 mGal in the file faa.nc:

              gmt grdmath faa.nc DUP EXTREMA 2 EQ MUL DUP 100 GT MUL 0 NAN = z.nc
              gmt grd2xyz z.nc -s > max.xyz

       To  demonstrate  the  use  of  named  variables,  consider this radial wave where we store and recall the
       normalized radial arguments in radians:

              gmt grdmath -R0/10/0/10 -I0.25 5 5 CDIST 2 MUL PI MUL 5 DIV STO@r COS @r SIN MUL = wave.nc

REFERENCES

       Abramowitz, M., and I. A. Stegun, 1964, Handbook of Mathematical Functions, Applied  Mathematics  Series,
       vol. 55, Dover, New York.

       Holmes,  S.  A.,  and  W.  E.  Featherstone,  2002,  A unified approach to the Clenshaw summation and the
       recursive computation of very high degree and order normalised associated Legendre functions. Journal  of
       Geodesy, 76, 279-299.

       Press,  W.  H.,  S.  A.  Teukolsky,  W.  T.  Vetterling, and B. P. Flannery, 1992, Numerical Recipes, 2nd
       edition, Cambridge Univ., New York.

       Spanier, J., and K. B. Oldman, 1987, An Atlas of Functions, Hemisphere Publishing Corp.

SEE ALSO

       gmt, gmtmath, grd2xyz, grdedit, grdinfo, xyz2grd

COPYRIGHT

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

5.2.1                                           January 28, 2016                                   GRDMATH(1gmt)