loglik.GRF
Log-Likelihood for a Gaussian Random Field
This function computes the value of the log-likelihood for a Gaussian random field.
- Keywords
- spatial
Usage
loglik.GRF(geodata, coords = geodata$coords, data = geodata$data,
obj.model = NULL, cov.model = "exp", cov.pars, nugget = 0,
kappa = 0.5, lambda = 1, psiR = 1, psiA = 0,
trend = "cte", method.lik = "ML", compute.dists = TRUE,
realisations = NULL)
Arguments
- geodata
a list containing elements
coords
anddata
as described next. Typically an object of the class"geodata"
- a geoR data-set. If not provided the argumentscoords
anddata
must be provided instead.- coords
an \(n \times 2\) matrix, each row containing Euclidean coordinates of the n data locations. By default it takes the element
coords
of the argumentgeodata
.- data
a vector with data values. By default it takes the element
data
of the argumentgeodata
.- obj.model
a object of the class
variomodel
with a fitted model. Tipically an output oflikfit
orvariofit
.- cov.model
a string specifying the model for the correlation function. For further details see documentation for
cov.spatial
.- cov.pars
a vector with 2 elements with values of the covariance parameters \(\sigma^2\) (partial sill) and \(\phi\) (range parameter).
- nugget
value of the nugget parameter. Defaults to \(0\).
- kappa
value of the smoothness parameter. Defaults to \(0.5\).
- lambda
value of the Box-Cox tranformation parameter. Defaults to \(1\).
- psiR
value of the anisotropy ratio parameter. Defaults to \(1\), corresponding to isotropy.
- psiA
value (in radians) of the anisotropy rotation parameter. Defaults to zero.
- trend
specifies the mean part of the model. The options are:
"cte"
(constant mean),"1st"
(a first order polynomial on the coordinates),"2nd"
(a second order polynomial on the coordinates), or a formula of the type~X
whereX
is a matrix with the covariates (external trend). Defaults to"cte"
.- method.lik
options are
"ML"
for likelihood and"REML"
for restricted likelihood. Defaults to"ML"
.- compute.dists
for internal use with other function. Don't change the default unless you know what you are doing.
- realisations
optional. A vector indicating replication number for each data. For more details see
as.geodata
.
Details
The expression log-likelihood is: $$l(\theta) = -\frac{n}{2} \log (2\pi) - \frac{1}{2} \log |\Sigma| - \frac{1}{2} (y - F\beta)' \Sigma^{-1} (y - F\beta),$$ where \(n\) is the size of the data vector \(y\), \(\beta\) is the mean (vector) parameter with dimention \(p\), \(\Sigma\) is the covariance matrix and \(F\) is the matrix with the values of the covariates (a vector of \(1\)'s if the mean is constant.
The expression restricted log-likelihood is: $$rl(\theta) = -\frac{n-p}{2} \log (2\pi) + \frac{1}{2} \log |F' F| - \frac{1}{2} \log |\Sigma| - \frac{1}{2} \log |F' \Sigma F| - \frac{1}{2} (y - F\beta)' \Sigma^{-1} (y - F\beta).$$
Value
The numerical value of the log-likelihood.
References
Further information on the package geoR can be found at: http://www.leg.ufpr.br/geoR.
See Also
likfit
for likelihood-based parameter estimation.
Examples
# NOT RUN {
loglik.GRF(s100, cov.pars=c(0.8, .25), nugget=0.2)
loglik.GRF(s100, cov.pars=c(0.8, .25), nugget=0.2, met="RML")
## Computing the likelihood of a model fitted by ML
s100.ml <- likfit(s100, ini=c(1, .5))
s100.ml
s100.ml$loglik
loglik.GRF(s100, obj=s100.ml)
## Computing the likelihood of a variogram fitted model
s100.v <- variog(s100, max.dist=1)
s100.vf <- variofit(s100.v, ini=c(1, .5))
s100.vf
loglik.GRF(s100, obj=s100.vf)
# }