The Grid Calculator calculates a new grid based on existing grids and a mathematical formula. The grid variables in the formula begin with the letter 'g' followed by a position index, which corresponds to the order of the grids in the input grid list (i.e.: g1, g2, g3, ... correspond to the first, second, third, ... grid in list). Grids from other systems than the default one can be addressed likewise using the letter 'h' (h1, h2, h3, ...), which correspond to the 'Grids from different Systems' list.
Example: sin(g1) * g2 + 2 * h1
The following operators are available for the formula definition:
+ | Addition |
- | Subtraction |
* | Multiplication |
/ | Division |
abs(x) | Absolute Value |
mod(x, y) | Returns the floating point remainder of x/y |
int(x) | Returns the integer part of floating point value x |
sqr(x) | Square |
sqrt(x) | Square Root |
exp(x) | Exponential |
pow(x, y) | Returns x raised to the power of y |
x ^ y | Returns x raised to the power of y |
ln(x) | Natural Logarithm |
log(x) | Base 10 Logarithm |
pi() | Returns the value of Pi |
sin(x) | Sine |
cos(x) | Cosine |
tan(x) | Tangent |
asin(x) | Arcsine |
acos(x) | Arccosine |
atan(x) | Arctangent |
atan2(x, y) | Arctangent of x/y |
min(x, y) | Returns the minimum of values x and y |
max(x, y) | Returns the maximum of values x and y |
gt(x, y) | Returns true (1), if x is greater than y, else false (0) |
x > y | Returns true (1), if x is greater than y, else false (0) |
lt(x, y) | Returns true (1), if x is less than y, else false (0) |
x < y | Returns true (1), if x is less than y, else false (0) |
eq(x, y) | Returns true (1), if x equals y, else false (0) |
x = y | Returns true (1), if x equals y, else false (0) |
and(x, y) | Returns true (1), if both x and y are true (i.e. not 0) |
or(x, y) | Returns true (1), if at least one of both x and y is true (i.e. not 0) |
ifelse(c, x, y) | Returns x, if condition c is true (i.e. not 0), else y |
rand_u(x, y) | Random number, uniform distribution with minimum x and maximum y |
rand_g(x, y) | Random number, Gaussian distribution with mean x and standard deviation y |
xpos(), ypos() | Get the x/y coordinates for the current cell |
col(), row() | Get the current cell's column/row index |
ncols(), nrows() | Get the number of columns/rows |
nodata() | Returns resulting grid's no-data value |
| Name | Type | Identifier | Description | Constraints |
Input | Grids (*) | Grid list, input, optional | GRIDS | in the formula these grids are addressed in order of the list as 'g1, g2, g3, ...' | - |
Grids from different Systems (*) | Grid list, input, optional | XGRIDS | in the formula these grids are addressed in order of the list as 'h1, h2, h3, ...' | - |
Output | Result | Grid, output | RESULT | - | - |
Options | Grid System | Grid system | PARAMETERS_GRID_SYSTEM | - | - |
Resampling | Choice | RESAMPLING | - | Available Choices: [0] Nearest Neighbour [1] Bilinear Interpolation [2] Bicubic Spline Interpolation [3] B-Spline Interpolation Default: 3 |
Formula | Text | FORMULA | - | Default: (g1 - g2) / (g1 + g2) |
Name | Text | NAME | - | Default: Calculation |
Take Formula | Boolean | FNAME | - | Default: 0 |
Use No-Data | Boolean | USE_NODATA | Check this in order to include no-data cells in the calculation. | Default: 0 |
Data Type | Choice | TYPE | - | Available Choices: [0] bit [1] unsigned 1 byte integer [2] signed 1 byte integer [3] unsigned 2 byte integer [4] signed 2 byte integer [5] unsigned 4 byte integer [6] signed 4 byte integer [7] 4 byte floating point number [8] 8 byte floating point number Default: 7 |
(*) optional |