absorption | R Documentation |
Calculates the probability of absorption for absorbing states rather than individual transient states. This is distint from, yet very closely linked to, the mortality() metric, which calculates the probability of absorption at individual transient states. If the results of the mortality() metric are decomposed into individual results for each absorbing state, then the sums of the individual results for every transient state are equivalent to the results of the absorption() metric.
absorption(samc, init, origin)
## S4 method for signature 'samc,missing,missing'
absorption(samc)
## S4 method for signature 'samc,missing,location'
absorption(samc, origin)
## S4 method for signature 'samc,ANY,missing'
absorption(samc, init)
samc |
A |
init |
Sets the initial state |
origin |
A positive integer or character name representing transient state
|
A = F R
absorption(samc)
The result is a matrix M
where M_{i,k}
is the
probability of absorption due to absorbing state \mathit{k}
if starting
at transient state \mathit{i}
.
absorption(samc, origin)
The result is a vector \mathbf{v}
where \mathbf{v}_{k}
is the
probability of absorption due to absorbing state \mathit{k}
if starting
at transient state \mathit{i}
.
\psi^T A
absorption(samc, init)
The result is a vector \mathbf{v}
where \mathbf{v}_{k}
is the
probability of absorption due to absorbing state \mathit{k}
given an
initial state \psi
.
See Details
Any relevant performance information about this function can be found in the
performance vignette: vignette("performance", package = "samc")
# "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::example_split_corridor$res
abs_data <- samc::example_split_corridor$abs
init_data <- samc::example_split_corridor$init
# Make sure our data meets the basic input requirements of the package using
# the check() function.
check(res_data, abs_data)
check(res_data, init_data)
# Setup the details for a random-walk model
rw_model <- list(fun = function(x) 1/mean(x), # Function for calculating transition probabilities
dir = 8, # Directions of the transitions. Either 4 or 8.
sym = TRUE) # Is the function symmetric?
# 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.
samc_obj <- samc(res_data, abs_data, model = rw_model)
# Convert the initial state data to probabilities
init_prob_data <- init_data / sum(init_data, na.rm = TRUE)
# Calculate short- and long-term metrics using the analytical functions
short_mort <- mortality(samc_obj, init_prob_data, time = 50)
short_dist <- distribution(samc_obj, origin = 3, time = 50)
long_disp <- dispersal(samc_obj, init_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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.