kerreg2d {spgam} | R Documentation |
~~ A concise (1-5 lines) description of what the function does. ~~
kerreg2d(h, pts, y, w = rep(1, length(y)), x = pts, grid = F, poly = NA, ngrid = 1000)
h |
~~Describe h here~~ |
pts |
~~Describe pts here~~ |
y |
~~Describe y here~~ |
w |
~~Describe w here~~ |
x |
~~Describe x here~~ |
grid |
~~Describe grid here~~ |
poly |
~~Describe poly here~~ |
ngrid |
~~Describe ngrid here~~ |
~~ If necessary, more details than the description above ~~
~Describe the value returned If it is a LIST, use
comp1 |
Description of 'comp1' |
comp2 |
Description of 'comp2' |
...
....
~~further notes~~
~Make other sections like Warning with section{Warning }{....} ~
~~who you are~~
~put references to the literature/web site here ~
~~objects to See Also as help
, ~~~
##---- Should be DIRECTLY executable !! ---- ##-- ==> Define data, use random, ##-- or do help(data=index) for the standard data sets. ## The function is currently defined as function (h, pts, y, w = rep(1, length(y)), x = pts, grid = F, poly = NA, ngrid = 1000) { if (!grid) { n <- length(y) m <- length(x[, 1]) yans <- rep(0.3, m) datx1 <- pts[, 1] datx2 <- pts[, 2] x1 <- x[, 1] x2 <- x[, 2] result <- .Fortran("ker2d", h = as.single(h), datx1 = as.single(datx1), datx2 = as.single(datx2), y = as.single(y), w = as.single(w), n = as.integer(n), x1 = as.single(x1), x2 = as.single(x2), yans = as.single(yans), m = as.integer(m), df = as.single(0)) ans <- list(vals = result$yans, df = result$df) } if (grid) { n <- length(y) datx1 <- pts[, 1] datx2 <- pts[, 2] x1range <- range(poly[, 1]) x2range <- range(poly[, 2]) x1min <- x1range[1] x1max <- x1range[2] x2min <- x2range[1] x2max <- x2range[2] x1length <- diff(x1range) x2length <- diff(x2range) actngrid <- (ngrid * x1length * x2length)/(areapl(poly)) m1 <- ceiling(sqrt((actngrid * x1length)/x2length)) m2 <- ceiling(sqrt((actngrid * x2length)/x1length)) zmat <- matrix(0, m1, m2) mode(zmat) <- "single" x1 <- seq(x1min + x1length/(2 * m1), x1max - x1length/(2 * m1), length = m1) x2 <- seq(x2min + x2length/(2 * m2), x2max - x2length/(2 * m2), length = m2) xyvec1 <- rep(x1, m2) xyvec2 <- rep(x2, rep(m1, m2)) xyvec <- cbind(xyvec1, xyvec2) lpmat <- matrix(inout(xyvec, poly), nrow = m1, ncol = m2, byrow = F) mode(lpmat) <- "logical" result <- .Fortran("ker2dg", h = as.single(h), datx1 = as.single(datx1), datx2 = as.single(datx2), y = as.single(y), w = as.single(w), n = as.integer(n), x1 = as.single(x1), x2 = as.single(x2), zmat = zmat, lpmat = lpmat, m1 = as.integer(m1), m2 = as.integer(m2)) z <- result$zmat z[z == 0] <- NA ans <- list(x = x1, y = x2, z = z) } ans }