Learn R Programming

MGDrivE (version 1.6.0)

calcHurdleExpKernel: Calculate Zero-inflated Exponential Stochastic Matrix

Description

Given a distance matrix from calcVinEll, calculate a stochastic matrix where one step movement probabilities follow an zero-inflated exponential density with a point mass at zero. The point mass at zero represents the first stage of a two-stage process, where mosquitoes decide to stay at their current node or leave anywhere. This parameter can be calculated from lifetime probabilities to stay at the current node with the helper function calcZeroInflation.

Usage

calcHurdleExpKernel(distMat, rate, p0)

Arguments

distMat

Distance matrix from calcVinEll

rate

Rate parameter of Exponential distribution

p0

Point mass at zero

Details

If a mosquito leaves its current node, with probability \(1-p_{0}\), it then chooses a destination node according to a standard exponential density with rate parameter \(rate\).

The distribution and density functions for the zero inflated exponential kernel are given below: $$ F(x)=p_{0}\theta(x) + (1-p_{0})(1-e^{-\lambda x}) $$ $$ f(x)=p_{0}\delta(x)+(1-p_{0})\lambda e^{-\lambda x} $$ where \(\lambda\) is the rate parameter of the exponential distribution, \(\theta(x)\) is the Heaviside step function and \(\delta(x)\) is the Dirac delta function.

Examples

Run this code
# NOT RUN {
# setup distance matrix
# two-column matrix with latitude/longitude, in degrees
latLong = cbind(runif(n = 5, min = 0, max = 90),
                runif(n = 5, min = 0, max = 180))

# Vincenty Ellipsoid  distance formula
distMat = calcVinEll(latLongs = latLong)

# calculate hurdle exponential distribution over distances
#  rate and point mass are just for example
kernMat = calcHurdleExpKernel(distMat = distMat, rate = 1/1e6, p0 = 0.1)

# }

Run the code above in your browser using DataLab