Mercurial > repos > siwaa > carboseq_s
view run.r @ 7:366449cab681 draft
"planemo upload for repository https://forgemia.inra.fr/carboseq/record-projet-carboseq/-/tree/b4b11a86a9c43b3dd4a3d27af9f2d99463cdbffa/toos/CarboSeqSimulator commit b4b11a86a9c43b3dd4a3d27af9f2d99463cdbffa-dirty"
author | siwaa |
---|---|
date | Thu, 29 Aug 2024 14:58:19 +0000 |
parents | a069fc43b0b1 |
children | 5fdc9d0c223b |
line wrap: on
line source
# help : Rscript % --url=https://coby.infosol.inrae.fr:7777/semantify --srcDir=~/CSCL/src/csoprapreprocessor/inst/extdata/carboseq/set001/ # Function to parse command-line arguments parse_args <- function() { args <- commandArgs(trailingOnly = TRUE) # Default values for optional parameters url <- "https://coby.infosol.inrae.fr:8080/semantify/" srcDir <- NULL # srcDirOutput <- NULL part <- "modeltoolbox_sem_remote" DS <- T NBCores <- 1 semPath <- "." # Parse arguments for (arg in args) { if (grepl("^--url=", arg)) { url <- sub("^--url=", "", arg) } if (grepl("^--srcDir=", arg)) { srcDir <- sub("^--srcDir=", "", arg) } # if (grepl("^--srcDirOutput=", arg)) { # srcDirOutput <- sub("^--srcDirOutput=", "", arg) # } if (grepl("^--part=", arg)) { part <- sub("^--part=", "", arg) } if (grepl("^--DS=", arg)) { DS <- ifelse(sub("^--DS=", "", arg) == "TRUE", TRUE, FALSE) } if (grepl("^--NBCores=", arg)) { NBCores <- as.numeric(sub("^--NBCores=", "", arg)) } if (grepl("^--srcOut=", arg)) { srcOut <- sub("^--srcOut=", "", arg) } if (grepl("^--semPath=", arg)) { semPath <- sub("^--semPath=", "", arg) } } list( url = url, srcDir = srcDir, part = part, DS = DS, NBCores = NBCores, srcOut = srcOut, semPath = semPath ) } argus <- parse_args() url <- argus[["url"]] srcDir <- argus[["srcDir"]] # srcDirOutput <- argus[["srcDirOutput"]] part <- argus[["part"]] DS <- argus[["DS"]] NBCores <- argus[["NBCores"]] srcOut <- argus[["srcOut"]] semPath <- argus[["semPath"]] if (!endsWith(srcOut, "/")) { srcOut <- paste0(srcOut, "/") } #if (is.null(srcDirOutput)) { # srcDirOutput <- srcDir # } # url="https://147.100.203.110/semantify " # srcDir="~/tmp/testFiles/400Sites/" # part="modeltoolbox" # part="csoprapreprocessor" # DS=TRUE # NBCores=10 # MTB{{{ if (part == "modeltoolbox") { f0 <- function(){ modeltoolbox::loadCSVs(maxCores = NBCores, cinputCalculator = "cinest", preprocessorInputs = ppi) modeltoolbox::runSims(maxCores = NBCores) res <- modeltoolbox::readSocForcingsResults() fileName <- "resRun.RData" filePath <- file.path(srcOut, fileName) save(res, file = filePath) } } #}}} if (part == "modeltoolbox_sem_local") { DS <- F print("Setting DS to F. Will semantify outside of the csoprapreprocessor functions") f0 <- function(){ path <- this.path::this.dir() print(path) csopratools::semantify( inputDir = srcDir, outputDir = srcDir, name = "carboseq", # use = "service", URL = url, use = "java", semantifierRootPath = semPath, extFileNames = paste0(c("crop", "soil", "units"), ".csv") ) print("between semantify and load") ppi$srcDirOutput <- NULL # Hack modeltoolbox::loadCSVs(maxCores = NBCores, cinputCalculator = "cinest", preprocessorInputs = ppi) print("between load an sim") modeltoolbox::runSims(maxCores = NBCores) # res <- modeltoolbox::getYearlySOCResults() res <- modeltoolbox::readSocForcingsResults() fileName <- "resRun.RData" filePath <- file.path(srcOut, fileName) save(res, file = filePath) } } if (part == "modeltoolbox_sem_remote") { DS <- F print("Setting DS to F. Will semantify outside of the csoprapreprocessor functions") f0 <- function(){ path <- this.path::this.dir() print(path) setwd(path) setwd("../..") csopratools::semantify( inputDir = srcDir, outputDir = srcDir, name = "carboseq", use = "service", URL = url, extFileNames = paste0(c("crop", "soil", "units"), ".csv") ) # ppi$srcDirOutput <- NULL # Hack modeltoolbox::loadCSVs(maxCores = NBCores, cinputCalculator = "cinest", preprocessorInputs = ppi) modeltoolbox::runSims(maxCores = NBCores) # res <- modeltoolbox::getYearlySOCResults() res <- modeltoolbox::readSocForcingsResults() fileName <- "resRun.RData" filePath <- file.path(srcOut, fileName) save(res, file = filePath) } } ppi <- list( weatherRetrievalMethod = "service", srcDir = srcDir, # srcDirOutput = srcDirOutput, doSemantify = DS, weatherRetrievalURL = "https://coby.infosol.inrae.fr:8080/climate", semantifierServiceURL = url ) print(url) print(srcDir) # print(srcDirOutput) print(srcOut) print(DS) print(NBCores) print(f0) f0()