是否有任何好的算法可以在数值上找到曲面的一阶导数?
,例如,为了找到正态分布的第一个数值导数,我开始于:
# Generate some data
library(mvtnorm)
library(raster)
xy <- expand.grid(x = seq(-3, 3, 0.1), y = seq(-3, 3, 0.1))
xy$den <- dmvnorm(xy, mean = c(0, 0))
r <- rasterFromXYZ(xy)
# A naive approach
rx <- r
for (i in 2:(nrow(rx) - 1)) {
for (j in 2:(ncol(rx) - 1)) {
rx[i, j] <- abs(r[i, j - 1] - r[i, j + 1])
}
}
ry <- r
for (i in 2:(nrow(rx) - 1)) {
for (j in 2:(ncol(rx) - 1)) {
ry[i, j] <- abs(r[i - 1, j] - r[i + 1, j])
}
}
d1 <- rx + ry
但我不确定这是否是可以接受的方式,也不能讨论这个背景文件。