DispersalPerRecruitModel {ConnMatTools}R Documentation

Population dynamics model based on lifetime-egg-production

Description

This function implements the marine population dynamics model described in Kaplan et al. (2006). This model is most appropriate for examining equilibrium dynamics of age-structured populations or temporal dynamics of semelparous populations.

Usage

DispersalPerRecruitModel(
  LEP,
  conn.mat,
  recruits0,
  timesteps = 10,
  settler.recruit.func = hockeyStick,
  ...
)

Arguments

LEP

a vector of lifetime-egg-production (LEP; also known as eggs-per-recruit (EPR)) for each site.

conn.mat

a square connectivity matrix. dim(conn.mat) = rep(length(LEP),2)

recruits0

a vector of initial recruitment values for each site.

timesteps

a vector of timesteps at which to record egg production, settlement and recruitment.

settler.recruit.func

a function to calculate recruitment from the number of settlers at each site. Defaults to hockeyStick.

...

additional arguments to settler.recruit.func. Typically Rmax and slope.

Value

A list with the following elements:

eggs

egg production for the timesteps in timesteps

settlers

Similar for settlement

recruits

Similar for recruitment

Author(s)

David M. Kaplan dmkaplan2000@gmail.com

References

Kaplan, D. M., Botsford, L. W., and Jorgensen, S. 2006. Dispersal per recruit: An efficient method for assessing sustainability in marine reserve networks. Ecological Applications, 16: 2248-2263.

See Also

See also BevertonHolt, hockeyStick

Examples

library(ConnMatTools)
data(chile.loco)

# Get appropriate collapse slope
# critical.FLEP=0.2 is just an example
slope <- settlerRecruitSlopeCorrection(chile.loco,critical.FLEP=0.2)

# Make the middle 20 sites a reserve
# All other sites: scorched earth
n <- dim(chile.loco)[2]
LEP <- rep(0,n)
nn <- round(n/2)-9
LEP[nn:(nn+19)] <- 1

Rmax <- 1

recruits0 <- rep(Rmax,n)

# Use DPR model
ret <- DispersalPerRecruitModel(LEP,chile.loco,recruits0,1:20,slope=slope,Rmax=Rmax,
                                settler.recruit.func=BevertonHolt)
image(1:n,1:20,ret$settlers,xlab="sites",ylab="timesteps",
      main=c("Settlement","click to proceed"))
locator(1)
plot(ret$settlers[,20],xlab="sites",ylab="equilibrium settlement",
     main="click to proceed")
locator(1)

# Same, but with a uniform Laplacian dispersal matrix and hockeyStick
cm <- laplacianConnMat(n,10,0,"circular")
ret <- DispersalPerRecruitModel(LEP,cm,recruits0,1:20,slope=1/0.35,Rmax=Rmax)
image(1:n,1:20,ret$settlers,xlab="sites",ylab="timesteps",
      main=c("Settlement","click to proceed"))
locator(1)
plot(ret$settlers[,20],xlab="sites",ylab="equilibrium settlement")

[Package ConnMatTools version 0.3.5 Index]