model 
{
   height[1:N] ~ spatial.exp(mu[], x[], y[], tau, phi, kappa)
 
   for(i in 1:N) {
     mu[i] <- beta
   }
   
   beta ~ dflat()
   tau ~ dgamma(0.001, 0.001) 
   sigma2 <- 1/tau
   phi ~ dunif(0.001, 0.8)
   phi.inv <- 1/phi
   kappa ~ dunif(0.05,1.95)

   for(j in 1:M) {
      height.pred[j] ~ spatial.unipred(beta, x.pred[j], y.pred[j], height[])
   }

   # Only use joint prediction for small subset of points, due to length of time it takes to run
   for(j in 1:10) { mu.pred[j] <- beta }
   height.pred.multi[1:10] ~ spatial.pred(mu.pred[], x.pred[1:10], y.pred[1:10], height[])   
}