LennardJones
The Lennard-Jones Potential
Creates the Lennard-Jones pairwise interaction structure which can then be fitted to point pattern data.
Usage
LennardJones()
Details
In a pairwise interaction point process with the Lennard-Jones pair potential, each pair of points in the point pattern, a distance $d$ apart, contributes a factor $$\exp \left{ - \left( \frac{\sigma}{d} \right)^{12} + \tau \left( \frac{\sigma}{d} \right)^6 \right}$$ to the probability density, where $\sigma$ and $\tau$ are positive parameters to be estimated.
See Examples for a plot of this expression. This potential causes very strong inhibition between points at short range, and attraction between points at medium range. Roughly speaking, $\sigma$ controls the scale of both types of interaction, and $\tau$ determines the strength of attraction. The potential switches from inhibition to attraction at $d=\sigma/\tau^{1/6}$. Maximum attraction occurs at distance $d = (\frac 2 \tau)^{1/6} \sigma$ and the maximum achieved is $\exp(\tau^2/4)$. Interaction is negligible for distances $d > 2 \sigma \max{1,\tau^{1/6}}$.
This potential
is used (in a slightly different parameterisation)
to model interactions between uncharged molecules in statistical physics.
The function ppm()
, which fits point process models to
point pattern data, requires an argument
of class "interact"
describing the interpoint interaction
structure of the model to be fitted.
The appropriate description of the Lennard-Jones pairwise interaction is
yielded by the function LennardJones()
.
See the examples below.
The ``canonical regular parameters'' estimated by ppm
are
$\theta_1 = \sigma^{12}$
and
$\theta_2 = \tau \sigma^6$.
Value
- An object of class
"interact"
describing the Lennard-Jones interpoint interaction structure.
See Also
Examples
X <- rpoispp(100)
ppm(X, ~1, LennardJones(), correction="translate")
# Typically yields very small values for theta_1, theta_2
# so the values of sigma, tau may not be sensible
##########
# How to plot the pair potential function (exponentiated)
plotLJ <- function(sigma, tau) {
dmax <- 2 * sigma * max(1, tau)^(1/6)
d <- seq(dmax * 0.0001, dmax, length=1000)
plot(d, exp(- (sigma/d)^12 + tau * (sigma/d)^6), type="l",
ylab="Lennard-Jones",
main=substitute(list(sigma==s, tau==t),
list(s=sigma,t=tau)))
abline(h=1, lty=2)
}
plotLJ(1,1)