Learn R Programming

samc (version 1.0.4)

dispersal: Calculate dispersal metrics

Description

Calculates the probability of individuals visiting locations

Usage

dispersal(samc, occ, origin, dest, time)

# S4 method for samc,missing,missing,numeric,numeric dispersal(samc, dest, time)

# S4 method for samc,RasterLayer,missing,numeric,numeric dispersal(samc, occ, dest, time)

# S4 method for samc,matrix,missing,numeric,numeric dispersal(samc, occ, dest, time)

# S4 method for samc,missing,missing,missing,missing dispersal(samc)

# S4 method for samc,missing,numeric,missing,missing dispersal(samc, origin)

# S4 method for samc,missing,missing,numeric,missing dispersal(samc, dest)

# S4 method for samc,missing,numeric,numeric,missing dispersal(samc, origin, dest)

# S4 method for samc,RasterLayer,missing,missing,missing dispersal(samc, occ)

# S4 method for samc,matrix,missing,missing,missing dispersal(samc, occ)

# S4 method for samc,RasterLayer,missing,numeric,missing dispersal(samc, occ, dest)

# S4 method for samc,matrix,missing,numeric,missing dispersal(samc, occ, dest)

Arguments

samc

A samc-class object. This should be output from the samc function.

occ

A RasterLayer-class or matrix. The input type must match the input type used to create the samc-class object, and must have the same properties as the rest of the landscape data. See the check function for more details.

origin

A positive integer representing a cell in the landscape, excluding NA cells. Corresponds to row i of matrix P in the samc-class object.

dest

A positive integer representing a cell in the landscape, excluding NA cells. Corresponds to column j of matrix P in the samc-class object.

time

A positive integer representing time steps

Value

A matrix, a vector, or a numeric

Performance

Any relevant performance information about this function can be found in the performance vignette: vignette("performance", package = "samc")

Details

\(\tilde{D}_{jt}=(\sum_{n=0}^{t-1}\tilde{Q}^n)\tilde{q}_j\)

  • dispersal(samc, dest, time)

    The result is a vector where each element corresponds to a cell in the landscape, and can be mapped back to the landscape using the map function. Element k is the probability of ever visiting a given destination, if starting at any other location, within t or fewer time steps.

\(\psi^T\tilde{D}_{jt}\)

  • dispersal(samc, occ, dest, time)

    The result is a numeric that is the unconditional probability of visiting a given destination within t or fewer time steps.

\(D=(F-I)diag(F)^{-1}\)

  • dispersal(samc)

    The result is a matrix where element (i,j) is the probability that location j is visited when starting in location i.

    The returned matrix will always be dense and cannot be optimized. Must enable override to use.

  • dispersal(samc, origin)

    This function has not been optimized yet, and will not run.

  • dispersal(samc, dest)

    The result is a vector where each element corresponds to a cell in the landscape, and can be mapped back to the landscape using the map function. Element i is the probability that the destination is visited when starting in location i.

  • dispersal(samc, origin, dest)

    The result is a numeric value that is the probability that an individual starting at the origin visits the destination.

\(\psi^TD\)

  • dispersal(samc, occ)

    The result is a vector where each element corresponds to a cell in the landscape, and can be mapped back to the landscape using the map function. Element j is the unconditional probability distribution of ever visiting location j, regardless of the initial location.

  • dispersal(samc, occ, dest)

    The result is a numeric value that is the unconditional probability distribution of ever visiting a given destination, regardless of the initial location.

Examples

Run this code
# NOT RUN {
# "Load" the data. In this case we are using data built into the package.
# In practice, users will likely load raster data using the raster() function
# from the raster package.
res_data <- samc::ex_res_data
abs_data <- samc::ex_abs_data
occ_data <- samc::ex_occ_data


# Make sure our data meets the basic input requirements of the package using
# the check() function.
check(res_data, abs_data)
check(res_data, occ_data)


# Create a `samc-class` object with the resistance and absorption data using
# the samc() function. We use the recipricol of the arithmetic mean for
# calculating the transition matrix. Note, the input data here are matrices,
# not RasterLayers. If using RasterLayers, the latlon parameter must be set.
samc_obj <- samc(res_data, abs_data, tr_fun = function(x) 1/mean(x))


# Convert the occupancy data to probability of occurrence
occ_prob_data <- occ_data / sum(occ_data, na.rm = TRUE)


# Calculate short- and long-term metrics using the analytical functions
short_mort <- mortality(samc_obj, occ_prob_data, time = 50)
short_dist <- distribution(samc_obj, origin = 3, time = 50)
long_disp <- dispersal(samc_obj, occ_prob_data)
visit <- visitation(samc_obj, dest = 4)
surv <- survival(samc_obj)


# Use the map() function to turn vector results into RasterLayer objects.
short_mort_map <- map(samc_obj, short_mort)
short_dist_map <- map(samc_obj, short_dist)
long_disp_map <- map(samc_obj, long_disp)
visit_map <- map(samc_obj, visit)
surv_map <- map(samc_obj, surv)
# }

Run the code above in your browser using DataLab