terra (version 1.0-10)

math: Arithmetic, logical and general mathematical methods

Description

Standard operators and mathematical methods for computations with SpatRaster objects. Computations are local (applied on a cell by cell basis). If multiple SpatRaster objects are used, these must have the same extent and resolution. These have been implemented:

Arith: +, -, *, /, ^, %%, %/%

Compare: ==, !=, >, <, <=, >=, is.na, is.nan, is.finite, is.infinite

The terra package does not distinguish between NA (not available) and NaN (not a number). In most cases this state is represented by NaN.

Logical: !, &, |, isTRUE, isFALSE

Summary: max, min, range, prod, sum, any, all

Math: abs, sign, sqrt, ceiling, floor, trunc, cummax, cummin, cumprod, cumsum, log, log10, log2, log1p, acos, acosh, asin, asinh, atan, atanh, exp, expm1, cos, cosh, sin, sinh, tan, tanh, round, signif

The following methods have been implemented for SpatExtent: round, floor, ceil, ==, for (SpatExtent, SpatExtent): ==, +, -, and for (SpatExtent, numeric) : +, -, *, /, %%

Arguments

Value

SpatRaster or SpatExtent

seealso

ifel to convieniently combine operations and app to use mathematical functions not implemented by the package.

Examples

Run this code
# NOT RUN {
r1 <- rast(ncols=10, nrows=10)
v <- runif(ncell(r1))
v[10:20] <- NA
values(r1) <- v
r2 <- rast(r1)
values(r2) <- 1:ncell(r2) / ncell(r2)
r3 <- r1 + r2
r2 <- r1 / 10
r3 <- r1 * (r2 - 1 / r2)


b <- c(r1, r2, r3)
b2 <- b * 10
s <- sqrt(b2)
round(s, 1)

max(s)
max(s, na.rm=TRUE)

x <- is.na(s)

y <- which.max(s)

### SpatExtent methods
x <- ext(0.1, 2.2, 0, 3)
y <- ext(-2, 1, -2,2)
# union
x + y
# intersection
x * y

e <- x 
# }
# NOT RUN {
<!-- %% 2 -->
# }
# NOT RUN {
e
e * 2
e / 2
e + 1
e - 1
# }

Run the code above in your browser using DataLab