R Under development (unstable) (2025-01-17 r87589 ucrt) -- "Unsuffered Consequences" Copyright (C) 2025 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > library(testthat) > library(data.table) > library(rxode2) rxode2 3.0.3 using 2 threads (see ?getRxThreads) no cache: create with `rxCreateCache()` > library(nlmixr2est) Loading required package: nlmixr2data Attaching package: 'nlmixr2est' The following objects are masked from 'package:rxode2': boxCox, yeoJohnson > library(testthat) > if (!identical(Sys.getenv("NOT_CRAN"), "true")) { + # when testing CRAN, only use one thread + setRxThreads(1L) + setDTthreads(1L) + } > > test_check("nlmixr2est") R Under development (unstable) (2025-01-17 r87589 ucrt) -- "Unsuffered Consequences" Copyright (C) 2025 The R Foundation for Statistical Computing Platform: x86_64-w64-mingw32/x64 R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > library(nlmixr2est) Loading required package: nlmixr2data > rxode2::rxClean() > one.cmt <- function() { + ini({ + tka <- 0.45 + tcl <- log(c(0, 2.7, 100)) + tv <- 3.45 + eta.ka ~ 0.6 + eta.cl ~ 0.3 + eta.v ~ 0.1 + add.sd <- 0.7 + }) + model({ + ka <- exp(tka + eta.ka) + cl <- exp(tcl + eta.cl) + v <- exp(tv + eta.v) + linCmt() ~ add(add.sd) + }) + } > fit <- nlmixr(one.cmt, theo_sd, est = "saem", control = saemControl(print = 0, + nBurn = 1, nEm = 1)) ℹ parameter labels from comments are typically ignored in non-interactive mode ℹ Need to run with the source intact to parse comments → loading into symengine environment... → pruning branches (`if`/`else`) of saem model... ✔ done → finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 ✔ done using C compiler: 'gcc.exe (GCC) 13.3.0' ℹ calculate uninformed etas ℹ done rxode2 3.0.3 using 2 threads (see ?getRxThreads) no cache: create with `rxCreateCache()` Attaching package: 'rxode2' The following objects are masked from 'package:nlmixr2est': boxCox, yeoJohnson Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 → loading into symengine environment... → pruning branches (`if`/`else`) of saem model... ✔ done → finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 → finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 → finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 ✔ done using C compiler: 'gcc.exe (GCC) 13.3.0' → Calculating residuals/tables ✔ done → compress origData in nlmixr2 object, save 5952 → compress phiM in nlmixr2 object, save 280 → compress parHistData in nlmixr2 object, save 1864 → compress saem0 in nlmixr2 object, save 28224 > saveRDS(fit, "fit.rds") > > proc.time() user system elapsed 6.10 0.65 10.28 Calculating -2LL by Gaussian quadrature (nnodes=3,nsd=1.6) [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i calculate uninformed etas i done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' > compress origData in nlmixr2 object, save 7056 > compress phiM in nlmixr2 object, save 320 > compress parHistData in nlmixr2 object, save 1856 > compress saem0 in nlmixr2 object, save 21032 i change initial estimate of `covwt` to `100` > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i calculate uninformed etas i done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done > compress origData in nlmixr2 object, save 7056 > compress phiM in nlmixr2 object, save 400 > compress parHistData in nlmixr2 object, save 1856 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i calculate uninformed etas i done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 5952 > compress phiM in nlmixr2 object, save 280 > compress parHistData in nlmixr2 object, save 1640 > compress saem0 in nlmixr2 object, save 12936 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done i calculate uninformed etas i done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 5952 > compress phiM in nlmixr2 object, save 280 > compress parHistData in nlmixr2 object, save 1640 > loading into symengine environment... > pruning branches (`if`/`else`) of full model... v done > calculate jacobian > calculate d(f)/d(eta) [====|====|====|====|====|====|====|====|====|====] 0:00:00 > calculate d(R^2)/d(eta) [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in inner model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in inner model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in EBE model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in EBE model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > compiling inner model... using C compiler: 'gcc.exe (GCC) 13.3.0' v done > finding duplicate expressions in FD model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > compiling EBE model... using C compiler: 'gcc.exe (GCC) 13.3.0' v done > compiling events FD model... using C compiler: 'gcc.exe (GCC) 13.3.0' v done > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 5952 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i calculate uninformed etas i done > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 5952 > compress phiM in nlmixr2 object, save 1704 > compress parHistData in nlmixr2 object, save 1432 > compress saem0 in nlmixr2 object, save 24112 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i calculate uninformed etas i done > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 5952 > compress phiM in nlmixr2 object, save 680 > compress parHistData in nlmixr2 object, save 1440 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i parameter labels from comments will be replaced by 'label()' using C compiler: 'gcc.exe (GCC) 13.3.0' i parameter labels from comments will be replaced by 'label()' > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done i calculate uninformed etas i done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 3696 > compress phiM in nlmixr2 object, save 49608 > compress parHistData in nlmixr2 object, save 14872 > compress saem0 in nlmixr2 object, save 10528 i parameter labels from comments will be replaced by 'label()' > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 3696 > compress phiM in nlmixr2 object, save 44008 > compress parHistData in nlmixr2 object, save 14296 i parameter labels from comments will be replaced by 'label()' > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' i calculate uninformed etas i done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done using C compiler: 'gcc.exe (GCC) 13.3.0' > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 3696 > compress phiM in nlmixr2 object, save 48248 > compress parHistData in nlmixr2 object, save 14584 i parameter labels from comments will be replaced by 'label()' > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem model... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done Calculating covariance matrix [====|====|====|====|====|====|====|====|====|====] 0:00:00 > loading into symengine environment... > pruning branches (`if`/`else`) of saem model... v done > finding duplicate expressions in saem predOnly model 0... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 1... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > finding duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 > optimizing duplicate expressions in saem predOnly model 2... [====|====|====|====|====|====|====|====|====|====] 0:00:00 v done > Calculating residuals/tables v done > compress origData in nlmixr2 object, save 3696 > compress phiM in nlmixr2 object, save 48664 > compress parHistData in nlmixr2 object, save 14600 [ FAIL 0 | WARN 1 | SKIP 0 | PASS 228 ] [ FAIL 0 | WARN 1 | SKIP 0 | PASS 228 ] > ## test_check("nlmixr2est", stop_on_failure = FALSE, wrap=TRUE, > ## reporter = testthat::LocationReporter) > > proc.time() user system elapsed 190.06 10.50 266.45