# Fake distance function object w/ minimum inputs for integration
d <- rep(1,4) %m%. # Only units needed, not values
obs <- factor(rep(c("obs1", "obs2"), 2))
beta <- c(3.5, -0.5)
w.hi <- 125
w.lo <- 20
ml <- list(
mf = model.frame(d ~ obs)
, par = beta
, likelihood = "halfnorm"
, w.lo = w.lo %#% "m"
, w.hi = w.hi %#% "m"
)
class(ml) <- "dfunc"
integrateHalfnormPoints(ml)
# Check: Integral of x exp(-x^2/(2*s^2)) from 0 to w = w.hi-w.lo
sigma <- exp(c(beta[1], beta[1] + beta[2]))
w <- w.hi - w.lo
intgral <- sigma^2 * (1 - exp(-w^2 / (2*sigma^2)))
intgral
# Effective detection radius
sqrt(2 * intgral)
Run the code above in your browser using DataLab