小编Eli*_*lia的帖子

尝试运行并行操作时,terra 包返回错误

我正在使用rasterpackage 并尝试切换到,terra但由于某些我不明白的原因,无法重现与和等包并行工作时terra的相同操作。这是一个可重现的示例。rastersnowfallfuture.apply

library(terra)
r <- rast()
r[] <- 1:ncell(r)
m <- rast()
m[] <- c(rep(1,ncell(m)/5),rep(2,ncell(m)/5),rep(3,ncell(m)/5),rep(4,ncell(m)/5),rep(5,ncell(m)/5))
ms <- separate(m,other=NA)
plot(ms)
mymask <- function(ind){
  tipo <- tipo_tav[ind]
  mask <- ms[[ind]]
  
  masked <-
    terra::mask(
      r,
      mask
    )
  
  richard <- function(x){
    k <-0.2
    v <-0.3
    a <-200
    y0 <-2
    y <- k/v*x*(1-((x/a)^v))+y0
    return(y)
  }
  pred <- richard(masked)
  pred <- clamp(pred,lower=0)
  return(pred)
}
#the sequential usage works fine, faster than the `raster` counterpart
system.time(x <- mymask(1))#0.03 …
Run Code Online (Sandbox Code Playgroud)

parallel-processing r r-future terra

7
推荐指数
1
解决办法
3336
查看次数

标签 统计

parallel-processing ×1

r ×1

r-future ×1

terra ×1