Mercurial > repos > patrick_chabrier > carboseq_s
comparison run.r @ 8:74a8deeedd19 draft
Uploaded
author | patrick_chabrier |
---|---|
date | Thu, 04 Jul 2024 14:15:56 +0000 |
parents | |
children | 32bda6e69c5a |
comparison
equal
deleted
inserted
replaced
7:fe6b69ede424 | 8:74a8deeedd19 |
---|---|
1 # help : Rscript % --url=https://coby.infosol.inrae.fr:7777/semantify --srcDir=~/CSCL/src/csoprapreprocessor/inst/extdata/carboseq/set001/ | |
2 | |
3 # Function to parse command-line arguments | |
4 parse_args <- function() { | |
5 args <- commandArgs(trailingOnly = TRUE) | |
6 | |
7 # Default values for optional parameters | |
8 # url <- "https://coby.infosol.inrae.fr:8080/semantify/" | |
9 url <- "http://localhost:8282/semantify" | |
10 srcDir <- NULL | |
11 part <- "modeltoolbox_sem_sep" | |
12 DS <- T | |
13 NBCores <- 1 | |
14 # Parse arguments | |
15 for (arg in args) { | |
16 if (grepl("^--url=", arg)) { | |
17 url <- sub("^--url=", "", arg) | |
18 } | |
19 | |
20 if (grepl("^--srcDir=", arg)) { | |
21 srcDir <- sub("^--srcDir=", "", arg) | |
22 } | |
23 | |
24 if (grepl("^--part=", arg)) { | |
25 part <- sub("^--part=", "", arg) | |
26 } | |
27 | |
28 if (grepl("^--DS=", arg)) { | |
29 DS <- ifelse(sub("^--DS=", "", arg) == "TRUE", TRUE, FALSE) | |
30 } | |
31 | |
32 if (grepl("^--NBCores=", arg)) { | |
33 NBCores <- as.numeric(sub("^--NBCores=", "", arg)) | |
34 } | |
35 | |
36 if (grepl("^--srcOut=", arg)) { | |
37 srcOut <- sub("^--srcOut=", "", arg) | |
38 } | |
39 | |
40 } | |
41 | |
42 list(url = url, srcDir = srcDir, part = part, DS = DS, NBCores = NBCores, srcOut = srcOut) | |
43 } | |
44 | |
45 argus <- parse_args() | |
46 url <- argus[["url"]] | |
47 srcDir <- argus[["srcDir"]] | |
48 part <- argus[["part"]] | |
49 DS <- argus[["DS"]] | |
50 NBCores <- argus[["NBCores"]] | |
51 | |
52 srcOut <- argus[["srcOut"]] | |
53 | |
54 if (!endsWith(srcOut, "/")) { | |
55 srcOut <- paste0(srcOut, "/") | |
56 } | |
57 | |
58 # url="https://147.100.203.110/semantify " | |
59 # srcDir="~/tmp/testFiles/400Sites/" | |
60 # part="modeltoolbox" | |
61 # part="csoprapreprocessor" | |
62 # DS=TRUE | |
63 # NBCores=10 | |
64 | |
65 | |
66 # MTB{{{ | |
67 if (part == "modeltoolbox") { | |
68 f0 <- function(){ | |
69 modeltoolbox::loadCSVs(maxCores = NBCores, cinputCalculator = "cinest", | |
70 preprocessorInputs = ppi) | |
71 modeltoolbox::runSims(maxCores = NBCores) | |
72 res <- modeltoolbox::readSocForcingsResults() | |
73 fileName <- "resRun.RData" | |
74 filePath <- file.path(srcOut, fileName) | |
75 save(res, file = filePath) | |
76 } | |
77 } | |
78 #}}} | |
79 | |
80 if (part == "modeltoolbox_sem_sep") { | |
81 DS <- F | |
82 print("Setting DS to F. Will semantify outside of the csoprapreprocessor functions") | |
83 f0 <- function(){ | |
84 # path <- this.path::this.dir() | |
85 # print(path) | |
86 # setwd(path) | |
87 # setwd("../..") | |
88 print("before semantify") | |
89 # Sys.sleep(runif(n=1, min=30, max=60)) | |
90 csopratools::semantify( | |
91 inputDir = srcDir, | |
92 outputDir = srcDir, | |
93 name = "carboseq", | |
94 use = "service", | |
95 URL = url, | |
96 # extFileNames = paste0(c("crop", "soil", "units"), ".csv") | |
97 extFileNames = list.files(srcDir) | |
98 ) | |
99 print("between semantify and load") | |
100 modeltoolbox::loadCSVs(maxCores = NBCores, cinputCalculator = "cinest", | |
101 preprocessorInputs = ppi) | |
102 print("between load an sim") | |
103 modeltoolbox::runSims(maxCores = NBCores) | |
104 res <- modeltoolbox::getYearlySOCResults() | |
105 fileName <- "resRun.RData" | |
106 filePath <- file.path(srcOut, fileName) | |
107 save(res, file = filePath) | |
108 } | |
109 } | |
110 | |
111 ppi <- list( | |
112 weatherRetrievalMethod = "service", | |
113 srcDir = srcDir, | |
114 doSemantify = DS, | |
115 weatherRetrievalURL = "https://147.100.203.110/climate", | |
116 semantifierServiceURL = url | |
117 ) | |
118 | |
119 | |
120 print(url) | |
121 print(srcDir) | |
122 print(srcOut) | |
123 print(DS) | |
124 print(NBCores) | |
125 print(f0) | |
126 | |
127 f0() | |
128 | |
129 |