ESW: Line transect Effective Strip Width (ESW)

View source: R/ESW.r

ESWR Documentation

Line transect Effective Strip Width (ESW)


Returns effective strip width (ESW) from an estimated line transect detection functions. This function applies only to line transect information. Function EDR is for point transect data. Function effectiveDistance accepts either point or line transect data.


ESW(obj, newdata)



An estimated detection function object. An estimated detection function object has class 'dfunc', and is usually produced by a call to dfuncEstim. The estimated detection function may optionally contain a g(0) component that specifies detection probability on the transect. If no g(0) component is found, g(0) = 1 is assumed.


A data frame containing new values of the covariates at which ESW's are sought. If NULL or missing and obj contains covariates, the covariates stored in obj are used. See Value section.


Effective strip width (ESW) of a distance function is its integral. That is, ESW is the area under the distance function from its left-truncation limit (obj$w.lo) to its right-truncation limit (obj$w.hi).

If detection does not decline with distance, area under the detection function is the entire half-width of the strip transect (i.e., obj$w.hi - obj$w.lo). In this case density is the number sighted targets divided by area surveyed, where area surveyed is obj$w.hi-obj$w.lo times total length of transects.

When detection declines with distance, less than the total half-width is effectively covered. In this case, Buckland et al. (1993) show that the denominator of the density estimator is total length of surveyed transects times area under the detection function (i.e., this integral). By analogy with the non-declining detection case, ESW is the transect half-width that observers effectively cover. In other words, if ESW = X, the study effectively covers the same area as a study with non-declining detection out to a distance of X.

A technical consideration: Rdistance uses the trapezoid rule to numerically integrate under the distance function from obj$w.lo to obj$w.hi. Two-hundred trapezoids are used in the approximation to speed calculations. In some rare cases, two hundred trapezoids may not be enough. In these cases, users should modify this function's code and bump seq.length to a value greater than 200.


If newdata is not missing and not NULL and covariates are present in obj, the returned value is a vector of ESW values associated with covariates in the distance function and equal in length to the number of rows in newdata. If newdata is missing or NULL and covariates are present in obj, an ESW vector with length equal to the number of detections in obj$detections is returned.

If obj does not contain covariates, newdata is ignored and a scalar equal to the (constant) effective strip width for all detections is returned.


Buckland, S.T., Anderson, D.R., Burnham, K.P. and Laake, J.L. 1993. Distance Sampling: Estimating Abundance of Biological Populations. Chapman and Hall, London.

See Also

dfuncEstim, EDR, effectiveDistance


# Load example sparrow data (line transect survey type)

dfunc <- dfuncEstim(formula=dist~1
                  , detectionData = sparrowDetectionData)

# Compute effective strip width (ESW)

Rdistance documentation built on July 9, 2023, 6:46 p.m.