halfnorm.like {Rdistance}R Documentation

halfnorm.like - Half-normal distance function

Description

Evaluate the half-normal distance function, for sighting distances, potentially including covariates and expansion terms

Usage

halfnorm.like(a, dist, covars)

Arguments

a

A vector or matrix of covariate and expansion term coefficients. Dimension is $k$ X $p$, where $k$ (i.e., nrow(a)) is the number of coefficient vectors to evaluate (cases) and $p$ (i.e., ncol(a)) is the number of covariate and expansion coefficients in the likelihood. If a is a dimensionless vector, it is interpreted to be a single row with $k$ = 1. Covariate coefficients in a are the first $q$ values ($q$ <= $p$), and must be on a log scale.

dist

A numeric vector of length $n$ or a single-column matrix (dimension $n$X1) containing detection distances at which to evaluate the likelihood.

covars

A numeric vector of length $q$ or matrix of dimension $n$X$q$ containing covariate values associated with distances in argument d

Details

The half-normal distance function is

f(d|s) = \exp(-d^2 / (2*s^2))

where s = exp(x'a), x is a vector of covariate values associated with distance d (i.e., a row of covars), and a is a vector of the first $q$ (=ncol(covars)) values in argument a.

Some authors parameterize the halfnorm without the "2" in the denominator of the exponent. Rdistance includes "2" in this denominator to make quantiles of the half normal agree with the standard normal. This means that half-normal coefficients in Rdistance (i.e., $s = exp(x'a)$) can be interpreted as normal standard errors. For example, approximately 95% of distances should occur between 0 and 2$s$.

Value

A list containing the following two components:

See Also

dfuncEstim, hazrate.like, negexp.like

Examples

 
d <- seq(0, 100, length=100)
covs <- matrix(1,length(d),1)
halfnorm.like(log(20), d, covs)

plot(d, halfnorm.like(log(20), d, covs)$L.unscaled, type="l", col="red")
lines(d, halfnorm.like(log(40), d, covs)$L.unscaled, col="blue")

# Matrix inputs:
d <- matrix(c(0,10,20), ncol = 1) # 3X1
covs <- matrix(c(rep(1,nrow(d)), rep(.5,nrow(d))), nrow = nrow(d)) # 3X2
coefs <- matrix(log(c(15,5,10,10)), nrow=2) # 2X2
L <- halfnorm.like( coefs, d, covs ) 
L$L.unscaled # 3X2
L$params     # 3X2; exp(log(15)+0.5log(10)) and exp(log(5)+0.5log(10))


[Package Rdistance version 4.0.5 Index]