mc_reserve: Metapopulation capacity of a candidate reserve

Description Usage Arguments Value Examples

View source: R/mc-reserve.r

Description

For use in conservation prioritization exercises, this function computes the metapopulation capacities for a suite of species within a selected set of planning units.

Usage

1
2
mc_reserve(pu, x, f, threshold = 0, scale = 1, units = c("km", "m"),
  parallel = FALSE, ...)

Arguments

pu

raster::RasterStack, sp::SpatialPolygonsDataFrame, or sf::sf object; planning units and representation levels of features as layers (raster inputs) or columns (vector inputs).

x

logical or binary; indicator variables specifying which planning units are included.

f

named list of dispersal survival functions with names matching the layer/column names in pu.

threshold

numeric; representation level threshold required to consider a species present in a planning unit.

scale

numeric; vales to rescale the metapopulation capacity by, e.g. to normalize them between 0-1 one can scale by the maximum, species-specific metapopulation capacity given by selecting all planning units. This should be a vector of length 1 or equal in length to the number of features.

units

character; metapopulation capacity depends on the units used for the areas and distances, this argument determines whether these are measured in meters or kilometers.

parallel

logical; whether to parallelize the metapopulation capacity calculations over the species. Parallelization is accomplished using foreach::foreach() and requires registering a parallel backend with doParallel::registerDoParallel() prior to calling this function.

...

additional arguments passed on to meta_capacity().

Value

A numeric vector of metapopulation capacities for each species.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# generate data
r <- raster::raster(nrows = 10, ncols = 10, crs = "+proj=aea",
                    vals = sample(0:1, 100, replace = TRUE))
s <- raster::stack(r, r, r)
s[[2]][] <- sample(0:1, 100, replace = TRUE, prob = c(0.6, 0.4))
s[[3]][] <- sample(0:1, 100, replace = TRUE, prob = c(0.8, 0.2))
names(s) <- c("a", "b", "c")
selected <- sample(c(FALSE, TRUE), 100, replace = TRUE, prob = c(0.7, 0.3))
disp_f <- list(a = dispersal_negexp(1 / 0.01),
               b = dispersal_negexp(1 / 0.005),
               c = dispersal_negexp(1 / 0.02))
mc_reserve(s, selected, disp_f)

# vector data
features <- raster::rasterToPolygons(s)
features <- sf::st_as_sf(features)
mc_reserve(features, selected, disp_f)

# run in parallel
## Not run: 
library(doParallel)
registerDoParallel(3)
mc_reserve(features, selected, disp_f, parallel = TRUE)

## End(Not run)

mstrimas/metacapa documentation built on Dec. 3, 2019, 3:16 p.m.