Given a distance matrix from calcVinEll, calculate a stochastic matrix where one step movement probabilities follow a lognormal density.

calcLognormalKernel(distMat, meanlog, sdlog)

Arguments

distMat Distance matrix from calcVinEll Log mean of Lognormal distribution Log standard deviation of Lognormal distribution

Details

The distribution and density functions for the lognormal kernel are given below: $$F(x)=\frac{1}{2} + \frac{1}{2} \mathrm{erf}[\frac{\mathrm{ln}x-\mu}{\sqrt{2}\sigma}]$$ $$f(x)=\frac{1}{x\sigma\sqrt{2\pi}}\mathrm{exp}\left( -\frac{(\mathrm{ln}x-\mu)^{2}}{2\sigma^{2}} \right)$$ where $$\mu$$ is the mean on the log scale, and $$\sigma$$ is the standard deviation on the log scale.

Examples

# 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 lognormal distribution over distances
#  mean and standard deviation are just for example
kernMat = calcLognormalKernel(distMat = distMat, meanlog = 100, sdlog = 10)