From 9e4f08505cd518567b682d8edb41c35ec88d4ab1 Mon Sep 17 00:00:00 2001
From: Raimon Tolosana-Delgado <tolosa53@fwg206.ad.fz-rossendorf.de>
Date: Wed, 14 Jul 2021 15:42:07 +0200
Subject: [PATCH] gmGeostats 0.10.7.9006

---
 .Rbuildignore                             |   1 +
 DESCRIPTION                               |   2 +-
 NAMESPACE                                 |   8 +-
 NEWS.md                                   |   7 +
 R/accuracy.R                              |  59 ++++-
 R/gmSpatialModel.R                        | 282 +++++++++++++---------
 R/grids.R                                 |   4 +-
 R/gstatCompatibility.R                    |  40 ++-
 README.Rmd                                |  21 +-
 README.md                                 |  50 ++--
 man/figures/README-structural-1.png       | Bin 58262 -> 67070 bytes
 vignettes/gmGeostats.Rmd                  |  20 +-
 vignettes/register_new_layer_datatype.Rmd | 159 ++++++++++++
 13 files changed, 500 insertions(+), 153 deletions(-)
 create mode 100644 vignettes/register_new_layer_datatype.Rmd

diff --git a/.Rbuildignore b/.Rbuildignore
index 19be397..f0a1a18 100644
--- a/.Rbuildignore
+++ b/.Rbuildignore
@@ -13,3 +13,4 @@ svn
 ^cran-comments\.md$
 jurapred
 ^README\.Rmd$
+^.*\.vscode$
diff --git a/DESCRIPTION b/DESCRIPTION
index a2f6fde..3a9b161 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,5 +1,5 @@
 Package: gmGeostats
-Version: 0.10-7.9005
+Version: 0.10-7.9006
 Date: 2020-10-05
 Title: Geostatistics for Compositional Analysis
 Authors@R: c(person(given = "Raimon", 
diff --git a/NAMESPACE b/NAMESPACE
index 9827121..1268eb1 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -99,10 +99,7 @@ S3method(plot,gmEVario)
 S3method(plot,logratioVariogramAnisotropy)
 S3method(plot,swarmPlot)
 S3method(precision,accuracy)
-S3method(predict,LMCAnisCompo)
-S3method(predict,genDiag)
 S3method(predict,gmCgram)
-S3method(predict,gmSpatialModel)
 S3method(print,mask)
 S3method(setMask,DataFrameStack)
 S3method(setMask,GridTopology)
@@ -134,6 +131,7 @@ S3method(variogramModelPlot,gstatVariogram)
 S3method(variogramModelPlot,logratioVariogram)
 S3method(xvErrorMeasures,DataFrameStack)
 S3method(xvErrorMeasures,data.frame)
+S3method(xvErrorMeasures,default)
 export("stackDim<-")
 export(CholeskyDecomposition)
 export(DSpars)
@@ -194,6 +192,9 @@ export(noSpatCorr.test)
 export(noStackDim)
 export(pairsmap)
 export(precision)
+export(predict)
+export(predict.LMCAnisCompo)
+export(predict.genDiag)
 export(pwlrmap)
 export(setCgram)
 export(setGridOrder)
@@ -233,6 +234,7 @@ exportClasses(gmUnconditionalSpatialModel)
 exportClasses(gmValidationStrategy)
 exportMethods(as.gstat)
 exportMethods(logratioVariogram)
+exportMethods(predict)
 exportMethods(stackDim)
 exportMethods(variogram)
 import(RColorBrewer)
diff --git a/NEWS.md b/NEWS.md
index ffb8bde..acbde3e 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,3 +1,10 @@
+# gmGeostats 0.10.7.9006
+
+* new vignette "How to register new layer datatypes", with a howto adapt gmGeostats to deal with your very special data type (with an example for regionalized circular data)
+* (2021-07-06) new option to extract univariate accuracy() from multivariate kriging results
+* NEWS.md and vignettes/gmGeostats.Rmd polished
+* "predict"-methods for objects of class gmSpatialModel now programmed with multiple dispatching, to enable further extensions
+
 # gmGeostats 0.10.7.9005
 
 * (2021-06-30) bugs in xvErrorMeasures() for simulated data corrected
diff --git a/R/accuracy.R b/R/accuracy.R
index 2727592..742265a 100644
--- a/R/accuracy.R
+++ b/R/accuracy.R
@@ -72,12 +72,27 @@ accuracy <- function(x,...) UseMethod("accuracy", x)
 #' c("simulation", "mahalanobis", "flow") for `x` of class [DataFrameStack()].
 #' @param outMahalanobis if TRUE, do not do the final accuracy calculations and return the Mahalanobis
 #' norms of the residuals; if FALSE do the accuracy calculations
+#' @param ivar if `method`="kriging" or "cokriging" you can also specify here one single variable name 
+#' to consider for univariate accuracy; this variable name must exist both in `x` 
+#' (including "pred" and "var" prefixes or suffixes in the column names) and in `observed`;
+#' this might require renaming the columns of these files!
 #' @export
 accuracy.data.frame <- function(x, observed=x$observed, 
                                 prob = seq(from=0, to=1, by=0.05),
-                                method="kriging", outMahalanobis=FALSE, ...){
+                                method="kriging", outMahalanobis=FALSE, 
+                                ivar, ...){
   methods = c("kriging", "cokriging", "simulation")
   mm = methods[pmatch(method, methods)]
+  if(!missing(ivar)){
+    iTrue = grep(ivar, colnames(observed))
+    iPred = intersect(grep(ivar, colnames(x)), grep("pred", colnames(x)))
+    iVar = intersect(grep(ivar, colnames(x)), grep("var", colnames(x)))
+    if(any(sapply(list(iTrue, iPred, iVar), length)!=1))
+      stop("accuracy: univariate case by specifying an `ivar` requires the named variable to occur ONCE in `observed` and once in `x`, here prefixed or suffixed with `pred` and `var` to identify kriging predictions and variances")
+    mm = "kriging"
+    observed = observed[,iTrue]
+    x = x[, c(iPred, iVar)]
+  } 
   if(mm=="kriging"){
     mynorms = xvErrorMeasures(x, observed=observed, output = "Mahalanobis", univariate=TRUE)
     D = 1
@@ -121,11 +136,11 @@ accuracy.data.frame <- function(x, observed=x$observed,
 
 
 #' @describeIn accuracy Compute accuracy and precision
-#' @param vars in multivariate cases, a vector of names of the variables to analyse
+#' @param ivars in multivariate cases, a vector of names of the variables to analyse (or one single variable name)
 #' @method accuracy DataFrameStack
 #' @export
 accuracy.DataFrameStack <- function(x, observed, 
-                                    vars = intersect(colnames(observed), dimnames(x)[[noStackDim(x)]]),
+                                    ivars = intersect(colnames(observed), dimnames(x)[[noStackDim(x)]]),
                                     prob = seq(from=0, to=1, by=0.05),
                                     method = ifelse(length(vars)==1, "simulation", "Mahalanobis"),
                                     outMahalanobis=FALSE, ...){
@@ -146,8 +161,8 @@ accuracy.DataFrameStack <- function(x, observed,
     if(nrow(x)!=length(observed))
       if(nrow(x)!=nrow(observed))
         stop("accuracy: dimensions of x and observed do not match")
-    sims = as.matrix(gmApply(x, FUN=function(xx)xx[,vars]))
-    res = sapply(1:nrow(sims), function(i) oneAcc.sim(sims[i,], observed[i, vars]))
+    sims = as.matrix(gmApply(x, FUN=function(xx)xx[,ivars, drop=FALSE]))
+    res = sapply(1:nrow(sims), function(i) oneAcc.sim(sims[i,], observed[i, ivars, drop=FALSE]))
     aa = outer(res, prob, "<=")
     a = colMeans(aa)
     erg = data.frame(p=prob, accuracy=a)
@@ -157,8 +172,8 @@ accuracy.DataFrameStack <- function(x, observed,
   sim_array = as.array(x)
   permidx = c(ifelse(is.numeric(stackDim(x)),1,names(dimnames(x))[1]),stackDim(x),noStackDim(x)) 
   sim_array = aperm(sim_array, perm = permidx)
-  sim_array = sim_array[,,vars]
-  observed = as.matrix(unclass(observed)[,vars])
+  sim_array = sim_array[,,ivars, drop=FALSE]
+  observed = as.matrix(unclass(observed)[,ivars, drop=FALSE])
   N = dim(sim_array)[1]
   S = dim(sim_array)[stackDim(x)]
   D = dim(sim_array)[noStackDim(x)]
@@ -305,6 +320,36 @@ plot.accuracy <- function(x, xlim=c(0,1), ylim=c(0,1), xaxs="i", yaxs="i", type=
 xvErrorMeasures <- function(x,...) UseMethod("xvErrorMeasures", x)
 
 
+
+#' Cross-validation errror measures
+#' 
+#' Compute one or more error measures from cross-validation output
+#'
+#' @param x a vector containing the predicted values
+#' @param krigVar a vector containing the kriging variances
+#' @param observed a vector containing the true values
+#' @param output  which output do you want? a vector of one or several of  c("ME","MSE","MSDR","Mahalanobis")
+#'
+#' @return
+#' 
+#' @export
+#' @method xvErrorMeasures default
+#' @family accuracy functions
+xvErrorMeasures.default <- function(x, krigVar, observed, output="MSDR1"){
+  if(length(output)>1)
+    return(sapply(output, function(o) xvErrorMeasures(x, krigVar, observed, output=o)))
+  
+  outputs = c("ME","MSE","MSDR","MSDR1","MSDR2","Mahalanobis")
+  output = outputs[pmatch(output, outputs, duplicates.ok = TRUE)]
+  
+  resids = x - observed
+  mynorms = resids^2/krigVar
+  if(output=="ME") return(mean(resids, na.rm=TRUE))
+  if(output=="MSE") return(mean(resids^2, na.rm=TRUE))
+  if(output=="MSDR") return(mean(mynorms, na.rm=TRUE))
+  if(output=="Mahalanobis") return(mynorms)
+}
+
 #' Cross-validation errror measures
 #' 
 #' Compute one or more error measures from cross-validation output
diff --git a/R/gmSpatialModel.R b/R/gmSpatialModel.R
index a2719be..c489ab1 100644
--- a/R/gmSpatialModel.R
+++ b/R/gmSpatialModel.R
@@ -286,10 +286,10 @@ as.gstat.gmSpatialModel <- function(object, ...){
   # data elements
   coords = sp::coordinates(object)
   X = compositions::rmult(object@data, V= gsi.getV(object@data), orig=gsi.orig(object@data))
-  compo = backtransform(X)
   V = gsi.getV(X)
   if(!is.null(V)){
     # compositional case
+    compo = backtransform(X)
     Vinv = t(gsiInv(V))
     prefix = sub("1","",colnames(V)[1])
     if(is.null(prefix) | length(prefix)==0)   prefix = sub("1","",colnames(object@data)[1])
@@ -313,7 +313,16 @@ as.gstat.gmSpatialModel <- function(object, ...){
     return(res)
   }else{
     # non-compositional case
-    
+    prefix = sub("1","",colnames(V)[1])
+    vgLMC <- object@model@structure
+    formulaterm = paste(as.character(object@model@formula), collapse="")
+    beta = object@model@beta
+    if(any(is.infinite(beta))) beta = NULL
+    # neighbourhood
+    ng = object@parameters
+    res = rmult2gstat(coords=coords, data=X, V=V, vgLMC=vgLMC, 
+                    nscore=FALSE, formulaterm = formulaterm, prefix=prefix, beta=beta, 
+                    nmax=ng$nmax, nmin=ng$nmin, omax=ng$omax, maxdist=ng$maxdist, force=ng$force)    
   }
 }
 
@@ -356,7 +365,8 @@ as.gmSpatialModel.gstat = function(object, V=NULL, ...){
 #' @param newdata a collection of locations where a prediction/simulation is desired; this is typically 
 #' a [sp::SpatialPoints()], a data.frame or similar of X-Y(-Z) coordinates; or perhaps for gridded data 
 #' an object of class  [sp::GridTopology()], [sp::SpatialGrid()] or [sp::SpatialPixels()]
-#' @param pars parameters describing the method to use, *encloded in an object of appropriate class* (see below)
+#' @param pars parameters describing the method to use, *enclosed in an object of appropriate class* 
+#' (according to the method; see below)
 #' @param ... further parameters for generic functionality, currently ignored
 #'
 #' @return Depending on the nature of `newdata`, the result will be a data container of the same kind, 
@@ -383,114 +393,168 @@ as.gmSpatialModel.gstat = function(object, V=NULL, ...){
 #' Conversely, to run a multipoint geostatistics algorithm, the first condition is that `object@model` contains a 
 #' training image. Additionally, `pars` must describe the characteristics of the algorithm to use. Currently, only
 #' direct sampling is available: it can be obtained by providing some parameter object created with a call to
-#' [DirectSamplingParameters()]. Currently it is also necessary that `newdata` is a gridded set of locations.  
+#' [DirectSamplingParameters()]. This method requires `newdata` to be on a gridded set of locations (acceptable
+#' object classes are `sp::gridTopology`, `sp::SpatialGrid`, `sp::SpatialPixels`, `sp::SpatialPoints` or `data.frame`,
+#' for the last two a forced conversion to a grid will be attempted).  
+#' @family gmSpatialModel
+#' @name predict_gmSpatialModel
+NULL
+
+#' @rdname predict_gmSpatialModel
 #' @export
-#' @family gmSpatialModel 
-predict.gmSpatialModel <-  function(object, newdata=NULL, pars=object@parameters, ...){
-  # deal with (co)kriging
-  if(is(pars, "gmNeighbourhoodSpecification")){
-    cat("starting cokriging \n")
-    object@parameters = pars
-    return(predict(as.gstat(object), newdata=newdata, ...))
-  }
-  # probe on simulation methods
-  if(is(pars, "gmDirectSamplingParameters")){
-    cat("starting direct sampling \n")
-    # extract training image
-    gt.ti = sp::getGridTopology(object@model)
-    dt.ti = as(object@model,"SpatialGridDataFrame")@data
-    # extract newdata mask
-    mask = getMask(newdata)
-    # fuse newdata, conditioning data and mask
-    if(is.null(newdata)){
-      gt.nw = NULL # object@grid
-      newdata = sp::SpatialPixelsDataFrame(points = as(object, "SpatialPoints"), data=object@data)  
-                    # tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
-    }else if(is(newdata, "GridTopology")){
-      gt.nw = newdata
-      newdata = sp::SpatialPixelsDataFrame(points = as(object, "SpatialPoints"), data=object@data, 
-                                       tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
-    }else if(is(newdata, "SpatialGrid")){
-      gt.nw = sp::getGridTopology(newdata)
-      newdata = sp::SpatialPixelsDataFrame(points = as(object, "SpatialPoints"), data=object@data, 
-                                       tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
-    }else if(is(newdata, "SpatialPixels")){
-      gt.nw = sp::getGridTopology(newdata)
-      cc = rbind(sp::coordinates(newdata), sp::coordinates(object))
-      ### WARNING: This is how it works!! COrrect from SpatialPoints and data.frame
-      aux = matrix(NA, nrow=nrow(sp::coordinates(newdata)), ncol=ncol(object@data))
-      colnames(aux) = colnames(object@data)
-      dt = rbind( aux , object@data)
-      newdata = sp::SpatialPixelsDataFrame(points = sp::SpatialPoints(cc), data=dt, 
-                                    tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
-    }else if(is(newdata, "SpatialPoints")){
-      gt.nw = object@model@grid
-      cc = rbind(sp::coordinates(object), sp::coordinates(newdata))
-      ### WARNING: NOT YET TESTED WHAT HAPPENS WITH DUPLICATE LOCATIONS!!! 
-      aux = matrix(NA, nrow=nrow(sp::coordinates(newdata)), ncol=ncol(object@data))
-      colnames(aux) = colnames(object@data)
-      dt = rbind( object@data, aux )
-      newdata = sp::SpatialPixelsDataFrame(points = sp::SpatialPoints(cc), data=dt,
-                     tolerance = sqrt(sum(gt.nw@cellsize^2))/2) # , grid=gt.nw)
-    }else if(is.data.frame(newdata)){
-      gt.nw = NULL # object@grid
-      cc = rbind(sp::coordinates(object), newdata[,1:2])
-      if( all( colnames(object@data) %in% colnames(newdata) ) ){
-        aux = as.matrix(newdata[,colnames(object@data)])
-      }else{
-        aux = matrix(NA, nrow=nrow(sp::coordinates(newdata)), ncol=ncol(object@data))
-      }
-      colnames(aux) = colnames(object@data)
-      ### WARNING: NOT YET TESTED WHAT HAPPENS WITH DUPLICATE LOCATIONS!!! 
-      dt = rbind( object@data, aux )
-      newdata = sp::SpatialPixelsDataFrame(points = sp::SpatialPoints(cc), data=dt)
-                                       # tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
-    }
-    if(is.null(gt.nw)) gt.nw = sp::getGridTopology(newdata)
-    dt.nw = as(newdata,"SpatialGridDataFrame")@data
-    dt.ti = as(object@model,"SpatialGridDataFrame")@data
-    if(all(gt.nw@cellsize!=gt.ti@cellsize)) 
-      stop("predict.gmSpatialModel with gmDirectSamplingParameters: inferred grid topologies for newdata, conditioning data and model do not coincide")
-    if(is.null(mask)) mask = rep(TRUE, nrow(dt.nw))
-    #erg = gsi.DS4CoDa(n=pars$patternSize, f=pars$scanFraction, t=pars$gof, n_realiz=pars$nsim, 
-    #            nx_TI=gt.ti@cells.dim[1], ny_TI=gt.ti@cells.dim[2], 
-    #            nx_SimGrid= gt.nw@cells.dim[1], ny_SimGrid=gt.nw@cells.dim[2],
-    #            TI_input=as.matrix(dt.ti),
-    #            SimGrid_input=as.matrix(dt.nw), 
-    #            V = "I", W=gsi.getV(object@data), 
-    #            ivars_TI = colnames(dt.ti), 
-    #            SimGrid_mask = mask, 
-    #            invertMask = FALSE)
-    erg = gsi.DS(n=pars$patternSize, f=pars$scanFraction, t=pars$gof, n_realiz=pars$nsim, 
-                dim_TI=gt.ti@cells.dim, dim_SimGrid=gt.nw@cells.dim,   
-                TI_input=as.matrix(dt.ti), SimGrid_input=as.matrix(dt.nw),
-                ivars_TI = colnames(dt.ti), 
-                SimGrid_mask = mask, 
-                invertMask = FALSE)
-    erg = gmApply(erg, FUN=ilrInv, V=gsi.getV(object@data), orig=gsi.orig(object@data))
-    erg = sp::SpatialGridDataFrame(grid = gt.nw, data=erg)
-    return(erg)
-  }else if(is(pars, "gmSequentialSimulation")){
-    cat("starting SGs \n")
-    object@parameters = pars$ng
-    erg = predict(as.gstat(object), newdata=newdata, nsim=pars$nsim, debug.level=pars$debug.level, ...)
-    Dg = ncol(object@coords)
-    erg = DataFrameStack(erg[,-(1:Dg)], 
-            dimnames=list(
-                loc=1:nrow(erg), sim=1:pars$nsim,
-                var=colnames(object@data)
-            ),
-          stackDim="sim")
-    attr(erg, "coords") = newdata
-    return(erg)
-  }else if(is(pars, "gmTurningBands")){
-    cat("starting turning bands \n")
-  }else if(is(pars, "gmCholeskyDecomposition")){
-    cat("starting Choleski decomposition \n")
-  }
-  
-}
+setGeneric("predict", function(object, newdata, pars, ...){
+  standardGeneric("predict")
+})
+
+
+#' @rdname predict_gmSpatialModel
+#' @export
+setMethod("predict",signature(object="gmSpatialModel", newdata="ANY", pars="missing"),
+          function(object, newdata, pars, ...){
+            if(is.null(object$pars)) object$pars = KrigingNeighbourhood()
+            predict(object, newdata, pars = object$pars, ...)
+          }
+)
+
 
+#' @rdname predict_gmSpatialModel
+#' @export
+setMethod("predict",signature(object="gmSpatialModel", newdata="ANY", pars="gmNeighbourhoodSpecification"),
+          function(object, newdata, pars, ...){
+            cat("starting cokriging \n")
+            object@parameters = pars
+            out = gstat:::predict.gstat(as.gstat(object), newdata=newdata)
+            return(out)
+          }
+)
+
+
+
+#' @rdname predict_gmSpatialModel
+#' @export
+setMethod("predict",signature(object="gmSpatialModel", newdata="ANY", pars="gmTurningBands"),
+          function(object, newdata, pars, ...){
+            stop("Turning Bands method not yet interfaced here; use")
+            cat("starting turning bands \n")
+          }
+)
+
+
+#' @rdname predict_gmSpatialModel
+#' @export
+setMethod("predict",signature(object="gmSpatialModel", newdata="ANY", pars="gmCholeskyDecomposition"),
+          function(object, newdata, pars, ...){
+            stop("Choleski decomposition method not yet implemented")
+            cat("starting Choleski decomposition \n")
+          }
+)
+
+
+
+
+#' @rdname predict_gmSpatialModel
+#' @export
+setMethod("predict",signature(object="gmSpatialModel", newdata="ANY", pars="gmSequentialSimulation"),
+          function(object, newdata, pars, ...){
+            cat("starting SGs \n")
+            object@parameters = pars$ng
+            erg = predict(as.gstat(object), newdata=newdata, nsim=pars$nsim, debug.level=pars$debug.level, ...)
+            Dg = ncol(object@coords)
+            erg = DataFrameStack(erg[,-(1:Dg)], 
+                                 dimnames=list(
+                                   loc=1:nrow(erg), sim=1:pars$nsim,
+                                   var=colnames(object@data)
+                                 ),
+                                 stackDim="sim")
+            attr(erg, "coords") = newdata
+            return(erg)
+          }
+)
+
+
+
+#' @rdname predict_gmSpatialModel
+#' @export
+setMethod("predict",signature(object="gmSpatialModel", newdata="ANY", pars="gmDirectSamplingParameters"),
+          function(object, newdata, pars, ...){
+            
+            cat("starting direct sampling \n")
+            # extract training image
+            gt.ti = sp::getGridTopology(object@model)
+            dt.ti = as(object@model,"SpatialGridDataFrame")@data
+            # extract newdata mask
+            mask = getMask(newdata)
+            # fuse newdata, conditioning data and mask
+            if(is.null(newdata)){
+              gt.nw = NULL # object@grid
+              newdata = sp::SpatialPixelsDataFrame(points = as(object, "SpatialPoints"), data=object@data)  
+              # tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
+            }else if(is(newdata, "GridTopology")){
+              gt.nw = newdata
+              newdata = sp::SpatialPixelsDataFrame(points = as(object, "SpatialPoints"), data=object@data, 
+                                                   tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
+            }else if(is(newdata, "SpatialGrid")){
+              gt.nw = sp::getGridTopology(newdata)
+              newdata = sp::SpatialPixelsDataFrame(points = as(object, "SpatialPoints"), data=object@data, 
+                                                   tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
+            }else if(is(newdata, "SpatialPixels")){
+              gt.nw = sp::getGridTopology(newdata)
+              cc = rbind(sp::coordinates(newdata), sp::coordinates(object))
+              ### WARNING: This is how it works!! COrrect from SpatialPoints and data.frame
+              aux = matrix(NA, nrow=nrow(sp::coordinates(newdata)), ncol=ncol(object@data))
+              colnames(aux) = colnames(object@data)
+              dt = rbind( aux , object@data)
+              newdata = sp::SpatialPixelsDataFrame(points = sp::SpatialPoints(cc), data=dt, 
+                                                   tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
+            }else if(is(newdata, "SpatialPoints")){
+              gt.nw = object@model@grid
+              cc = rbind(sp::coordinates(object), sp::coordinates(newdata))
+              ### WARNING: NOT YET TESTED WHAT HAPPENS WITH DUPLICATE LOCATIONS!!! 
+              aux = matrix(NA, nrow=nrow(sp::coordinates(newdata)), ncol=ncol(object@data))
+              colnames(aux) = colnames(object@data)
+              dt = rbind( object@data, aux )
+              newdata = sp::SpatialPixelsDataFrame(points = sp::SpatialPoints(cc), data=dt,
+                                                   tolerance = sqrt(sum(gt.nw@cellsize^2))/2) # , grid=gt.nw)
+            }else if(is.data.frame(newdata)){
+              gt.nw = NULL # object@grid
+              cc = rbind(sp::coordinates(object), newdata[,1:2])
+              if( all( colnames(object@data) %in% colnames(newdata) ) ){
+                aux = as.matrix(newdata[,colnames(object@data)])
+              }else{
+                aux = matrix(NA, nrow=nrow(sp::coordinates(newdata)), ncol=ncol(object@data))
+              }
+              colnames(aux) = colnames(object@data)
+              ### WARNING: NOT YET TESTED WHAT HAPPENS WITH DUPLICATE LOCATIONS!!! 
+              dt = rbind( object@data, aux )
+              newdata = sp::SpatialPixelsDataFrame(points = sp::SpatialPoints(cc), data=dt)
+              # tolerance = sqrt(sum(gt.nw@cellsize^2))/2 , grid=gt.nw)
+            }
+            if(is.null(gt.nw)) gt.nw = sp::getGridTopology(newdata)
+            dt.nw = as(newdata,"SpatialGridDataFrame")@data
+            dt.ti = as(object@model,"SpatialGridDataFrame")@data
+            if(all(gt.nw@cellsize!=gt.ti@cellsize)) 
+              stop("predict.gmSpatialModel with gmDirectSamplingParameters: inferred grid topologies for newdata, conditioning data and model do not coincide")
+            if(is.null(mask)) mask = rep(TRUE, nrow(dt.nw))
+            #erg = gsi.DS4CoDa(n=pars$patternSize, f=pars$scanFraction, t=pars$gof, n_realiz=pars$nsim, 
+            #            nx_TI=gt.ti@cells.dim[1], ny_TI=gt.ti@cells.dim[2], 
+            #            nx_SimGrid= gt.nw@cells.dim[1], ny_SimGrid=gt.nw@cells.dim[2],
+            #            TI_input=as.matrix(dt.ti),
+            #            SimGrid_input=as.matrix(dt.nw), 
+            #            V = "I", W=gsi.getV(object@data), 
+            #            ivars_TI = colnames(dt.ti), 
+            #            SimGrid_mask = mask, 
+            #            invertMask = FALSE)
+            erg = gsi.DS(n=pars$patternSize, f=pars$scanFraction, t=pars$gof, n_realiz=pars$nsim, 
+                         dim_TI=gt.ti@cells.dim, dim_SimGrid=gt.nw@cells.dim,   
+                         TI_input=as.matrix(dt.ti), SimGrid_input=as.matrix(dt.nw),
+                         ivars_TI = colnames(dt.ti), 
+                         SimGrid_mask = mask, 
+                         invertMask = FALSE)
+            erg = gmApply(erg, FUN=ilrInv, V=gsi.getV(object@data), orig=gsi.orig(object@data))
+            erg = sp::SpatialGridDataFrame(grid = gt.nw, data=erg)
+            return(erg)
+          }
+)
 
 
 #' @describeIn gmSpatialModel Compute a variogram, see [variogram_gmSpatialModel()] for details
diff --git a/R/grids.R b/R/grids.R
index b1d396e..8651541 100644
--- a/R/grids.R
+++ b/R/grids.R
@@ -267,7 +267,7 @@ gsi.gstatCokriging2rmult.data.frame = function(COKresult, # output of predict.gs
   D = length(prednames)
   noms = sub(".pred", "", prednames)
   
-  prediccions = COKresult[,prednames, drop=FALSE]
+  prediccions = rmult(COKresult[,prednames, drop=FALSE])
   if(nscore){
     ## space to back-transform the predictions
     #if(is.null(gg))stop("To apply a nscore backtransformation, the gstat object must be provided!")
@@ -304,7 +304,7 @@ gsi.gstatCokriging2rmult.data.frame = function(COKresult, # output of predict.gs
     }
     attr(rg,"krigVar") = cvmat
   }
-  class(rg) = c("spatialGridRmult","rmult","data.frame")
+  class(rg) = c("spatialGridRmult","rmult")
   return(rg)
 }
 
diff --git a/R/gstatCompatibility.R b/R/gstatCompatibility.R
index 16f7562..8b4e981 100644
--- a/R/gstatCompatibility.R
+++ b/R/gstatCompatibility.R
@@ -114,7 +114,7 @@ compo2gstatLR = function(coords, compo, V=ilrBase(compo),
   prefix = o$prefix
   V = o$V
   # compute data (in lrs or in normal scores), set variable names
-  Zlr = compositions::ilr(compo, V=V)  
+  Zlr = compositions::idt(compo, V=V)  
   if(nscore){
     source("nscore.R") # load the nscore.R functions
     prefix= paste("NS",prefix,sep="")
@@ -145,6 +145,44 @@ compo2gstatLR = function(coords, compo, V=ilrBase(compo),
   return(gg)
 }
 
+## version for rmult
+rmult2gstat = function(coords, data, V="cdt", 
+                         vgLMC=NULL, nscore=FALSE, 
+                         formulaterm = "~1", prefix=NULL, ...){
+  
+  P = ncol(data)
+  if(nscore){
+    source("nscore.R") # load the nscore.R functions
+    prefix= paste("NS",prefix,sep="")
+    Z = sapply(1:P, function(i){
+      rs = nscore(data[,i])
+      aux = rs$nscore
+      attr(aux,"trn.table") = rs$trn.table  # this ensures that the backtransformation is stored in the object
+      return(data.frame(aux))
+    })
+    Z = as.data.frame(Z)
+  }else{
+    Z = data
+  }
+  if(is.null(colnames(Z))) colnames(Z) = paste(prefix, 1:P, sep="")
+  # create gstat object
+  spatdescr = paste("~",c(paste(colnames(coords),collapse=" + ")), sep="")
+  gg = NULL
+  for(i in 1:P){
+    id = colnames(Z)[i]
+    frm = paste(id, formulaterm, sep="")
+    gg = gstat::gstat(gg, id=id, formula = stats::as.formula(frm), locations=stats::as.formula(spatdescr), data=data.frame(coords, Z), ...)
+  }
+  # if a logratio LMC was provided, convert it to gstat variogramModelList 
+  #     and attach it
+  if(!is.null(vgLMC) & !nscore){
+    # space for a future conversion of variation-variogram models to gstat-LR-variograms
+    gg$model = as.variogramModel(vgLMC, prefix=prefix)
+  }
+  # return
+  return(gg)
+}
+
 
 
 getGstatData = function(gg # gstat object
diff --git a/README.Rmd b/README.Rmd
index 7054ff3..9a5ccfe 100644
--- a/README.Rmd
+++ b/README.Rmd
@@ -36,7 +36,7 @@ install.packages("gmGeostats")
 Read the package vignette for an extended scheme of the package functionality. The fundamental steps are:
 
 ```{r example}
-## load the package and its dependencies
+## load the package (NOTE: do not load "compositions" or "gstat" afterwards!)
 library(gmGeostats)
 
 ## read your data, identify coordinates and sets of variables
@@ -70,16 +70,25 @@ vm = gstat::vgm(model="Sph", range=25, nugget=1, psill=1)
 gsm.f = fit_lmc(v = vge, g = gsm, model = vm)
 
 ## plot
-variogramModelPlot(vge, model = gsm.f)
+variogramModelPlot(vge, model = gsm.f, col="red")
 ```
+The resulting variogram model (`gsm.f$model` in case of a "gstat" object) can the be appended to the 
+spatial model, with
+```
+gsm = make.gmCompositionalGaussianSpatialModel(
+  data = Zc, coords = X, V = "alr", formula = ~1,
+  model = gsm.f$model
+)
+```
+Other empirical structural functions (e.g. logratio variograms from package "compositions") and their theoretical counterparts (e.g. "CompLinModCoReg" objects from "compositions" or "LMCAnisCompo" from "gmGeostats") can also be estimated resp. fitted and given to the argument `model` of this call to  `make.gmCompositionalGaussianSpatialModel`. Other additional arguments are the mean value in case of simple (co)kriging, or descriptors of the local neighbourhood (see `?make.gmCompositionalGaussianSpatialModel` for more information), both using the same parameter names as in `?gstat::gstat` for ease of use.
 
-This model can then be validated, interpolated and/or simulated. The workflow for each of these tasks is always:
+The resulting geostatistical model (including conditioning data and structural model) can then be validated, interpolated and/or simulated. The workflow for each of these tasks is always:
 
 
-1.- define some method parameters with a tailored function, e.g. `LeaveOneOut()` for validation, `KrigingNeighbourhood()` for cokriging or `SequentialSimulation()` for sequential Gaussian Simulation
+1.- define some method parameters with a tailored function, e.g. `LeaveOneOut()` for validation, `KrigingNeighbourhood()` for cokriging (the neighbourgood can also be appended to `make.*SpatialModel()`-calls) or `SequentialSimulation()` for sequential Gaussian Simulation
 
-2.- if desired, define some new locations where to interpolate or simulate, using `expand.grid()` or `sp::GridTopology()` or similar
+2.- if desired, define some new locations where to interpolate or simulate, using `expand.grid()`, `sp::GridTopology()` or alternatives from other packages
 
-3.- call an appropriate function, specifying the model, potential new data, and the parameters created in the preceding steps; e.g. `validate(model, pars)` for validation, or `predict(model, newdata, pars)` for interpolation or simulation
+3.- call an appropriate analysis function, specifying the model, potential new data, and the parameters created in the preceding steps; e.g. `validate(model, pars)` for validation, or `predict(model, newdata, pars)` for interpolation or simulation
 
 More information can be found in the package vignette.
\ No newline at end of file
diff --git a/README.md b/README.md
index 7d8eb2d..88d5331 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,7 @@ Read the package vignette for an extended scheme of the package
 functionality. The fundamental steps are:
 
 ``` r
-## load the package and its dependencies
+## load the package (NOTE: do not load "compositions" or "gstat" afterwards!)
 library(gmGeostats)
 #> Welcome to 'gmGeostats', a package for multivariate geostatistical analysis.
 #>  Note: use 'fit_lmc' instead of fit.lmc
@@ -81,24 +81,46 @@ vm = gstat::vgm(model="Sph", range=25, nugget=1, psill=1)
 gsm.f = fit_lmc(v = vge, g = gsm, model = vm)
 
 ## plot
-variogramModelPlot(vge, model = gsm.f)
+variogramModelPlot(vge, model = gsm.f, col="red")
 ```
 
-<img src="man/figures/README-structural-1.png" width="100%" />
-
-This model can then be validated, interpolated and/or simulated. The
-workflow for each of these tasks is always:
-
-1.- define some method parameters with a tailored function, e.g.
-`LeaveOneOut()` for validation, `KrigingNeighbourhood()` for cokriging
-or `SequentialSimulation()` for sequential Gaussian Simulation
+<img src="man/figures/README-structural-1.png" width="100%" /> The
+resulting variogram model (`gsm.f$model` in case of a “gstat” object)
+can the be appended to the spatial model, with
+
+    gsm = make.gmCompositionalGaussianSpatialModel(
+      data = Zc, coords = X, V = "alr", formula = ~1,
+      model = gsm.f$model
+    )
+
+Other empirical structural functions (e.g. logratio variograms from
+package “compositions”) and their theoretical counterparts
+(e.g. “CompLinModCoReg” objects from “compositions” or “LMCAnisCompo”
+from “gmGeostats”) can also be estimated resp. fitted and given to the
+argument `model` of this call to
+`make.gmCompositionalGaussianSpatialModel`. Other additional arguments
+are the mean value in case of simple (co)kriging, or descriptors of the
+local neighbourhood (see `?make.gmCompositionalGaussianSpatialModel` for
+more information), both using the same parameter names as in
+`?gstat::gstat` for ease of use.
+
+The resulting geostatistical model (including conditioning data and
+structural model) can then be validated, interpolated and/or simulated.
+The workflow for each of these tasks is always:
+
+1.- define some method parameters with a tailored function,
+e.g. `LeaveOneOut()` for validation, `KrigingNeighbourhood()` for
+cokriging (the neighbourgood can also be appended to
+`make.*SpatialModel()`-calls) or `SequentialSimulation()` for sequential
+Gaussian Simulation
 
 2.- if desired, define some new locations where to interpolate or
-simulate, using `expand.grid()` or `sp::GridTopology()` or similar
+simulate, using `expand.grid()`, `sp::GridTopology()` or alternatives
+from other packages
 
-3.- call an appropriate function, specifying the model, potential new
-data, and the parameters created in the preceding steps; e.g.
-`validate(model, pars)` for validation, or `predict(model, newdata,
+3.- call an appropriate analysis function, specifying the model,
+potential new data, and the parameters created in the preceding steps;
+e.g. `validate(model, pars)` for validation, or `predict(model, newdata,
 pars)` for interpolation or simulation
 
 More information can be found in the package vignette.
diff --git a/man/figures/README-structural-1.png b/man/figures/README-structural-1.png
index 834c1310700442142e8495bb62c6a2627021a5ed..bdf6d08d04195495b4e4cea749bccbff316069f7 100644
GIT binary patch
literal 67070
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
MysF#>lu5|{0JnpfMF0Q*

literal 58262
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
EF9xz3Gynhq

diff --git a/vignettes/gmGeostats.Rmd b/vignettes/gmGeostats.Rmd
index 03e74d4..fef86b6 100644
--- a/vignettes/gmGeostats.Rmd
+++ b/vignettes/gmGeostats.Rmd
@@ -17,7 +17,7 @@ knitr::opts_chunk$set(
 
 ## The basics
 
-"gmGeostats" is a package for multivariate geostatistics, focusing in the usage of data from restricted sampling spaces. Such data include positive data, compositional data, distributional data and the like. Most of the times, the geostatistical analysis of such data includes three steps:
+"gmGeostats" is a package for multivariate geostatistics, focusing in the usage of data from multivariate restricted sampling spaces. Such data include positive data, compositional data, distributional data and the like. Most of the times, the geostatistical analysis of such data includes three steps:
 
 1. express your data as some vectors of real values, through a mapping. Such mappings can be isomorphisms (for Euclidean spaces) or embeddings (for regular manifolds)
 2. analyse the resulting multivariate data with vectorial methods (i.e. using cross-variograms, cokriging, cosimulation or distance based methods modified in such a way that they are rotation-invariant resp. affine equivariant)
@@ -27,7 +27,7 @@ The package is loaded, as usual with
 ```{r setup}
 library(gmGeostats)
 ```
-and it fundamentally depends on packages "compositions", "gstat" and "sp". Other dependencies are more instrumental and less fundamental.
+and it fundamentally depends on packages "compositions", "gstat" and "sp". Other dependencies are more instrumental and less fundamental. NOTE: if you separately need "compositions" or "gstat", load these packages first, then load "gmGeostats". This will ensure that the overloaded functions work properly for all three packages. Alternatively, use fully qualified names (e.g. `pkg::foo()`).  
 
 This vignette very briefly presents the steps to follow in several analysis and modelling routes, illustrated with the case of compositional data. No explanations, theory or discussion is included.
 
@@ -38,15 +38,15 @@ This vignette very briefly presents the steps to follow in several analysis and
 
 The data can be visually inspected with scatterplots, in raw representation (`plot()`, `pairs()`), in ternary diagrams (`compositions::plot.acomp()`), and in scatterplots of logratio transformed data (use the transformations `pwlr()`, `alr()`, `clr()` or `ilr()` from package "compositions", then `pairs()`). Function `pairs()` can be given panel functions such as e.g. `vp.lrdensityplot()`,  `vp.kde2dplot()` or `vp.lrboxplot()` resp. for creating histograms of pairwise logratios, 2D kernel density maps on the scatterplots or boxplots of the pairwise logratios. Package "compositions" provides the class "acomp" to directly deal with the right representation in the several methods. 
 
-Principal component analysis is also a strong help. For this, you need an isometry (not just an isomorphism). Transformation `clr()` is the best for this, and is actually automatically used when you do `princomp(acomp(YOURDATA))`. "gmGeostats" provides generalised diagonalisation methods, see `?genDiag` for details.
+Principal component analysis is also a strong help. For this, you need an isometry (not just an isomorphism). Transformation `clr()` is the best for this, and is actually automatically used when you do `princomp(acomp(YOURDATA))`. "gmGeostats" provides generalised diagonalisation methods to account for the spatial dependence, see `?genDiag` for details.
 
 ### Spatial analysis
 
-Create your spatial objects by connecting the spatial coordinates to the multivariate observations via the functions `sp:SpatialPointsDataFrame()` or better the "gmGeostats" functions `make.gmMultivariateGaussianSpatialModel()` for multivariate data and `make.gmCompositionalGaussianSpatialModel()` for compositional data. This produces objects of spatial data container class "gmSpatialModel", that are necessary for the rest of the analysis and modelling.
+Create your spatial objects by connecting the spatial coordinates to the multivariate observations via the functions `sp:SpatialPointsDataFrame()` or better the "gmGeostats" functions `make.gmMultivariateGaussianSpatialModel()` for multivariate data and `make.gmCompositionalGaussianSpatialModel()` for compositional data. The functions `make.gm******SpatialModel()` produces objects of spatial data container class "gmSpatialModel", that are necessary for the rest of the analysis and modelling.
 
 Swath plots are available with command `swath()`. If you give it an "acomp" object you will obtain a matrix of logratio swath plots. Otherwise you will get an set of swath plots, one for each variable. Function `pairsmap()` works similarly, but produces bubble maps (you can control size and color of the symbols).
 
-Empirical variograms can be obtained with function `variogram()` out of the spatial data container. You can also use the function `logratioVariogram()` for compositional data. Both accept anisotropy. Their output can be plotted with `plot()`, which has specific methods for compositional and non-compositional data. In the case of anisotropic data, you can also use `image()` to visualise the variogram maps.
+Empirical variograms can be obtained with function `variogram()` out of the spatial data container. You can also use the function `logratioVariogram()` for compositional data. Both accept anisotropy. Their output can be plotted with `plot()`, which has specific methods for compositional and non-compositional data. In the case of anisotropic data, you can also use a method of `image()` to visualise the variogram maps, see `?image.logratioVariogramAnisotropy` for details.
 
 Finally you can also check for the strength of the spatial dependence with the test `noSpatCorr.test()`. This is a permutations test, which null hypothesis is that the data do not exhibit spatial autocorrelation.
 
@@ -60,15 +60,15 @@ Plotting of LMCs against their empirical variograms can be done with function `v
 
 ### Variogram and neighbourhood validation
 
-Neighbourhood descriptions are created with function `KrigingNeighbourhood()`. Kriging neighbourhoods and LMC variogram models and can be attached to the "gmSpatialModel" objects at the moment of creation via `make.*()` functions, using arguments `ng` and `model`. 
+Neighbourhood descriptions are created with function `KrigingNeighbourhood()`. Kriging neighbourhoods and LMC variogram models and can be attached to the "gmSpatialModel" objects at the moment of creation via `make.gm*()` functions, using arguments `ng` and `model` (this last one strictly requiring you to also specify the `formula` argument). 
 
-Validation of the model or of the neighbourhood can then be obtained with the function `validate()`. This requires an `object` (the complete "gmSpatialModel") and a `strategy`. Validation strategies are small S3-objects describing what will exactly be done in the validation. They can be quickly defined by means of configuration functions as `LeaveOneOut()` or `NfoldCrossValidation()`. The call to `validate()` will provide some output that can be evaluated with functions such as `xvErrorMeasures()`
+Validation of the model or of the neighbourhood can then be obtained with the function `validate()`. This requires an `object` (the complete "gmSpatialModel") and a `strategy`. Validation strategies are small S3-objects describing what will exactly be done in the validation. They can be quickly defined by means of configuration functions as `LeaveOneOut()` or `NfoldCrossValidation()`. The call to `validate()` will provide some output that can be evaluated with functions such as `xvErrorMeasures()`, `accuracy()` or `prediction()`.
 
 
 
 ### Cokriging and mapping
 
-This way of working is common to the package. You always build a model (with a `make.*()` function), define a method parameter object (created with a specific, verbose, helper function), and feed both to a common umbrella function describing what do you want to do: `validate()` or `predict()`, which also requires an argument `newdata` as is standard in R. The output can then be postprocessed by specific functions. 
+This way of working is common to the package. You always build a model (with a `make.*()` function), define a method parameter object (created with a specific, verbose, helper function), and feed both to a common umbrella function describing what do you want to do: `validate()` or `predict()`, the second one also requires an argument `newdata` as is standard in R. The output can then be postprocessed by specific functions. 
 
 The method parameter for cokriging is actually the neighbourhood. So, you can give `predict()` an object resulting from  `KrigingNeighbourhood()`, otherwise it will take the standard one stored in the "gmSpatialModel", or produce a global neighbourhood cokriging if no neighbourhood description is found.
 
@@ -89,13 +89,13 @@ Cosimulation method parameters are created by calls to one of the functions `Seq
 
 ### Postprocessing
 
-Multivariate cosimulation output can be seen analogue to a 3-dimensional array, with one dimension running along the simulated locations, one dimension along the realisations and one dimension along the variables. This structure is captured in "gmGeostats" with an object of class "DataFrameStack" (extending "data.frame" and mimicking arrays). Point-wise, simulation-wise and variable-wise ransformations on this array can be computed with function `gmApply()`, a wrapper on `base::apply()` allowing for an easier management of the dimensions of the simulation stack. Maps can also be produced by function `image_cokriged()`.
+Multivariate cosimulation output can be seen analogue to a 3-dimensional array, with one dimension running along the simulated locations, one dimension along the realisations and one dimension along the variables. This structure is captured in "gmGeostats" with an object of class "DataFrameStack" (extending "data.frame" and mimicking arrays). Point-wise, simulation-wise and variable-wise transformations on this array can be computed with function `gmApply()`, a wrapper on `base::apply()` allowing for an easier management of the dimensions of the simulation stack. Maps can also be produced by function `image_cokriged()`.
 
 
 
 ## Multipoint simulation
 
-Multipoint cosimulation is available with the same strategy than Gaussian based simulation. One needs first to define a "gmSpatialModel" containing the conditioning data (the original data) and the stochastic model (the training image). Second, a simulation grid must be created, and provided to `predict()` as the `newdata` argument. And third, we must provide some method parameters defining the simulation algorithm to use: currently, only direct sampling is available, and its parameters can be obtained calling `DSpars()`.
+Multipoint cosimulation is available with the same strategy than Gaussian based simulation. One needs first to define a "gmSpatialModel" containing the conditioning data (the original data) and the stochastic model (the training image). Second, a simulation grid must be created, and provided to `predict()` as the `newdata` argument. And third, we must provide some method parameters defining the simulation algorithm to use: currently, only direct sampling is available, and its parameters can be constructed calling `DSpars()`.
 
 Training images are currently objects of class "SpatialPixelsDataFrame" or "SpatialGridDataFrame", from package "sp". The conditioning data will be migrated to the simulation grid internally; the grid topologies for simulation and training image will be checked for consistency.
 
diff --git a/vignettes/register_new_layer_datatype.Rmd b/vignettes/register_new_layer_datatype.Rmd
new file mode 100644
index 0000000..8b4c0a9
--- /dev/null
+++ b/vignettes/register_new_layer_datatype.Rmd
@@ -0,0 +1,159 @@
+---
+title: "How to register new layer datatypes"
+output: rmarkdown::html_vignette
+vignette: >
+  %\VignetteIndexEntry{How to register new layer datatypes}
+  %\VignetteEngine{knitr::rmarkdown}
+  %\VignetteEncoding{UTF-8}
+---
+
+```{r, include = FALSE}
+knitr::opts_chunk$set(
+  collapse = TRUE,
+  comment = "#>"
+)
+```
+
+## Purpose of this vignette
+
+This vignette explains how to tweak "gmGeostasts" to declare new datatypes for data layers (e.g. for data with special characteristics besides compositional data), and associate creation and prediction function to it. If you are looking for a general introduction to the package, see [this other vignette](../doc/gmGeostats.html)
+
+```{r setup}
+library(compositions)
+library(gstat)
+library(gmGeostats)
+library(RandomFields)
+library(magrittr)
+```
+
+
+
+## Statistical scale and representation functions
+
+The statistical scale of a data layer is a subjective assessment of the way in which pairs of values of that layer need to be compared. Classical statistical scales after Stevens (XXXX) are the nominal (two values are either equal or they are different), ordinal (two values are either equal, or one is larger than the other), interval (values can be meaningfully compared by the mathematical operation of subtraction) and ratio (values are strictly positive and can be meaningfully compared by the operation of quotient). Other scales have been introduced, such as several compositional scales for data about the amounts and proportions of components forming a system (Aitchison, 1986; van den Boogaart and Tolosana-Delgado, 2013; van den Boogaart, Tolosana-Delgado and Bren, XXXX); for circular and spherical data; for distributional data; for positive definite matrices; etc.
+
+A scale $s$ is then typically described by a way of computing the difference between two values $d_s(\cdot, \cdot)$, coupled with a description of the set $\mathcal{E}_s$ of values of that layer that are at all possible. In the case of circular data, the set of possible values is $[-\pi, \pi)$, and given the periodicity condition, the way to compare two values $a$ and $b$ is $(a-b)$ modulo $\pi$. 
+
+To ease the computation with observations $x$ on such layers we want to define a transformation $R(x)$ that delivers a *representation* $z=R(x)$ of the data, such that: (i) $R^{-1}(z)$ exists for all values of the linear span of $R(x)$, (ii) it can be ensured that $R^{-1}(z)\in \mathcal{E}_s$, *and* (iii) that $d_s(x_1, x_2)\approx R(x_1)-R(x_2)$. A classical representation strategy of circular data is through an embedding into $R^2$ the bivariate real space, by means of the transformation
+$$
+R(\theta)=[\sin(\theta), \cos(\theta)]=\mathbf{z}
+$$
+with inverse operation
+$$
+\theta = \tan^{-1} \frac{z_2}{z_1}
+$$
+
+For our purposes, the absolute minimum you need to program is: 
+
+1. choose a class name for your data tyoe (e.g. "periodic"), and create a function with that name taking the values as they might be in your case study, converting them into a datamatrix and giving them the class of your choice
+```{r}
+circular = function(x, varname ="theta", conversion=pi/180){
+  # output to be a (N, 1)-datamatrix 
+  if(length(dim(x))!=2){ # case `x` is a vector
+    y = t(t(x))
+    colnames(y) = varname
+  }else if(nrow(x)!=1){ # case `x` is a too large matrix
+    y = x[, varname]
+  }
+  y = y * conversion
+  class(y) = "circular"
+  return(y)
+}
+```
+(The function can do other things, like in this case, allowing a potential conversion from degrees to radians, or managing several input cases).
+
+2. create method of the function `compositions::cdt()` implementing the representation for data of your type and returning an rmult object
+```{r}
+cdt.circular = function(x, ...){ 
+  z = cbind(sin(x), cos(x))
+  colnames(z) = c("z1", "z2")
+  return(rmult(z, orig=x))
+}
+```
+
+3. create method of the function `compositions::cdtInv()` implementing the backrepresentation for data of your type (argument `z` expects the representation, and `orig` must be exactly what is set in this example; NOTICE the three dots at `compositions:::gsi.orig`)
+```{r}
+cdtInv.circular = function(z, orig=compositions:::gsi.orig(x),...){ 
+  #z = unclass(z)
+  x = atan2(z[,2], z[,1])
+  return(circular(x, varname=colnames(orig), conversion = 1))
+}
+```
+
+## Geostatistical analysis of scaled data, quick and dirty
+
+With these few lines of programming you could already be able to use "gmGeostats" for your data. To show how, we will generate first a univariate, real-valued random field, take it as if it were circular data (in radians), extract some components out of it, and do a geostatistical analysis with the output.
+```{r data_creation, fig.height=7, fig.width=7}
+# simulate a random function
+set.seed(333275)
+model <- RMexp()
+x <- seq(0, 10, 0.1)
+z <- RFsimulate(model, x, x, n=1)
+# extract components 
+X = coordinates(z)
+Z = z@data
+# select some of them
+tk = sample(1:nrow(X), 1000)
+Xdt = X[tk,]
+Zdt = Z[tk,1]
+Zdtc = circular(Zdt,varname = "theta", conversion = 1)
+pairsmap(Zdtc, loc=Xdt)
+```
+
+Now we can proceed with the analysis. First we create the "gmSpatialModel" containing the transformed data
+```{r}
+theta.gg = 
+  make.gmMultivariateGaussianSpatialModel(
+    data=cdt(Zdtc), coords = Xdt, # always set V="clr" in such cases!
+    formula = ~1 # for ordinary (co)kriging
+    )
+```
+compute and plot the variogram
+```{r, fig.width=7, fig.height=5}
+theta.vg = gmGeostats::variogram(theta.gg)
+plot(theta.vg)
+```
+and model it, in this case with an exponental of effective range approximately 3, a sill of 0.5, and a nugget close to zero. All ways of modelling variograms are allowed, for instance with "gstat" variograms
+```{r, fig.width=7, fig.height=5}
+theta.md = gstat::vgm(model="Exp", range=1, psill=0.5)
+theta.gs = fit_lmc(v=theta.vg, g = theta.gg, model = theta.md)
+plot(theta.vg, model=theta.gs$model)
+```
+Finally we extend the original data container with this model
+```{r}
+theta.gg = 
+  make.gmMultivariateGaussianSpatialModel(
+    data=cdt(Zdtc), coords = Xdt, # always set V="clr" in such cases!
+    formula = ~1, # for ordinary (co)kriging
+    model = theta.gs$model
+    )
+```
+The outcome can then be used for validation, prediction or simulation. Here we do cokriging on the same grid we simulated above
+```{r}
+xx = expand.grid(x,x)
+colnames(xx) = colnames(Xdt)
+ng = KrigingNeighbourhood(nmax = 20, omax=7, maxdist=1)
+theta.prds = predict(theta.gg, newdata = xx, pars=ng)
+```
+and the result be reordered and backtransformed
+```{r}
+theta.prds.grid = gsi.gstatCokriging2rmult(theta.prds)
+theta.prds.back = backtransform(theta.prds.grid, as = cdt(Zdtc))
+summary(theta.prds.back)
+```
+Note that the function `backtransform()` is available in package "compositions" from version 1.0.1-9002. To plot the result we might have to program a method for `image_cokriged` that should take care to fictionally reclass the backtransformed data to "spatialGridRmult" and choose a color sequence appropriate for the periodic nature of the data
+```{r, fig.width=6, fig.height=8.5}
+image_cokriged.circular = function(x, ...){
+  class(x) = c("spatialGridRmult", "rmult")
+  image_cokriged(x, breaks=40, col=rainbow(10), ...)
+}
+image_cokriged(theta.prds.back, ivar="theta")
+```
+
+
+## future work
+
+In future extensions of this vignette we will discuss the way to create own structural functions (variograms) and estimation models/methods adapted to the nature of the data, and register them to the package.
+
+
+
-- 
GitLab