Provided by: gmt-common_5.4.3+dfsg-1_all bug

NAME

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

SYNOPSIS

       grdmath   [   -Amin_area[/min_level/max_level][+ag|i|s  |S][+r|l][ppercent]  ]  [   -Dresolution[+]  ]  [
       -Iincrement ] [  -M ] [  -N ] [  -Rregion ] [  -V[level] ] [ -bibinary ] [ -dinodata  ]  [  -fflags  ]  [
       -hheaders ] [ -iflags ] [ -nflags ] [ -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][+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, 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 +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  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].

       -Rxmin/xmax/ymin/ymax[+r][+uunit] (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 and transformations (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 just use -).

       -+ 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 all options, then exits.

OPERATORS

       Choose among the following 209 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]
                                 ───────────────────────────────────────────────────
                                   AREA        0 1    Area  of  each gridnode cell
                                                      (in km^2 if geographic)
                                 ───────────────────────────────────────────────────
                                   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
                                 ───────────────────────────────────────────────────
                                   LMSSCLW     2 1    Weighted  LMS scale estimate
                                                      (LMS STD) of A  for  weights
                                                      in B
                                 ───────────────────────────────────────────────────
                                   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
                                 ───────────────────────────────────────────────────
                                   MEANW       2 1    Weighted mean value of A for
                                                      weights in B
                                 ───────────────────────────────────────────────────
                                   MEDIAN      1 1    Median value of A
                                 ───────────────────────────────────────────────────
                                   MEDIANW     2 1    Weighted  median  value of A
                                                      for weights in B
                                 ───────────────────────────────────────────────────
                                   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
                                 ───────────────────────────────────────────────────
                                   MODEW       2 1    Weighted mode  value  (Least
                                                      Median  of Squares) of A for
                                                      weights in B
                                 ───────────────────────────────────────────────────
                                   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
                                 ───────────────────────────────────────────────────
                                   PQUANTW     3 1    The  C’th  weighted quantile
                                                      (0-100%) of A for weights in
                                                      B
                                 ───────────────────────────────────────────────────
                                   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)
                                 ───────────────────────────────────────────────────
                                   RMS         1 1    Root-mean-square of A
                                 ───────────────────────────────────────────────────
                                   RMSW        1 1    Root-mean-square  of  A  for
                                                      weights in B
                                 ───────────────────────────────────────────────────
                                   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
                                 ───────────────────────────────────────────────────
                                   STDW        2 1    Weighted standard  deviation
                                                      of A for weights in B
                                 ───────────────────────────────────────────────────
                                   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
                                 ───────────────────────────────────────────────────
                                   TRIM        3 1    Alpha-trim   C   to  NaN  if
                                                      values fall in tails A and B
                                                      (in percentage)
                                 ───────────────────────────────────────────────────
                                   UPPER       1 1    The highest (maximum)  value
                                                      of A
                                 ───────────────────────────────────────────────────
                                   VAR         1 1    Variance of A
                                 ───────────────────────────────────────────────────
                                   VARW        2 1    Weighted  variance  of A for
                                                      weights in B
                                 ───────────────────────────────────────────────────
                                   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

       The following symbols have special meaning:
                                  ──────────────────────────────────────────────────
                                    PI       3.1415926…
                                  ──────────────────────────────────────────────────
                                    E        2.7182818…
                                  ──────────────────────────────────────────────────
                                    EULER    0.5772156…
                                  ──────────────────────────────────────────────────
                                    EPS_F    1.192092896e-07   (single   precision
                                             epsilon
                                  ──────────────────────────────────────────────────
                                    XMIN     Minimum x value
                                  ──────────────────────────────────────────────────
                                    XMAX     Maximum x value
                                  ──────────────────────────────────────────────────
                                    XRANGE   Range of x values
                                  ──────────────────────────────────────────────────
                                    XINC     x increment
                                  ──────────────────────────────────────────────────
                                    NX       The number of x nodes
                                  ──────────────────────────────────────────────────
                                    YMIN     Minimum y value
                                  ──────────────────────────────────────────────────
                                    YMAX     Maximum y value
                                  ──────────────────────────────────────────────────
                                    YRANGE   Range of y values
                                  ──────────────────────────────────────────────────
                                    YINC     y increment
                                  ──────────────────────────────────────────────────
                                    NY       The number of y nodes
                                  ──────────────────────────────────────────────────
                                    X        Grid with x-coordinates
                                  ──────────────────────────────────────────────────
                                    Y        Grid with y-coordinates
                                  ──────────────────────────────────────────────────
                                    XNORM    Grid  with  normalized  [-1  to   +1]
                                             x-coordinates
                                  ──────────────────────────────────────────────────
                                    YNORM    Grid   with  normalized  [-1  to  +1]
                                             y-coordinates
                                  ──────────────────────────────────────────────────
                                    XCOL     Grid with column  numbers  0,  1,  …,
                                             NX-1
                                  ──────────────────────────────────────────────────
                                    YROW     Grid with row numbers 0, 1, …, NY-1
                                  ──────────────────────────────────────────────────
                                    NODE     Grid  with  node  numbers  0,  1,  …,
                                             (NX*NY)-1
                                  ┌────────┬───────────────────────────────────────┐
                                  │        │                                       │
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. (more
       …)

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 YLM 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

       To creat a dumb file saved as a 32 bits float GeoTiff using GDAL, run

              gmt grdmath -Rd -I10 X Y MUL = lixo.tiff=gd:GTiff

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

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

5.4.3                                             Jan 03, 2018                                     GRDMATH(1gmt)