From dc036cfcee33fa00d761b3f8f3ce67c221e7c212 Mon Sep 17 00:00:00 2001 From: Max Luebke Date: Thu, 15 Dec 2022 17:43:35 +0100 Subject: [PATCH] fix: bring back old time and dt output to RDS file --- R_lib/kin_r_library.R | 8 ++++---- app/poet.cpp | 8 ++++++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/R_lib/kin_r_library.R b/R_lib/kin_r_library.R index af28f70bc..132da6f61 100644 --- a/R_lib/kin_r_library.R +++ b/R_lib/kin_r_library.R @@ -60,13 +60,13 @@ master_iteration_end <- function(setup) { # if (iter %in% setup$out_save) { nameout <- paste0(fileout, "/iter_", sprintf("%03d", iter), ".rds") info <- list( - tr_req_dt = as.integer(setup$requested_dt), - tr_allow_dt = setup$allowed_dt, - tr_inniter = as.integer(setup$inniter) + tr_req_dt = as.integer(setup$req_dt) +# tr_allow_dt = setup$allowed_dt, +# tr_inniter = as.integer(setup$inniter) ) saveRDS(list( T = setup$state_T, C = setup$state_C, - simtime = as.integer(setup$simulation_time), + simtime = as.integer(setup$simtime), tr_info = info ), file = nameout) msgm("results stored in <", nameout, ">") diff --git a/app/poet.cpp b/app/poet.cpp index 4e161c11f..63df7e50a 100644 --- a/app/poet.cpp +++ b/app/poet.cpp @@ -48,6 +48,8 @@ inline double RunMasterLoop(SimParams ¶ms, RInside &R, Grid &grid, * master for the following loop) */ uint32_t maxiter = R.parseEval("mysetup$iterations"); + double sim_time = .0; + ChemistryInstance C(params, R, grid); C.InitModule(chem_params); /* SIMULATION LOOP */ @@ -74,6 +76,12 @@ inline double RunMasterLoop(SimParams ¶ms, RInside &R, Grid &grid, C.Simulate(dt); + R["req_dt"] = dt; + R["simtime"] = (sim_time += dt); + + R.parseEval("mysetup$req_dt <- req_dt"); + R.parseEval("mysetup$simtime <- simtime"); + // MDL master_iteration_end just writes on disk state_T and // state_C after every iteration if the cmdline option // --ignore-results is not given (and thus the R variable