GitHub - byzheng/rapsimng: A R package for APSIM Next Generation (original) (raw)
rapsimng
rapsimng package is designed to modify and run the *.apsimx simulations using R in APSIM Next Generation.
Features
- Find elements in the *.apsimx file
Installation
Install from CRAN.
install.packages('rapsimng')
Install the developing version from Github.
remotes::install_github('byzheng/rapsimng')
Read APSIMX file
The wheat.apsimx
in the validation dataset of APSIM NG is used as an example. Function read_apsimx
is used to read *.apsimx
file through jsonlite::read_json
and returns as a list.
Read Wheat.apsimx file with read_apsimx
which returns a list of json results.
file <- system.file("extdata/wheat.apsimx", package = "rapsimng") m <- read_apsimx(file)
Search by of APSIM NG
A node in the apsimx file can be found using the path specification in APSIM NG.
potential <- search_path(m, path = '[Structure].BranchingRate.PotentialBranchingRate.Vegetative.PotentialBranchingRate') potential
Modify a found model
new_model <- potential$node new_model$XProperty <- 'NewVariable'
Replace the new model
new <- replace_model(m, potential$path, new_model)
Save into a new apsimx file
write_apsimx(new, tempfile(fileext = '.json'))
Run apsimx file
A function run_models
is wrapped for APSIM NG Models.exe
in the command line and can be called to run apsimx files. See APSIM website for documentation.