From 0341a6ba8667fd66115a818bd2e3c086f6e30aa4 Mon Sep 17 00:00:00 2001 From: mattfidler Date: Thu, 30 Nov 2023 01:28:23 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20nlmixr2/?= =?UTF-8?q?rxode2@58507529a033f0e3445ead25c9f98af3fced26c2=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ng-User-Defined-Functions-into-rxode2.html | 4 +- .../figure-html/benmchmark1-1.png | Bin 41130 -> 38276 bytes .../figure-html/convertC-1.png | Bin 34309 -> 32034 bytes articles/rxode2-cmt.html | 6 +- articles/rxode2-model-types.html | 12 +- articles/rxode2-nesting.html | 180 ++++++------- .../figure-html/unnamed-chunk-10-1.png | Bin 94311 -> 91558 bytes .../figure-html/unnamed-chunk-6-1.png | Bin 182790 -> 190939 bytes .../figure-html/unnamed-chunk-7-1.png | Bin 164321 -> 169637 bytes .../figure-html/unnamed-chunk-8-1.png | Bin 460112 -> 471036 bytes articles/rxode2-prior-data.html | 84 +++---- .../figure-html/unnamed-chunk-5-1.png | Bin 148902 -> 154840 bytes articles/rxode2-speed.html | 36 +-- .../figure-html/unnamed-chunk-10-1.png | Bin 37990 -> 39819 bytes .../figure-html/unnamed-chunk-12-1.png | Bin 62711 -> 63578 bytes articles/rxode2-stiff.html | 4 +- articles/rxode2-syntax.html | 24 +- news/index.html | 2 + pkgdown.yml | 2 +- reference/binomProbs.html | 10 +- reference/dot-rxWithWd.html | 2 +- reference/meanProbs.html | 22 +- reference/myapp/mod1.d/mod1_.c | 238 +++++++++--------- reference/myapp/mod1.d/mod1_.o | Bin 112848 -> 112848 bytes reference/myapp/mod1.d/mod1_.so | Bin 90360 -> 90360 bytes reference/myapp/rx_shiny_data.rda | Bin 5595 -> 5595 bytes reference/rxCombineErrorLines.html | 2 +- reference/rxExpandGrid.html | 10 +- reference/rxPp.html | 15 +- reference/rxUiGet.html | 3 + reference/rxbeta.html | 10 +- reference/rxbinom.html | 4 +- reference/rxcauchy.html | 10 +- reference/rxchisq.html | 10 +- reference/rxexp.html | 10 +- reference/rxf.html | 10 +- reference/rxgamma.html | 10 +- reference/rxgeom.html | 6 +- reference/rxnbinom.html | 6 +- reference/rxnormV.html | 10 +- reference/rxode2.html | 4 +- reference/rxord.html | 8 +- reference/rxpois.html | 6 +- reference/rxt.html | 10 +- reference/rxunif.html | 10 +- reference/rxweibull.html | 10 +- search.json | 2 +- 47 files changed, 398 insertions(+), 394 deletions(-) diff --git a/articles/Integrating-User-Defined-Functions-into-rxode2.html b/articles/Integrating-User-Defined-Functions-into-rxode2.html index d34973c19..7a8b001d3 100644 --- a/articles/Integrating-User-Defined-Functions-into-rxode2.html +++ b/articles/Integrating-User-Defined-Functions-into-rxode2.html @@ -248,8 +248,8 @@

R based user functionsprint(mb) #> Unit: milliseconds #> expr min lq mean median uq max neval -#> withoutC 7.706384 7.813619 8.458545 7.891054 7.995268 13.624052 100 -#> withC 2.052068 2.115636 2.441953 2.201777 2.726220 6.392353 100 +#> withoutC 7.622042 7.688254 8.259156 7.735658 7.875183 13.217607 100 +#> withC 2.042315 2.082330 2.407566 2.169873 2.681195 6.437425 100

The C version is almost twice as fast as the R version. You may have noticed the conversion also created C versions of the first derivative. This is done automatically and gives not just C versions of function, diff --git a/articles/Integrating-User-Defined-Functions-into-rxode2_files/figure-html/benmchmark1-1.png b/articles/Integrating-User-Defined-Functions-into-rxode2_files/figure-html/benmchmark1-1.png index 1e8137affa80f0909117c95807f35db9f61608ba..09c5cefe11fbd51c1f8a8bd46ea204944131a580 100644 GIT binary patch literal 38276 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 literal 41130 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

Ej24t$LqBy``!n6vwXr7+Qh1&7N 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 diff --git a/articles/Integrating-User-Defined-Functions-into-rxode2_files/figure-html/convertC-1.png b/articles/Integrating-User-Defined-Functions-into-rxode2_files/figure-html/convertC-1.png index 3f3b03c6b9230b445eaa2c16aac9025f7480f9cc..6d2263fb1fc171b532c62b0bd5d2e7d1f8e4189f 100644 GIT binary patch literal 32034 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 DlQ2pM literal 34309 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 YczelEJj|?IiEI_^u*#wPKO6b}2Z3Y;WdHyG diff --git a/articles/rxode2-cmt.html b/articles/rxode2-cmt.html index 8e360c9b9..78155d0dc 100644 --- a/articles/rxode2-cmt.html +++ b/articles/rxode2-cmt.html @@ -380,8 +380,8 @@

How rxode2 assigns compartment n
#> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
 summary(pbpk)
-
#> rxode2 2.0.14.9000 model named rx_8ee4408c660f4c3f31e6d0548ea2c3f1 model (ready). 
-#> DLL: /tmp/RtmphFlXM3/rxode2/rx_8ee4408c660f4c3f31e6d0548ea2c3f1__.rxd/rx_8ee4408c660f4c3f31e6d0548ea2c3f1_.so
+
#> rxode2 2.0.14.9000 model named rx_5da87c6d1f91668f6d05372040b2eafc model (ready). 
+#> DLL: /tmp/RtmpG6A6n6/rxode2/rx_5da87c6d1f91668f6d05372040b2eafc__.rxd/rx_5da87c6d1f91668f6d05372040b2eafc_.so
 #> NULL
 #> 
 #> Calculated Variables:
@@ -731,7 +731,7 @@ 

Appending compartments to the model
 ode.1c.ka$simulationModel
#> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
-
#> rxode2 2.0.14.9000 model named rx_b8d999c3e65c274ef9e90ceabef41631 model (ready). 
+
#> rxode2 2.0.14.9000 model named rx_93a4b5aac982087fb323c655d89a3bb9 model (ready). 
 #> x$state: depot, center
 #> x$stateExtra: eff
 #> x$params: V, KA, CL
diff --git a/articles/rxode2-model-types.html b/articles/rxode2-model-types.html
index 3d801b195..ff01c0997 100644
--- a/articles/rxode2-model-types.html
+++ b/articles/rxode2-model-types.html
@@ -237,18 +237,18 @@ 

Solved compartment modelsVC or V), Peripheral/Tissue (VP, VT). While more translations are available, some example translations are below:

-
-

Another popular parameterization is in terms of micro-constants. +

+

Another popular parameterization is in terms of micro-constants. rxode2 assumes compartment 1 is the central compartment. The elimination constant would be specified by K, Ke or Kel. Some example translations are below:

-
-

The last parameterization possible is using alpha and +

+

The last parameterization possible is using alpha and V and/or A/B/C. Some example translations are below:

-
-

Once the linCmt() sleuthing is complete, the +

+

Once the linCmt() sleuthing is complete, the 1, 2 or 3 compartment model solution is used as the value of linCmt().

The compartments where you can dose in a linear solved system are diff --git a/articles/rxode2-nesting.html b/articles/rxode2-nesting.html index 2533aa763..494c07bb7 100644 --- a/articles/rxode2-nesting.html +++ b/articles/rxode2-nesting.html @@ -312,24 +312,24 @@

Uncertainty in Model parametersdimnames(tMat) <- list(names(theta), names(theta)) tMat

-
#>              TKA          TCl          V2            Q           V3
-#> TKA   0.11619015  0.073703715  0.04369253 -0.016660366 -0.011193396
-#> TCl   0.07370372  0.113971693  0.06841157 -0.015578152 -0.055073884
-#> V2    0.04369253  0.068411574  0.22142001 -0.074616276 -0.019774853
-#> Q    -0.01666037 -0.015578152 -0.07461628  0.075884128  0.020726895
-#> V3   -0.01119340 -0.055073884 -0.01977485  0.020726895  0.075776432
-#> Kin   0.01846965 -0.033098860  0.04143756 -0.008003217  0.020555705
-#> Kout -0.02395367 -0.010482608 -0.02421182 -0.010248683 -0.007926701
-#> EC50 -0.01338289 -0.006578812 -0.05736582  0.089005982  0.030902333
-#>               Kin         Kout         EC50
-#> TKA   0.018469652 -0.023953675 -0.013382894
-#> TCl  -0.033098860 -0.010482608 -0.006578812
-#> V2    0.041437564 -0.024211825 -0.057365823
-#> Q    -0.008003217 -0.010248683  0.089005982
-#> V3    0.020555705 -0.007926701  0.030902333
-#> Kin   0.083079307 -0.012669148 -0.015209539
-#> Kout -0.012669148  0.109646723 -0.028508758
-#> EC50 -0.015209539 -0.028508758  0.117687226
+
#>              TKA           TCl           V2           Q           V3
+#> TKA   0.10524323  0.0195962916 -0.040781262 -0.12273095 -0.010991507
+#> TCl   0.01959629  0.0911766794 -0.019584328 -0.07810065 -0.006831950
+#> V2   -0.04078126 -0.0195843283  0.040144815  0.05199231  0.002913150
+#> Q    -0.12273095 -0.0781006450  0.051992306  0.30989598  0.102225734
+#> V3   -0.01099151 -0.0068319505  0.002913150  0.10222573  0.141390721
+#> Kin   0.01554079  0.0001343313 -0.018775609 -0.06667904 -0.036404209
+#> Kout -0.07183484 -0.0531330807  0.028680084  0.11728741 -0.033987922
+#> EC50  0.03725729  0.0134040543 -0.003635586 -0.09243313 -0.002517493
+#>                Kin        Kout         EC50
+#> TKA   0.0155407941 -0.07183484  0.037257286
+#> TCl   0.0001343313 -0.05313308  0.013404054
+#> V2   -0.0187756094  0.02868008 -0.003635586
+#> Q    -0.0666790392  0.11728741 -0.092433134
+#> V3   -0.0364042091 -0.03398792 -0.002517493
+#> Kin   0.0510761277 -0.03593031  0.049433157
+#> Kout -0.0359303052  0.24617352 -0.104651320
+#> EC50  0.0494331568 -0.10465132  0.134046722

Nesting Variability @@ -407,16 +407,16 @@

Solving the problem#> # A tibble: 8,000 x 24 #> sim.id id `inv.Cl(inv==1)` `inv.Cl(inv==2)` `inv.Ka(inv==1)` #> <int> <fct> <dbl> <dbl> <dbl> -#> 1 1 1 0.108 0.363 -0.110 -#> 2 1 2 0.108 0.363 -0.110 -#> 3 1 3 0.108 0.363 -0.110 -#> 4 1 4 0.108 0.363 -0.110 -#> 5 1 5 0.108 0.363 -0.110 -#> 6 1 6 0.108 0.363 -0.110 -#> 7 1 7 0.108 0.363 -0.110 -#> 8 1 8 0.108 0.363 -0.110 -#> 9 1 9 0.108 0.363 -0.110 -#> 10 1 10 0.108 0.363 -0.110 +#> 1 1 1 -0.0130 0.169 0.00797 +#> 2 1 2 -0.0130 0.169 0.00797 +#> 3 1 3 -0.0130 0.169 0.00797 +#> 4 1 4 -0.0130 0.169 0.00797 +#> 5 1 5 -0.0130 0.169 0.00797 +#> 6 1 6 -0.0130 0.169 0.00797 +#> 7 1 7 -0.0130 0.169 0.00797 +#> 8 1 8 -0.0130 0.169 0.00797 +#> 9 1 9 -0.0130 0.169 0.00797 +#> 10 1 10 -0.0130 0.169 0.00797 #> # i 7,990 more rows #> # i 19 more variables: `inv.Ka(inv==2)` <dbl>, `eye.Cl(eye==1)` <dbl>, #> # `eye.Cl(eye==2)` <dbl>, `eye.Ka(eye==1)` <dbl>, `eye.Ka(eye==2)` <dbl>, @@ -433,17 +433,17 @@

Solving the problem#> #> -- First part of data (object): -- #> # A tibble: 976,000 x 21 -#> sim.id id time inv.Cl inv.Ka eye.Cl eye.Ka iov.Cl iov.Ka C2 -#> <int> <int> [h] <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> -#> 1 1 1 0 0.108 -0.110 0.432 0.586 -0.0881 0.0304 0 -#> 2 1 1 0.1 0.108 -0.110 -0.0583 0.175 -0.0881 0.0304 -18.9 -#> 3 1 1 4 0.108 -0.110 0.432 0.586 -0.0881 0.0304 -847. -#> 4 1 1 4.1 0.108 -0.110 -0.0583 0.175 -0.0881 0.0304 -715. -#> 5 1 1 8 0.108 -0.110 0.432 0.586 -0.0881 0.0304 -3785. -#> 6 1 1 8.1 0.108 -0.110 -0.0583 0.175 -0.0881 0.0304 -4970. +#> sim.id id time inv.Cl inv.Ka eye.Cl eye.Ka iov.Cl iov.Ka C2 C3 +#> <int> <int> [h] <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> +#> 1 1 1 0 -0.0130 0.00797 -0.364 -0.0797 0.179 0.122 0 0 +#> 2 1 1 0.1 -0.0130 0.00797 0.370 -0.365 0.179 0.122 5.97 0.0114 +#> 3 1 1 4 -0.0130 0.00797 -0.364 -0.0797 0.179 0.122 38.4 4.13 +#> 4 1 1 4.1 -0.0130 0.00797 0.370 -0.365 0.179 0.122 32.6 4.22 +#> 5 1 1 8 -0.0130 0.00797 -0.364 -0.0797 0.179 0.122 32.9 6.65 +#> 6 1 1 8.1 -0.0130 0.00797 0.370 -0.365 0.179 0.122 11.3 6.68 #> # i 975,994 more rows -#> # i 11 more variables: C3 <dbl>, CL <dbl>, KA <dbl>, ef0 <dbl>, depot <dbl>, -#> # centr <dbl>, peri <dbl>, eff <dbl>, occ <fct>, eye <fct>, inv <fct>

+#> # i 10 more variables: CL <dbl>, KA <dbl>, ef0 <dbl>, depot <dbl>, centr <dbl>, +#> # peri <dbl>, eff <dbl>, occ <fct>, eye <fct>, inv <fct>

There are multiple investigators in a study; Each investigator has a number of individuals enrolled at their site. rxode2 automatically determines the number of investigators and then will @@ -462,63 +462,63 @@

Solving the problem
 print(head(s$params))
#>   sim.id id inv.Cl(inv==1) inv.Cl(inv==2) inv.Ka(inv==1) inv.Ka(inv==2)
-#> 1      1  1      0.1082821      0.3626882      -0.109708     0.09798624
-#> 2      1  2      0.1082821      0.3626882      -0.109708     0.09798624
-#> 3      1  3      0.1082821      0.3626882      -0.109708     0.09798624
-#> 4      1  4      0.1082821      0.3626882      -0.109708     0.09798624
-#> 5      1  5      0.1082821      0.3626882      -0.109708     0.09798624
-#> 6      1  6      0.1082821      0.3626882      -0.109708     0.09798624
+#> 1      1  1    -0.01297846      0.1687315    0.007971401    -0.04895385
+#> 2      1  2    -0.01297846      0.1687315    0.007971401    -0.04895385
+#> 3      1  3    -0.01297846      0.1687315    0.007971401    -0.04895385
+#> 4      1  4    -0.01297846      0.1687315    0.007971401    -0.04895385
+#> 5      1  5    -0.01297846      0.1687315    0.007971401    -0.04895385
+#> 6      1  6    -0.01297846      0.1687315    0.007971401    -0.04895385
 #>   eye.Cl(eye==1) eye.Cl(eye==2) eye.Ka(eye==1) eye.Ka(eye==2) iov.Cl(occ==1)
-#> 1     0.43197371   -0.058328678    0.586264966    0.174884342    -0.08811714
-#> 2     0.08559430    0.006108123   -0.005624186   -0.020710794     0.10637721
-#> 3     0.02708297   -0.001796112    0.240805194    0.009550938     0.06595025
-#> 4     0.09386198   -0.239239291   -0.079574652    0.004080677     0.23965275
-#> 5    -0.03540689   -0.032725874    0.209994611   -0.246674424     0.02757919
-#> 6     0.44890673   -0.325267423   -0.024517791   -0.050395249    -0.14357516
-#>   iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2)       V2      V3      TCl
-#> 1     0.07218375     0.03039623    0.067693210 39.90301 297.153 18.10281
-#> 2     0.02406445     0.03465175    0.169113740 39.90301 297.153 18.10281
-#> 3     0.07833762     0.16896481    0.083329437 39.90301 297.153 18.10281
-#> 4     0.09014535     0.16781970   -0.007580041 39.90301 297.153 18.10281
-#> 5    -0.02744128    -0.05331629    0.123470046 39.90301 297.153 18.10281
-#> 6     0.14006037     0.16503842   -0.069874068 39.90301 297.153 18.10281
-#>       eta.Cl        TKA     eta.Ka        Q       Kin     Kout     EC50
-#> 1  0.3276499 -0.3669389  0.1976122 10.56335 0.9466661 1.471005 199.9767
-#> 2 -0.1956677 -0.3669389 -0.4448090 10.56335 0.9466661 1.471005 199.9767
-#> 3 -0.7690862 -0.3669389  0.4423792 10.56335 0.9466661 1.471005 199.9767
-#> 4 -0.2558634 -0.3669389 -0.2013753 10.56335 0.9466661 1.471005 199.9767
-#> 5 -0.6370408 -0.3669389 -0.2217999 10.56335 0.9466661 1.471005 199.9767
-#> 6 -0.2844281 -0.3669389  0.2746496 10.56335 0.9466661 1.471005 199.9767
+#> 1 -0.36434523 0.3704529236 -0.07970633 -0.36508422 0.178666438 +#> 2 -0.10723630 -0.1543465784 -0.36039433 0.05790772 -0.001530669 +#> 3 -0.05693862 -0.0707329793 0.05983005 -0.04233135 -0.033899194 +#> 4 -0.03024253 0.3470127990 -0.26257778 -0.17789013 -0.076572829 +#> 5 0.07694592 0.0996393327 -0.07031235 -0.06961614 0.015876306 +#> 6 -0.17759027 0.0002101827 0.10656827 0.54980122 -0.042696454 +#> iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2) V2 V3 TCl +#> 1 -0.05670826 0.121693604 0.021541003 39.94027 296.5209 18.59632 +#> 2 -0.01018096 -0.003395944 0.009158207 39.94027 296.5209 18.59632 +#> 3 -0.01926255 -0.048021922 -0.188427781 39.94027 296.5209 18.59632 +#> 4 -0.17832430 0.048755911 0.084187050 39.94027 296.5209 18.59632 +#> 5 0.07169803 -0.084700170 -0.017363741 39.94027 296.5209 18.59632 +#> 6 -0.03108922 -0.060459613 -0.072644806 39.94027 296.5209 18.59632 +#> eta.Cl TKA eta.Ka Q Kin Kout EC50 +#> 1 -0.27253945 0.1845138 0.28787878 10.10728 1.41481 1.08659 200.2634 +#> 2 -0.27825150 0.1845138 0.07849200 10.10728 1.41481 1.08659 200.2634 +#> 3 -0.19629964 0.1845138 0.12164312 10.10728 1.41481 1.08659 200.2634 +#> 4 -0.04954326 0.1845138 0.08188589 10.10728 1.41481 1.08659 200.2634 +#> 5 0.01468967 0.1845138 0.02590364 10.10728 1.41481 1.08659 200.2634 +#> 6 -0.21743628 0.1845138 0.33722480 10.10728 1.41481 1.08659 200.2634

 print(head(s$params %>% filter(sim.id == 2)))
#>   sim.id id inv.Cl(inv==1) inv.Cl(inv==2) inv.Ka(inv==1) inv.Ka(inv==2)
-#> 1      2  1     -0.2185114      0.1578254    -0.06550178     0.01692558
-#> 2      2  2     -0.2185114      0.1578254    -0.06550178     0.01692558
-#> 3      2  3     -0.2185114      0.1578254    -0.06550178     0.01692558
-#> 4      2  4     -0.2185114      0.1578254    -0.06550178     0.01692558
-#> 5      2  5     -0.2185114      0.1578254    -0.06550178     0.01692558
-#> 6      2  6     -0.2185114      0.1578254    -0.06550178     0.01692558
+#> 1      2  1     -0.1381834    -0.07625591     -0.1147319     -0.1327589
+#> 2      2  2     -0.1381834    -0.07625591     -0.1147319     -0.1327589
+#> 3      2  3     -0.1381834    -0.07625591     -0.1147319     -0.1327589
+#> 4      2  4     -0.1381834    -0.07625591     -0.1147319     -0.1327589
+#> 5      2  5     -0.1381834    -0.07625591     -0.1147319     -0.1327589
+#> 6      2  6     -0.1381834    -0.07625591     -0.1147319     -0.1327589
 #>   eye.Cl(eye==1) eye.Cl(eye==2) eye.Ka(eye==1) eye.Ka(eye==2) iov.Cl(occ==1)
-#> 1    -0.28983275     0.23313282    0.054875269    -0.10816332     0.03378266
-#> 2     0.17133543    -0.09585557   -0.018382439     0.03009169    -0.03036841
-#> 3    -0.04487519    -0.10519202    0.300869327     0.13375274     0.05674318
-#> 4     0.19924316     0.02586329   -0.109179227     0.22221001     0.06869933
-#> 5    -0.05895218    -0.28987217   -0.007452707    -0.03639888    -0.03700882
-#> 6     0.18030544    -0.37938212    0.270230738    -0.15310814    -0.15591525
-#>   iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2)     V2       V3      TCl
-#> 1     0.05942611     0.02503154    -0.11716174 39.484 297.4703 18.23602
-#> 2     0.07854405     0.12953177     0.08902964 39.484 297.4703 18.23602
-#> 3    -0.05471371     0.04489170    -0.01115435 39.484 297.4703 18.23602
-#> 4     0.01822086     0.29324185     0.09084004 39.484 297.4703 18.23602
-#> 5    -0.16679912     0.03565972     0.05666132 39.484 297.4703 18.23602
-#> 6     0.11982797     0.11883012    -0.01873016 39.484 297.4703 18.23602
-#>       eta.Cl       TKA       eta.Ka        Q       Kin    Kout     EC50
-#> 1 -0.2606673 0.4157218 -0.113167108 10.59193 0.7312587 1.12052 200.1582
-#> 2  0.4088169 0.4157218  0.494133531 10.59193 0.7312587 1.12052 200.1582
-#> 3 -0.2175045 0.4157218 -0.002530923 10.59193 0.7312587 1.12052 200.1582
-#> 4  0.5150686 0.4157218 -0.121588025 10.59193 0.7312587 1.12052 200.1582
-#> 5  0.3760662 0.4157218  0.218664584 10.59193 0.7312587 1.12052 200.1582
-#> 6  0.3092382 0.4157218  0.065845127 10.59193 0.7312587 1.12052 200.1582
+#> 1 0.2269129 0.2581869 0.2798932 -0.02681279 -0.22890287 +#> 2 -0.2009005 -0.1696096 0.1474433 0.28535219 0.12983576 +#> 3 -0.3672459 -0.3987801 0.2564106 -0.07613422 -0.10691395 +#> 4 0.1755765 0.1995688 -0.1289375 0.12910869 -0.03148799 +#> 5 0.2309972 0.1180215 -0.2515939 -0.20469517 -0.04596325 +#> 6 0.1475438 0.1968126 0.2314342 -0.31494432 -0.04242763 +#> iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2) V2 V3 TCl +#> 1 0.03418487 0.09613456 0.16156506 40.41229 297.3253 18.2318 +#> 2 -0.07748243 -0.19162629 -0.09772608 40.41229 297.3253 18.2318 +#> 3 0.11418462 0.04707450 0.16807478 40.41229 297.3253 18.2318 +#> 4 0.12375822 -0.03202817 0.20011273 40.41229 297.3253 18.2318 +#> 5 -0.10228126 0.07826439 0.22500170 40.41229 297.3253 18.2318 +#> 6 -0.10016671 -0.01462587 0.02336089 40.41229 297.3253 18.2318 +#> eta.Cl TKA eta.Ka Q Kin Kout EC50 +#> 1 -0.20086952 0.2333199 -0.0414174 10.72069 0.9786748 0.9991689 200.2193 +#> 2 0.11308182 0.2333199 -0.3548082 10.72069 0.9786748 0.9991689 200.2193 +#> 3 -0.36755955 0.2333199 0.1558984 10.72069 0.9786748 0.9991689 200.2193 +#> 4 -0.18393330 0.2333199 0.3091535 10.72069 0.9786748 0.9991689 200.2193 +#> 5 -0.02736961 0.2333199 -0.2065517 10.72069 0.9786748 0.9991689 200.2193 +#> 6 -0.31209212 0.2333199 -0.3761942 10.72069 0.9786748 0.9991689 200.2193

For between eye variability and between occasion variability each individual simulates a number of variables that become the between eye and between occasion variability; In the case of the eye:

diff --git a/articles/rxode2-plot_files/figure-html/unnamed-chunk-10-1.png b/articles/rxode2-plot_files/figure-html/unnamed-chunk-10-1.png index aa962183e8fe12c0a91652d980d7f7240a7124d5..7338c80038d066cb8ccd0c6d26f2493364d2fe44 100644 GIT binary patch literal 91558 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

w|jTk$HR*?vL|xS@QoF5g(=o}r;a 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 E06Q!8)Bpeg diff --git a/articles/rxode2-plot_files/figure-html/unnamed-chunk-6-1.png b/articles/rxode2-plot_files/figure-html/unnamed-chunk-6-1.png index 6436e5c7eddec71b0bee2f94e154e0e5b177c6ed..b954465a736fa05055a301d05a407b6d86e3b9b6 100644 GIT binary patch literal 190939 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

8sbA%I(oPSHQ|i=tWN9Kf*jM{`i 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 literal 182790 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%0A}&{er73?zxu2)nK9uPT`1)62u_g#1Ax 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 Q$s$7M+~u=a&FlC63o@JszyJUM diff --git a/articles/rxode2-plot_files/figure-html/unnamed-chunk-8-1.png b/articles/rxode2-plot_files/figure-html/unnamed-chunk-8-1.png index 3a5ab40079c6c06c15bb3eaefdc05b945050e75e..8c59871016d764dc7489e0d10f89a573702fb899 100644 GIT binary patch literal 471036 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�q__J_KY(c-iq#Ma9%ie->D|AkPDC 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

^}JQ`5nqQ7kDEzbGDgex#k~c+=MN=3dh` z%O0${F(&d)4y>IT+wUO1K9#JunlO#F686{2i6CM^*E;HRs2S)(q`l z;)wS2@c5hJnETd{ibx<}L%X?^XC$-US*dXc&0PsxQLao`*&e7U2s8f12>|3GYzrXk zH06+(xo?9LIUojQMHLu5h7awf_TON>4Wxt)|NObLdcOMCFj>yR)Ie}Qxt12>ka$`= zd*OlxR4II@NfcS%{xid1&O9pY245%ay*_)sT;cRgEOAmnkg>z7QeewIV544Mg3=g7 zKtUo;@(aJ)NOY`~mGE%IHlZAj^M~Aq*N!ohKCI#1{4o*xyEg*r=9m042zlIg4viDg zzvQ+eWF12rkAtlLuksK}1Y=-7-Qyw}<4-!}WLZOzg1cdvpNG$ZdDqRC++(w@<{xQF zQOpx`?0@0POCK!Fe|-*oMAo<+ThLoWp)0}cWRT<=*m5;wp5S@|;ZWvnJDzW(#6qJ8lk6u!$ zU^lV=9Ufm2idJ*o?&0HO@-`Rg!3H?HJ|EmMxp)AbarQtWFo}r_g zi3M)}{=<95VEVk180$Ve#Ui6H*JHFi)#Zi>-Sp8e`%rM4FU#dS^!X6R@(#(ysH(ble)`uX+>lLF z%@VOESVHL4YtI4j1kuq+T zVNPv)UW1{}qa3%jL0W@AdJP)4_UkdKif-0pfB*J4O{Nli1_p>Nj}S?JHiy{zwE=Z= z(&CZ(NpWU*P06e_5^Tsz^tV4vbtce_YcWnt^^5XzpzpkbC}Y>U1xgiJ~$ z9WyaDw#zCfkm!Bt{h^9srKLiQ1`*scy@DU}3f3a$X)1I`&1DmweT#*Gb>6bRU9rK^ zgyV~gUoBxo`Oafqu6()xH>uNDa%$mH7D>Ky;J|Ks4%O7lIIG9oxBQ9zlu^@E67=&} zVp|}Xa8l=_mwsYerF+^10KL51EZWvtD2|ZTNv`y#QlwfX#mU1%$g5Rh`!s!Y(>)ky zSIRraZ7T9tFAGKQ4knzLUqM204;M~GQWaNr0UJs<$6nSp@6Qi=gN=9;L`%&xOS`R! zMZMEm;(A_Lx`F|xIiIh1u`RkOsCAKXh|$R~P*L2Qzm!AFH{8W?6de~y4^-HK+<6G2 z6-Na%?l27+Kd{8~;6u$X!C#kAiTY<&#tI9J{leAP<%c`GwXhcgQJFg z8Nk6^7o=5^BgV5AQG8#iNbc?J&FYNH>zxL1#!v~(KME5W%Gc6;3`ZIHBHr2TOF~^o zB?NhGsCgL62x#!9FqtkY6aC$f{l_U36pOZOka^^4W-tWAT{L)ata&vn*6^pZqe6sm9`hr}Vyj z4I(B5CtTKogjaihCCR^8=n2jdVzok|Fqs%@sIc8<5YmL4VeoE}$CX}&kAIx8jUAXF z_8o$ZWo>ylEJ}q+JfS{G}EAL7X(2h z0VfG1>hA82vp>VEdC()?P>5Hs^CIaWJ-2Zf*=6W9{d4e+bAIWzVH+&ML{wAbJ1dS+ zBV+kGaIfTE-%W;rC#2Hm)}&%Sszue{_u&Q-_g+#ACp)dyv0~F zSv|D^ZHleh$@nf?Gqa-0t>EN_oNI<0mg^S>E76S*W#o+uU+Zd`KjIEP%o@Z2omy@4 zI()88;u88_hWAwv;nnFcc<_Ypb?v2NgsbhAnom1>?20uqg4s?OK!8sw@cJ)-KVM!L z?+A%I8Qc{^HA|mGS`)NaVp~$Kh;I}_)Q%E}(xk(x5ZvW^&Kaif{Nbu;1J{)lJgOi? z%nfhH{smv@dr1ER=|qc5@3hLPX`2x26)OzC^ZyK%2^_&+&+7^N_|(n1ly0MenFIG@xyq7p$~KoiI4 zxMz%u>-OXmE0l!HG_I%qyy1%>vClaWYdU)+W%~P8RWym-|5qU!v(_KXS zC=@iF6rLBi5mSaaD@4IdzItyvkOn##`bn)Ato-WISNe^q^1C(7TpGt zToT@XVD;lCc#wp(X#qyNIo+f=`ZzD8cF4;nnyh{b-C~^70`W|(fj?wkW23LM7|qQI zEjhmK`Tb{Jn0|Wgg1e6mnd%NV!y9Hcer@_ztru@9t+mdqNo6|_))_1Kj?FaAGk%!HHJ*VZ&) zfAO!LaMCAGPQFwtUcbJ+-rAy^0qGA(wL{$cbl|Vpuq=`CtwCQdDU|To#>T+rsb!tb ziOrf$t?e({_pE!`Tq{cBzJ>r14lQTs>g*GcZp zrH%f9B15&4Ts;p-&E9iVud#Nrda0TiW4WSDdkaCXTYalvZvJsPp1)iww;mb95klaq zwJCvaRo&zU@3$ImM(CF6gb?O|;p-P2#owv&Av$vd*z`jo{rgY8f1#+SsJoQ(+| z4APprtaN!7pcak`gTm{{oAeRfFFUQ0j0e{3f=#~5sM-)FfzabjAmNxbaV}0iM*(qV zwwz$5!a0eWm4rHmF*05t7YMoY>nd$s3sra#B<@3=Kj!A>AAfjPO=qjfx#u+Mw8~L{ zuGeDjBu(`NR?&w8kD`EvaAj>{qd&sAR)Nu3XfgZr*u49YEkBC5o^psjpFKVq-&(fI z5|hcj7CUun4HB!R^H*e^e&d(LjNA`SR#@1bIl*dlAcKh}UVOV(av7ClT0<^nTfF+;BX;n*#k576`CYx4~TF83Z})qbUU}flMuC=nnF9M z>yUDU-TE|?rz#r{bfAZo|2RE8%@p0-Ze>$Y?H=@VWFcE&=4u*+sqy?gKpH7~s=%`l zH~!Yx6|Z25yDX^~Vn4jDSmM&^dZ^@0@#A<TM{b;%R`ozPfaC=<0)?X-3ZiyKde#+Gm`+JMe4}p%%}~ z5viW(TGO(W|LFC)Y41L-Kf_^(7%qWq^DSPjKcVt%wCIT1=xKK;C%XS6`IhJB?~byb zM@Pf{!)a1pUn9S}wli{h_QSNxp~uRIjsrU4_17stdy*scecwyfGpN7`TmhIqT$O0e zrQgQIv9)~0{U-{l2lMk=Q!Y=hYe>YoFM8D8FYV(vpFH<*YNX!hF*it^nz6l-j|=i> z4|wkiCX8zNXd6!5t!(U&oa{3qkB(;g3ZYKcanX2n5!S5iv=gkMg59rwn7 zu$X?o6e8HPbK4qdZXH<&sYrA;mDTmXb}HQTipfcRVwlTayW#C(T{Dj722~dZh}viz zR2H?!Ka$eHGRE&%!ZF9T LQx8?UU5rqC4kR%ANb9)|G-gHo23dXjnW*VF%5 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%0DG$htRE1Bh`PzlZ$@;8xG)5C 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%0AC#F1EwXW+KE8}x?9VZl6*i{ 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

8H^L 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 UKr#GKiuBCN+|I1jUsing prior data for solving#> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 12 × 7 -#> id tka tcl tv eta.ka eta.cl eta.v -#> <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> -#> 1 1 0.451 1.02 3.45 -0.431 0.185 0.143 -#> 2 2 0.451 1.02 3.45 0.0585 -0.518 -0.127 -#> 3 3 0.451 1.02 3.45 0.710 -0.180 -0.130 -#> 4 4 0.451 1.02 3.45 1.16 0.0582 0.230 -#> 5 5 0.451 1.02 3.45 0.406 0.227 -0.0981 -#> 6 6 0.451 1.02 3.45 0.0960 0.0544 -0.658 -#> 7 7 0.451 1.02 3.45 -0.0790 0.519 0.0537 -#> 8 8 0.451 1.02 3.45 -1.70 -0.670 -0.118 -#> 9 9 0.451 1.02 3.45 -0.582 -0.546 -0.305 -#> 10 10 0.451 1.02 3.45 -0.275 -0.303 -0.298 -#> 11 11 0.451 1.02 3.45 0.564 -0.245 0.00526 -#> 12 12 0.451 1.02 3.45 0.126 0.353 0.211 +#> id tka tcl tv eta.ka eta.cl eta.v +#> <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> +#> 1 1 0.451 1.02 3.45 -0.0599 -0.281 -0.0622 +#> 2 2 0.451 1.02 3.45 0.469 -1.66 -0.245 +#> 3 3 0.451 1.02 3.45 -1.38 0.234 0.103 +#> 4 4 0.451 1.02 3.45 0.0553 -0.336 -0.298 +#> 5 5 0.451 1.02 3.45 0.849 -0.0873 -0.278 +#> 6 6 0.451 1.02 3.45 1.77 -0.378 0.296 +#> 7 7 0.451 1.02 3.45 -0.476 -0.218 -0.0439 +#> 8 8 0.451 1.02 3.45 1.34 -0.146 -0.498 +#> 9 9 0.451 1.02 3.45 -0.447 0.444 -0.0631 +#> 10 10 0.451 1.02 3.45 0.337 0.450 -0.195 +#> 11 11 0.451 1.02 3.45 -0.304 0.0651 -0.575 +#> 12 12 0.451 1.02 3.45 0.131 0.325 -0.258 #> ── Initial Conditions ($inits): ── #> depot center #> 0 0 @@ -263,12 +263,12 @@

Using prior data for solving#> # A tibble: 132 × 8 #> id time ka cl v cp depot center #> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> -#> 1 1 0 1.02 3.33 36.3 0 320. 0 -#> 2 1 0.25 1.02 3.33 36.3 1.96 248. 71.2 -#> 3 1 0.57 1.02 3.33 36.3 3.78 179. 137. -#> 4 1 1.12 1.02 3.33 36.3 5.65 102. 205. -#> 5 1 2.02 1.02 3.33 36.3 6.81 40.8 247. -#> 6 1 3.82 1.02 3.33 36.3 6.63 6.50 241. +#> 1 1 0 1.48 2.09 29.6 0 320. 0 +#> 2 1 0.25 1.48 2.09 29.6 3.31 221. 98.0 +#> 3 1 0.57 1.48 2.09 29.6 6.02 138. 178. +#> 4 1 1.12 1.48 2.09 29.6 8.33 61.1 246. +#> 5 1 2.02 1.48 2.09 29.6 9.28 16.1 274. +#> 6 1 3.82 1.48 2.09 29.6 8.64 1.13 255. #> # ℹ 126 more rows ## Of course the fasest way to solve if you don't care about the rxode2 extra parameters is @@ -282,31 +282,31 @@

Using prior data for solving#> # A tibble: 132 × 8 #> id time ka cl v cp depot center #> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> -#> 1 1 0 2.30 1.43 38.7 0 3.20e+2 0 -#> 2 1 0.25 2.30 1.43 38.7 3.60 1.80e+2 139. -#> 3 1 0.57 2.30 1.43 38.7 5.96 8.62e+1 231. -#> 4 1 1.12 2.30 1.43 38.7 7.42 2.43e+1 287. -#> 5 1 2.02 2.30 1.43 38.7 7.72 3.07e+0 299. -#> 6 1 3.82 2.30 1.43 38.7 7.30 4.87e-2 282. -#> 7 1 5.1 2.30 1.43 38.7 6.96 2.56e-3 269. -#> 8 1 7.03 2.30 1.43 38.7 6.48 3.02e-5 251. -#> 9 1 9.05 2.30 1.43 38.7 6.02 2.89e-7 233. -#> 10 1 12.1 2.30 1.43 38.7 5.37 1.54e-9 208. +#> 1 1 0 0.572 3.82 26.9 0 320. 0 +#> 2 1 0.25 0.572 3.82 26.9 1.56 277. 41.9 +#> 3 1 0.57 0.572 3.82 26.9 3.17 231. 85.4 +#> 4 1 1.12 0.572 3.82 26.9 5.16 169. 139. +#> 5 1 2.02 0.572 3.82 26.9 6.90 101. 186. +#> 6 1 3.82 0.572 3.82 26.9 7.42 35.9 200. +#> 7 1 5.1 0.572 3.82 26.9 6.81 17.3 183. +#> 8 1 7.03 0.572 3.82 26.9 5.55 5.72 149. +#> 9 1 9.05 0.572 3.82 26.9 4.29 1.80 115. +#> 10 1 12.1 0.572 3.82 26.9 2.81 0.311 75.7 #> # ℹ 122 more rows data.table::data.table(solveData) -#> id time ka cl v cp depot center -#> 1: 1 0.00 2.300935 1.427091 38.71162 0.000000 3.199920e+02 0.00000 -#> 2: 1 0.25 2.300935 1.427091 38.71162 3.597596 1.800190e+02 139.26877 -#> 3: 1 0.57 2.300935 1.427091 38.71162 5.962771 8.620795e+01 230.82849 -#> 4: 1 1.12 2.300935 1.427091 38.71162 7.422420 2.431874e+01 287.33387 -#> 5: 1 2.02 2.300935 1.427091 38.71162 7.717302 3.066092e+00 298.74922 -#> --- -#> 128: 12 5.07 2.042580 3.811162 47.41169 4.683446 1.019822e-02 222.05007 -#> 129: 12 7.07 2.042580 3.811162 47.41169 3.988089 1.715374e-04 189.08201 -#> 130: 12 9.03 2.042580 3.811162 47.41169 3.406753 3.130922e-06 161.51988 -#> 131: 12 12.05 2.042580 3.811162 47.41169 2.672458 6.357558e-09 126.70572 -#> 132: 12 24.15 2.042580 3.811162 47.41169 1.010399 -4.063231e-09 47.90474 +#> id time ka cl v cp depot center +#> 1: 1 0.00 0.5724265 3.820799 26.90346 0.000000 3.199920e+02 0.00000 +#> 2: 1 0.25 0.5724265 3.820799 26.90346 1.557454 2.773248e+02 41.90091 +#> 3: 1 0.57 0.5724265 3.820799 26.90346 3.173836 2.309065e+02 85.38718 +#> 4: 1 1.12 0.5724265 3.820799 26.90346 5.160704 1.685409e+02 138.84080 +#> 5: 1 2.02 0.5724265 3.820799 26.90346 6.896249 1.006847e+02 185.53296 +#> --- +#> 128: 12 5.07 3.0179183 2.472543 28.72246 7.427310 7.260196e-05 213.33063 +#> 129: 12 7.07 3.0179183 2.472543 28.72246 6.252592 1.738745e-07 179.58985 +#> 130: 12 9.03 3.0179183 2.472543 28.72246 5.281827 -2.728387e-09 151.70708 +#> 131: 12 12.05 3.0179183 2.472543 28.72246 4.072673 1.594573e-09 116.97721 +#> 132: 12 24.15 3.0179183 2.472543 28.72246 1.437184 1.386272e-10 41.27947 diff --git a/articles/rxode2-prior-data_files/figure-html/unnamed-chunk-5-1.png b/articles/rxode2-prior-data_files/figure-html/unnamed-chunk-5-1.png index 0e25483950fa9d329a75829c686cad1b8efa489a..6e8023cc6e6e44727ce5cc50d4b782a84a85a17d 100644 GIT binary patch literal 154840 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�hP%EPI6KxnY8uMCkgi9uyoGz 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 z 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 diff --git a/articles/rxode2-speed.html b/articles/rxode2-speed.html index fe369dd6a..ea106f224 100644 --- a/articles/rxode2-speed.html +++ b/articles/rxode2-speed.html @@ -262,8 +262,8 @@

    A note about t output. You can see the differences below:

     summary(mod1$simulationModel)
    -#> rxode2 2.0.14.9000 model named rx_dc699e1c896b208ee1d2c3d40f0517f6 model ( ready). 
    -#> DLL: /tmp/RtmphFlXM3/rxode2/rx_dc699e1c896b208ee1d2c3d40f0517f6__.rxd/rx_dc699e1c896b208ee1d2c3d40f0517f6_.so
    +#> rxode2 2.0.14.9000 model named rx_3db52194eb7226d83c8555109940bf90 model ( ready). 
    +#> DLL: /tmp/RtmpG6A6n6/rxode2/rx_3db52194eb7226d83c8555109940bf90__.rxd/rx_3db52194eb7226d83c8555109940bf90_.so
     #> NULL
     #> 
     #> Calculated Variables:
    @@ -281,8 +281,8 @@ 

    A note about t #> }) summary(mod1$simulationIniModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ -#> rxode2 2.0.14.9000 model named rx_a70bc38d73df7fd8798a4d16d23549b7 model ( ready). -#> DLL: /tmp/RtmphFlXM3/rxode2/rx_a70bc38d73df7fd8798a4d16d23549b7__.rxd/rx_a70bc38d73df7fd8798a4d16d23549b7_.so +#> rxode2 2.0.14.9000 model named rx_90dfb781eb7a2b58bc36489c28ba4170 model ( ready). +#> DLL: /tmp/RtmpG6A6n6/rxode2/rx_90dfb781eb7a2b58bc36489c28ba4170__.rxd/rx_90dfb781eb7a2b58bc36489c28ba4170_.so #> NULL #> #> Calculated Variables: @@ -308,8 +308,8 @@

    A note about t #> }) summary(mod2$simulationModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ -#> rxode2 2.0.14.9000 model named rx_4f35e2e99d243ab6809555688909b8b5 model ( ready). -#> DLL: /tmp/RtmphFlXM3/rxode2/rx_4f35e2e99d243ab6809555688909b8b5__.rxd/rx_4f35e2e99d243ab6809555688909b8b5_.so +#> rxode2 2.0.14.9000 model named rx_65a417b472870474db4a0697fcb95aee model ( ready). +#> DLL: /tmp/RtmpG6A6n6/rxode2/rx_65a417b472870474db4a0697fcb95aee__.rxd/rx_65a417b472870474db4a0697fcb95aee_.so #> NULL #> #> Calculated Variables: @@ -365,8 +365,8 @@

    A note about t #> }) summary(mod2$simulationIniModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ -#> rxode2 2.0.14.9000 model named rx_6e671c0a1d256755528eea1281ce8326 model ( ready). -#> DLL: /tmp/RtmphFlXM3/rxode2/rx_6e671c0a1d256755528eea1281ce8326__.rxd/rx_6e671c0a1d256755528eea1281ce8326_.so +#> rxode2 2.0.14.9000 model named rx_54cbbfad6ad14a3e7e87c2ad66f30d45 model ( ready). +#> DLL: /tmp/RtmpG6A6n6/rxode2/rx_54cbbfad6ad14a3e7e87c2ad66f30d45__.rxd/rx_54cbbfad6ad14a3e7e87c2ad66f30d45_.so #> NULL #> #> Calculated Variables: @@ -552,10 +552,10 @@

    Compare the times between all print(bench) #> Unit: milliseconds #> expr min lq mean median uq max -#> runFor() 270.69599 276.55658 287.34527 279.04749 283.91232 399.33829 -#> runSapply() 270.92489 277.10728 286.33457 279.31426 284.37742 395.99029 -#> runSingleThread() 28.37033 28.55639 29.56166 28.67460 28.90486 47.37217 -#> run2Thread() 16.90444 17.11417 18.66124 17.29484 17.65497 29.40771 +#> runFor() 271.12972 276.67950 289.11109 279.70390 286.03731 446.06617 +#> runSapply() 272.23359 277.92463 285.46407 280.02252 282.28206 334.06174 +#> runSingleThread() 29.13699 29.36107 30.10626 29.53718 29.83150 47.24153 +#> run2Thread() 17.12262 17.47965 19.08089 17.68412 18.22007 29.85472 #> neval #> 100 #> 100 @@ -582,10 +582,10 @@

    Compare the times between all print(bench) #> Unit: milliseconds #> expr min lq mean median uq max neval -#> runThread(1) 28.50206 28.80758 30.07428 29.76448 30.28849 51.17343 100 -#> runThread(2) 16.99616 17.40397 19.68778 18.00946 19.60652 29.88473 100 -#> runThread(3) 18.74504 19.83795 20.51225 20.06909 20.67744 28.24697 100 -#> runThread(4) 16.64245 16.94800 19.28947 17.38783 17.77615 38.09974 100

    +#> runThread(1) 29.12487 29.43899 30.58305 30.71440 30.92168 44.55127 100 +#> runThread(2) 17.20634 17.49846 19.80544 18.10535 18.60669 31.77304 100 +#> runThread(3) 18.93741 20.09896 20.76630 20.24559 20.99026 26.60115 100 +#> runThread(4) 16.59801 17.00669 19.51821 17.49137 17.87127 39.42654 100
     autoplot(bench)

    @@ -675,7 +675,7 @@

    A real life exampleStoplapply <- Sys.time() print(Stoplapply - Startlapply) -#> Time difference of 12.56756 secs +#> Time difference of 13.26343 secs

    By applying some of the new parallel solving concepts you can simply run the same simulation both with less code and faster:

    @@ -716,7 +716,7 @@ 

    A real life exampleres <- rxSolve(rx, ev, omega=omega, returnType="data.table") endParallel <- Sys.time() print(endParallel - startParallel) -#> Time difference of 0.1166935 secs

    +#> Time difference of 0.1396136 secs

    You can see a striking time difference between the two methods; A few things to keep in mind:

      diff --git a/articles/rxode2-speed_files/figure-html/unnamed-chunk-10-1.png b/articles/rxode2-speed_files/figure-html/unnamed-chunk-10-1.png index 455b33e26e3add24a172621d434f603fed47156e..d19541314235d0c44c5584ea5dd27ead9f9a549b 100644 GIT binary patch literal 39819 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 literal 37990 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 VH@_L($C;lGa7PII2}9<&l-7}=*; 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

      LZNXq+L0`HLe*+&OG87o` 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 Rz%VUQzQ6Rn*uSsa`9FabL1zE} diff --git a/articles/rxode2-stiff.html b/articles/rxode2-stiff.html index 6d6552365..003001d76 100644 --- a/articles/rxode2-stiff.html +++ b/articles/rxode2-stiff.html @@ -285,8 +285,8 @@

      Stiff ODEs with Jacobian Specifi
      ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
       summary(Vtpol)
      -
      ## rxode2 2.0.14.9000 model named rx_c792fb32c025c71523ec364315978cdc model (ready). 
      -## DLL: /tmp/RtmphFlXM3/rxode2/rx_c792fb32c025c71523ec364315978cdc__.rxd/rx_c792fb32c025c71523ec364315978cdc_.so
      +
      ## rxode2 2.0.14.9000 model named rx_c05195f423e3220f71a614f5fab50a25 model (ready). 
      +## DLL: /tmp/RtmpG6A6n6/rxode2/rx_c05195f423e3220f71a614f5fab50a25__.rxd/rx_c05195f423e3220f71a614f5fab50a25_.so
       ## NULL
       ## -- rxode2 Model Syntax --
       ## rxode2({
      diff --git a/articles/rxode2-syntax.html b/articles/rxode2-syntax.html
      index e3ff9ccd6..c8afd9654 100644
      --- a/articles/rxode2-syntax.html
      +++ b/articles/rxode2-syntax.html
      @@ -278,7 +278,7 @@ 

      Creating rxode2 models
       mod$simulationModel
       #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
      -#> rxode2 2.0.14.9000 model named rx_22c65ca558a86c952936b1c78fe8feda model ( ready). 
      +#> rxode2 2.0.14.9000 model named rx_1eb11bdbc53aabad075c1318619d9fe3 model ( ready). 
       #> x$state: depot, center
       #> x$stateExtra: cp
       #> x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp
      @@ -287,7 +287,7 @@ 

      Creating rxode2 models# or mod$simulationIniModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ -#> rxode2 2.0.14.9000 model named rx_d8248586348ac8457375cc5740d5422f model ( ready). +#> rxode2 2.0.14.9000 model named rx_9fe88e4b34f46ef88e20ceb6ae68fc17 model ( ready). #> x$state: depot, center #> x$stateExtra: cp #> x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp @@ -456,8 +456,8 @@

      Supported functionsrxSupportedFuns().

      A brief description of the built-in functions are in the following table:

      -
      -

      Note that lag(cmt) = is equivalent to +

      +

      Note that lag(cmt) = is equivalent to alag(cmt) = and not the same as = lag(wt)

      @@ -465,8 +465,8 @@

      Reserved keywords

      -

      Note that rxFlag will always output 11 or +

      +

      Note that rxFlag will always output 11 or calc_lhs since that is where the final variables are calculated, though you can tweak or test certain parts of rxode2 by using this flag.

      @@ -497,8 +497,8 @@

      TransformationsFor normal and related distributions, you can apply the transformation on both sides by using some keywords/functions to apply these transformations.

      -
      -

      By default for the likelihood for all of these transformations is +

      +

      By default for the likelihood for all of these transformations is calculated on the untransformed scale.

      For bounded variables like logit-normal or probit-normal the low and high values are defaulted to 0 and 1 if missing.

      @@ -517,8 +517,8 @@

    Internal new features

    diff --git a/pkgdown.yml b/pkgdown.yml index 26e5aaf73..3dda489a7 100644 --- a/pkgdown.yml +++ b/pkgdown.yml @@ -26,7 +26,7 @@ articles: rxode2-transit-compartments: rxode2-transit-compartments.html rxode2-tutorials: rxode2-tutorials.html rxode2-wt: rxode2-wt.html -last_built: 2023-11-30T00:04Z +last_built: 2023-11-30T01:15Z urls: reference: https://nlmixr2.github.io/rxode2/reference article: https://nlmixr2.github.io/rxode2/articles diff --git a/reference/binomProbs.html b/reference/binomProbs.html index 7d6e0ea9f..bac3a098f 100644 --- a/reference/binomProbs.html +++ b/reference/binomProbs.html @@ -282,21 +282,21 @@

    Examplesx<- rbinom(7001, p=0.375, size=1) binomProbs(x) #> 2.5% 5% 50% 95% 97.5% -#> 0.3561590 0.3579519 0.3673761 0.3769027 0.3787386 +#> 0.3483595 0.3501427 0.3595201 0.3690059 0.3708347 # you can also use the prediction interval # \donttest{ binomProbs(x, pred=TRUE) #> 2.5% 5% 50% 95% 97.5% -#> 0.3515212 0.3540923 0.3673761 0.3808027 0.3833738 +#> 0.3438080 0.3462363 0.3595201 0.3729467 0.3755178 # } # Can get some extra statistics if you request onlyProbs=FALSE binomProbs(x, onlyProbs=FALSE) #> mean var sd n 2.5% 5% -#> 0.3673761 0.2324109 0.4820901 7001.0000000 0.3561590 0.3579519 +#> 0.3595201 0.2302654 0.4798598 7001.0000000 0.3483595 0.3501427 #> 50% 95% 97.5% -#> 0.3673761 0.3769027 0.3787386 +#> 0.3595201 0.3690059 0.3708347 x[2] <- NA_real_ @@ -306,7 +306,7 @@

    Examples binomProbs(x, na.rm=TRUE) #> 2.5% 5% 50% 95% 97.5% -#> 0.3562103 0.3580034 0.3674286 0.3769562 0.3787922 +#> 0.3484097 0.3501931 0.3595714 0.3690582 0.3708872

    diff --git a/reference/dot-rxWithWd.html b/reference/dot-rxWithWd.html index f79e4f8fc..5b7e42d6d 100644 --- a/reference/dot-rxWithWd.html +++ b/reference/dot-rxWithWd.html @@ -161,7 +161,7 @@

    Examples.rxWithWd(tempdir(), { getwd() }) -#> [1] "/tmp/RtmphFlXM3" +#> [1] "/tmp/RtmpG6A6n6" getwd() #> [1] "/home/runner/work/rxode2/rxode2/docs/reference" diff --git a/reference/meanProbs.html b/reference/meanProbs.html index 1fa69a551..a017f1d78 100644 --- a/reference/meanProbs.html +++ b/reference/meanProbs.html @@ -242,19 +242,19 @@

    Examples
    
     quantile(x<- rnorm(1001))
     #>          0%         25%         50%         75%        100% 
    -#> -3.66081708 -0.70662935  0.04051239  0.68069607  3.03578322 
    +#> -2.97323949 -0.73533239 -0.01129805  0.72491996  3.27777284 
     meanProbs(x)
    -#>           0%          25%          50%          75%         100% 
    -#> -3.660817079 -0.038037712 -0.016742502  0.004552709  3.035783219 
    +#>            0%           25%           50%           75%          100% 
    +#> -2.9732394937 -0.0449769963 -0.0226253316 -0.0002736669  3.2777728424 
     
     # Can get some extra statistics if you request onlyProbs=FALSE
     meanProbs(x, onlyProbs=FALSE)
     #>          mean           var            sd           min           max 
    -#> -1.674250e-02  9.970829e-01  9.985404e-01 -3.660817e+00  3.035783e+00 
    +#> -2.262533e-02  1.098467e+00  1.048078e+00 -2.973239e+00  3.277773e+00 
     #>             n            0%           25%           50%           75% 
    -#>  1.001000e+03 -3.660817e+00 -3.803771e-02 -1.674250e-02  4.552709e-03 
    +#>  1.001000e+03 -2.973239e+00 -4.497700e-02 -2.262533e-02 -2.736669e-04 
     #>          100% 
    -#>  3.035783e+00 
    +#>  3.277773e+00 
     
     x[2] <- NA_real_
     
    @@ -264,15 +264,15 @@ 

    Examples quantile(x<- rnorm(42)) #> 0% 25% 50% 75% 100% -#> -1.6269261 -0.9776975 -0.2483610 0.6196909 2.5541653 +#> -2.4618924 -0.4784656 0.1486266 0.7796569 2.0551184 meanProbs(x) -#> 0% 25% 50% 75% 100% -#> -1.62692608 -0.16714488 -0.05481415 0.05751658 2.55416531 +#> 0% 25% 50% 75% 100% +#> -2.461892403 -0.008671441 0.095665292 0.200002026 2.055118383 meanProbs(x, useT=FALSE) -#> 0% 25% 50% 75% 100% -#> -1.62692608 -0.16614937 -0.05481415 0.05652107 2.55416531 +#> 0% 25% 50% 75% 100% +#> -2.461892403 -0.007746777 0.095665292 0.199077362 2.055118383

    diff --git a/reference/myapp/mod1.d/mod1_.c b/reference/myapp/mod1.d/mod1_.c index 4ab3a7415..8e096d865 100644 --- a/reference/myapp/mod1.d/mod1_.c +++ b/reference/myapp/mod1.d/mod1_.c @@ -1,119 +1,119 @@ -#define _getRxSolve_ _rxmod1_fd70789695b9683637113f50a6fda5e90 -#define _evalUdf _rxmod1_fd70789695b9683637113f50a6fda5e91 -#define _solveData _rxmod1_fd70789695b9683637113f50a6fda5e92 -#define _assign_ptr _rxmod1_fd70789695b9683637113f50a6fda5e93 -#define _rxRmModelLib _rxmod1_fd70789695b9683637113f50a6fda5e94 -#define _rxGetModelLib _rxmod1_fd70789695b9683637113f50a6fda5e95 -#define _old_c _rxmod1_fd70789695b9683637113f50a6fda5e96 -#define _ptrid _rxmod1_fd70789695b9683637113f50a6fda5e97 -#define _rxIsCurrentC _rxmod1_fd70789695b9683637113f50a6fda5e98 -#define _sumPS _rxmod1_fd70789695b9683637113f50a6fda5e99 -#define _prodPS _rxmod1_fd70789695b9683637113f50a6fda5e910 -#define _prodType _rxmod1_fd70789695b9683637113f50a6fda5e911 -#define _sumType _rxmod1_fd70789695b9683637113f50a6fda5e912 -#define _update_par_ptr _rxmod1_fd70789695b9683637113f50a6fda5e913 -#define _getParCov _rxmod1_fd70789695b9683637113f50a6fda5e914 -#define _rxode2_rxAssignPtr _rxmod1_fd70789695b9683637113f50a6fda5e915 -#define _rxQr _rxmod1_fd70789695b9683637113f50a6fda5e916 -#define _compareFactorVal _rxmod1_fd70789695b9683637113f50a6fda5e917 -#define _sum _rxmod1_fd70789695b9683637113f50a6fda5e918 -#define _udf _rxmod1_fd70789695b9683637113f50a6fda5e919 -#define _sign _rxmod1_fd70789695b9683637113f50a6fda5e920 -#define _prod _rxmod1_fd70789695b9683637113f50a6fda5e921 -#define _max _rxmod1_fd70789695b9683637113f50a6fda5e922 -#define _min _rxmod1_fd70789695b9683637113f50a6fda5e923 -#define _transit4P _rxmod1_fd70789695b9683637113f50a6fda5e924 -#define _transit3P _rxmod1_fd70789695b9683637113f50a6fda5e925 -#define _assignFuns0 _rxmod1_fd70789695b9683637113f50a6fda5e926 -#define _assignFuns _rxmod1_fd70789695b9683637113f50a6fda5e927 -#define _rxord _rxmod1_fd70789695b9683637113f50a6fda5e928 -#define __assignFuns2 _rxmod1_fd70789695b9683637113f50a6fda5e929 -#define _llikCauchyDscale _rxmod1_fd70789695b9683637113f50a6fda5e930 -#define _llikCauchyDlocation _rxmod1_fd70789695b9683637113f50a6fda5e931 -#define _llikCauchy _rxmod1_fd70789695b9683637113f50a6fda5e932 -#define _llikGammaDrate _rxmod1_fd70789695b9683637113f50a6fda5e933 -#define _llikGammaDshape _rxmod1_fd70789695b9683637113f50a6fda5e934 -#define _llikGamma _rxmod1_fd70789695b9683637113f50a6fda5e935 -#define _llikWeibullDscale _rxmod1_fd70789695b9683637113f50a6fda5e936 -#define _llikWeibullDshape _rxmod1_fd70789695b9683637113f50a6fda5e937 -#define _llikWeibull _rxmod1_fd70789695b9683637113f50a6fda5e938 -#define _llikUnifDbeta _rxmod1_fd70789695b9683637113f50a6fda5e939 -#define _llikUnifDalpha _rxmod1_fd70789695b9683637113f50a6fda5e940 -#define _llikUnif _rxmod1_fd70789695b9683637113f50a6fda5e941 -#define _llikGeomDp _rxmod1_fd70789695b9683637113f50a6fda5e942 -#define _llikGeom _rxmod1_fd70789695b9683637113f50a6fda5e943 -#define _llikFDdf2 _rxmod1_fd70789695b9683637113f50a6fda5e944 -#define _llikFDdf1 _rxmod1_fd70789695b9683637113f50a6fda5e945 -#define _llikF _rxmod1_fd70789695b9683637113f50a6fda5e946 -#define _llikExpDrate _rxmod1_fd70789695b9683637113f50a6fda5e947 -#define _llikExp _rxmod1_fd70789695b9683637113f50a6fda5e948 -#define _llikChisqDdf _rxmod1_fd70789695b9683637113f50a6fda5e949 -#define _llikChisq _rxmod1_fd70789695b9683637113f50a6fda5e950 -#define _llikTDsd _rxmod1_fd70789695b9683637113f50a6fda5e951 -#define _llikTDmean _rxmod1_fd70789695b9683637113f50a6fda5e952 -#define _llikTDdf _rxmod1_fd70789695b9683637113f50a6fda5e953 -#define _llikT _rxmod1_fd70789695b9683637113f50a6fda5e954 -#define _llikBetaDshape2 _rxmod1_fd70789695b9683637113f50a6fda5e955 -#define _llikBetaDshape1 _rxmod1_fd70789695b9683637113f50a6fda5e956 -#define _llikBeta _rxmod1_fd70789695b9683637113f50a6fda5e957 -#define _llikNbinomMuDmu _rxmod1_fd70789695b9683637113f50a6fda5e958 -#define _llikNbinomMu _rxmod1_fd70789695b9683637113f50a6fda5e959 -#define _llikNbinomDprob _rxmod1_fd70789695b9683637113f50a6fda5e960 -#define _llikNbinom _rxmod1_fd70789695b9683637113f50a6fda5e961 -#define _llikBinomDprob _rxmod1_fd70789695b9683637113f50a6fda5e962 -#define _llikBinom _rxmod1_fd70789695b9683637113f50a6fda5e963 -#define _llikPoisDlambda _rxmod1_fd70789695b9683637113f50a6fda5e964 -#define _llikPois _rxmod1_fd70789695b9683637113f50a6fda5e965 -#define _llikNormDsd _rxmod1_fd70789695b9683637113f50a6fda5e966 -#define _llikNormDmean _rxmod1_fd70789695b9683637113f50a6fda5e967 -#define _llikNorm _rxmod1_fd70789695b9683637113f50a6fda5e968 -#define simeps _rxmod1_fd70789695b9683637113f50a6fda5e969 -#define simeta _rxmod1_fd70789695b9683637113f50a6fda5e970 -#define expit _rxmod1_fd70789695b9683637113f50a6fda5e971 -#define logit _rxmod1_fd70789695b9683637113f50a6fda5e972 -#define gammapDer _rxmod1_fd70789695b9683637113f50a6fda5e973 -#define lowergamma _rxmod1_fd70789695b9683637113f50a6fda5e974 -#define uppergamma _rxmod1_fd70789695b9683637113f50a6fda5e975 -#define gammaqInva _rxmod1_fd70789695b9683637113f50a6fda5e976 -#define gammaqInv _rxmod1_fd70789695b9683637113f50a6fda5e977 -#define gammapInva _rxmod1_fd70789695b9683637113f50a6fda5e978 -#define gammapInv _rxmod1_fd70789695b9683637113f50a6fda5e979 -#define gammaq _rxmod1_fd70789695b9683637113f50a6fda5e980 -#define gammap _rxmod1_fd70789695b9683637113f50a6fda5e981 -#define phi _rxmod1_fd70789695b9683637113f50a6fda5e982 -#define riweibull _rxmod1_fd70789695b9683637113f50a6fda5e983 -#define riunif _rxmod1_fd70789695b9683637113f50a6fda5e984 -#define rit_ _rxmod1_fd70789695b9683637113f50a6fda5e985 -#define ripois _rxmod1_fd70789695b9683637113f50a6fda5e986 -#define ribeta _rxmod1_fd70789695b9683637113f50a6fda5e987 -#define rigamma _rxmod1_fd70789695b9683637113f50a6fda5e988 -#define rigeom _rxmod1_fd70789695b9683637113f50a6fda5e989 -#define rif _rxmod1_fd70789695b9683637113f50a6fda5e990 -#define riexp _rxmod1_fd70789695b9683637113f50a6fda5e991 -#define richisq _rxmod1_fd70789695b9683637113f50a6fda5e992 -#define ricauchy _rxmod1_fd70789695b9683637113f50a6fda5e993 -#define rinbinomMu _rxmod1_fd70789695b9683637113f50a6fda5e994 -#define rinbinom _rxmod1_fd70789695b9683637113f50a6fda5e995 -#define ribinom _rxmod1_fd70789695b9683637113f50a6fda5e996 -#define rinorm _rxmod1_fd70789695b9683637113f50a6fda5e997 -#define rxweibull _rxmod1_fd70789695b9683637113f50a6fda5e998 -#define rxunif _rxmod1_fd70789695b9683637113f50a6fda5e999 -#define rxt_ _rxmod1_fd70789695b9683637113f50a6fda5e9100 -#define rxpois _rxmod1_fd70789695b9683637113f50a6fda5e9101 -#define rxbeta _rxmod1_fd70789695b9683637113f50a6fda5e9102 -#define rxgamma _rxmod1_fd70789695b9683637113f50a6fda5e9103 -#define rxgeom _rxmod1_fd70789695b9683637113f50a6fda5e9104 -#define rxf _rxmod1_fd70789695b9683637113f50a6fda5e9105 -#define rxexp _rxmod1_fd70789695b9683637113f50a6fda5e9106 -#define rxchisq _rxmod1_fd70789695b9683637113f50a6fda5e9107 -#define rxcauchy _rxmod1_fd70789695b9683637113f50a6fda5e9108 -#define rxnbinomMu _rxmod1_fd70789695b9683637113f50a6fda5e9109 -#define rxnbinom _rxmod1_fd70789695b9683637113f50a6fda5e9110 -#define rxbinom _rxmod1_fd70789695b9683637113f50a6fda5e9111 -#define rxnorm _rxmod1_fd70789695b9683637113f50a6fda5e9112 -#define linCmtC _rxmod1_fd70789695b9683637113f50a6fda5e9113 -#define linCmtB _rxmod1_fd70789695b9683637113f50a6fda5e9114 -#define linCmtA _rxmod1_fd70789695b9683637113f50a6fda5e9115 +#define _getRxSolve_ _rxmod1_eeb51ce336d3cc61649e2cfe6839886e0 +#define _evalUdf _rxmod1_eeb51ce336d3cc61649e2cfe6839886e1 +#define _solveData _rxmod1_eeb51ce336d3cc61649e2cfe6839886e2 +#define _assign_ptr _rxmod1_eeb51ce336d3cc61649e2cfe6839886e3 +#define _rxRmModelLib _rxmod1_eeb51ce336d3cc61649e2cfe6839886e4 +#define _rxGetModelLib _rxmod1_eeb51ce336d3cc61649e2cfe6839886e5 +#define _old_c _rxmod1_eeb51ce336d3cc61649e2cfe6839886e6 +#define _ptrid _rxmod1_eeb51ce336d3cc61649e2cfe6839886e7 +#define _rxIsCurrentC _rxmod1_eeb51ce336d3cc61649e2cfe6839886e8 +#define _sumPS _rxmod1_eeb51ce336d3cc61649e2cfe6839886e9 +#define _prodPS _rxmod1_eeb51ce336d3cc61649e2cfe6839886e10 +#define _prodType _rxmod1_eeb51ce336d3cc61649e2cfe6839886e11 +#define _sumType _rxmod1_eeb51ce336d3cc61649e2cfe6839886e12 +#define _update_par_ptr _rxmod1_eeb51ce336d3cc61649e2cfe6839886e13 +#define _getParCov _rxmod1_eeb51ce336d3cc61649e2cfe6839886e14 +#define _rxode2_rxAssignPtr _rxmod1_eeb51ce336d3cc61649e2cfe6839886e15 +#define _rxQr _rxmod1_eeb51ce336d3cc61649e2cfe6839886e16 +#define _compareFactorVal _rxmod1_eeb51ce336d3cc61649e2cfe6839886e17 +#define _sum _rxmod1_eeb51ce336d3cc61649e2cfe6839886e18 +#define _udf _rxmod1_eeb51ce336d3cc61649e2cfe6839886e19 +#define _sign _rxmod1_eeb51ce336d3cc61649e2cfe6839886e20 +#define _prod _rxmod1_eeb51ce336d3cc61649e2cfe6839886e21 +#define _max _rxmod1_eeb51ce336d3cc61649e2cfe6839886e22 +#define _min _rxmod1_eeb51ce336d3cc61649e2cfe6839886e23 +#define _transit4P _rxmod1_eeb51ce336d3cc61649e2cfe6839886e24 +#define _transit3P _rxmod1_eeb51ce336d3cc61649e2cfe6839886e25 +#define _assignFuns0 _rxmod1_eeb51ce336d3cc61649e2cfe6839886e26 +#define _assignFuns _rxmod1_eeb51ce336d3cc61649e2cfe6839886e27 +#define _rxord _rxmod1_eeb51ce336d3cc61649e2cfe6839886e28 +#define __assignFuns2 _rxmod1_eeb51ce336d3cc61649e2cfe6839886e29 +#define _llikCauchyDscale _rxmod1_eeb51ce336d3cc61649e2cfe6839886e30 +#define _llikCauchyDlocation _rxmod1_eeb51ce336d3cc61649e2cfe6839886e31 +#define _llikCauchy _rxmod1_eeb51ce336d3cc61649e2cfe6839886e32 +#define _llikGammaDrate _rxmod1_eeb51ce336d3cc61649e2cfe6839886e33 +#define _llikGammaDshape _rxmod1_eeb51ce336d3cc61649e2cfe6839886e34 +#define _llikGamma _rxmod1_eeb51ce336d3cc61649e2cfe6839886e35 +#define _llikWeibullDscale _rxmod1_eeb51ce336d3cc61649e2cfe6839886e36 +#define _llikWeibullDshape _rxmod1_eeb51ce336d3cc61649e2cfe6839886e37 +#define _llikWeibull _rxmod1_eeb51ce336d3cc61649e2cfe6839886e38 +#define _llikUnifDbeta _rxmod1_eeb51ce336d3cc61649e2cfe6839886e39 +#define _llikUnifDalpha _rxmod1_eeb51ce336d3cc61649e2cfe6839886e40 +#define _llikUnif _rxmod1_eeb51ce336d3cc61649e2cfe6839886e41 +#define _llikGeomDp _rxmod1_eeb51ce336d3cc61649e2cfe6839886e42 +#define _llikGeom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e43 +#define _llikFDdf2 _rxmod1_eeb51ce336d3cc61649e2cfe6839886e44 +#define _llikFDdf1 _rxmod1_eeb51ce336d3cc61649e2cfe6839886e45 +#define _llikF _rxmod1_eeb51ce336d3cc61649e2cfe6839886e46 +#define _llikExpDrate _rxmod1_eeb51ce336d3cc61649e2cfe6839886e47 +#define _llikExp _rxmod1_eeb51ce336d3cc61649e2cfe6839886e48 +#define _llikChisqDdf _rxmod1_eeb51ce336d3cc61649e2cfe6839886e49 +#define _llikChisq _rxmod1_eeb51ce336d3cc61649e2cfe6839886e50 +#define _llikTDsd _rxmod1_eeb51ce336d3cc61649e2cfe6839886e51 +#define _llikTDmean _rxmod1_eeb51ce336d3cc61649e2cfe6839886e52 +#define _llikTDdf _rxmod1_eeb51ce336d3cc61649e2cfe6839886e53 +#define _llikT _rxmod1_eeb51ce336d3cc61649e2cfe6839886e54 +#define _llikBetaDshape2 _rxmod1_eeb51ce336d3cc61649e2cfe6839886e55 +#define _llikBetaDshape1 _rxmod1_eeb51ce336d3cc61649e2cfe6839886e56 +#define _llikBeta _rxmod1_eeb51ce336d3cc61649e2cfe6839886e57 +#define _llikNbinomMuDmu _rxmod1_eeb51ce336d3cc61649e2cfe6839886e58 +#define _llikNbinomMu _rxmod1_eeb51ce336d3cc61649e2cfe6839886e59 +#define _llikNbinomDprob _rxmod1_eeb51ce336d3cc61649e2cfe6839886e60 +#define _llikNbinom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e61 +#define _llikBinomDprob _rxmod1_eeb51ce336d3cc61649e2cfe6839886e62 +#define _llikBinom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e63 +#define _llikPoisDlambda _rxmod1_eeb51ce336d3cc61649e2cfe6839886e64 +#define _llikPois _rxmod1_eeb51ce336d3cc61649e2cfe6839886e65 +#define _llikNormDsd _rxmod1_eeb51ce336d3cc61649e2cfe6839886e66 +#define _llikNormDmean _rxmod1_eeb51ce336d3cc61649e2cfe6839886e67 +#define _llikNorm _rxmod1_eeb51ce336d3cc61649e2cfe6839886e68 +#define simeps _rxmod1_eeb51ce336d3cc61649e2cfe6839886e69 +#define simeta _rxmod1_eeb51ce336d3cc61649e2cfe6839886e70 +#define expit _rxmod1_eeb51ce336d3cc61649e2cfe6839886e71 +#define logit _rxmod1_eeb51ce336d3cc61649e2cfe6839886e72 +#define gammapDer _rxmod1_eeb51ce336d3cc61649e2cfe6839886e73 +#define lowergamma _rxmod1_eeb51ce336d3cc61649e2cfe6839886e74 +#define uppergamma _rxmod1_eeb51ce336d3cc61649e2cfe6839886e75 +#define gammaqInva _rxmod1_eeb51ce336d3cc61649e2cfe6839886e76 +#define gammaqInv _rxmod1_eeb51ce336d3cc61649e2cfe6839886e77 +#define gammapInva _rxmod1_eeb51ce336d3cc61649e2cfe6839886e78 +#define gammapInv _rxmod1_eeb51ce336d3cc61649e2cfe6839886e79 +#define gammaq _rxmod1_eeb51ce336d3cc61649e2cfe6839886e80 +#define gammap _rxmod1_eeb51ce336d3cc61649e2cfe6839886e81 +#define phi _rxmod1_eeb51ce336d3cc61649e2cfe6839886e82 +#define riweibull _rxmod1_eeb51ce336d3cc61649e2cfe6839886e83 +#define riunif _rxmod1_eeb51ce336d3cc61649e2cfe6839886e84 +#define rit_ _rxmod1_eeb51ce336d3cc61649e2cfe6839886e85 +#define ripois _rxmod1_eeb51ce336d3cc61649e2cfe6839886e86 +#define ribeta _rxmod1_eeb51ce336d3cc61649e2cfe6839886e87 +#define rigamma _rxmod1_eeb51ce336d3cc61649e2cfe6839886e88 +#define rigeom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e89 +#define rif _rxmod1_eeb51ce336d3cc61649e2cfe6839886e90 +#define riexp _rxmod1_eeb51ce336d3cc61649e2cfe6839886e91 +#define richisq _rxmod1_eeb51ce336d3cc61649e2cfe6839886e92 +#define ricauchy _rxmod1_eeb51ce336d3cc61649e2cfe6839886e93 +#define rinbinomMu _rxmod1_eeb51ce336d3cc61649e2cfe6839886e94 +#define rinbinom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e95 +#define ribinom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e96 +#define rinorm _rxmod1_eeb51ce336d3cc61649e2cfe6839886e97 +#define rxweibull _rxmod1_eeb51ce336d3cc61649e2cfe6839886e98 +#define rxunif _rxmod1_eeb51ce336d3cc61649e2cfe6839886e99 +#define rxt_ _rxmod1_eeb51ce336d3cc61649e2cfe6839886e100 +#define rxpois _rxmod1_eeb51ce336d3cc61649e2cfe6839886e101 +#define rxbeta _rxmod1_eeb51ce336d3cc61649e2cfe6839886e102 +#define rxgamma _rxmod1_eeb51ce336d3cc61649e2cfe6839886e103 +#define rxgeom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e104 +#define rxf _rxmod1_eeb51ce336d3cc61649e2cfe6839886e105 +#define rxexp _rxmod1_eeb51ce336d3cc61649e2cfe6839886e106 +#define rxchisq _rxmod1_eeb51ce336d3cc61649e2cfe6839886e107 +#define rxcauchy _rxmod1_eeb51ce336d3cc61649e2cfe6839886e108 +#define rxnbinomMu _rxmod1_eeb51ce336d3cc61649e2cfe6839886e109 +#define rxnbinom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e110 +#define rxbinom _rxmod1_eeb51ce336d3cc61649e2cfe6839886e111 +#define rxnorm _rxmod1_eeb51ce336d3cc61649e2cfe6839886e112 +#define linCmtC _rxmod1_eeb51ce336d3cc61649e2cfe6839886e113 +#define linCmtB _rxmod1_eeb51ce336d3cc61649e2cfe6839886e114 +#define linCmtA _rxmod1_eeb51ce336d3cc61649e2cfe6839886e115 #include #define __MAX_PROD__ 0 #define _CMT CMT @@ -684,9 +684,9 @@ extern SEXP mod1__model_vars(void){ SEXP _mv = PROTECT(_rxGetModelLib("mod1__model_vars"));pro++; if (!_rxIsCurrentC(_mv)){ SEXP hash = PROTECT(allocVector(STRSXP, 1));pro++; -#define __doBuf__ snprintf(buf, __doBufN__, "un]\"BAAA@QRtHACAAAAAAAjnzAAAv7#aT)^XQ$MAI<8a=W6xYB~1\"d6EJ2}j0D,qrn%%JAPhJf2J%%CM6RZX*jW@R+MjxDOj^J\?O8*i}b5Tm}~W/^tx#d*NNS!OiIAkAqB>uS=mZ7\?C$Jib(ex6zi3n{+o|;mT5r%%EbxnUTg\"sQ/4^^sOJqo@KKAh^WRZk&.qs(|U|+Q@4oFMNvL<;5(OZ=Kg<.({n7j}ZXWLF@kU!C8:y<}y`,V]mSsFe([wrUD#Uf!X0QD!bzdEOXvl3AbVAy6)d.IK=]c_Y#B\"Q|X9X/y|Vp`kIBY[9LUe#y4Ou:\"#f:Fa@,(KCnu>6)m]P8:o/l,t5\"Fb`di&i&vKz|^g^4{j35g=Z`sCu4,>_MKv\"LZ`VY+p[_V]g)H:i*oh*6&*3NQPjVUJ+r>3L|o44ZGCje3J={e4*C3(fbTetD}/N2}SedvLn6f(q0U+|B.*kP>b3@Qf`)}NQa\?X%%l^Vf`vw*N]`/B%%Z_t|/i&DXb\?aV`ads^f7&bmh(W~xygh4v#zUG+~Co9D\"m%%;d]t}<;<~PbTB\"S%%g@hk]{(E53%%3~fu_*zF{8[4ue,1RqKC,7\?5TeH7|QcRGHMu_MQjJ%%o8j$eto[%%|q[VeqA)Q^zM0c5WKLmWKv(JNSNqB>)+/yn\?x1.mXTO}OH(fPQC~%%sh=yp2pzD4\"B,(ALDTX&a{arDVcG:lJtnE8S~g(t}#l9(dn@t>mpY*)8%%/s4A={[}M!9SUW2D_)EZCxi*E(:\?ku7p@h.sY&(k_HOSKChpM*wkZ*e]JY>`wF+b;|\"|JOf({LT_Fw^Qma.!XU@h<[/gBWQZz]W2[e0ZUtZ#[OYUA*/&t8z\"kR$t#L6S3+BHJY)Uee,;`(UK;\?V3\"v;CQEXtdCs;LVF}|whtuZHj}>)~0J(5#.5\"_e,^sS(oE2e/+bAyhLf@u\?InV&3$Fqq@U4P~*<1)/A.paHj9.DEkZg@BaC4q@3}wYWs#6`l*kG:%%c%%b\";;\?Q#jM,o9N+z,2^l)Xf}z2,vV/}mob[G/[1N#[mQ~w[fLFG1c2}HyzV9|]&`T[3cRd=q`t`s;Dh{T|aGz8}A}_taDR;6)wnM];;3~6={2V~wVzs{_.1%%&q6RkRPgUPr9gBhC;.\?]W!F@hH;r2WRl:W^n3:c)%%1LS~jCS32PfzA1B+a}7jF)A%%d(78MadSa(1MR}Qbz+z}(Kfh!q3W`c%%S|S=q^`hRT|[(U1bi=lYf0@{=Xqpt{e_m7,mv(!4\"DOaDOVZFd^<[qR=Q}.7ZUQ<8K@~9(uW0z!&M\"fB[GGX{R:a$Wlz`&CoUF:qX1Wr(hoH/`=oCw3h[54x:5DA9dNflXpVOK,C.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 delta 20992 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 literal 5595 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 diff --git a/reference/rxCombineErrorLines.html b/reference/rxCombineErrorLines.html index 4568865d5..729d38451 100644 --- a/reference/rxCombineErrorLines.html +++ b/reference/rxCombineErrorLines.html @@ -382,7 +382,7 @@

    Examples#> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ -#> rxode2 2.0.14.9000 model named rx_9b3b2a018ed95cc4155beec87f274fb6 model ( ready). +#> rxode2 2.0.14.9000 model named rx_a9af130766b47d61301e298427b02165 model ( ready). #> $state: depot, gut, center, effect #> $stateExtra: cp #> $params: tktr, tka, tcl, tv, prop.err, pkadd.err, temax, tec50, tkout, te0, pdadd.err, eta.ktr, eta.ka, eta.cl, eta.v, eta.emax, eta.ec50, eta.kout, eta.e0, CMT, rxerr.cp, rxerr.effect diff --git a/reference/rxExpandGrid.html b/reference/rxExpandGrid.html index 6a791fe3e..e2550f557 100644 --- a/reference/rxExpandGrid.html +++ b/reference/rxExpandGrid.html @@ -858,12 +858,12 @@

    Examples# \donttest{ microbenchmark::microbenchmark(rxExpandGrid(letters, letters), expand.grid.jc(letters, letters)) #> Unit: microseconds -#> expr min lq mean median uq -#> rxExpandGrid(letters, letters) 11.552 13.124 106.88926 13.6105 14.518 -#> expand.grid.jc(letters, letters) 15.489 17.007 18.79241 18.4795 20.087 +#> expr min lq mean median uq +#> rxExpandGrid(letters, letters) 11.592 12.784 13.76299 13.405 14.006 +#> expand.grid.jc(letters, letters) 15.239 17.092 131.56091 18.008 19.136 #> max neval -#> 4314.928 100 -#> 39.854 100 +#> 36.718 100 +#> 5461.767 100 # } diff --git a/reference/rxPp.html b/reference/rxPp.html index 7d6672269..54fb6bc06 100644 --- a/reference/rxPp.html +++ b/reference/rxPp.html @@ -205,29 +205,28 @@

    Examples
    
     ## Sample homogenous Poisson process of rate 1/10
     rxPp(10, 1 / 10)
    -#>  [1]  26.15775  33.38380  47.94631  54.17793  55.85722  66.26814  73.62000
    -#>  [8] 106.75224 116.90016 126.39661
    +#>  [1] 11.91444 17.83410 35.86940 43.33875 52.17679 58.01848 61.61956 67.58865
    +#>  [9] 75.75432 80.50742
     
     ## Sample inhomogenous Poisson rate of 1/10
     
     rxPp(10, 1 / 10, gamma = 2, tmax = 100)
    -#>  [1] 19.01904 50.51773 52.22514 52.76671 57.93220 59.95101 63.86916 69.82497
    -#>  [9] 70.21448 70.65940
    +#>  [1]  27.11790  29.33779  47.21930  81.03344  90.81621  94.61763 100.00000
    +#>  [8] 100.00000 100.00000 100.00000
     
     ## Typically the Poisson process times are in a sequential order,
     ## using randomOrder gives the Poisson process in random order
     
     rxPp(10, 1 / 10, gamma = 2, tmax = 10, randomOrder = TRUE)
    -#>  [1] 10.000000 10.000000 10.000000 10.000000 10.000000 10.000000 10.000000
    -#>  [8] 10.000000 10.000000  6.122726
    +#>  [1] 10 10 10 10 10 10 10 10 10 10
     
     ## This uses an arbitrary function to sample a non-homogenous Poisson process
     
     rxPp(10, 1 / 10, prob = function(x) {
       1/(1+abs(x))
     })
    -#>  [1]  76.20239 136.99708 141.49227 242.51418 303.74927 442.45036 475.40954
    -#>  [8] 558.23538 591.07437 635.88796
    +#>  [1]  41.60962 138.35684 188.08757 211.56756 309.76428 470.17650 488.34307
    +#>  [8] 575.85332 600.88539 610.34441
     
     
    diff --git a/reference/rxUiGet.html b/reference/rxUiGet.html index 5388847f2..af1418018 100644 --- a/reference/rxUiGet.html +++ b/reference/rxUiGet.html @@ -199,6 +199,9 @@

    Usage # S3 method for modelFun rxUiGet(x, ...) +# S3 method for model +rxUiGet(x, ...) + # S3 method for modelDesc rxUiGet(x, ...) diff --git a/reference/rxbeta.html b/reference/rxbeta.html index 0e9e45d45..213d253ab 100644 --- a/reference/rxbeta.html +++ b/reference/rxbeta.html @@ -198,14 +198,14 @@

    Examples## Use threefry engine rxbeta(0.5, 0.5, n = 10) # with rxbeta you have to explicitly state n -#> [1] 0.509350000 0.912413304 0.977069379 0.027279110 0.059673210 0.040116272 -#> [7] 0.710132972 0.793500848 0.006985738 0.180815174 +#> [1] 5.591830e-01 4.868212e-03 9.995130e-01 9.985880e-01 9.291060e-01 +#> [6] 8.426211e-01 1.165973e-01 7.428044e-05 9.956387e-01 6.817689e-01 rxbeta(5, 1, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 0.8076466 0.8110352 0.7379905 0.7328007 0.7911829 0.4855712 0.5843775 -#> [8] 0.6370308 0.7837448 0.9117020 +#> [1] 0.9409791 0.9315947 0.8864859 0.8386523 0.9615350 0.7927235 0.6812861 +#> [8] 0.9940315 0.8680601 0.8626314 rxbeta(1, 3) -#> [1] 0.2779042 +#> [1] 0.002379934 ## This example uses `rxbeta` directly in the model diff --git a/reference/rxbinom.html b/reference/rxbinom.html index ea95a16b6..793862a0e 100644 --- a/reference/rxbinom.html +++ b/reference/rxbinom.html @@ -201,9 +201,9 @@

    Examples## Use threefry engine rxbinom(10, 0.9, n = 10) # with rxbinom you have to explicitly state n -#> [1] 9 9 8 8 10 9 8 10 9 9 +#> [1] 9 9 9 10 9 10 9 9 8 9 rxbinom(3, 0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 2 3 1 2 2 0 2 0 0 1 +#> [1] 1 1 2 0 2 1 2 1 2 1 rxbinom(4, 0.7) #> [1] 3 diff --git a/reference/rxcauchy.html b/reference/rxcauchy.html index 7e153087b..c57294269 100644 --- a/reference/rxcauchy.html +++ b/reference/rxcauchy.html @@ -198,14 +198,14 @@

    Examples## Use threefry engine rxcauchy(0, 1, n = 10) # with rxcauchy you have to explicitly state n -#> [1] -1.3413470 -7.9470343 0.3502155 -1.0087065 0.1895231 -0.8865630 -#> [7] 0.3504988 0.8707094 -16.4643437 -2.0439314 +#> [1] 11.49708304 -0.82917497 -1.53457682 -6.21448497 3.05235974 -1.35567914 +#> [7] 0.05761105 0.21461109 2.41906944 -1.46577517 rxcauchy(0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 1.2173030 -1.6710622 0.7850675 0.1878941 1.8991325 0.2196978 -#> [7] -3.2933655 0.4879173 -1.0001039 -51.8868570 +#> [1] -2.2272938 -0.2600073 5.2749144 0.9171462 -0.6923980 -1.3334247 +#> [7] -2.2215751 -3.3419174 2.1211203 0.4281829 rxcauchy(3) -#> [1] 3.389173 +#> [1] 3.995927 ## This example uses `rxcauchy` directly in the model diff --git a/reference/rxchisq.html b/reference/rxchisq.html index 60af1ff24..864d6daf8 100644 --- a/reference/rxchisq.html +++ b/reference/rxchisq.html @@ -198,14 +198,14 @@

    Examples## Use threefry engine rxchisq(0.5, n = 10) # with rxchisq you have to explicitly state n -#> [1] 4.386053e-01 2.394589e-05 4.476409e-06 3.182313e-01 5.428819e-01 -#> [6] 1.177320e+00 1.485223e+00 1.975781e-01 1.858028e-01 3.011321e-03 +#> [1] 0.4725313581 0.5858219441 2.5450318247 0.6201574148 0.1108254407 +#> [6] 0.0003121371 0.1412857288 0.0005926910 0.0001486205 0.7807205510 rxchisq(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 1.4302599 2.2884995 4.1638938 10.9317622 2.3443199 1.6247647 -#> [7] 5.9977646 2.6555508 4.9660984 0.7984326 +#> [1] 6.7002547 4.4378396 8.4462820 5.2311437 3.4165878 3.7146978 4.0384042 +#> [8] 2.3655919 0.6162545 3.7656382 rxchisq(1) -#> [1] 7.302332 +#> [1] 2.110831 ## This example uses `rxchisq` directly in the model diff --git a/reference/rxexp.html b/reference/rxexp.html index ea56087fa..d7c034e16 100644 --- a/reference/rxexp.html +++ b/reference/rxexp.html @@ -198,14 +198,14 @@

    Examples## Use threefry engine rxexp(0.5, n = 10) # with rxexp you have to explicitly state n -#> [1] 2.5063330 2.8993883 0.7395998 1.4183406 0.1358327 0.4820661 3.0171991 -#> [8] 0.7060092 0.3121306 0.2673030 +#> [1] 3.90375500 0.20341689 1.03389635 1.65821571 1.70895409 2.34710259 +#> [7] 6.67258989 0.20443300 5.44360213 0.08059518 rxexp(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 0.001473441 0.742426584 0.155037193 0.171660703 0.022404456 0.341253688 -#> [7] 1.872270927 0.303458674 0.063965722 0.049181592 +#> [1] 0.55788381 0.45884374 0.01223079 0.21913010 0.02697616 0.03894835 +#> [7] 0.55539622 0.08209171 0.01295835 0.05832526 rxexp(1) -#> [1] 1.032471 +#> [1] 0.4843352 ## This example uses `rxexp` directly in the model diff --git a/reference/rxf.html b/reference/rxf.html index 93eca4e3d..bff5ddd07 100644 --- a/reference/rxf.html +++ b/reference/rxf.html @@ -198,14 +198,14 @@

    Examples## Use threefry engine rxf(0.5, 0.5, n = 10) # with rxf you have to explicitly state n -#> [1] 6.487134e-01 6.029017e-01 1.827351e+04 1.909204e+00 2.574643e+01 -#> [6] 2.605475e-03 1.389581e+00 1.477292e-01 6.585338e-04 4.422300e-02 +#> [1] 3.085812e-01 4.665029e-02 1.595344e-01 5.043059e-01 5.118621e+00 +#> [6] 1.007383e+02 7.441232e-02 5.434823e-08 6.077869e-01 1.408393e+02 rxf(5, 1, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 43.8692980 44.6980929 0.0430548 4075.9888069 1.4885375 -#> [6] 11.4684113 2.9502174 4.9623572 1.1885575 4.7529777 +#> [1] 1.747357e+00 9.946858e+01 9.341176e-01 3.363339e+03 1.532547e+02 +#> [6] 1.126046e-01 4.677118e-01 3.911594e-02 2.131388e+00 3.907136e-01 rxf(1, 3) -#> [1] 4.04815 +#> [1] 0.3027674 ## This example uses `rxf` directly in the model diff --git a/reference/rxgamma.html b/reference/rxgamma.html index 6ef78701d..15289d537 100644 --- a/reference/rxgamma.html +++ b/reference/rxgamma.html @@ -203,14 +203,14 @@

    Examples## Use threefry engine rxgamma(0.5, n = 10) # with rxgamma you have to explicitly state n -#> [1] 0.1894634559 0.3955014939 2.1180269016 0.0124893414 1.9029689758 -#> [6] 0.0007099950 0.0003539078 2.0218610937 0.1698756362 0.1470387595 +#> [1] 0.021157084 0.585976250 0.001334389 0.365373277 0.029210689 0.768189952 +#> [7] 1.919537608 0.612601840 0.737600624 0.061693657 rxgamma(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 4.490430 4.631281 4.101066 3.004822 2.537177 4.231033 4.323290 2.422572 -#> [9] 4.608253 7.725234 +#> [1] 5.349880 4.885171 4.206598 3.836714 4.470326 1.469406 5.477942 2.543065 +#> [9] 4.941607 5.578842 rxgamma(1) -#> [1] 0.8117069 +#> [1] 1.032915 ## This example uses `rxbeta` directly in the model diff --git a/reference/rxgeom.html b/reference/rxgeom.html index 1b47a22e2..4b0f633d1 100644 --- a/reference/rxgeom.html +++ b/reference/rxgeom.html @@ -198,12 +198,12 @@

    Examples## Use threefry engine rxgeom(0.5, n = 10) # with rxgeom you have to explicitly state n -#> [1] 0 0 1 0 0 4 0 0 2 1 +#> [1] 0 0 0 2 0 5 2 0 0 0 rxgeom(0.25, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 0 2 5 2 5 1 1 0 22 4 +#> [1] 1 0 1 2 2 4 2 6 3 1 rxgeom(0.75) -#> [1] 0 +#> [1] 2 ## This example uses `rxgeom` directly in the model diff --git a/reference/rxnbinom.html b/reference/rxnbinom.html index eda5065d0..5305753a0 100644 --- a/reference/rxnbinom.html +++ b/reference/rxnbinom.html @@ -215,16 +215,16 @@

    Examples## Use threefry engine rxnbinom(10, 0.9, n = 10) # with rxbinom you have to explicitly state n -#> [1] 9 8 9 10 10 10 9 10 9 8 +#> [1] 10 9 9 9 10 9 10 10 10 10 rxnbinom(3, 0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 3 3 3 3 3 3 3 3 3 1 +#> [1] 2 3 3 3 2 3 2 3 3 2 rxnbinom(4, 0.7) #> [1] 3 # use mu parameter rxnbinomMu(40, 40, n=10) -#> [1] 20 18 22 20 18 16 15 20 21 23 +#> [1] 20 21 17 25 20 24 24 20 25 16 ## This example uses `rxbinom` directly in the model diff --git a/reference/rxnormV.html b/reference/rxnormV.html index af05f9baa..11be6c561 100644 --- a/reference/rxnormV.html +++ b/reference/rxnormV.html @@ -174,14 +174,14 @@

    Examples## Use threefry engine rxnorm(n = 10) # with rxnorm you have to explicitly state n -#> [1] 0.09733128 0.60045493 -2.07389520 1.14343365 -0.38633998 0.01287412 -#> [7] -0.04752667 -1.51913058 0.37560137 -0.01275985 +#> [1] 0.06666291 -1.16684824 0.07385358 1.78573232 -0.53886395 2.29064016 +#> [7] 1.36888507 -0.56869894 -0.67454259 -0.50189339 rxnorm(n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 0.3180825 -1.1154098 0.1856747 -1.2032700 0.3088301 -0.7022739 -#> [7] 0.8265574 -0.3676887 0.7052192 0.9639559 +#> [1] -1.05752531 -0.94395324 -0.24915962 -0.20590743 0.26190633 0.03631823 +#> [7] -0.57420807 -0.64141604 2.43573622 0.72575404 rxnorm(2, 3) ## The first 2 arguments are the mean and standard deviation -#> [1] -1.103648 +#> [1] 1.65928 ## This example uses `rxnorm` directly in the model diff --git a/reference/rxode2.html b/reference/rxode2.html index 8d4b8f43d..7c2a75c42 100644 --- a/reference/rxode2.html +++ b/reference/rxode2.html @@ -461,7 +461,7 @@

    Details

    mod$simulationModel

    ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
     
    -## rxode2 2.0.14.9000 model named rx_4d7e23c27b311c0b8fa7436caae3124f model (ready). 
    +## rxode2 2.0.14.9000 model named rx_f8a38012c74774242195a2bca079f175 model (ready). 
     ## x$state: depot, center
     ## x$stateExtra: cp
     ## x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp
    @@ -470,7 +470,7 @@ 

    Detailsmod$simulationIniModel

    ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
     
    -## rxode2 2.0.14.9000 model named rx_175d15ed553ae1eccaf047d565b24f55 model (ready). 
    +## rxode2 2.0.14.9000 model named rx_8367e8f5e6c5a00454c7193fc896bf87 model (ready). 
     ## x$state: depot, center
     ## x$stateExtra: cp
     ## x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp
    diff --git a/reference/rxord.html b/reference/rxord.html
    index 8641d0b09..02fb383a3 100644
    --- a/reference/rxord.html
    +++ b/reference/rxord.html
    @@ -168,19 +168,19 @@ 

    Examplesrxord(0.5) #> [1] 2 rxord(0.5) -#> [1] 2 -rxord(0.5) #> [1] 1 rxord(0.5) #> [1] 2 +rxord(0.5) +#> [1] 1 # This will give values 1, 2 and 3 rxord(0.3, 0.3) -#> [1] 1 -rxord(0.3, 0.3) #> [1] 3 rxord(0.3, 0.3) #> [1] 3 +rxord(0.3, 0.3) +#> [1] 1

    diff --git a/reference/rxpois.html b/reference/rxpois.html index e2e0d4e63..9694d18cd 100644 --- a/reference/rxpois.html +++ b/reference/rxpois.html @@ -196,12 +196,12 @@

    Examples## Use threefry engine rxpois(lambda = 3, n = 10) # with rxpois you have to explicitly state n -#> [1] 2 5 2 2 1 3 2 3 2 2 +#> [1] 3 2 1 2 5 4 3 6 4 5 rxpois(lambda = 3, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 1 2 4 2 5 0 1 3 3 3 +#> [1] 4 4 7 2 0 4 3 0 1 5 rxpois(4) ## The first arguments are the lambda parameter -#> [1] 5 +#> [1] 4 ## This example uses `rxpois` directly in the model diff --git a/reference/rxt.html b/reference/rxt.html index fdf36db50..b4382074c 100644 --- a/reference/rxt.html +++ b/reference/rxt.html @@ -198,14 +198,14 @@

    Examples ## Use threefry engine rxt(df = 3, n = 10) # with rxt you have to explicitly state n -#> [1] 0.3757489 -1.0929198 0.4496582 -0.7100168 4.0821279 0.1564602 -#> [7] -2.3129516 0.9455909 -1.3950564 -1.0967017 +#> [1] -0.29318080 -1.02704336 -0.66727550 0.09894623 0.31087795 0.45282571 +#> [7] -0.74881267 0.14506443 0.92569974 1.08770261 rxt(df = 3, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] -0.09560338 2.30004650 -0.44279496 0.40352877 -0.06773039 0.84341867 -#> [7] -0.51744228 -1.88729910 -1.65975277 0.87533914 +#> [1] 0.93648234 -0.74999474 -0.01956072 0.36815881 -1.68693318 -1.47839075 +#> [7] 0.63749656 -0.55653082 1.20298022 -0.23653802 rxt(4) ## The first argument is the df parameter -#> [1] 0.1890926 +#> [1] -1.188745 ## This example uses `rxt` directly in the model diff --git a/reference/rxunif.html b/reference/rxunif.html index 55053a897..0e59c35e5 100644 --- a/reference/rxunif.html +++ b/reference/rxunif.html @@ -198,14 +198,14 @@

    Examples## Use threefry engine rxunif(min = 0, max = 4, n = 10) # with rxunif you have to explicitly state n -#> [1] 8.372550e-01 3.583999e+00 2.408055e+00 6.399907e-01 2.294921e-02 -#> [6] 2.839426e+00 6.982711e-05 2.993348e+00 2.264349e+00 1.249635e+00 +#> [1] 2.3748251 2.3747450 2.9484312 2.6503609 2.3441527 3.7895157 2.7632907 +#> [8] 3.9259318 1.5470480 0.3119302 rxunif(min = 0, max = 4, n = 10, ncores = 2) # You can parallelize the simulation using openMP -#> [1] 2.4039488 0.3410682 0.5535628 2.2799663 0.5887105 2.6540469 2.3969818 -#> [8] 2.2524206 3.7296385 3.7817212 +#> [1] 2.7055085 3.1282116 0.9762572 0.2150536 0.1354531 3.6681715 1.3651384 +#> [8] 0.4735161 2.2566096 1.3867299 rxunif() -#> [1] 0.7661502 +#> [1] 0.7778129 ## This example uses `rxunif` directly in the model diff --git a/reference/rxweibull.html b/reference/rxweibull.html index 8def44e7b..4ae9b3273 100644 --- a/reference/rxweibull.html +++ b/reference/rxweibull.html @@ -199,16 +199,16 @@

    Examples # with rxweibull you have to explicitly state n rxweibull(shape = 1, scale = 4, n = 10) -#> [1] 0.3874992 3.1784742 0.3866576 0.4752647 11.6122071 5.2736322 -#> [7] 4.8772255 0.7743957 3.6822614 3.1735263 +#> [1] 1.5102518 8.9958841 6.4523713 2.6136455 4.8022306 5.3803922 0.1930048 +#> [8] 0.6736438 5.6880641 0.2705709 # You can parallelize the simulation using openMP rxweibull(shape = 1, scale = 4, n = 10, ncores = 2) -#> [1] 0.4541006 8.0030203 3.8028113 4.6215899 0.1147611 0.1336322 0.2441735 -#> [8] 1.8856361 4.7262429 7.3846402 +#> [1] 3.7140085 3.6244019 0.4964775 5.7372342 3.7034107 10.3348485 +#> [7] 0.1188517 0.3182516 10.1139392 4.0233797 rxweibull(3) -#> [1] 0.5283103 +#> [1] 0.5046466 ## This example uses `rxweibull` directly in the model diff --git a/search.json b/search.json index 766cfe14c..5b1d11905 100644 --- a/search.json +++ b/search.json @@ -1 +1 @@ -[{"path":"https://nlmixr2.github.io/rxode2/articles/Integrating-User-Defined-Functions-into-rxode2.html","id":"user-defined-functions","dir":"Articles","previous_headings":"","what":"User Defined Functions","title":"Integrating User Defined Functions into rxode2","text":"defining models may wished write small R function make function integrate rxode2 somehow. article discusses 2 ways : R-based user function can loaded simple function certain circumstances translated C run efficiently C function define integrate code","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()`"},{"path":"https://nlmixr2.github.io/rxode2/articles/Integrating-User-Defined-Functions-into-rxode2.html","id":"r-based-user-functions","dir":"Articles","previous_headings":"","what":"R based user functions","title":"Integrating User Defined Functions into rxode2","text":"R-based user function convenient include ODE, slower done written C , C++ compiled language. requested github appropriate example; However, use simple example simply illustrate concepts. Now ODE compiled R functions called solving ODE. Since calling R, forces parallization turned since R single-threaded. also takes time solve since shuttling back forth R C. Lets see simple function performs: terribly bad, even though shuffling R C. can make better converting functions C: C version almost twice fast R version. may noticed conversion also created C versions first derivative. done automatically gives just C versions function, C versions derivatives registers rxode2. allows C versions work rxode2 nlmixr2 models. function setup advance allow type conversion. general derivatives calculated return() statement user defined function. means simply let R return last value instead explictly calling return(). Many people prefer method coding. Even return function, function converted C. github issue, used function convert derivatives: still helpful functions early returns, nlmixr2 models requiring derivatives calculated non-optimized finite differences occurs. gets internals rxode2 nlmixr2 can see easily calculating derivatives: Whereas originally defined function newAbs() use new derivatives calculated well: circumstances, conversion C possible, though can still use R function. requirements R functions integrated rxode2 system: function must set number arguments, variable arguments like f(…) currently allowed. function given argument single number, function return single number requirements met can use R function rxode2. Additional requirements conversion C include: functions use within R function must understood available rxode2. Practically speaking fun2() refers fun1(), fun1() must changed C code available rxode2 changing function fun2() C. functions can include /else assignments simple return statements (either returning value value line ). Special R control structures functions (like lapply) present. function refer package functions mentioned, return() statement present, derivative C functions rxode2’s derivative table updated.","code":"newAbs <- function(x) { if (x < 0) { -x } else { x } } f <- rxode2({ a <- newAbs(time) }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ e <- et(-10, 10, length.out=40) mb1 <- microbenchmark::microbenchmark(withoutC=suppressWarnings(rxSolve(f,e))) library(ggplot2) autoplot(mb1) + rxTheme() # Create C functions automatically with `rxFun()` rxFun(newAbs) #> → finding duplicate expressions in d(newAbs)/d(x)... #> [====|====|====|====|====|====|====|====|====|====] 0:00:00 #> → optimizing duplicate expressions in d(newAbs)/d(x)... #> [====|====|====|====|====|====|====|====|====|====] 0:00:00 #> converted R function 'newAbs' to C (will now use in rxode2) #> converted R function 'rx_newAbs_d_x' to C (will now use in rxode2) #> Added derivative table for 'newAbs' # Recompile to use the C functions # Note it would recompile anyway if you didn't do this step, # it just makes sure that it doesn't recompile every step in # the benchmark f <- rxode2({ a <- newAbs(time) }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ mb2 <- microbenchmark::microbenchmark(withC=rxSolve(f,e, cores=1)) mb <- rbind(mb1, mb2) autoplot(mb) + rxTheme() + xgxr::xgx_scale_y_log10() #> Scale for y is already present. #> Adding another scale for y, which will replace the existing scale. print(mb) #> Unit: milliseconds #> expr min lq mean median uq max neval #> withoutC 7.706384 7.813619 8.458545 7.891054 7.995268 13.624052 100 #> withC 2.052068 2.115636 2.441953 2.201777 2.726220 6.392353 100 # Light f_R <- function(actRad, k_0, a_k) { photfac <- a_k * actRad + k_0 if (photfac > 1) { photfac = 1 } return(photfac) } rxFun(f_R) #> function contains return statement; derivatives not calculated #> converted R function 'f_R' to C (will now use in rxode2) rxFromSE(\"Derivative(f_R(actRad, k_0, a_k),k_0)\") #> [1] \"(f_R(actRad,(k_0)+6.05545445239334e-06,a_k)-f_R(actRad,k_0,a_k))/6.05545445239334e-06\" rxFromSE(\"Derivative(newAbs(x),x)\") #> [1] \"rx_newAbs_d_x(x)\""},{"path":"https://nlmixr2.github.io/rxode2/articles/Integrating-User-Defined-Functions-into-rxode2.html","id":"c-based-functions","dir":"Articles","previous_headings":"","what":"C based functions","title":"Integrating User Defined Functions into rxode2","text":"can add C functions directly rxode2 well using rxFun(): wanted also use C functions expressions derivatives using rxD() function: Removing function rxRmFun() also remove derivative table:","code":"fun <- \" double fun(double a, double b, double c) { return a*a+b*a+c; } \" ## C-code for function rxFun(\"fun\", c(\"a\", \"b\", \"c\"), fun) rxD(\"fun\", list( function(a, b, c) { # derivative of arg1: a paste0(\"2*\", a, \"+\", b) }, function(a, b, c) { # derivative of arg2: b return(a) }, function(a, b, c) { # derivative of arg3: c return(\"0.0\") } )) rxRmFun(\"fun\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-cmt.html","id":"how-rxode2-assigns-compartment-numbers","dir":"Articles","previous_headings":"","what":"How rxode2 assigns compartment numbers","title":"Changing rxode2 compartment numbers","text":"rxode2 automatically assigns compartment numbers parsing. example, Mavoglurant PBPK model following model may used: look printout, can see rxode2 assigned compartment number(s) can also see classic rxode2 model. case use summary() function: case, Venous_Blood assigned compartment 15. Figuring can inconvenient also lead re-numbering compartment simulation estimation datasets. easy probably clearer specify compartment name, tools support compartment numbers. Therefore, way number compartment easily can lead less data modification multiple tools.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` pbpk <- function() { model({ KbBR = exp(lKbBR) KbMU = exp(lKbMU) KbAD = exp(lKbAD) CLint= exp(lCLint + eta.LClint) KbBO = exp(lKbBO) KbRB = exp(lKbRB) ## Regional blood flows # Cardiac output (L/h) from White et al (1968) CO = (187.00*WT^0.81)*60/1000 QHT = 4.0 *CO/100 QBR = 12.0*CO/100 QMU = 17.0*CO/100 QAD = 5.0 *CO/100 QSK = 5.0 *CO/100 QSP = 3.0 *CO/100 QPA = 1.0 *CO/100 QLI = 25.5*CO/100 QST = 1.0 *CO/100 QGU = 14.0*CO/100 # Hepatic artery blood flow QHA = QLI - (QSP + QPA + QST + QGU) QBO = 5.0 *CO/100 QKI = 19.0*CO/100 QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI) QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + QRB ## Organs' volumes = organs' weights / organs' density VLU = (0.76 *WT/100)/1.051 VHT = (0.47 *WT/100)/1.030 VBR = (2.00 *WT/100)/1.036 VMU = (40.00*WT/100)/1.041 VAD = (21.42*WT/100)/0.916 VSK = (3.71 *WT/100)/1.116 VSP = (0.26 *WT/100)/1.054 VPA = (0.14 *WT/100)/1.045 VLI = (2.57 *WT/100)/1.040 VST = (0.21 *WT/100)/1.050 VGU = (1.44 *WT/100)/1.043 VBO = (14.29*WT/100)/1.990 VKI = (0.44 *WT/100)/1.050 VAB = (2.81 *WT/100)/1.040 VVB = (5.62 *WT/100)/1.040 VRB = (3.86 *WT/100)/1.040 ## Fixed parameters BP = 0.61 # Blood:plasma partition coefficient fup = 0.028 # Fraction unbound in plasma fub = fup/BP # Fraction unbound in blood KbLU = exp(0.8334) KbHT = exp(1.1205) KbSK = exp(-.5238) KbSP = exp(0.3224) KbPA = exp(0.3224) KbLI = exp(1.7604) KbST = exp(0.3224) KbGU = exp(1.2026) KbKI = exp(1.3171) ##----------------------------------------- S15 = VVB*BP/1000 C15 = Venous_Blood/S15 ##----------------------------------------- d/dt(Lungs) = QLU*(Venous_Blood/VVB - Lungs/KbLU/VLU) d/dt(Heart) = QHT*(Arterial_Blood/VAB - Heart/KbHT/VHT) d/dt(Brain) = QBR*(Arterial_Blood/VAB - Brain/KbBR/VBR) d/dt(Muscles) = QMU*(Arterial_Blood/VAB - Muscles/KbMU/VMU) d/dt(Adipose) = QAD*(Arterial_Blood/VAB - Adipose/KbAD/VAD) d/dt(Skin) = QSK*(Arterial_Blood/VAB - Skin/KbSK/VSK) d/dt(Spleen) = QSP*(Arterial_Blood/VAB - Spleen/KbSP/VSP) d/dt(Pancreas) = QPA*(Arterial_Blood/VAB - Pancreas/KbPA/VPA) d/dt(Liver) = QHA*Arterial_Blood/VAB + QSP*Spleen/KbSP/VSP + QPA*Pancreas/KbPA/VPA + QST*Stomach/KbST/VST + QGU*Gut/KbGU/VGU - CLint*fub*Liver/KbLI/VLI - QLI*Liver/KbLI/VLI d/dt(Stomach) = QST*(Arterial_Blood/VAB - Stomach/KbST/VST) d/dt(Gut) = QGU*(Arterial_Blood/VAB - Gut/KbGU/VGU) d/dt(Bones) = QBO*(Arterial_Blood/VAB - Bones/KbBO/VBO) d/dt(Kidneys) = QKI*(Arterial_Blood/VAB - Kidneys/KbKI/VKI) d/dt(Arterial_Blood) = QLU*(Lungs/KbLU/VLU - Arterial_Blood/VAB) d/dt(Venous_Blood) = QHT*Heart/KbHT/VHT + QBR*Brain/KbBR/VBR + QMU*Muscles/KbMU/VMU + QAD*Adipose/KbAD/VAD + QSK*Skin/KbSK/VSK + QLI*Liver/KbLI/VLI + QBO*Bones/KbBO/VBO + QKI*Kidneys/KbKI/VKI + QRB*Rest_of_Body/KbRB/VRB - QLU*Venous_Blood/VVB d/dt(Rest_of_Body) = QRB*(Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) }) } pbpk <- pbpk() print(pbpk) #> -- rxode2-based free-form 16-cmt ODE model ------------------------------------- #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 Lungs #> 2 2 Heart #> 3 3 Brain #> 4 4 Muscles #> 5 5 Adipose #> 6 6 Skin #> 7 7 Spleen #> 8 8 Pancreas #> 9 9 Liver #> 10 10 Stomach #> 11 11 Gut #> 12 12 Bones #> 13 13 Kidneys #> 14 14 Arterial_Blood #> 15 15 Venous_Blood #> 16 16 Rest_of_Body #> -- Model (Normalized Syntax): -- #> function() { #> model({ #> KbBR = exp(lKbBR) #> KbMU = exp(lKbMU) #> KbAD = exp(lKbAD) #> CLint = exp(lCLint + eta.LClint) #> KbBO = exp(lKbBO) #> KbRB = exp(lKbRB) #> CO = (187 * WT^0.81) * 60/1000 #> QHT = 4 * CO/100 #> QBR = 12 * CO/100 #> QMU = 17 * CO/100 #> QAD = 5 * CO/100 #> QSK = 5 * CO/100 #> QSP = 3 * CO/100 #> QPA = 1 * CO/100 #> QLI = 25.5 * CO/100 #> QST = 1 * CO/100 #> QGU = 14 * CO/100 #> QHA = QLI - (QSP + QPA + QST + QGU) #> QBO = 5 * CO/100 #> QKI = 19 * CO/100 #> QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + #> QKI) #> QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + #> QRB #> VLU = (0.76 * WT/100)/1.051 #> VHT = (0.47 * WT/100)/1.03 #> VBR = (2 * WT/100)/1.036 #> VMU = (40 * WT/100)/1.041 #> VAD = (21.42 * WT/100)/0.916 #> VSK = (3.71 * WT/100)/1.116 #> VSP = (0.26 * WT/100)/1.054 #> VPA = (0.14 * WT/100)/1.045 #> VLI = (2.57 * WT/100)/1.04 #> VST = (0.21 * WT/100)/1.05 #> VGU = (1.44 * WT/100)/1.043 #> VBO = (14.29 * WT/100)/1.99 #> VKI = (0.44 * WT/100)/1.05 #> VAB = (2.81 * WT/100)/1.04 #> VVB = (5.62 * WT/100)/1.04 #> VRB = (3.86 * WT/100)/1.04 #> BP = 0.61 #> fup = 0.028 #> fub = fup/BP #> KbLU = exp(0.8334) #> KbHT = exp(1.1205) #> KbSK = exp(-0.5238) #> KbSP = exp(0.3224) #> KbPA = exp(0.3224) #> KbLI = exp(1.7604) #> KbST = exp(0.3224) #> KbGU = exp(1.2026) #> KbKI = exp(1.3171) #> S15 = VVB * BP/1000 #> C15 = Venous_Blood/S15 #> d/dt(Lungs) = QLU * (Venous_Blood/VVB - Lungs/KbLU/VLU) #> d/dt(Heart) = QHT * (Arterial_Blood/VAB - Heart/KbHT/VHT) #> d/dt(Brain) = QBR * (Arterial_Blood/VAB - Brain/KbBR/VBR) #> d/dt(Muscles) = QMU * (Arterial_Blood/VAB - Muscles/KbMU/VMU) #> d/dt(Adipose) = QAD * (Arterial_Blood/VAB - Adipose/KbAD/VAD) #> d/dt(Skin) = QSK * (Arterial_Blood/VAB - Skin/KbSK/VSK) #> d/dt(Spleen) = QSP * (Arterial_Blood/VAB - Spleen/KbSP/VSP) #> d/dt(Pancreas) = QPA * (Arterial_Blood/VAB - Pancreas/KbPA/VPA) #> d/dt(Liver) = QHA * Arterial_Blood/VAB + QSP * Spleen/KbSP/VSP + #> QPA * Pancreas/KbPA/VPA + QST * Stomach/KbST/VST + #> QGU * Gut/KbGU/VGU - CLint * fub * Liver/KbLI/VLI - #> QLI * Liver/KbLI/VLI #> d/dt(Stomach) = QST * (Arterial_Blood/VAB - Stomach/KbST/VST) #> d/dt(Gut) = QGU * (Arterial_Blood/VAB - Gut/KbGU/VGU) #> d/dt(Bones) = QBO * (Arterial_Blood/VAB - Bones/KbBO/VBO) #> d/dt(Kidneys) = QKI * (Arterial_Blood/VAB - Kidneys/KbKI/VKI) #> d/dt(Arterial_Blood) = QLU * (Lungs/KbLU/VLU - Arterial_Blood/VAB) #> d/dt(Venous_Blood) = QHT * Heart/KbHT/VHT + QBR * Brain/KbBR/VBR + #> QMU * Muscles/KbMU/VMU + QAD * Adipose/KbAD/VAD + #> QSK * Skin/KbSK/VSK + QLI * Liver/KbLI/VLI + QBO * #> Bones/KbBO/VBO + QKI * Kidneys/KbKI/VKI + QRB * Rest_of_Body/KbRB/VRB - #> QLU * Venous_Blood/VVB #> d/dt(Rest_of_Body) = QRB * (Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) #> }) #> } pbpk <- pbpk$simulationModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ summary(pbpk) #> rxode2 2.0.14.9000 model named rx_8ee4408c660f4c3f31e6d0548ea2c3f1 model (ready). #> DLL: /tmp/RtmphFlXM3/rxode2/rx_8ee4408c660f4c3f31e6d0548ea2c3f1__.rxd/rx_8ee4408c660f4c3f31e6d0548ea2c3f1_.so #> NULL #> #> Calculated Variables: #> [1] \"KbBR\" \"KbMU\" \"KbAD\" \"CLint\" \"KbBO\" \"KbRB\" \"CO\" \"QHT\" \"QBR\" #> [10] \"QMU\" \"QAD\" \"QSK\" \"QSP\" \"QPA\" \"QLI\" \"QST\" \"QGU\" \"QHA\" #> [19] \"QBO\" \"QKI\" \"QRB\" \"QLU\" \"VLU\" \"VHT\" \"VBR\" \"VMU\" \"VAD\" #> [28] \"VSK\" \"VSP\" \"VPA\" \"VLI\" \"VST\" \"VGU\" \"VBO\" \"VKI\" \"VAB\" #> [37] \"VVB\" \"VRB\" \"fub\" \"KbLU\" \"KbHT\" \"KbSK\" \"KbSP\" \"KbPA\" \"KbLI\" #> [46] \"KbST\" \"KbGU\" \"KbKI\" \"S15\" \"C15\" #> -- rxode2 Model Syntax -- #> rxode2({ #> param(lKbBR, lKbMU, lKbAD, lCLint, eta.LClint, lKbBO, lKbRB, #> WT) #> KbBR = exp(lKbBR) #> KbMU = exp(lKbMU) #> KbAD = exp(lKbAD) #> CLint = exp(lCLint + eta.LClint) #> KbBO = exp(lKbBO) #> KbRB = exp(lKbRB) #> CO = (187 * WT^0.81) * 60/1000 #> QHT = 4 * CO/100 #> QBR = 12 * CO/100 #> QMU = 17 * CO/100 #> QAD = 5 * CO/100 #> QSK = 5 * CO/100 #> QSP = 3 * CO/100 #> QPA = 1 * CO/100 #> QLI = 25.5 * CO/100 #> QST = 1 * CO/100 #> QGU = 14 * CO/100 #> QHA = QLI - (QSP + QPA + QST + QGU) #> QBO = 5 * CO/100 #> QKI = 19 * CO/100 #> QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI) #> QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + QRB #> VLU = (0.76 * WT/100)/1.051 #> VHT = (0.47 * WT/100)/1.03 #> VBR = (2 * WT/100)/1.036 #> VMU = (40 * WT/100)/1.041 #> VAD = (21.42 * WT/100)/0.916 #> VSK = (3.71 * WT/100)/1.116 #> VSP = (0.26 * WT/100)/1.054 #> VPA = (0.14 * WT/100)/1.045 #> VLI = (2.57 * WT/100)/1.04 #> VST = (0.21 * WT/100)/1.05 #> VGU = (1.44 * WT/100)/1.043 #> VBO = (14.29 * WT/100)/1.99 #> VKI = (0.44 * WT/100)/1.05 #> VAB = (2.81 * WT/100)/1.04 #> VVB = (5.62 * WT/100)/1.04 #> VRB = (3.86 * WT/100)/1.04 #> BP = 0.61 #> fup = 0.028 #> fub = fup/BP #> KbLU = exp(0.8334) #> KbHT = exp(1.1205) #> KbSK = exp(-0.5238) #> KbSP = exp(0.3224) #> KbPA = exp(0.3224) #> KbLI = exp(1.7604) #> KbST = exp(0.3224) #> KbGU = exp(1.2026) #> KbKI = exp(1.3171) #> S15 = VVB * BP/1000 #> C15 = Venous_Blood/S15 #> d/dt(Lungs) = QLU * (Venous_Blood/VVB - Lungs/KbLU/VLU) #> d/dt(Heart) = QHT * (Arterial_Blood/VAB - Heart/KbHT/VHT) #> d/dt(Brain) = QBR * (Arterial_Blood/VAB - Brain/KbBR/VBR) #> d/dt(Muscles) = QMU * (Arterial_Blood/VAB - Muscles/KbMU/VMU) #> d/dt(Adipose) = QAD * (Arterial_Blood/VAB - Adipose/KbAD/VAD) #> d/dt(Skin) = QSK * (Arterial_Blood/VAB - Skin/KbSK/VSK) #> d/dt(Spleen) = QSP * (Arterial_Blood/VAB - Spleen/KbSP/VSP) #> d/dt(Pancreas) = QPA * (Arterial_Blood/VAB - Pancreas/KbPA/VPA) #> d/dt(Liver) = QHA * Arterial_Blood/VAB + QSP * Spleen/KbSP/VSP + #> QPA * Pancreas/KbPA/VPA + QST * Stomach/KbST/VST + QGU * #> Gut/KbGU/VGU - CLint * fub * Liver/KbLI/VLI - QLI * Liver/KbLI/VLI #> d/dt(Stomach) = QST * (Arterial_Blood/VAB - Stomach/KbST/VST) #> d/dt(Gut) = QGU * (Arterial_Blood/VAB - Gut/KbGU/VGU) #> d/dt(Bones) = QBO * (Arterial_Blood/VAB - Bones/KbBO/VBO) #> d/dt(Kidneys) = QKI * (Arterial_Blood/VAB - Kidneys/KbKI/VKI) #> d/dt(Arterial_Blood) = QLU * (Lungs/KbLU/VLU - Arterial_Blood/VAB) #> d/dt(Venous_Blood) = QHT * Heart/KbHT/VHT + QBR * Brain/KbBR/VBR + #> QMU * Muscles/KbMU/VMU + QAD * Adipose/KbAD/VAD + QSK * #> Skin/KbSK/VSK + QLI * Liver/KbLI/VLI + QBO * Bones/KbBO/VBO + #> QKI * Kidneys/KbKI/VKI + QRB * Rest_of_Body/KbRB/VRB - #> QLU * Venous_Blood/VVB #> d/dt(Rest_of_Body) = QRB * (Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) #> })"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-cmt.html","id":"changing-compartment-numbers-by-pre-declaring-the-compartments","dir":"Articles","previous_headings":"","what":"Changing compartment numbers by pre-declaring the compartments","title":"Changing rxode2 compartment numbers","text":"add compartments rxode2 model order desire simply need pre-declare compartments cmt. example specifying Venous_Blood Skin 1st 2nd compartments, respectively, simple: can see change simple printout first two compartments Venous_Blood followed Skin.","code":"pbpk2 <- function() { model({ ## Now this is the first compartment, ie cmt=1 cmt(Venous_Blood) ## Skin may be a compartment you wish to dose to as well, ## so it is now cmt=2 cmt(Skin) KbBR = exp(lKbBR) KbMU = exp(lKbMU) KbAD = exp(lKbAD) CLint= exp(lCLint + eta.LClint) KbBO = exp(lKbBO) KbRB = exp(lKbRB) ## Regional blood flows # Cardiac output (L/h) from White et al (1968)m CO = (187.00*WT^0.81)*60/1000; QHT = 4.0 *CO/100; QBR = 12.0*CO/100; QMU = 17.0*CO/100; QAD = 5.0 *CO/100; QSK = 5.0 *CO/100; QSP = 3.0 *CO/100; QPA = 1.0 *CO/100; QLI = 25.5*CO/100; QST = 1.0 *CO/100; QGU = 14.0*CO/100; QHA = QLI - (QSP + QPA + QST + QGU); # Hepatic artery blood flow QBO = 5.0 *CO/100; QKI = 19.0*CO/100; QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI); QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + QRB; ## Organs' volumes = organs' weights / organs' density VLU = (0.76 *WT/100)/1.051; VHT = (0.47 *WT/100)/1.030; VBR = (2.00 *WT/100)/1.036; VMU = (40.00*WT/100)/1.041; VAD = (21.42*WT/100)/0.916; VSK = (3.71 *WT/100)/1.116; VSP = (0.26 *WT/100)/1.054; VPA = (0.14 *WT/100)/1.045; VLI = (2.57 *WT/100)/1.040; VST = (0.21 *WT/100)/1.050; VGU = (1.44 *WT/100)/1.043; VBO = (14.29*WT/100)/1.990; VKI = (0.44 *WT/100)/1.050; VAB = (2.81 *WT/100)/1.040; VVB = (5.62 *WT/100)/1.040; VRB = (3.86 *WT/100)/1.040; ## Fixed parameters BP = 0.61; # Blood:plasma partition coefficient fup = 0.028; # Fraction unbound in plasma fub = fup/BP; # Fraction unbound in blood KbLU = exp(0.8334); KbHT = exp(1.1205); KbSK = exp(-.5238); KbSP = exp(0.3224); KbPA = exp(0.3224); KbLI = exp(1.7604); KbST = exp(0.3224); KbGU = exp(1.2026); KbKI = exp(1.3171); ##----------------------------------------- S15 = VVB*BP/1000; C15 = Venous_Blood/S15 ##----------------------------------------- d/dt(Lungs) = QLU*(Venous_Blood/VVB - Lungs/KbLU/VLU); d/dt(Heart) = QHT*(Arterial_Blood/VAB - Heart/KbHT/VHT); d/dt(Brain) = QBR*(Arterial_Blood/VAB - Brain/KbBR/VBR); d/dt(Muscles) = QMU*(Arterial_Blood/VAB - Muscles/KbMU/VMU); d/dt(Adipose) = QAD*(Arterial_Blood/VAB - Adipose/KbAD/VAD); d/dt(Skin) = QSK*(Arterial_Blood/VAB - Skin/KbSK/VSK); d/dt(Spleen) = QSP*(Arterial_Blood/VAB - Spleen/KbSP/VSP); d/dt(Pancreas) = QPA*(Arterial_Blood/VAB - Pancreas/KbPA/VPA); d/dt(Liver) = QHA*Arterial_Blood/VAB + QSP*Spleen/KbSP/VSP + QPA*Pancreas/KbPA/VPA + QST*Stomach/KbST/VST + QGU*Gut/KbGU/VGU - CLint*fub*Liver/KbLI/VLI - QLI*Liver/KbLI/VLI; d/dt(Stomach) = QST*(Arterial_Blood/VAB - Stomach/KbST/VST); d/dt(Gut) = QGU*(Arterial_Blood/VAB - Gut/KbGU/VGU); d/dt(Bones) = QBO*(Arterial_Blood/VAB - Bones/KbBO/VBO); d/dt(Kidneys) = QKI*(Arterial_Blood/VAB - Kidneys/KbKI/VKI); d/dt(Arterial_Blood) = QLU*(Lungs/KbLU/VLU - Arterial_Blood/VAB); d/dt(Venous_Blood) = QHT*Heart/KbHT/VHT + QBR*Brain/KbBR/VBR + QMU*Muscles/KbMU/VMU + QAD*Adipose/KbAD/VAD + QSK*Skin/KbSK/VSK + QLI*Liver/KbLI/VLI + QBO*Bones/KbBO/VBO + QKI*Kidneys/KbKI/VKI + QRB*Rest_of_Body/KbRB/VRB - QLU*Venous_Blood/VVB; d/dt(Rest_of_Body) = QRB*(Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB); }) } pbpk2 <- pbpk2() pbpk2 #> -- rxode2-based free-form 16-cmt ODE model ------------------------------------- #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 Venous_Blood #> 2 2 Skin #> 3 3 Lungs #> 4 4 Heart #> 5 5 Brain #> 6 6 Muscles #> 7 7 Adipose #> 8 8 Spleen #> 9 9 Pancreas #> 10 10 Liver #> 11 11 Stomach #> 12 12 Gut #> 13 13 Bones #> 14 14 Kidneys #> 15 15 Arterial_Blood #> 16 16 Rest_of_Body #> -- Model (Normalized Syntax): -- #> function() { #> model({ #> cmt(Venous_Blood) #> cmt(Skin) #> KbBR = exp(lKbBR) #> KbMU = exp(lKbMU) #> KbAD = exp(lKbAD) #> CLint = exp(lCLint + eta.LClint) #> KbBO = exp(lKbBO) #> KbRB = exp(lKbRB) #> CO = (187 * WT^0.81) * 60/1000 #> QHT = 4 * CO/100 #> QBR = 12 * CO/100 #> QMU = 17 * CO/100 #> QAD = 5 * CO/100 #> QSK = 5 * CO/100 #> QSP = 3 * CO/100 #> QPA = 1 * CO/100 #> QLI = 25.5 * CO/100 #> QST = 1 * CO/100 #> QGU = 14 * CO/100 #> QHA = QLI - (QSP + QPA + QST + QGU) #> QBO = 5 * CO/100 #> QKI = 19 * CO/100 #> QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + #> QKI) #> QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + #> QRB #> VLU = (0.76 * WT/100)/1.051 #> VHT = (0.47 * WT/100)/1.03 #> VBR = (2 * WT/100)/1.036 #> VMU = (40 * WT/100)/1.041 #> VAD = (21.42 * WT/100)/0.916 #> VSK = (3.71 * WT/100)/1.116 #> VSP = (0.26 * WT/100)/1.054 #> VPA = (0.14 * WT/100)/1.045 #> VLI = (2.57 * WT/100)/1.04 #> VST = (0.21 * WT/100)/1.05 #> VGU = (1.44 * WT/100)/1.043 #> VBO = (14.29 * WT/100)/1.99 #> VKI = (0.44 * WT/100)/1.05 #> VAB = (2.81 * WT/100)/1.04 #> VVB = (5.62 * WT/100)/1.04 #> VRB = (3.86 * WT/100)/1.04 #> BP = 0.61 #> fup = 0.028 #> fub = fup/BP #> KbLU = exp(0.8334) #> KbHT = exp(1.1205) #> KbSK = exp(-0.5238) #> KbSP = exp(0.3224) #> KbPA = exp(0.3224) #> KbLI = exp(1.7604) #> KbST = exp(0.3224) #> KbGU = exp(1.2026) #> KbKI = exp(1.3171) #> S15 = VVB * BP/1000 #> C15 = Venous_Blood/S15 #> d/dt(Lungs) = QLU * (Venous_Blood/VVB - Lungs/KbLU/VLU) #> d/dt(Heart) = QHT * (Arterial_Blood/VAB - Heart/KbHT/VHT) #> d/dt(Brain) = QBR * (Arterial_Blood/VAB - Brain/KbBR/VBR) #> d/dt(Muscles) = QMU * (Arterial_Blood/VAB - Muscles/KbMU/VMU) #> d/dt(Adipose) = QAD * (Arterial_Blood/VAB - Adipose/KbAD/VAD) #> d/dt(Skin) = QSK * (Arterial_Blood/VAB - Skin/KbSK/VSK) #> d/dt(Spleen) = QSP * (Arterial_Blood/VAB - Spleen/KbSP/VSP) #> d/dt(Pancreas) = QPA * (Arterial_Blood/VAB - Pancreas/KbPA/VPA) #> d/dt(Liver) = QHA * Arterial_Blood/VAB + QSP * Spleen/KbSP/VSP + #> QPA * Pancreas/KbPA/VPA + QST * Stomach/KbST/VST + #> QGU * Gut/KbGU/VGU - CLint * fub * Liver/KbLI/VLI - #> QLI * Liver/KbLI/VLI #> d/dt(Stomach) = QST * (Arterial_Blood/VAB - Stomach/KbST/VST) #> d/dt(Gut) = QGU * (Arterial_Blood/VAB - Gut/KbGU/VGU) #> d/dt(Bones) = QBO * (Arterial_Blood/VAB - Bones/KbBO/VBO) #> d/dt(Kidneys) = QKI * (Arterial_Blood/VAB - Kidneys/KbKI/VKI) #> d/dt(Arterial_Blood) = QLU * (Lungs/KbLU/VLU - Arterial_Blood/VAB) #> d/dt(Venous_Blood) = QHT * Heart/KbHT/VHT + QBR * Brain/KbBR/VBR + #> QMU * Muscles/KbMU/VMU + QAD * Adipose/KbAD/VAD + #> QSK * Skin/KbSK/VSK + QLI * Liver/KbLI/VLI + QBO * #> Bones/KbBO/VBO + QKI * Kidneys/KbKI/VKI + QRB * Rest_of_Body/KbRB/VRB - #> QLU * Venous_Blood/VVB #> d/dt(Rest_of_Body) = QRB * (Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-cmt.html","id":"appending-compartments-to-the-model","dir":"Articles","previous_headings":"","what":"Appending compartments to the model","title":"Changing rxode2 compartment numbers","text":"can also append “compartments” model. ODE solving internals, add fake compartments model differential equations defined. example legal: can see clearly underlying classic rxode2 model: compartments defined differential equations supported; model : give error:","code":"ode.1c.ka <- function(){ model({ C2 = center/V d / dt(depot) = -KA * depot d/dt(center) = KA * depot - CL*C2 cmt(eff) }) } ode.1c.ka <- ode.1c.ka() print(ode.1c.ka) #> -- rxode2-based free-form 2-cmt ODE model -------------------------------------- #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> -- Model (Normalized Syntax): -- #> function() { #> model({ #> C2 = center/V #> d/dt(depot) = -KA * depot #> d/dt(center) = KA * depot - CL * C2 #> cmt(eff) #> }) #> } ode.1c.ka$simulationModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_b8d999c3e65c274ef9e90ceabef41631 model (ready). #> x$state: depot, center #> x$stateExtra: eff #> x$params: V, KA, CL #> x$lhs: C2 ode.1c.ka <- rxode2({ cmt(eff) C2 = center/V; d / dt(depot) = -KA * depot d/dt(center) = KA * depot - CL*C2 }) Error in rxModelVars_(obj) : Evaluation error: Compartment 'eff' needs differential equations defined."},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-covariates.html","id":"individual-covariates","dir":"Articles","previous_headings":"","what":"Individual Covariates","title":"rxode2 Covariates","text":"individual covariate wish solve may specify iCov dataset:","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` library(units) ## udunits database from /usr/share/xml/udunits/udunits2.xml library(xgxr) mod3 <- function() { ini({ TKA <- 2.94E-01 ## Clearance with individuals TCL <- 1.86E+01 TV2 <-4.02E+01 TQ <-1.05E+01 TV3 <-2.97E+02 TKin <- 1 TKout <- 1 TEC50 <-200 }) model({ KA <- TKA CL <- TCL * (WT / 70) ^ 0.75 V2 <- TV2 Q <- TQ V3 <- TV3 Kin <- TKin Kout <- TKout EC50 <- TEC50 Tz <- 8 amp <- 0.1 C2 <- central/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(central) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 ## This specifies that the effect compartment starts at 1. }) } ev <- et(amount.units=\"mg\", time.units=\"hours\") %>% et(amt=10000, cmt=1) %>% et(0,48,length.out=100) %>% et(id=1:4) set.seed(10) rxSetSeed(10) ## Now use iCov to simulate a 4-id sample r1 <- solve(mod3, ev, # Create individual covariate data-frame iCov=data.frame(id=1:4, WT=rnorm(4, 70, 10))) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(r1) ## ── Solved rxode2 object ── ## ── Parameters ($params): ── ## TKA TCL TV2 TQ TV3 TKin TKout TEC50 Tz amp ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 8.000 0.100 ## ── Initial Conditions ($inits): ── ## depot central peri eff ## 0 0 0 1 ## ── First part of data (object): ── ## # A tibble: 400 × 17 ## id time KA CL V2 Q V3 Kin Kout EC50 C2 C3 depot ## [h] ## 1 1 0 0.294 18.6 40.2 10.5 297 1 1 200 0 0 10000 ## 2 1 0.485 0.294 18.6 40.2 10.5 297 1 1 200 27.8 0.257 8671. ## 3 1 0.970 0.294 18.6 40.2 10.5 297 1 1 200 43.7 0.873 7519. ## 4 1 1.45 0.294 18.6 40.2 10.5 297 1 1 200 51.7 1.68 6520. ## 5 1 1.94 0.294 18.6 40.2 10.5 297 1 1 200 54.7 2.56 5654. ## 6 1 2.42 0.294 18.6 40.2 10.5 297 1 1 200 54.5 3.45 4903. ## # ℹ 394 more rows ## # ℹ 4 more variables: central , peri , eff , WT plot(r1, C2, log=\"y\") ## Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-covariates.html","id":"time-varying-covariates","dir":"Articles","previous_headings":"","what":"Time Varying Covariates","title":"rxode2 Covariates","text":"Covariates easy specify rxode2, can specify variable. Time-varying covariates, like clock time circadian rhythm model, can also used. Extending indirect response model already discussed, : Now covariate present event dataset, system can solved combining dataset model: solving ODE equations, solver may sample times outside data. happens, ODE solver can use linear interpolation covariate values. equivalent R’s approxfun method=\"linear\". Note linear approximation case leads kinks solved system 24-hours covariate linear interpolation near 24 near 0. linear seems reasonable, cases like clock time make interpolation methods attractive. rxode2 default covariate interpolation last observation carried forward (locf), constant approximation. equivalent R’s approxfun method=\"constant\". gives following plots: case, plots seem smoother. can also use NONMEM’s preferred interpolation style next observation carried backward (NOCB): gives following plots:","code":"library(rxode2) library(units) mod4 <- mod3 %>% model(d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff) %>% model(-Kin) %>% model(Kin <- TKin + amp *cos(2*pi*(ctime-Tz)/24), append=C2, cov=\"ctime\") ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=1) %>% et(0,48,length.out=100) ## Create data frame of 8 am dosing for the first dose This is done ## with base R but it can be done with dplyr or data.table ev$ctime <- (ev$time+set_units(8,hr)) %% 24 ev$WT <- 70 r1 <- solve(mod4, ev, covsInterpolation=\"linear\") print(r1) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> TKA TCL TV2 TQ TV3 TKout TEC50 #> 0.294000 18.600000 40.200000 10.500000 297.000000 1.000000 200.000000 #> TKin Tz amp pi #> 1.000000 8.000000 0.100000 3.141593 #> ── Initial Conditions ($inits): ── #> depot central peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 100 × 17 #> time KA CL V2 Q V3 Kout EC50 C2 Kin C3 depot #> [h] #> 1 0 0.294 18.6 40.2 10.5 297 1 200 0 1.1 0 10000 #> 2 0.485 0.294 18.6 40.2 10.5 297 1 200 27.8 1.10 0.257 8671. #> 3 0.970 0.294 18.6 40.2 10.5 297 1 200 43.7 1.10 0.874 7519. #> 4 1.45 0.294 18.6 40.2 10.5 297 1 200 51.8 1.09 1.68 6520. #> 5 1.94 0.294 18.6 40.2 10.5 297 1 200 54.8 1.09 2.56 5654. #> 6 2.42 0.294 18.6 40.2 10.5 297 1 200 54.6 1.08 3.45 4903. #> # ℹ 94 more rows #> # ℹ 5 more variables: central , peri , eff , ctime [h], WT plot(r1,C2, ylab=\"Central Concentration\") plot(r1,eff) + ylab(\"Effect\") + xlab(\"Time\") r1 <- solve(mod4, ev,covsInterpolation=\"locf\") print(r1) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> TKA TCL TV2 TQ TV3 TKout TEC50 #> 0.294000 18.600000 40.200000 10.500000 297.000000 1.000000 200.000000 #> TKin Tz amp pi #> 1.000000 8.000000 0.100000 3.141593 #> ── Initial Conditions ($inits): ── #> depot central peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 100 × 17 #> time KA CL V2 Q V3 Kout EC50 C2 Kin C3 depot #> [h] #> 1 0 0.294 18.6 40.2 10.5 297 1 200 0 1.1 0 10000 #> 2 0.485 0.294 18.6 40.2 10.5 297 1 200 27.8 1.10 0.257 8671. #> 3 0.970 0.294 18.6 40.2 10.5 297 1 200 43.7 1.10 0.874 7519. #> 4 1.45 0.294 18.6 40.2 10.5 297 1 200 51.8 1.09 1.68 6520. #> 5 1.94 0.294 18.6 40.2 10.5 297 1 200 54.8 1.09 2.56 5654. #> 6 2.42 0.294 18.6 40.2 10.5 297 1 200 54.6 1.08 3.45 4903. #> # ℹ 94 more rows #> # ℹ 5 more variables: central , peri , eff , ctime [h], WT plot(r1,C2, ylab=\"Central Concentration\", xlab=\"Time\") plot(r1,eff, ylab=\"Effect\", xlab=\"Time\") r1 <- solve(mod4, ev,covsInterpolation=\"nocb\") print(r1) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> TKA TCL TV2 TQ TV3 TKout TEC50 #> 0.294000 18.600000 40.200000 10.500000 297.000000 1.000000 200.000000 #> TKin Tz amp pi #> 1.000000 8.000000 0.100000 3.141593 #> ── Initial Conditions ($inits): ── #> depot central peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 100 × 17 #> time KA CL V2 Q V3 Kout EC50 C2 Kin C3 depot #> [h] #> 1 0 0.294 18.6 40.2 10.5 297 1 200 0 1.1 0 10000 #> 2 0.485 0.294 18.6 40.2 10.5 297 1 200 27.8 1.10 0.257 8671. #> 3 0.970 0.294 18.6 40.2 10.5 297 1 200 43.7 1.10 0.874 7519. #> 4 1.45 0.294 18.6 40.2 10.5 297 1 200 51.8 1.09 1.68 6520. #> 5 1.94 0.294 18.6 40.2 10.5 297 1 200 54.8 1.09 2.56 5654. #> 6 2.42 0.294 18.6 40.2 10.5 297 1 200 54.6 1.08 3.45 4903. #> # ℹ 94 more rows #> # ℹ 5 more variables: central , peri , eff , ctime [h], WT plot(r1,C2, ylab=\"Central Concentration\", xlab=\"Time\") plot(r1,eff, ylab=\"Effect\", xlab=\"Time\")"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"creating-an-interactive-data-frame","dir":"Articles","previous_headings":"Using rxode2 data frames","what":"Creating an interactive data frame","title":"rxode2 Data Frames","text":"rxode2 supports returning solved object modified data-frame. done predict(), solve(), rxSolve() methods.","code":"library(rxode2) library(units) ## Setup example model mod1 <- function() { ini({ # central KA <- 2.94E-01 CL <- 1.86E+01 # peripheral V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 # effects Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) } ## Seup parameters and initial conditions ## Setup dosing event information ev <- et(amountUnits=\"mg\", timeUnits = \"hours\") %>% et(amt=10000, addl=9, ii=12) %>% et(amt=20000, addl=4, time=120, ii=24) %>% et(0:240) ## Now solve x <- predict(mod1, ev) x #> -- Solved rxode2 object -- #> -- Parameters (x$params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> -- Initial Conditions (x$inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 241 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # i 235 more rows"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"using-the-solved-object-as-a-simple-data-frame","dir":"Articles","previous_headings":"Using rxode2 data frames","what":"Using the solved object as a simple data frame","title":"rxode2 Data Frames","text":"solved object acts data.frame tbl can filtered dpylr. example filter easily.","code":"library(dplyr) ## You can drop units for comparisons and filtering x <- mod1 %>% solve(ev) %>% drop_units() %>% filter(time <= 3) %>% as_tibble() ## or keep them and compare with the proper units. x <- mod1 %>% solve(ev) %>% filter(time <= set_units(3, hr)) %>% as_tibble() x #> # A tibble: 4 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"updating-the-data-set-interactively","dir":"Articles","previous_headings":"","what":"Updating the data-set interactively","title":"rxode2 Data Frames","text":"However isn’t just simple data object. can use solved object update parameters fly, even change sampling time. First need recreate original solved system:","code":"x <- mod1 %>% solve(ev) print(x) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 241 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # i 235 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"modifying-observation-times-for-rxode2","dir":"Articles","previous_headings":"Updating the data-set interactively","what":"Modifying observation times for rxode2","title":"rxode2 Data Frames","text":"Notice initial effect now 2. can also change sampling times easily method changing t time. example:","code":"x$t <- seq(0,5,length.out=20) print(x) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 20 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 0.263 16.8 0.0817 9255. 677. 24.3 1.01 #> 3 0.526 29.5 0.299 8566. 1187. 88.7 1.03 #> 4 0.789 38.9 0.615 7929. 1562. 183. 1.06 #> 5 1.05 45.5 1.00 7338. 1830. 298. 1.09 #> 6 1.32 50.1 1.44 6792. 2013. 427. 1.12 #> # i 14 more rows plot(x)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"modifying-simulation-parameters","dir":"Articles","previous_headings":"Updating the data-set interactively","what":"Modifying simulation parameters","title":"rxode2 Data Frames","text":"can also access change parameters $ operator. example, accessing KA can done : may change assigning new value. can access/change parameters, initialization(s) events $params, $inits, $events accessor syntax, similar used . syntax makes easy update explore effect various parameters solved object.","code":"x$KA #> [1] 0.294 x$KA <- 1 print(x) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 1.0 18.6 40.2 10.5 297.0 1.0 1.0 200.0 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 20 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 0.263 52.2 0.261 7686. 2098. 77.6 1.03 #> 3 0.526 83.3 0.900 5908. 3348. 267. 1.09 #> 4 0.789 99.8 1.75 4541. 4010. 519. 1.15 #> 5 1.05 106. 2.69 3490. 4273. 800. 1.21 #> 6 1.32 106. 3.66 2683. 4272. 1086. 1.26 #> # i 14 more rows plot(x)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"datasets-for-rxode2-nlmixr","dir":"Articles","previous_headings":"","what":"Datasets for rxode2 & nlmixr","title":"rxode2 Event Types","text":"Data input nlmixr type data input rxode2, similar data NONMEM (NONMEM-ready datasets can used directly nlmixr).","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"subject-identification-columns","dir":"Articles","previous_headings":"Columns Described by Type of Use","what":"Subject Identification Columns","title":"rxode2 Event Types","text":"subject identification column separates subjects identification random effects. ID: subject identifier may integer, character, factor.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"observation-columns","dir":"Articles","previous_headings":"Columns Described by Type of Use","what":"Observation Columns","title":"rxode2 Event Types","text":"Observation columns used indicate dependent variable use measure . DV: numeric column measurement CENS: numeric column indication censoring, limit quantification assay. LIMIT: numeric column helping indicate type censoring, limit quantification assay. MDV: indicator missing DV values CMT: name number compartment DVID: dependent variable identifier EVID event identifier","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dosing-columns","dir":"Articles","previous_headings":"Columns Described by Type of Use","what":"Dosing Columns","title":"rxode2 Event Types","text":"AMT: amount dose CMT: name number compartment EVID: event identifier ADDL: number additional doses RATE DUR: rate duration dose","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"details-for-specific-dataset-columns","dir":"Articles","previous_headings":"","what":"Details for Specific Dataset Columns","title":"rxode2 Event Types","text":"details sorted alphabetically column name. grouping use, see documentation .","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"amt-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"AMT Column","title":"rxode2 Event Types","text":"AMT column defines amount dose. observation rows, 0 NA. dosing rows, amount dose administered CMT. dose zero-order rate (constant infusion), infusion may setup using RATE DUR column.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"censlimit-columns","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"CENS/LIMIT Columns","title":"rxode2 Event Types","text":"CENS column indicator column indicating censoring occurred. pharmacokinetic modeling, censoring typically sample limit quantification. Internally rxode2 saves values nlmixr can use likelihood calculations. CENS = 0 indicates value DV measured without censoring. CENS = 1 indicates value left censored (limit quantitation) value DV censoring/quantitation limit. CENS = -1 indicates value right censored (limit quantitation) value DV censoring/quantitation limit. LIMIT additional information censoring handled nlmixr stored rxode2’s data structure well. value left censored, like limit 1 may also believe value certain threshold, like zero. case, limit 0 indicates censored value 0 1. short : CENS = 0 LIMIT ignored observation censored CENS = 1 value censored (LIMIT, DV) CENS = -1 value censored (DV, LIMIT)","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"cmt-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"CMT Column","title":"rxode2 Event Types","text":"CMT column indicates compartment event occurs. given character string factor (preferred method), matched name model. given integer, matched order compartments appear model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dur-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"DUR Column","title":"rxode2 Event Types","text":"DUR column defines duration infusion. used set duration zero-order rate infusion.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dv-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"DV Column","title":"rxode2 Event Types","text":"DV column indicates current measurement current compartment (see CMT) current measurement identifier (see DVID) may missing (see MDV) censored (see CENS).","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dvid-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"DVID Column","title":"rxode2 Event Types","text":"TODO","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"evid-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"EVID Column","title":"rxode2 Event Types","text":"EVID column event identifier row data. observation records, 0. normal dosing records, 1. Many EVID values detailed rxode2 Event Types Classic rxode2 Events vignettes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"id-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"ID Column","title":"rxode2 Event Types","text":"ID column subject identifier. column used separate one individual (usually single person animal) another. model, ID column used separate individuals. numerical integrator re-initializes new individual, new values random effects selected.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"rate-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"RATE Column","title":"rxode2 Event Types","text":"TODO","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"creating-rxode2s-event-tables","dir":"Articles","previous_headings":"","what":"Creating rxode2’s event tables","title":"Easy rxode2 Event Tables","text":"event table rxode2 specialized data frame acts container rxode2’s events observation times. create rxode2 event table may use code eventTable(), et(), even create data frame right event information contained . closely related types events rxode2 supports. event table can add sampling/observations doses piping direct access. short table two main functions create dosing Sampling times can added add.sampling( sampling times ) et( sampling times ). Dosing intervals sampling windows also supported. documentation using et() syntax, though supported. models, can illustrate using model shared rxode2 tutorial:","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` library(units) #> udunits database from /usr/share/xml/udunits/udunits2.xml (ev <- et()) #> -- EventTable with 0 records -- #> 0 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) (ev <- et()) #> -- EventTable with 0 records -- #> 0 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) ## Model from rxode2 tutorial m1 <-function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff; eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"adding-doses-to-the-event-table","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Adding doses to the event table","title":"Easy rxode2 Event Tables","text":"created can add dosing event table add.dosing(), et() functions. Using add.dosing() function : Notice units specified table. specified, units use units package keep track units convert needed. Additionally, ggforce uses label ggplot axes. set_units drop_units useful set drop rxode2 event table units. example, can see time axes labeled: familiar NONMEM/rxode2 event records, can also specify dosing using et dose elements directly: gives: shows easy creating event tables can .","code":"ev <- eventTable(amount.units=\"mg\", time.units=\"hr\") ## The methods ar attached to the event table, so you can use ## them directly ev$add.dosing(dose=10000, nbr.doses = 3)# loading doses ## Starts at time 0; Default dosing interval is 24 ## You can also pipe the event tables to these methods. ev <- ev %>% add.dosing(dose=5000, nbr.doses=14, dosing.interval=12)# maintenance ev #> -- EventTable with 2 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 2 x 5 #> time amt ii addl evid #> [h] [mg] [h] #> 1 0 10000 24 2 1:Dose (Add) #> 2 0 5000 12 13 1:Dose (Add) rxSolve(m1, ev) %>% plot(C2) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ev <- et(timeUnits=\"hr\") %>% et(amt=10000, until = set_units(3, days), ii=12) # loading doses ev #> -- EventTable with 1 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 1 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 10000 12 6 1:Dose (Add) rxSolve(m1, ev) %>% plot(C2) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"adding-sampling-to-an-event-table","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Adding sampling to an event table","title":"Easy rxode2 Event Tables","text":"notice examples, rxode2 generated default sampling times since sampling times. wish control sampling time, add samples rxode2 event table add.sampling et gives: use et can simply add similar way add.sampling: gives following rxode2 solve: Note jagged nature plots since sample times.","code":"ev <- eventTable(amount.units=\"mg\", time.units=\"hr\") ## The methods ar attached to the event table, so you can use them ## directly ev$add.dosing(dose=10000, nbr.doses = 3)# loading doses ev$add.sampling(seq(0,24,by=4)) ev #> -- EventTable with 8 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 7 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 8 x 5 #> time amt ii addl evid #> [h] [mg] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 24 2 1:Dose (Add) #> 3 4 NA NA NA 0:Observation #> 4 8 NA NA NA 0:Observation #> 5 12 NA NA NA 0:Observation #> 6 16 NA NA NA 0:Observation #> 7 20 NA NA NA 0:Observation #> 8 24 NA NA NA 0:Observation solve(m1, ev) %>% plot(C2) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, until = set_units(3, days), ii=12) %>% # loading doses et(seq(0,24,by=4)) ev #> -- EventTable with 8 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 7 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 8 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 6 1:Dose (Add) #> 3 4 NA NA NA 0:Observation #> 4 8 NA NA NA 0:Observation #> 5 12 NA NA NA 0:Observation #> 6 16 NA NA NA 0:Observation #> 7 20 NA NA NA 0:Observation #> 8 24 NA NA NA 0:Observation solve(m1, ev) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"expand-the-event-table-to-a-multi-subject-event-table-","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Expand the event table to a multi-subject event table.","title":"Easy rxode2 Event Tables","text":"thing needed expand event table list IDs want expand; can see following simulation 4 individuals solved :","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, until = set_units(3, days), ii=12) %>% # loading doses et(seq(0,48,length.out=200)) %>% et(id=1:4) ev #> -- EventTable with 804 records -- #> 4 dosing records (see x$get.dosing(); add with add.dosing or et) #> 800 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 804 x 6 #> id time amt ii addl evid #> [h] [h] #> 1 1 0 NA NA NA 0:Observation #> 2 1 0 10000 12 6 1:Dose (Add) #> 3 1 0.241 NA NA NA 0:Observation #> 4 1 0.482 NA NA NA 0:Observation #> 5 1 0.724 NA NA NA 0:Observation #> 6 1 0.965 NA NA NA 0:Observation #> 7 1 1.21 NA NA NA 0:Observation #> 8 1 1.45 NA NA NA 0:Observation #> 9 1 1.69 NA NA NA 0:Observation #> 10 1 1.93 NA NA NA 0:Observation #> # i 794 more rows set.seed(42) rxSetSeed(42) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"add-doses-and-samples-within-a-sampling-window","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Add doses and samples within a sampling window","title":"Easy rxode2 Event Tables","text":"addition adding fixed doses fixed sampling times, can windows sample draw doses . dosing windows specify time ordered numerical vector lowest dosing time highest dosing time inside list. example, start dosing time 6 hour dosing window: can clearly see different dosing times following simulation: course reality dosing interval may 2 hours: sort thing can specified sampling times. specify sampling times terms sampling window, can create list sampling times. sampling time two element ordered numeric vector. shows flexibility dosing sampling rxode2 event tables allow.","code":"set.seed(42) rxSetSeed(42) ev <- et(timeUnits=\"hr\") %>% et(time=list(c(0,6)), amt=10000, until = set_units(2, days), ii=12) %>% # loading doses et(id=1:4) ev #> -- EventTable with 16 records -- #> 16 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 16 x 6 #> id low time high amt evid #> [h] [h] [h] #> 1 1 0 5.49 6 10000 1:Dose (Add) #> 2 1 12 17.0 18 10000 1:Dose (Add) #> 3 1 24 25.7 30 10000 1:Dose (Add) #> 4 1 36 41.6 42 10000 1:Dose (Add) #> 5 2 0 4.31 6 10000 1:Dose (Add) #> 6 2 12 14.7 18 10000 1:Dose (Add) #> 7 2 24 28.2 30 10000 1:Dose (Add) #> 8 2 36 39.9 42 10000 1:Dose (Add) #> 9 3 0 0.808 6 10000 1:Dose (Add) #> 10 3 12 16.4 18 10000 1:Dose (Add) #> 11 3 24 27.1 30 10000 1:Dose (Add) #> 12 3 36 39.9 42 10000 1:Dose (Add) #> 13 4 0 4.98 6 10000 1:Dose (Add) #> 14 4 12 13.7 18 10000 1:Dose (Add) #> 15 4 24 29.6 30 10000 1:Dose (Add) #> 16 4 36 41.5 42 10000 1:Dose (Add) ev <- ev %>% et(seq(0,48,length.out=200)) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2) set.seed(42) rxSetSeed(42) ev <- et(timeUnits=\"hr\") %>% et(time=list(c(0,2)), amt=10000, until = set_units(2, days), ii=12) %>% # loading doses et(id=1:4) %>% et(seq(0,48,length.out=200)) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2) rxSetSeed(42) set.seed(42) ev <- et(timeUnits=\"hr\") %>% et(time=list(c(0,2)), amt=10000, until = set_units(2, days), ii=12) %>% # loading doses et(id=1:4) ## Create 20 samples in the first 24 hours and 20 samples in the ## second 24 hours samples <- c(lapply(1:20, function(...){c(0,24)}), lapply(1:20, function(...){c(20,48)})) ## Add the random collection to the event table ev <- ev %>% et(samples) library(ggplot2) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2) + geom_point()"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"combining-event-tables","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Combining event tables","title":"Easy rxode2 Event Tables","text":"Since can create dosing records sampling records, can create complex dosing regimen wish. addition, rxode2 allows combine event tables c, seq, rep, rbind.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"sequencing-event-tables","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Sequencing event tables","title":"Easy rxode2 Event Tables","text":"One way combine event table sequence c, seq etSeq. takes two dosing groups adds least one inter-dose interval : sequencing events, can also separate sequence period time; example wanted separate week, easily following sequence event tables: Note example time bid qd event tables exactly one week, 1 week plus 24 hours inter-dose interval. want behavior, can sequence using wait=\"+ii\". Also note, rxode2 assumes dosing want space event tables , clears sampling records combine event tables. true, can also use option samples=\"use\"","code":"## bid for 5 days bid <- et(timeUnits=\"hr\") %>% et(amt=10000,ii=12,until=set_units(5, \"days\")) ## qd for 5 days qd <- et(timeUnits=\"hr\") %>% et(amt=20000,ii=24,until=set_units(5, \"days\")) ## bid for 5 days followed by qd for 5 days et <- seq(bid,qd) %>% et(seq(0,11*24,length.out=100)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days followed by qd for 5 days et <- seq(bid,set_units(1, \"week\"), qd) %>% et(seq(0,18*24,length.out=100)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days followed by qd for 5 days et <- seq(bid,set_units(1, \"week\"), qd,wait=\"+ii\") %>% et(seq(0,18*24,length.out=100)); rxSolve(m1, et) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"repeating-event-tables","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Repeating event tables","title":"Easy rxode2 Event Tables","text":"can event table can repeat etRep rep. example 4 rounds 2 weeks QD therapy 1 week therapy can simply specified: simplified way use sequence event tables. Therefore, many options still apply; samples cleared unless use samples=\"use\", time event tables least inter-dose interval. can adjust timing wait option.","code":"qd <-et(timeUnits = \"hr\") %>% et(amt=10000, ii=24, until=set_units(2, \"weeks\"), cmt=\"depot\") et <- rep(qd, times=4, wait=set_units(1,\"weeks\")) %>% add.sampling(set_units(seq(0, 12.5,by=0.005),weeks)) rxSolve(m1, et) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"combining-event-tables-with-rbind","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Combining event tables with rbind","title":"Easy rxode2 Event Tables","text":"may combine event tables rbind. consider event times combining event tables, keeps times. space event tables waiting period, also consider inter-dose interval. Using previous seq can clearly see difference. sequence: bind together rbind Still waiting period applies (consider inter-dose interval) can also bind tables together make ID event table unique; can good combine cohorts different expected dosing sampling times. requires id=\"unique\" option; Using first example shows different case:","code":"## bid for 5 days bid <- et(timeUnits=\"hr\") %>% et(amt=10000,ii=12,until=set_units(5, \"days\")) ## qd for 5 days qd <- et(timeUnits=\"hr\") %>% et(amt=20000,ii=24,until=set_units(5, \"days\")) et <- seq(bid,qd) %>% et(seq(0,18*24,length.out=500)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days et <- rbind(bid,qd) %>% et(seq(0,18*24,length.out=500)); rxSolve(m1, et) %>% plot(C2) et <- rbind(bid,wait=set_units(10,days),qd) %>% et(seq(0,18*24,length.out=500)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days et <- etRbind(bid,qd, id=\"unique\") %>% et(seq(0,150,length.out=500)); library(ggplot2) rxSolve(m1, et) %>% plot(C2) + facet_wrap( ~ id)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"event-tables-in-rstudio-notebooks","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Event tables in Rstudio Notebooks","title":"Easy rxode2 Event Tables","text":"addition output console shown examples, Rstudio notebook output different can seen following screenshots; first screenshot shows event table looks evaluating Rstduio notebook simple dataframe allows page contents. click first box Rstudio notebook output, notes event table: ## Expanding events Event tables can expanded contain addl data item, like following example: can expand events addl items $expand() etExpand(ev): first, etExpand(ev) expands event table without modifying original data frame: can see addl events expanded, however original data frame remained intact: use ev$expand() modify ev object. similar object-oriented method:","code":"ev <- et() %>% et(dose=50, ii=8, until=48) ev #> -- EventTable with 1 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 1 x 5 #> time amt ii addl evid #> #> 1 0 50 8 6 1:Dose (Add) etExpand(ev) #> -- EventTable with 7 records -- #> 7 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 7 x 4 #> time amt ii evid #> #> 1 0 50 0 1:Dose (Add) #> 2 8 50 0 1:Dose (Add) #> 3 16 50 0 1:Dose (Add) #> 4 24 50 0 1:Dose (Add) #> 5 32 50 0 1:Dose (Add) #> 6 40 50 0 1:Dose (Add) #> 7 48 50 0 1:Dose (Add) print(ev) #> -- EventTable with 1 records -- #> 1 dosing records (see $get.dosing(); add with add.dosing or et) #> 0 observation times (see $get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with $expand(); or etExpand() #> -- First part of : -- #> # A tibble: 1 x 5 #> time amt ii addl evid #> #> 1 0 50 8 6 1:Dose (Add) ev$expand() ev #> -- EventTable with 7 records -- #> 7 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 7 x 4 #> time amt ii evid #> #> 1 0 50 0 1:Dose (Add) #> 2 8 50 0 1:Dose (Add) #> 3 16 50 0 1:Dose (Add) #> 4 24 50 0 1:Dose (Add) #> 5 32 50 0 1:Dose (Add) #> 6 40 50 0 1:Dose (Add) #> 7 48 50 0 1:Dose (Add)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"rxode2-event-tables","dir":"Articles","previous_headings":"","what":"rxode2 event tables","title":"rxode2 Event Types","text":"general, rxode2 event tables follow NONMEM dataset convention exceptions: may turn compartment negative compartment number “-cmt” cmt compartment name. compartment data item (cmt) can still number, number compartment defined appearance compartment name model. can tedious count, can specify compartment numbers easier using cmt(cmtName) beginning model. Bioavailability changes change rate infusion since dur/amt fixed input data. Similarly, specifying rate/amt infusion, bioavailability change infusion duration since rate/amt fixed input data. infrequent NONMEM columns supported: pcmt, call. evid=5 replace event; replaces value compartment value specified amt column. equivalent deSolve=replace. evid=6 multiply event; multiplies value compartment value specified amt column. equivalent deSolve=multiply. evid=7 transit compartment model/phantom event. puts dose dose() function calculates time since last dose tad() doesn’t actually put dose compartment. allows transit() function easily apply compartment. legal entries data table: notes: evid can classic RxODE (described ) NONMEM-style evid described . NONMEM’s DV required; rxode2 ODE solving framework. NONMEM’s MDV required, since captured EVID. Instead NONMEM-compatible data, can accept deSolve compatible data-frames. returning rxode2 solved data-set additional event ids (EVID) may see depending solving options: EVID = -1 modeled rate ends (corresponds rate = -1) EVID = -2 modeled duration ends (corresponds rate=-2) EVID = -10 rate specified zero-order infusion ends (corresponds rate > 0) EVID = -20 duration specified zero-order infusion ends (corresponds dur > 0) EVID = 101, 102, 103,... correspond 1, 2, 3, … modeled time (mtime). can accessed solving option combination addDosing=TRUE subsetNonmem=FALSE. want see classic EVID equivalents can use addDosing=NA. illustrate event types use model original rxode2 tutorial.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` ## Model from rxode2 tutorial m1 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"bolusadditive-doses","dir":"Articles","previous_headings":"","what":"Bolus/Additive Doses","title":"rxode2 Event Types","text":"bolus dose default type dose rxode2 requires amt/dose. Note uses convenience function et() described rxode2 event tables","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 2 1:Dose (Add) #> 3 0.242 NA NA NA 0:Observation #> 4 0.485 NA NA NA 0:Observation #> 5 0.727 NA NA NA 0:Observation #> 6 0.970 NA NA NA 0:Observation #> 7 1.21 NA NA NA 0:Observation #> 8 1.45 NA NA NA 0:Observation #> 9 1.70 NA NA NA 0:Observation #> 10 1.94 NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev) %>% plot(C2) + xlab(\"Time\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"infusion-doses","dir":"Articles","previous_headings":"","what":"Infusion Doses","title":"rxode2 Event Types","text":"different type infusions rxode2 supports: Constant Rate Infusion (rate) Constant Duration Infusion (dur) Estimated Rate Infusion Estimated Duration Infusion","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"constant-infusion-in-terms-of-duration-and-rate","dir":"Articles","previous_headings":"Infusion Doses","what":"Constant Infusion (in terms of duration and rate)","title":"rxode2 Event Types","text":"next type event infusion; two ways specify infusion; first dur keyword. example : can also specified rate component: exception bioavailability changes infusion. case modeling rate, bioavailability decrease, decreases infusion duration, NONMEM. example: Similarly increasing bioavailability increases infusion duration. rationale behavior rate amt specified event table, thing can change bioavailability increase duration infusion. specify amt dur components event table, bioavailability changes affect rate infusion. can see side--side comparison bioavailability changes affecting rate instead duration records following plots:","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, dur=8) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt ii addl evid dur #> [h] [h] [h] #> 1 0 NA NA NA 0:Observation NA #> 2 0 10000 12 2 1:Dose (Add) 8 #> 3 0.242 NA NA NA 0:Observation NA #> 4 0.485 NA NA NA 0:Observation NA #> 5 0.727 NA NA NA 0:Observation NA #> 6 0.970 NA NA NA 0:Observation NA #> 7 1.21 NA NA NA 0:Observation NA #> 8 1.45 NA NA NA 0:Observation NA #> 9 1.70 NA NA NA 0:Observation NA #> 10 1.94 NA NA NA 0:Observation NA #> # i 91 more rows rxSolve(m1, ev) %>% plot(depot, C2) + xlab(\"Time\") ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, rate=10000/8) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt rate ii addl evid #> [h] [h] #> 1 0 NA NA NA NA 0:Observation #> 2 0 10000 1250 12 2 1:Dose (Add) #> 3 0.242 NA NA NA NA 0:Observation #> 4 0.485 NA NA NA NA 0:Observation #> 5 0.727 NA NA NA NA 0:Observation #> 6 0.970 NA NA NA NA 0:Observation #> 7 1.21 NA NA NA NA 0:Observation #> 8 1.45 NA NA NA NA 0:Observation #> 9 1.70 NA NA NA NA 0:Observation #> 10 1.94 NA NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev) %>% plot(depot, C2) + xlab(\"Time\") rxSolve(m1, ev, c(fdepot=0.25)) %>% plot(depot, C2) + xlab(\"Time\") rxSolve(m1, ev, c(fdepot=1.25)) %>% plot(depot, C2) + xlab(\"Time\") ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, dur=8) %>% et(seq(0, 24, length.out=100)) library(ggplot2) library(patchwork) p1 <- rxSolve(m1, ev, c(fdepot=1.25)) %>% plot(depot) + xlab(\"Time\") + ylim(0,5000) p2 <- rxSolve(m1, ev, c(fdepot=0.25)) %>% plot(depot) + xlab(\"Time\")+ ylim(0,5000) ## Use patchwork syntax to combine plots p1 * p2"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"modeled-rate-and-duration-of-infusion","dir":"Articles","previous_headings":"Infusion Doses","what":"Modeled Rate and Duration of Infusion","title":"rxode2 Event Types","text":"can model duration, equivalent NONMEM’s rate=-2. Similarly, may also model rate. equivalent NONMEM’s rate=-1 rxode2’s event table specifies data item well.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, rate=-2) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt rate ii addl evid #> [h] [h] #> 1 0 NA NA NA NA 0:Observation #> 2 0 10000 -2:dur 12 2 1:Dose (Add) #> 3 0.242 NA NA NA NA 0:Observation #> 4 0.485 NA NA NA NA 0:Observation #> 5 0.727 NA NA NA NA 0:Observation #> 6 0.970 NA NA NA NA 0:Observation #> 7 1.21 NA NA NA NA 0:Observation #> 8 1.45 NA NA NA NA 0:Observation #> 9 1.70 NA NA NA NA 0:Observation #> 10 1.94 NA NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev, c(durDepot=7)) %>% plot(depot, C2) + xlab(\"Time\") ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, rate=-1) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt rate ii addl evid #> [h] [h] #> 1 0 NA NA NA NA 0:Observation #> 2 0 10000 -1:rate 12 2 1:Dose (Add) #> 3 0.242 NA NA NA NA 0:Observation #> 4 0.485 NA NA NA NA 0:Observation #> 5 0.727 NA NA NA NA 0:Observation #> 6 0.970 NA NA NA NA 0:Observation #> 7 1.21 NA NA NA NA 0:Observation #> 8 1.45 NA NA NA NA 0:Observation #> 9 1.70 NA NA NA NA 0:Observation #> 10 1.94 NA NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev, c(rateDepot=10000/3)) %>% plot(depot, C2) + xlab(\"Time\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"steady-state","dir":"Articles","previous_headings":"","what":"Steady State","title":"rxode2 Event Types","text":"doses solved steady state reached constant inter-dose interval.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, ss=1) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 101 x 5 #> time amt ii evid ss #> [h] [h] #> 1 0 NA NA 0:Observation NA #> 2 0 10000 12 1:Dose (Add) 1 #> 3 0.242 NA NA 0:Observation NA #> 4 0.485 NA NA 0:Observation NA #> 5 0.727 NA NA 0:Observation NA #> 6 0.970 NA NA 0:Observation NA #> 7 1.21 NA NA 0:Observation NA #> 8 1.45 NA NA 0:Observation NA #> 9 1.70 NA NA 0:Observation NA #> 10 1.94 NA NA 0:Observation NA #> # i 91 more rows rxSolve(m1, ev) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"steady-state-for-complex-dosing","dir":"Articles","previous_headings":"Steady State","what":"Steady state for complex dosing","title":"rxode2 Event Types","text":"using ss=2 flag, can use super-positioning principle linear kinetics get steady state nonstandard dosing (.e. morning 100 mg vs evening 150 mg). done : Saving state values Resetting states solving system steady state Adding back prior state values can see takes full dose cycle reach true complex steady state dosing.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=24, ss=1) %>% et(time=12, amt=15000, ii=24, ss=2) %>% et(time=24, amt=10000, ii=24, addl=3) %>% et(time=36, amt=15000, ii=24, addl=3) %>% et(seq(0, 64, length.out=500)) library(ggplot2) rxSolve(m1, ev,maxsteps=10000) %>% plot(C2) + annotate(\"rect\", xmin=0, xmax=24, ymin=-Inf, ymax=Inf, alpha=0.2) + annotate(\"text\", x=12.5, y=7, label=\"Initial Steady State Period\") + annotate(\"text\", x=44, y=7, label=\"Steady State AM/PM dosing\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"steady-state-for-constant-infusion-or-zero-order-processes","dir":"Articles","previous_headings":"Steady State","what":"Steady state for constant infusion or zero order processes","title":"rxode2 Event Types","text":"last type steady state rxode2 supports steady-state constant infusion rate. can specified way NONMEM, : inter-dose interval ii=0 steady state dose, ie ss=1 Either positive rate (rate>0) estimated rate rate=-1. zero dose, ie amt=0 steady-state constant infusion achieved, infusion turned using record, just like NONMEM. Note rate=-2 model duration infusion doesn’t make much sense since solving infusion steady state. duration specified steady state solution. Also note bioavailability changes steady state infusion also make sense neither change rate duration steady state infusion. Hence modeled bioavailability type dosing event ignored. example: can used PK, can used steady-state disease processes.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=0, ss=1,rate=10000/8) p1 <- rxSolve(m1, ev) %>% plot(C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=200000, rate=10000/8) %>% et(0, 250, length.out=1000) p2 <- rxSolve(m1, ev) %>% plot(C2, eff) library(patchwork) p1 / p2"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"reset-events","dir":"Articles","previous_headings":"","what":"Reset Events","title":"rxode2 Event Types","text":"Reset events implemented evid=3 evid=reset, reset evid=4 reset dose. solving show happens system system reset 6 hours post-dose. can see compartments reset initial values. next dose start dosing cycle . case, whole system reset dose given","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, evid=reset) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 102 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 102 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 3 1:Dose (Add) #> 3 0.242 NA NA NA 0:Observation #> 4 0.485 NA NA NA 0:Observation #> 5 0.727 NA NA NA 0:Observation #> 6 0.970 NA NA NA 0:Observation #> 7 1.21 NA NA NA 0:Observation #> 8 1.45 NA NA NA 0:Observation #> 9 1.70 NA NA NA 0:Observation #> 10 1.94 NA NA NA 0:Observation #> # i 92 more rows rxSolve(m1, ev) %>% plot(depot,C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, amt=10000, evid=4) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 102 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 102 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 3 1:Dose (Add) #> 3 0.242 NA NA NA 0:Observation #> 4 0.485 NA NA NA 0:Observation #> 5 0.727 NA NA NA 0:Observation #> 6 0.970 NA NA NA 0:Observation #> 7 1.21 NA NA NA 0:Observation #> 8 1.45 NA NA NA 0:Observation #> 9 1.70 NA NA NA 0:Observation #> 10 1.94 NA NA NA 0:Observation #> # i 92 more rows rxSolve(m1, ev) %>% plot(depot,C2, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"turning-off-compartments","dir":"Articles","previous_headings":"","what":"Turning off compartments","title":"rxode2 Event Types","text":"may also turn compartment, similar reset event. Solving shows system: case, depot turned , depot compartment concentrations set initial values compartment concentrations/levels reset. another dose depot administered depot compartment turned back . Note dose compartment turns back compartment dosed. Hence turn effect compartment, continues another dose depot. turn back compartment, zero-dose compartment evid=2 compartment needed.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, cmt=\"-depot\", evid=2) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 102 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 102 x 6 #> time cmt amt ii addl evid #> [h] [h] #> 1 0 (obs) NA NA NA 0:Observation #> 2 0 (default) 10000 12 3 1:Dose (Add) #> 3 0.242 (obs) NA NA NA 0:Observation #> 4 0.485 (obs) NA NA NA 0:Observation #> 5 0.727 (obs) NA NA NA 0:Observation #> 6 0.970 (obs) NA NA NA 0:Observation #> 7 1.21 (obs) NA NA NA 0:Observation #> 8 1.45 (obs) NA NA NA 0:Observation #> 9 1.70 (obs) NA NA NA 0:Observation #> 10 1.94 (obs) NA NA NA 0:Observation #> # i 92 more rows rxSolve(m1, ev) %>% plot(depot,C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, cmt=\"-eff\", evid=2) %>% et(seq(0, 24, length.out=100)) rxSolve(m1, ev) %>% plot(depot,C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, cmt=\"-eff\", evid=2) %>% et(time=12,cmt=\"eff\",evid=2) %>% et(seq(0, 24, length.out=100)) rxSolve(m1, ev) %>% plot(depot,C2, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"classic-rxode-evid-values","dir":"Articles","previous_headings":"","what":"Classic RxODE evid values","title":"Classic rxode2 Events","text":"Originally RxODE supported compound event IDs; rxode2 still supports parameters, often useful use normal NONMEM dataset standard used many modeling tools like NONMEM, Monolix nlmixr, described rxode2 types article. Classically, RxODE supported event coding single event id evid described following table. classic EVID concatenate numbers table, infusion compartment 1 10101 infusion compartment 199 119901. EVID = 0 (observations), EVID=2 (type event) EVID=3 supported. Internally EVID=9 non-observation event makes sure system initialized zero; EVID=9 manually set. EVID 10-99 represents modeled time interventions, similar NONMEM’s MTIME. along amount (amt) time columns specify events ODE system. infusions specified EVIDs > 100 amt column represents rate value. Infusion flags 1 2 +amt turn infusion specific compartment -amt turn infusion specific compartment. specify dose/duration place dosing records time duration starts stops. modeled rate/duration infusion flags infusion flag must followed infusion record. number concatenated together form full RxODE event ID, shown following examples:","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"bolus-dose-examples","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Bolus Dose Examples","title":"Classic rxode2 Events","text":"100 bolus dose compartment #1 time 0 100 bolus dose compartment #99 time 0 100 bolus dose compartment #199 time 0","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"infusion-event-examples","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Infusion Event Examples","title":"Classic rxode2 Events","text":"Bolus infusion rate 50 compartment 1 1.5 hr, (modeled bioavailability changes duration infusion) Bolus infusion rate 50 compartment 1 1.5 hr (modeled bioavailability changes rate infusion) Modeled rate amount 50 Modeled duration amount 50","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"steady-state-for-classic-rxode-evid-example","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Steady State for classic RxODE EVID example","title":"Classic rxode2 Events","text":"Steady state dose cmt 1 Steady State super-positioning principle 50 pm 100 dose","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"steady-state-with-lagged-dose-for-classic-rxode-evid","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Steady state with lagged dose for classic RxODE evid","title":"Classic rxode2 Events","text":"Steady state lagged dose bolus dose: time | evid | amt | ii | 0 | 109 | 100 | 24 | 0 | 101 | 100 | 0 | event 109 calculates trough amount steady state passed (ii-lag_time) event 101 applies next steady state dose. Steady state (=2) lagged bolus dose Steady state infusion lag time time | evid | amt | ii | 0 | 10109 | 5 | 24 | 0 | 10108 | -5 | 24 | 0 | 10101 | 5 | | 20 | 10101 | -5 | | case bolus, 10109 event calculates trough concentration ii=24, may (may ) still infusion running. infusion running 10108 event turn infusion appropriate time. infusion completed, 10108 event ignored. next 2 events 10101 represent event times (assuming bioavailability applied).","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"turning-off-a-compartment-with-classic-rxode-evid","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Turning off a compartment with classic RxODE EVID","title":"Classic rxode2 Events","text":"Turn first compartment time 12 Event coding rxode2 encoded single event number evid. compartments 100, coded : event 0 observation events. 100*(Compartment Number) + 1 dose captured amt 10000 + 100*(Compartment Number) + 1 infusion rate captured amt column infusion turned subtracting amt evid stop infusion. compartments greater equal 100, 100s place digits transferred 100,000th place digit. doses 99th compartment evid bolus dose 9901 evid infusion 19901. bolus dose 199th compartment evid bolus dose 109901. infusion dosing record 199th compartment 119901.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"Introduction to rxode2","text":"rxode2 R package facilitates simulation ODE models R. designed pharmacometrics models mind, can applied generally ODE model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"description-of-rxode2-illustrated-through-an-example","dir":"Articles","previous_headings":"","what":"Description of rxode2 illustrated through an example","title":"Introduction to rxode2","text":"model equations can specified text string, model file R expression. differential algebraic equations permitted. Differential equations specified d/dt(var_name) =. equation can separated semicolon. load rxode2 package compile model: Model parameters may specified ini({}) model block, initial conditions can specified within model cmt(0)= X, like model eff(0) <- 1. may also specify subject variability initial conditions residual error components just like nlmixr2. allows single interface nlmixr2/rxode2 models. Also note, classic rxode2 interface still works just like past (don’t worry breaking code time). fact, can get classic rxode2 model $simulationModel ui object:","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ # central KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 # peripheral Q=1.05E+01 V3=2.97E+02 # effects Kin=1 Kout=1 EC50=200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 eff(0) <- 1 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } mod1 <- mod1() # create the ui object (can also use `rxode2(mod1)`) mod1 summary(mod1$simulationModel)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"specify-dosing-and-sampling-in-rxode2","dir":"Articles","previous_headings":"Description of rxode2 illustrated through an example","what":"Specify Dosing and sampling in rxode2","title":"Introduction to rxode2","text":"rxode2 provides simple flexible way specify dosing sampling functions generate event table. First, empty event table generated “et()” function. interface similar NONMEM event tables: can see code, can dose compartment named rxode2 model. slight deviation NONMEM can reduce need compartment renumbering. events can also combined expanded (multi-subject events complex regimens) rbind, c, seq, rep. information creating complex dosing regimens using rxode2 see rxode2 events vignette.","code":"ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9,ii=12,cmt=\"depot\") %>% et(time=120, amt=2000, addl=4, ii=14, cmt=\"depot\") %>% et(0:240) # Add sampling"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"solving-odes","dir":"Articles","previous_headings":"Description of rxode2 illustrated through an example","what":"Solving ODEs","title":"Introduction to rxode2","text":"ODE can now solved using rxSolve: returns modified data frame. can see compartment values plot : , Note labels automatically labeled units initial event table. rxode2 extracts units label plot (present).","code":"x <- mod1 %>% rxSolve(ev) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ x #> ── Solved rxode2 object ── #> ── Parameters (x$params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions (x$inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows library(ggplot2) plot(x,C2) + ylab(\"Central Concentration\") plot(x,eff) + ylab(\"Effect\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-model-types.html","id":"prediction-only-models","dir":"Articles","previous_headings":"","what":"Prediction only models","title":"rxode2 additional model types","text":"Prediction models simple create. use rxode2 syntax without ODE systems . simple example one-compartment model. Solving rxode2 models saving simple ODE system, faster course.","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` mod <- function(){ model({ ipre <- 10 * exp(-ke * t) }) } et <- et(seq(0,24,length.out=50)) cmt1 <- rxSolve(mod,et,params=c(ke=0.5)) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ cmt1 ## -- Solved rxode2 object -- ## -- Parameters (x$params): -- ## ke ## 0.5 ## -- Initial Conditions (x$inits): -- ## named numeric(0) ## -- First part of data (object): -- ## # A tibble: 50 x 2 ## time ipre ## ## 1 0 10 ## 2 0.490 7.83 ## 3 0.980 6.13 ## 4 1.47 4.80 ## 5 1.96 3.75 ## 6 2.45 2.94 ## # i 44 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-model-types.html","id":"solved-compartment-models","dir":"Articles","previous_headings":"","what":"Solved compartment models","title":"rxode2 additional model types","text":"Solved models also simple create. simply place linCmt() psuedo-function code. linCmt() function figures type model use based parameter names specified. often, pharmacometric models parameterized terms volume clearances. Clearances specified NONMEM-style names CL, Q, Q1, Q2, etc. distributional clearances CLD, CLD2. Volumes specified Central (VC V), Peripheral/Tissue (VP, VT). translations available, example translations : Another popular parameterization terms micro-constants. rxode2 assumes compartment 1 central compartment. elimination constant specified K, Ke Kel. example translations : last parameterization possible using alpha V //B/C. example translations : linCmt() sleuthing complete, 1, 2 3 compartment model solution used value linCmt(). compartments can dose linear solved system depot central linear absorption constant model ka. Without additional ODEs, compartments numbered depot=1 central=2. absorption constant ka missing, may dose central compartment. Without additional ODEs compartment number central=1. compartments take sort events ODE model can take, discussed rxode2 events vignette. acts ODE model; specify dose depot compartment solve system:","code":"mod <- function() { ini({ kel <- 0.5 V <- 1 }) model({ ipre <- linCmt(V, kel) }) } et <- et(amt=10,time=0,cmt=depot) %>% et(seq(0,24,length.out=50)) cmt1 <- rxSolve(mod,et) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ cmt1 ## -- Solved rxode2 object -- ## -- Parameters (x$params): -- ## kel V ## 0.5 1.0 ## -- Initial Conditions (x$inits): -- ## named numeric(0) ## -- First part of data (object): -- ## # A tibble: 50 x 2 ## time ipre ## ## 1 0 10 ## 2 0.490 7.83 ## 3 0.980 6.13 ## 4 1.47 4.80 ## 5 1.96 3.75 ## 6 2.45 2.94 ## # i 44 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-model-types.html","id":"mixing-solved-systems-and-odes","dir":"Articles","previous_headings":"","what":"Mixing Solved Systems and ODEs","title":"rxode2 additional model types","text":"addition pure ODEs, may mix solved systems ODEs. prior 2-compartment indirect response model can simplified linCmt() function: allows indirect response model assign 2-compartment model C2 variable used indirect response model. mixing solved systems ODEs, solved system’s compartment always last compartment. solved system technically isn’t compartment solved. Adding dosing compartment end interfere actual ODE solved. Therefore,two-compartment indirect response model, effect compartment compartment #1 PK dosing compartment depot compartment #2. compartment model requires new event table since compartment number changed: can solved following command: Note solving require specifying effect compartment initial condition 1. Rather, already pre-specified eff(0)=1. can solved different initial conditions easily: rxode2 detective also require specify variables linCmt() function already defined block. Therefore, following function also work solve system. Note specify parameters solving system since built model, can override parameters:","code":"library(rxode2) ## Setup example model mod1 <-function() { model({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) =-KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff }) } ## Seup parameters and initial conditions theta <- c(KA=2.94E-01, CL=1.86E+01, V2=4.02E+01, # central Q=1.05E+01, V3=2.97E+02, # peripheral Kin=1, Kout=1, EC50=200) # effects inits <- c(eff=1) ## Setup dosing event information ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9, ii=12) %>% et(amt=20000, addl=4, time=120, ii=24) %>% add.sampling(0:240) ## Setup a mixed solved/ode system: mod2 <- function() { model({ ## the order of variables do not matter, the type of compartmental ## model is determined by the parameters specified. C2 = linCmt(KA, CL, V2, Q, V3); eff(0) = 1 ## This specifies that the effect compartment starts at 1. d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; }) } ev <- et(amountUnits='mg', timeUnits='hours') %>% et(amt=10000, addl=9, ii=12, cmt=2) %>% et(amt=20000, addl=4, time=120, ii=24, cmt=2) %>% et(0:240) x <- mod2 %>% solve(theta, ev) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 ## -- Initial Conditions ($inits): -- ## eff ## 1 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 1 ## 2 1 121. 1.35 ## 3 2 60.3 1.38 ## 4 3 31.0 1.28 ## 5 4 17.0 1.18 ## 6 5 10.2 1.11 ## # i 235 more rows x <- mod2 %>% solve(theta, ev,c(eff=2)) print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 ## -- Initial Conditions ($inits): -- ## eff ## 2 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 2 ## 2 1 121. 1.93 ## 3 2 60.3 1.67 ## 4 3 31.0 1.41 ## 5 4 17.0 1.23 ## 6 5 10.2 1.13 ## # i 235 more rows mod3 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ # Since the parameters are in the ini block, put them in linCmt so # that the model is detected correctly C2 <- linCmt(KA, CL, V2, Q, V3) eff(0) <- 1 ## This specifies that the effect compartment starts at 1. d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff; }) } x <- mod3 %>% solve(ev) print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 ## -- Initial Conditions ($inits): -- ## eff ## 1 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 1 ## 2 1 121. 1.35 ## 3 2 60.3 1.38 ## 4 3 31.0 1.28 ## 5 4 17.0 1.18 ## 6 5 10.2 1.11 ## # i 235 more rows x <- mod3 %>% solve(c(KA=10),ev) print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 10.0 18.6 40.2 10.5 297.0 1.0 1.0 200.0 ## -- Initial Conditions ($inits): -- ## eff ## 1 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 1 ## 2 1 121. 1.35 ## 3 2 60.3 1.38 ## 4 3 31.0 1.28 ## 5 4 17.0 1.18 ## 6 5 10.2 1.11 ## # i 235 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"nesting-in-rxode2","dir":"Articles","previous_headings":"","what":"Nesting in rxode2","title":"Nesting levels in rxode2","text":"one level nesting possible rxode2; example using following uncertainties sources variability:","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"event-table","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Event table","title":"Nesting levels in rxode2","text":"event table contains nesting variables: inv: investigator id id: subject id eye: eye id (left right) occ: occasion","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9,ii=12,cmt=\"depot\") %>% et(time=120, amt=2000, addl=4, ii=14, cmt=\"depot\") %>% et(seq(0, 240, by=4)) %>% # Assumes sampling when there is no dosing information et(seq(0, 240, by=4) + 0.1) %>% ## adds 0.1 for separate eye et(id=1:20) %>% ## Add an occasion per dose mutate(occ=cumsum(!is.na(amt))) %>% mutate(occ=ifelse(occ == 0, 1, occ)) %>% mutate(occ=2- occ %% 2) %>% mutate(eye=ifelse(round(time) == time, 1, 2)) %>% mutate(inv=ifelse(id < 10, 1, 2)) %>% as_tibble -> ev"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"rxode2-model","dir":"Articles","previous_headings":"Nesting in rxode2","what":"rxode2 model","title":"Nesting levels in rxode2","text":"creates rxode2 model multi-level nesting. Note variables inv.Cl, inv.Ka, eta.Cl etc; need one variable level nesting.","code":"mod <- rxode2({ ## Clearance with individuals eff(0) = 1 C2 = centr/V2*(1+prop.sd) C3 = peri/V3 CL = TCl*exp(eta.Cl + eye.Cl + iov.Cl + inv.Cl) KA = TKA * exp(eta.Ka + eye.Ka + iov.Cl + inv.Ka) d/dt(depot) =-KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff ef0 = eff + add.sd }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"uncertainty-in-model-parameters","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Uncertainty in Model parameters","title":"Nesting levels in rxode2","text":"","code":"theta <- c(\"TKA\"=0.294, \"TCl\"=18.6, \"V2\"=40.2, \"Q\"=10.5, \"V3\"=297, \"Kin\"=1, \"Kout\"=1, \"EC50\"=200) ## Creating covariance matrix tmp <- matrix(rnorm(8^2), 8, 8) tMat <- tcrossprod(tmp, tmp) / (8 ^ 2) dimnames(tMat) <- list(names(theta), names(theta)) tMat #> TKA TCl V2 Q V3 #> TKA 0.11619015 0.073703715 0.04369253 -0.016660366 -0.011193396 #> TCl 0.07370372 0.113971693 0.06841157 -0.015578152 -0.055073884 #> V2 0.04369253 0.068411574 0.22142001 -0.074616276 -0.019774853 #> Q -0.01666037 -0.015578152 -0.07461628 0.075884128 0.020726895 #> V3 -0.01119340 -0.055073884 -0.01977485 0.020726895 0.075776432 #> Kin 0.01846965 -0.033098860 0.04143756 -0.008003217 0.020555705 #> Kout -0.02395367 -0.010482608 -0.02421182 -0.010248683 -0.007926701 #> EC50 -0.01338289 -0.006578812 -0.05736582 0.089005982 0.030902333 #> Kin Kout EC50 #> TKA 0.018469652 -0.023953675 -0.013382894 #> TCl -0.033098860 -0.010482608 -0.006578812 #> V2 0.041437564 -0.024211825 -0.057365823 #> Q -0.008003217 -0.010248683 0.089005982 #> V3 0.020555705 -0.007926701 0.030902333 #> Kin 0.083079307 -0.012669148 -0.015209539 #> Kout -0.012669148 0.109646723 -0.028508758 #> EC50 -0.015209539 -0.028508758 0.117687226"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"nesting-variability","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Nesting Variability","title":"Nesting levels in rxode2","text":"specify multiple levels nesting, can specify nested lotri matrix; using approach use condition operator | specify variable nesting occurs ; Bayesian simulation need specify much information parameter; rxode2 nu parameter. case: - id, nu=100 model came 100 subjects - eye, nu=200 model came 200 eyes - occ, nu=200 model came 200 occasions - inv, nu=10 model came 10 investigators specify lotri can use | var(nu=X), :","code":"omega <- lotri(lotri(eta.Cl ~ 0.1, eta.Ka ~ 0.1) | id(nu=100), lotri(eye.Cl ~ 0.05, eye.Ka ~ 0.05) | eye(nu=200), lotri(iov.Cl ~ 0.01, iov.Ka ~ 0.01) | occ(nu=200), lotri(inv.Cl ~ 0.02, inv.Ka ~ 0.02) | inv(nu=10)) omega #> $id #> eta.Cl eta.Ka #> eta.Cl 0.1 0.0 #> eta.Ka 0.0 0.1 #> #> $eye #> eye.Cl eye.Ka #> eye.Cl 0.05 0.00 #> eye.Ka 0.00 0.05 #> #> $occ #> iov.Cl iov.Ka #> iov.Cl 0.01 0.00 #> iov.Ka 0.00 0.01 #> #> $inv #> inv.Cl inv.Ka #> inv.Cl 0.02 0.00 #> inv.Ka 0.00 0.02 #> #> Properties: nu"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"unexplained-variability","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Unexplained variability","title":"Nesting levels in rxode2","text":"last piece variability specify unexplained variability","code":"sigma <- lotri(prop.sd ~ .25, add.sd~ 0.125)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"solving-the-problem","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Solving the problem","title":"Nesting levels in rxode2","text":"multiple investigators study; investigator number individuals enrolled site. rxode2 automatically determines number investigators simulate effect investigator. output, inv.Cl(inv==1) inv.Cl investigator 1, inv.Cl(inv==2) inv.Cl investigator 2, etc. inv.Cl(inv==1), inv.Cl(inv==2), etc simulated study combined form investigator variability. equation form represent following: look simulated parameters can see inv.Cl(inv==1) inv.Cl(inv==2) s$params; study: eye variability occasion variability individual simulates number variables become eye occasion variability; case eye: look simulation variables (ie eye.Cl(eye==1), eye.Cl(eye==2), etc) change individual combined make eye variability occasion variability can seen pharamcometric models.","code":"s <- rxSolve(mod, theta, ev, thetaMat=tMat, omega=omega, sigma=sigma, sigmaDf=400, nStud=400) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> unhandled error message: EE:[lsoda] 70000 steps taken before reaching tout #> @(lsoda.c:750 #> Warning: some ID(s) could not solve the ODEs correctly; These values are #> replaced with 'NA' print(s) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> # A tibble: 8,000 x 24 #> sim.id id `inv.Cl(inv==1)` `inv.Cl(inv==2)` `inv.Ka(inv==1)` #> #> 1 1 1 0.108 0.363 -0.110 #> 2 1 2 0.108 0.363 -0.110 #> 3 1 3 0.108 0.363 -0.110 #> 4 1 4 0.108 0.363 -0.110 #> 5 1 5 0.108 0.363 -0.110 #> 6 1 6 0.108 0.363 -0.110 #> 7 1 7 0.108 0.363 -0.110 #> 8 1 8 0.108 0.363 -0.110 #> 9 1 9 0.108 0.363 -0.110 #> 10 1 10 0.108 0.363 -0.110 #> # i 7,990 more rows #> # i 19 more variables: `inv.Ka(inv==2)` , `eye.Cl(eye==1)` , #> # `eye.Cl(eye==2)` , `eye.Ka(eye==1)` , `eye.Ka(eye==2)` , #> # `iov.Cl(occ==1)` , `iov.Cl(occ==2)` , `iov.Ka(occ==1)` , #> # `iov.Ka(occ==2)` , V2 , V3 , TCl , eta.Cl , #> # TKA , eta.Ka , Q , Kin , Kout , EC50 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> #> Simulation with uncertainty in: #> * parameters ($thetaMat for changes) #> * omega matrix ($omegaList) #> #> -- First part of data (object): -- #> # A tibble: 976,000 x 21 #> sim.id id time inv.Cl inv.Ka eye.Cl eye.Ka iov.Cl iov.Ka C2 #> [h] #> 1 1 1 0 0.108 -0.110 0.432 0.586 -0.0881 0.0304 0 #> 2 1 1 0.1 0.108 -0.110 -0.0583 0.175 -0.0881 0.0304 -18.9 #> 3 1 1 4 0.108 -0.110 0.432 0.586 -0.0881 0.0304 -847. #> 4 1 1 4.1 0.108 -0.110 -0.0583 0.175 -0.0881 0.0304 -715. #> 5 1 1 8 0.108 -0.110 0.432 0.586 -0.0881 0.0304 -3785. #> 6 1 1 8.1 0.108 -0.110 -0.0583 0.175 -0.0881 0.0304 -4970. #> # i 975,994 more rows #> # i 11 more variables: C3 , CL , KA , ef0 , depot , #> # centr , peri , eff , occ , eye , inv inv.Cl = (inv == 1) * `inv.Cl(inv==1)` + (inv == 2) * `inv.Cl(inv==2)` print(head(s$params)) #> sim.id id inv.Cl(inv==1) inv.Cl(inv==2) inv.Ka(inv==1) inv.Ka(inv==2) #> 1 1 1 0.1082821 0.3626882 -0.109708 0.09798624 #> 2 1 2 0.1082821 0.3626882 -0.109708 0.09798624 #> 3 1 3 0.1082821 0.3626882 -0.109708 0.09798624 #> 4 1 4 0.1082821 0.3626882 -0.109708 0.09798624 #> 5 1 5 0.1082821 0.3626882 -0.109708 0.09798624 #> 6 1 6 0.1082821 0.3626882 -0.109708 0.09798624 #> eye.Cl(eye==1) eye.Cl(eye==2) eye.Ka(eye==1) eye.Ka(eye==2) iov.Cl(occ==1) #> 1 0.43197371 -0.058328678 0.586264966 0.174884342 -0.08811714 #> 2 0.08559430 0.006108123 -0.005624186 -0.020710794 0.10637721 #> 3 0.02708297 -0.001796112 0.240805194 0.009550938 0.06595025 #> 4 0.09386198 -0.239239291 -0.079574652 0.004080677 0.23965275 #> 5 -0.03540689 -0.032725874 0.209994611 -0.246674424 0.02757919 #> 6 0.44890673 -0.325267423 -0.024517791 -0.050395249 -0.14357516 #> iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2) V2 V3 TCl #> 1 0.07218375 0.03039623 0.067693210 39.90301 297.153 18.10281 #> 2 0.02406445 0.03465175 0.169113740 39.90301 297.153 18.10281 #> 3 0.07833762 0.16896481 0.083329437 39.90301 297.153 18.10281 #> 4 0.09014535 0.16781970 -0.007580041 39.90301 297.153 18.10281 #> 5 -0.02744128 -0.05331629 0.123470046 39.90301 297.153 18.10281 #> 6 0.14006037 0.16503842 -0.069874068 39.90301 297.153 18.10281 #> eta.Cl TKA eta.Ka Q Kin Kout EC50 #> 1 0.3276499 -0.3669389 0.1976122 10.56335 0.9466661 1.471005 199.9767 #> 2 -0.1956677 -0.3669389 -0.4448090 10.56335 0.9466661 1.471005 199.9767 #> 3 -0.7690862 -0.3669389 0.4423792 10.56335 0.9466661 1.471005 199.9767 #> 4 -0.2558634 -0.3669389 -0.2013753 10.56335 0.9466661 1.471005 199.9767 #> 5 -0.6370408 -0.3669389 -0.2217999 10.56335 0.9466661 1.471005 199.9767 #> 6 -0.2844281 -0.3669389 0.2746496 10.56335 0.9466661 1.471005 199.9767 print(head(s$params %>% filter(sim.id == 2))) #> sim.id id inv.Cl(inv==1) inv.Cl(inv==2) inv.Ka(inv==1) inv.Ka(inv==2) #> 1 2 1 -0.2185114 0.1578254 -0.06550178 0.01692558 #> 2 2 2 -0.2185114 0.1578254 -0.06550178 0.01692558 #> 3 2 3 -0.2185114 0.1578254 -0.06550178 0.01692558 #> 4 2 4 -0.2185114 0.1578254 -0.06550178 0.01692558 #> 5 2 5 -0.2185114 0.1578254 -0.06550178 0.01692558 #> 6 2 6 -0.2185114 0.1578254 -0.06550178 0.01692558 #> eye.Cl(eye==1) eye.Cl(eye==2) eye.Ka(eye==1) eye.Ka(eye==2) iov.Cl(occ==1) #> 1 -0.28983275 0.23313282 0.054875269 -0.10816332 0.03378266 #> 2 0.17133543 -0.09585557 -0.018382439 0.03009169 -0.03036841 #> 3 -0.04487519 -0.10519202 0.300869327 0.13375274 0.05674318 #> 4 0.19924316 0.02586329 -0.109179227 0.22221001 0.06869933 #> 5 -0.05895218 -0.28987217 -0.007452707 -0.03639888 -0.03700882 #> 6 0.18030544 -0.37938212 0.270230738 -0.15310814 -0.15591525 #> iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2) V2 V3 TCl #> 1 0.05942611 0.02503154 -0.11716174 39.484 297.4703 18.23602 #> 2 0.07854405 0.12953177 0.08902964 39.484 297.4703 18.23602 #> 3 -0.05471371 0.04489170 -0.01115435 39.484 297.4703 18.23602 #> 4 0.01822086 0.29324185 0.09084004 39.484 297.4703 18.23602 #> 5 -0.16679912 0.03565972 0.05666132 39.484 297.4703 18.23602 #> 6 0.11982797 0.11883012 -0.01873016 39.484 297.4703 18.23602 #> eta.Cl TKA eta.Ka Q Kin Kout EC50 #> 1 -0.2606673 0.4157218 -0.113167108 10.59193 0.7312587 1.12052 200.1582 #> 2 0.4088169 0.4157218 0.494133531 10.59193 0.7312587 1.12052 200.1582 #> 3 -0.2175045 0.4157218 -0.002530923 10.59193 0.7312587 1.12052 200.1582 #> 4 0.5150686 0.4157218 -0.121588025 10.59193 0.7312587 1.12052 200.1582 #> 5 0.3760662 0.4157218 0.218664584 10.59193 0.7312587 1.12052 200.1582 #> 6 0.3092382 0.4157218 0.065845127 10.59193 0.7312587 1.12052 200.1582 eye.Cl = (eye == 1) * `eye.Cl(eye==1)` + (eye == 2) * `eye.Cl(eye==2)`"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"setting-up-the-rxode2-model-for-the-pipeline","dir":"Articles","previous_headings":"","what":"Setting up the rxode2 model for the pipeline","title":"rxode2 in a pipeline","text":"example show use rxode2 simple pipeline. can start model can used different simulation workflows rxode2 can handle: tumor growth model described Ribba 2012. case, compiled model R object Ribba2012, though rxode2 simulation pipeline, assign compiled model object, though think makes sense.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` Ribba2012 <- function() { ini({ k = 100 tkde = 0.24 eta.tkde = 0 tkpq = 0.0295 eta.kpq = 0 tkqpp = 0.0031 eta.kqpp = 0 tlambdap = 0.121 eta.lambdap = 0 tgamma = 0.729 eta.gamma = 0 tdeltaqp = 0.00867 eta.deltaqp = 0 prop.sd <- 0 tpt0 = 7.13 eta.pt0 = 0 tq0 = 41.2 eta.q0 = 0 }) model({ kde ~ tkde*exp(eta.tkde) kpq ~ tkpq * exp(eta.kpq) kqpp ~ tkqpp * exp(eta.kqpp) lambdap ~ tlambdap*exp(eta.lambdap) gamma ~ tgamma*exp(eta.gamma) deltaqp ~ tdeltaqp*exp(eta.deltaqp) d/dt(c) = -kde * c d/dt(pt) = lambdap * pt *(1-pstar/k) + kqpp*qp - kpq*pt - gamma*c*kde*pt d/dt(q) = kpq*pt -gamma*c*kde*q d/dt(qp) = gamma*c*kde*q - kqpp*qp - deltaqp*qp ## initial conditions pt0 ~ tpt0*exp(eta.pt0) q0 ~ tq0*exp(eta.q0) pt(0) = pt0 q(0) = q0 pstar <- (pt+q+qp) pstar ~ prop(prop.sd) }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulating-one-event-table","dir":"Articles","previous_headings":"","what":"Simulating one event table","title":"rxode2 in a pipeline","text":"Simulating single event table quite simple: pipe rxode2 simulation object event table object et(). events completely specified, simply solve ODE system rxSolve(). case can pipe output plot() conveniently view results. pt (Proliferative Tissue), q (quiescent tissue) qp (DNA-Damaged quiescent tissue) pstar (total tumor tissue)","code":"Ribba2012 %>% # Use rxode2 et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve() %>% # Solve the simulation plot(pt, q, qp, pstar) # Plot it, plotting the variables of interest #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulating-with-between-subject-variability","dir":"Articles","previous_headings":"Simulating multiple subjects from a single event table","what":"Simulating with between subject variability","title":"rxode2 in a pipeline","text":"next sort simulation may useful simulating multiple patients treatments. case, use omega matrix specified paper: information, easy simulate 3 subjects model-based parameters: Note two different things added simulation: - nSub specify many subjects model - omega specify subject variability.","code":"## Add CVs from paper for individual simulation ## Uses exact formula: lognCv = function(x){log((x/100)^2+1)} library(lotri) ## Now create omega matrix ## I'm using lotri to quickly specify names/diagonals omega <- lotri(eta.pt0 ~ lognCv(94), eta.q0 ~ lognCv(54), eta.lambdap ~ lognCv(72), eta.kqp ~ lognCv(76), eta.kqpp ~ lognCv(97), eta.deltaqp ~ lognCv(115), eta.tkde ~ lognCv(70)) omega #> eta.pt0 eta.q0 eta.lambdap eta.kqp eta.kqpp eta.deltaqp #> eta.pt0 0.6331848 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 #> eta.q0 0.0000000 0.2558818 0.0000000 0.0000000 0.0000000 0.0000000 #> eta.lambdap 0.0000000 0.0000000 0.4176571 0.0000000 0.0000000 0.0000000 #> eta.kqp 0.0000000 0.0000000 0.0000000 0.4559047 0.0000000 0.0000000 #> eta.kqpp 0.0000000 0.0000000 0.0000000 0.0000000 0.6631518 0.0000000 #> eta.deltaqp 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.8426442 #> eta.tkde 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 #> eta.tkde #> eta.pt0 0.0000000 #> eta.q0 0.0000000 #> eta.lambdap 0.0000000 #> eta.kqp 0.0000000 #> eta.kqpp 0.0000000 #> eta.deltaqp 0.0000000 #> eta.tkde 0.3987761 set.seed(1089) rxSetSeed(1089) Ribba2012 %>% # Use rxode2 et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=3, omega=omega) %>% # Solve the simulation plot(pt, q, qp, pstar) # Plot it, plotting the variables of interest #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ℹ omega has too many items, ignored: 'eta.kqp'"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulation-with-unexplained-variability","dir":"Articles","previous_headings":"Simulating multiple subjects from a single event table","what":"Simulation with unexplained variability","title":"rxode2 in a pipeline","text":"can even add unexplained variability quite easily: case added sigma matrix unexplained variability pstar total tumor tissue. can even simulate uncertainty theta omega sigma values wish.","code":"Ribba2012 %>% # Use rxode2 ini(prop.sd=0.05) %>% # change variability et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=3, omega=omega) %>% plot(pt, q, qp, sim) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp' # note that sim is the simulated pstar since this is simulated from the # model with a nlmixr2 endpoint"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulation-with-uncertainty-in-all-the-parameters-by-matrices","dir":"Articles","previous_headings":"Simulating multiple subjects from a single event table","what":"Simulation with uncertainty in all the parameters (by matrices)","title":"rxode2 in a pipeline","text":"assume parameters came 95 subjects 8 observations apiece, degrees freedom omega matrix 95, degrees freedom sigma matrix 95*8=760 95 items informed omega matrix, 760 items informed sigma matrix. Often simulations full covariance matrix fixed effect parameters. case, matrix, specified thetaMat. full covariance matrix, can information diagonal elements covariance matrix model paper. can converted follows: Now thetaMat represent uncertainty theta matrix, well pieces simulation. Typically can put information simulation thetaMat matrix. large variability theta easy sample negative rate constant, make sense. example: correct problems simply need use truncated multivariate normal specify reasonable ranges parameters. theta specified thetaLower thetaUpper. Similar parameters matrices: omegaLower, omegaUpper, sigmaLower sigmaUpper. may named vectors, one numeric value, numeric vector matching number parameters specified thetaMat matrix. case simulation simply modified thetaLower=0 make sure rates positive:","code":"Ribba2012 %>% # Use rxode2 ini(prop.sd = 0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=3, nStud=3, omega=omega, dfSub=760, dfObs=95) %>% # Solve the simulation plot(pt, q, qp, sim) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp' rseVar <- function(est, rse){ return(est*rse/100)^2 } thetaMat <- lotri(tpt0 ~ rseVar(7.13,25), tq0 ~ rseVar(41.2,7), tlambdap ~ rseVar(0.121, 16), tkqpp ~ rseVar(0.0031, 35), tdeltaqp ~ rseVar(0.00867, 21), tgamma ~ rseVar(0.729, 37), tkde ~ rseVar(0.24, 33) ) thetaMat #> tpt0 tq0 tlambdap tkqpp tdeltaqp tgamma tkde #> tpt0 1.7825 0.000 0.00000 0.000000 0.0000000 0.00000 0.0000 #> tq0 0.0000 2.884 0.00000 0.000000 0.0000000 0.00000 0.0000 #> tlambdap 0.0000 0.000 0.01936 0.000000 0.0000000 0.00000 0.0000 #> tkqpp 0.0000 0.000 0.00000 0.001085 0.0000000 0.00000 0.0000 #> tdeltaqp 0.0000 0.000 0.00000 0.000000 0.0018207 0.00000 0.0000 #> tgamma 0.0000 0.000 0.00000 0.000000 0.0000000 0.26973 0.0000 #> tkde 0.0000 0.000 0.00000 0.000000 0.0000000 0.00000 0.0792 Ribba2012 %>% # Use rxode2 ini(prop.sd = 0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=2, nStud=2, omega=omega, thetaMat=thetaMat, dfSub=760, dfObs=95) %>% # Solve the simulation plot(pt, q, qp, pstar) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> unhandled error message: EE:[lsoda] 70000 steps taken before reaching tout #> @(lsoda.c:750 #> Warning message: #> In rxSolve_(object, .ctl, .nms, .xtra, params, events, inits, setupOnly = .setupOnly) : #> Some ID(s) could not solve the ODEs correctly; These values are replaced with NA. Ribba2012 %>% # Use rxode2 ini(prop.sd = 0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=2, nStud=2, omega=omega, thetaMat=thetaMat, thetaLower=0, # Make sure the rates are reasonable dfSub=760, dfObs=95) %>% # Solve the simulation plot(pt, q, qp, sim) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp'"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"summarizing-the-simulation-output","dir":"Articles","previous_headings":"","what":"Summarizing the simulation output","title":"rxode2 in a pipeline","text":"easy use dplyr data.table perform summary simulations, rxode2 also provides ability confint function.","code":"## This takes a little more time; Most of the time is the summary ## time. sim0 <- Ribba2012 %>% # Use rxode2 ini(prop.sd=0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=10, nStud=10, omega=omega, thetaMat=thetaMat, thetaLower=0, # Make sure the rates are reasonable dfSub=760, dfObs=95) %>% # Solve the simulation confint(c(\"pt\",\"q\",\"qp\",\"sim\"),level=0.90); # Create Simulation intervals #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp' #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done sim0 %>% plot() # Plot the simulation intervals"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulating-from-a-data-frame-of-parameters","dir":"Articles","previous_headings":"Summarizing the simulation output","what":"Simulating from a data-frame of parameters","title":"rxode2 in a pipeline","text":"simulation matrices can useful fast way simulate information, sometimes may want simulate complex scenarios. instance, may reason believe tkde needs tlambdap, therefore need simulated carefully. can generate data frame whatever way want. internal method simulating new parameters exported .","code":"library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union Ribba2012 <- Ribba2012() # Convert to classic rxode2 model with ini attached r <- Ribba2012$simulationIniModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ pars <- rxInits(r) pars <- pars[regexpr(\"(prop|eta)\",names(pars)) == -1] print(pars) #> k tkde tkpq tkqpp tlambdap tgamma #> 1.00e+02 2.40e-01 2.95e-02 3.10e-03 1.21e-01 7.29e-01 #> tdeltaqp tpt0 tq0 rxerr.pstar #> 8.67e-03 7.13e+00 4.12e+01 1.00e+00 ## This is the exported method for simulation of Theta/Omega internally in rxode2 df <- rxSimThetaOmega(params=pars, omega=omega,dfSub=760, thetaMat=thetaMat, thetaLower=0, nSub=60,nStud=60) %>% filter(tkde > tlambdap) %>% as_tibble() ## You could also simulate more and bind them together to a data frame. print(df) #> # A tibble: 2,220 × 17 #> k tkde tkpq tkqpp tlambdap tgamma tdeltaqp tpt0 tq0 rxerr.pstar #> #> 1 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 2 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 3 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 4 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 5 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 6 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 7 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 8 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 9 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 10 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> # ℹ 2,210 more rows #> # ℹ 7 more variables: eta.pt0 , eta.q0 , eta.lambdap , #> # eta.kqp , eta.kqpp , eta.deltaqp , eta.tkde ## Quick check to make sure that all the parameters are OK. all(df$tkde>df$tlambdap) #> [1] TRUE sim1 <- r %>% # Use rxode2 et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(df) ## Note this information looses information about which ID is in a ## \"study\", so it summarizes the confidence intervals by dividing the ## subjects into sqrt(#subjects) subjects and then summarizes the ## confidence intervals sim2 <- sim1 %>% confint(c(\"pt\",\"q\",\"qp\",\"sim\"),level=0.90); # Create Simulation intervals #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done save(sim2, file = file.path(system.file(package = \"rxode2\"), \"pipeline-sim2.rds\"), version = 2) sim2 %>% plot()"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"setting-up-model-for-plotting-explanation","dir":"Articles","previous_headings":"Plotting in rxode2","what":"Setting up model for plotting explanation","title":"Plotting rxode2 models","text":"first step explain rxode2 model plots setup: rxode2 model event table solved object","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` ## Model from rxode2 tutorial m1 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 }) model({ C2 <- centr / V2 C3 <- peri / V3 d/dt(depot) <- -KA * depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 d/dt(peri) <- Q * C2 - Q * C3 d/dt(eff) <- Kin - Kout * (1 - C2 / (EC50 + C2)) * eff eff(0) <- 1 }) } ev <- et(timeUnits = \"hr\") %>% et(amt = 10000, ii = 12, until = 24) %>% et(seq(0, 24, length.out = 100)) s <- rxSolve(m1, ev)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"default-rxode2-plot","dir":"Articles","previous_headings":"Plotting in rxode2","what":"Default rxode2 plot","title":"Plotting rxode2 models","text":"default plot rxode2 plot time versus state calculated lhs values: Things note: First, plots actually ggplot2 plots can modified standard ggplot2 grammar graphics Also note plot method rxSolve objects can currently use arguments default plot method: log character string contains \"x\" x axis logarithmic, \"y\" y axis logarithmic \"xy\" \"yx\" axes logarithmic. available, use xgxr xgx_scale_x_log10() xgx_scale_y_log10() functions. xlab bit different simply supplying x-label ggplot2, retain unit information originally supplied event table. Also note, available, unit information used used meaningful ticks xgx_scale_x_time_units() ylab supplies y label following currently unsupported: . type b. xlim c. ylim d. main e. sub f. ann g. axes","code":"plot(s)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"subsetting-plots","dir":"Articles","previous_headings":"","what":"Subsetting plots","title":"Plotting rxode2 models","text":"interesting, often useful subset plots based values interested ; example, interesting plot eff C2. , simply specify interesting items plot function. instance:","code":"plot(s, C2, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"semi-log-plots","dir":"Articles","previous_headings":"","what":"Semi-log plots","title":"Plotting rxode2 models","text":"Semi-log plots PK concentrations common; simply need use log=\"y\" uses xgx_scale_y_log10() available clearly show semi-log nature plot.","code":"plot(s, C2, log=\"y\", ylab=\"Concentration\") ## Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"plots-with-multi-subject-plots","dir":"Articles","previous_headings":"","what":"Plots with multi-subject plots","title":"Plotting rxode2 models","text":"multi-subject plots can easily plot applying principles . illustrate plot, lets expand event table include plot 4 subjects lognormal random variability subjects; complete, may plot method: Notice colored individual labeled legend. interested concentration, produces similar plot: Notice plot individual labeled attached id let know individual comes . done ggrepel available, otherwise legend retained.","code":"# Setup the new problem m2 <- function() { ini({ KA <- 2.94E-01 TCL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 eta.Cl ~ 0.4^2 }) model({ CL <- TCL * exp(eta.Cl) C2 <- centr / V2 C3 <- peri / V3 d/dt(depot) <- -KA * depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 d/dt(peri) <- Q * C2 - Q * C3 d/dt(eff) <- Kin - Kout * (1 - C2 / (EC50 + C2)) * eff eff(0) <- 1 }) } # Create the event table ev <- et(timeUnits = \"hr\") %>% et(amt = 10000, until = units::set_units(3, days), ii = 12) %>% # loading doses et(seq(0, 48, length.out = 200)) %>% et(id = 1:4) s <- rxSolve(m2, ev) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ plot(s, C2, eff) plot(s, C2, log=\"y\", ylab=\"Concentration\") ## Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"multi-subject-plots-with-large-number-of-subjects","dir":"Articles","previous_headings":"Plots with multi-subject plots","what":"Multi-subject plots with large number of subjects","title":"Plotting rxode2 models","text":"can get bit much many subjects solved (example lets simulate 100) case, individuals put plot transparent grayscale plot pane. allows places subjects present darker. number individuals plots switch legend grayscale controlled changing options rxode2.spaghetti. ie. options(rxode2.spaghetti=7). 7 individuals default value plotting changes individual grayscale spaghetti plots. can also create confidence interval simulations confint: plot plot","code":"ev <- et(timeUnits = \"hr\") %>% et(amt = 10000, until = units::set_units(3, days), ii = 12) %>% # loading doses et(seq(0, 48, length.out = 200)) %>% et(id = 1:100) # 100 subjects s <- rxSolve(m2, ev) plot(s, C2, log=\"y\", ylab=\"Concentration\") ## Warning: Transformation introduced infinite values in continuous y-axis s2 <- confint(s, parm=\"C2\") ## ! in order to put confidence bands around the intervals, you need at least 2500 simulations ## summarizing data...done plot(s2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-prior-data.html","id":"using-prior-data-for-solving","dir":"Articles","previous_headings":"","what":"Using prior data for solving","title":"Using Prior Data for ODE solving","text":"rxode2 can use single subject multiple subjects single event table solve ODEs. Additionally, rxode2 can use arbitrary data frame individualized events. example using nlmixr, use theo_sd data frame","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` library(nlmixr2data) ## Load data from nlmixr d <- theo_sd ## Create rxode2 model theo <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 }) model({ ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v }) } ## Create parameter dataset library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union parsDf <- tribble( ~ eta.ka, ~ eta.cl, ~ eta.v, 0.105, -0.487, -0.080, 0.221, 0.144, 0.021, 0.368, 0.031, 0.058, -0.277, -0.015, -0.007, -0.046, -0.155, -0.142, -0.382, 0.367, 0.203, -0.791, 0.160, 0.047, -0.181, 0.168, 0.096, 1.420, 0.042, 0.012, -0.738, -0.391, -0.170, 0.790, 0.281, 0.146, -0.527, -0.126, -0.198) %>% mutate(tka = 0.451, tcl = 1.017, tv = 3.449) ## Now solve the dataset solveData <- rxSolve(theo, parsDf, d) #> ℹ parameter labels from comments will be replaced by 'label()' #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ plot(solveData, cp) print(solveData) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 12 × 7 #> id tka tcl tv eta.ka eta.cl eta.v #> #> 1 1 0.451 1.02 3.45 -0.431 0.185 0.143 #> 2 2 0.451 1.02 3.45 0.0585 -0.518 -0.127 #> 3 3 0.451 1.02 3.45 0.710 -0.180 -0.130 #> 4 4 0.451 1.02 3.45 1.16 0.0582 0.230 #> 5 5 0.451 1.02 3.45 0.406 0.227 -0.0981 #> 6 6 0.451 1.02 3.45 0.0960 0.0544 -0.658 #> 7 7 0.451 1.02 3.45 -0.0790 0.519 0.0537 #> 8 8 0.451 1.02 3.45 -1.70 -0.670 -0.118 #> 9 9 0.451 1.02 3.45 -0.582 -0.546 -0.305 #> 10 10 0.451 1.02 3.45 -0.275 -0.303 -0.298 #> 11 11 0.451 1.02 3.45 0.564 -0.245 0.00526 #> 12 12 0.451 1.02 3.45 0.126 0.353 0.211 #> ── Initial Conditions ($inits): ── #> depot center #> 0 0 #> ── First part of data (object): ── #> # A tibble: 132 × 8 #> id time ka cl v cp depot center #> #> 1 1 0 1.02 3.33 36.3 0 320. 0 #> 2 1 0.25 1.02 3.33 36.3 1.96 248. 71.2 #> 3 1 0.57 1.02 3.33 36.3 3.78 179. 137. #> 4 1 1.12 1.02 3.33 36.3 5.65 102. 205. #> 5 1 2.02 1.02 3.33 36.3 6.81 40.8 247. #> 6 1 3.82 1.02 3.33 36.3 6.63 6.50 241. #> # ℹ 126 more rows ## Of course the fasest way to solve if you don't care about the rxode2 extra parameters is solveData <- rxSolve(theo, parsDf, d, returnType=\"data.frame\") #> ℹ parameter labels from comments will be replaced by 'label()' #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## solved data dplyr::as_tibble(solveData) #> # A tibble: 132 × 8 #> id time ka cl v cp depot center #> #> 1 1 0 2.30 1.43 38.7 0 3.20e+2 0 #> 2 1 0.25 2.30 1.43 38.7 3.60 1.80e+2 139. #> 3 1 0.57 2.30 1.43 38.7 5.96 8.62e+1 231. #> 4 1 1.12 2.30 1.43 38.7 7.42 2.43e+1 287. #> 5 1 2.02 2.30 1.43 38.7 7.72 3.07e+0 299. #> 6 1 3.82 2.30 1.43 38.7 7.30 4.87e-2 282. #> 7 1 5.1 2.30 1.43 38.7 6.96 2.56e-3 269. #> 8 1 7.03 2.30 1.43 38.7 6.48 3.02e-5 251. #> 9 1 9.05 2.30 1.43 38.7 6.02 2.89e-7 233. #> 10 1 12.1 2.30 1.43 38.7 5.37 1.54e-9 208. #> # ℹ 122 more rows data.table::data.table(solveData) #> id time ka cl v cp depot center #> 1: 1 0.00 2.300935 1.427091 38.71162 0.000000 3.199920e+02 0.00000 #> 2: 1 0.25 2.300935 1.427091 38.71162 3.597596 1.800190e+02 139.26877 #> 3: 1 0.57 2.300935 1.427091 38.71162 5.962771 8.620795e+01 230.82849 #> 4: 1 1.12 2.300935 1.427091 38.71162 7.422420 2.431874e+01 287.33387 #> 5: 1 2.02 2.300935 1.427091 38.71162 7.717302 3.066092e+00 298.74922 #> --- #> 128: 12 5.07 2.042580 3.811162 47.41169 4.683446 1.019822e-02 222.05007 #> 129: 12 7.07 2.042580 3.811162 47.41169 3.988089 1.715374e-04 189.08201 #> 130: 12 9.03 2.042580 3.811162 47.41169 3.406753 3.130922e-06 161.51988 #> 131: 12 12.05 2.042580 3.811162 47.41169 2.672458 6.357558e-09 126.70572 #> 132: 12 24.15 2.042580 3.811162 47.41169 1.010399 -4.063231e-09 47.90474"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-rxUse.html","id":"using-pre-compiled-models-in-your-packages","dir":"Articles","previous_headings":"","what":"Using Pre-compiled models in your packages","title":"Compiled rxode2 models in Packages","text":"package like include pre-compiled rxode2 models package easy create package. simple make package rxPkg() command. : Add model package; can use package data idr package loads Add right package requirements DESCRIPTION file. want update describe package modify authors, license etc. Create skeleton model documentation files can add package documentation. case file idr-doc.R R directory Create configure configure.win script removes regenerates src directory based whatever version rxode2 compiled . modified plan compiled code, though suggested. can write R code package interacts rxode2 object can distribute shiny apps similar things package context. present can add models package rxUse(). Simply compile rxode2 model package add model rxUse() Now model idr model library. also create model-doc.R R directory can document model. can use devtools methods install/test model","code":"library(rxode2); ## Now Create a model idr <- rxode2({ C2 = centr/V2; C3 = peri/V3; d/dt(depot) =-KA*depot; d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) = Q*C2 - Q*C3; d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; }) ## You can specify as many models as you want to add rxPkg(idr, package=\"myPackage\"); ## Add the idr model to your package rxUse(model) devtools::load_all() # Load all the functions in the package devtools::document() # Create package documentation devtools::install() # Install package devtools::check() # Check the package devtools::build() # build the package so you can submit it to places like CRAN"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-rxUse.html","id":"using-models-in-a-already-present-package","dir":"Articles","previous_headings":"","what":"Using Models in a already present package","title":"Compiled rxode2 models in Packages","text":"illustrate, lets start blank package rxUse() : - Create rxode2 sources move package’s src/ directory. R source package, also finish directory library-init.c registers rxode2 models package use R. - Create stub R documentation models including package. able see R documentation loading package standard ? interface. still need : - Export least one function. function wish export, can add re-export rxode2 using roxygen follows: want use Suggests instead Depends package, way want export rxode2’s normal routines also need instruct R load model library models included model’s dll. done : R package rxode2 models intend add compiled sources (recommended), can add following configure scripts Depending check may need dummy autoconf script, want integrate sources Rcpp C/Fortan based packages, need include rxModels-compiled.h : - Add define macro compiledModelCall list registered .Call functions. - Register C interface allow model solving R_init0_rxModels_rxode2_models() (rxModels replaced package name). complete, can compile/document standard methods: load package new version rxode2, models recompiled used. However, want models recompiled recent version rxode2, simply need call rxUse() project directory followed standard methods install/create package. Note include rxode2 code required generate model regenerate rxode2 c-code src directory. rxode2 objects, summary show one way recreate model. example compiled models package can found rxModels repository.","code":"library(rxode2) library(usethis) pkgPath <- file.path(rxTempDir(),\"MyRxModel\") create_package(pkgPath); use_gpl3_license(\"Matt\") use_package(\"rxode2\", \"LinkingTo\") use_package(\"rxode2\", \"Depends\") ## library(rxode2) on load; Can use imports instead. use_roxygen_md() ##use_readme_md() library(rxode2); ## Now Create a model idr <- rxode2({ C2 = centr/V2; C3 = peri/V3; d/dt(depot) =-KA*depot; d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) = Q*C2 - Q*C3; d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; }); rxUse(idr); ## Add the idr model to your package rxUse(); # Update the compiled rxode2 sources for all of your packages ##' @importFrom rxode2 rxode2 ##' @export rxode2::rxode2 ##' @importFrom rxode2 rxode2 ##' @export rxode2::rxode2 ##' @importFrom rxode2 et ##' @export rxode2::et ##' @importFrom rxode2 etRep ##' @export rxode2::etRep ##' @importFrom rxode2 etSeq ##' @export rxode2::etSeq ##' @importFrom rxode2 as.et ##' @export rxode2::as.et ##' @importFrom rxode2 eventTable ##' @export rxode2::eventTable ##' @importFrom rxode2 add.dosing ##' @export rxode2::add.dosing ##' @importFrom rxode2 add.sampling ##' @export rxode2::add.sampling ##' @importFrom rxode2 rxSolve ##' @export rxode2::rxSolve ##' @importFrom rxode2 rxControl ##' @export rxode2::rxControl ##' @importFrom rxode2 rxClean ##' @export rxode2::rxClean ##' @importFrom rxode2 rxUse ##' @export rxode2::rxUse ##' @importFrom rxode2 rxShiny ##' @export rxode2::rxShiny ##' @importFrom rxode2 genShinyApp.template ##' @export rxode2::genShinyApp.template ##' @importFrom rxode2 cvPost ##' @export rxode2::cvPost # This is actually from `magrittr` but allows less imports ##' @importFrom rxode2 %>% ##' @export rxode2::`%>%` # In this case `rxModels` is the package name ##' @useDynLib rxModels, .registration=TRUE #!/bin/sh # This should be used for both configure and configure.win echo \"unlink('src', recursive=TRUE);rxode2::rxUse()\" > build.R ${R_HOME}/bin/Rscript build.R rm build.R ## dummy autoconf script ## It is saved to configure.ac devtools::load_all() devtools::document() devtools::install() devtools::load_all() devtools::document() devtools::install()"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-shiny.html","id":"facilities-for-generating-r-shiny-applications","dir":"Articles","previous_headings":"","what":"Facilities for generating R shiny applications","title":"rxode2 and Shiny","text":"example creating R shiny application interactively explore responses various complex dosing regimens available http://qsp.engr.uga.edu:3838/rxode2/RegimenSimulator. Shiny applications like one may programmatically created experimental function genShinyApp.template(). application includes widgets varying dose, dosing regimen, dose cycle, number cycles. Click go Shiny App","code":"genShinyApp.template(appDir = \"shinyExample\", verbose=TRUE) library(shiny) runApp(\"shinyExample\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-shiny.html","id":"exploring-parameter-fits-graphically-using-shiny","dir":"Articles","previous_headings":"","what":"Exploring parameter fits graphically using shiny","title":"rxode2 and Shiny","text":"rxode2 object can explored rxShiny(obj). rxShiny() also allow try new models see behave.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-variability-with-rxode2","dir":"Articles","previous_headings":"Population Simulations with rxode2","what":"Simulation of Variability with rxode2","title":"rxode2 Simulation","text":"pharmacometrics nonlinear-mixed effect modeling software (like nlmixr) characterizes -subject variability. subject variability can simulate new subjects. Assuming 2-compartment, indirect response model, can set create rxode2 model describing system :","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"setting-up-the-rxode2-model","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Setting up the rxode2 model","title":"rxode2 Simulation","text":"","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` set.seed(32) rxSetSeed(32) mod <- function() { ini({ KA <- 2.94E-01 TCl <- 1.86E+01 # between subject variability eta.Cl ~ 0.4^2 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ C2 <- centr/V2 C3 <- peri/V3 CL <- TCl*exp(eta.Cl) ## This is coded as a variable in the model d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulating","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Simulating","title":"rxode2 Simulation","text":"next step simulate create dosing regimen overall simulation: wish, can also add sampling times (though rxode2 can fill ): Note et takes similar arguments seq adding sampling times. methods adding sampling times events make complex dosing regimens (See event vignette). includes ways add variability sampling dosing times). complete can simulate using rxSolve routine: quickly look customize simulation use default plot routine. Since rxode2 object, create ggplot2 object can modify wish. extra parameter plot tells rxode2/R piece information interested plotting. case, interested looking derived parameter C2:","code":"ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=\"centr\") ev <- ev %>% et(0,48, length.out=100) sim <- rxSolve(mod, ev, nSub=100) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"checking-the-simulation-with-plot","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Checking the simulation with plot","title":"rxode2 Simulation","text":"course additional parameter also state value, like eff: even look two side--side: stack patchwork","code":"library(ggplot2) ## The plots from rxode2 are ggplots so they can be modified with ## standard ggplot commands. plot(sim, C2, log=\"y\") + ylab(\"Central Compartment\") ## They also takes many of the standard plot arguments; See ?plot plot(sim, eff, ylab=\"Effect\") plot(sim, C2, eff) library(patchwork) plot(sim, C2, log=\"y\") / plot(sim, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"processing-the-data-to-create-summary-plots","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Processing the data to create summary plots","title":"rxode2 Simulation","text":"Usually pharmacometric simulations enough simply simulate system. something easier digest, like look central extreme tendencies simulation. Since rxode2 solve object type data frame now straightforward perform calculations generate plots simulated data. can , 5th, 50th, 95th percentiles simulated data plotted. Note can see parameters simulated example","code":"confint(sim, \"C2\", level=0.95) %>% plot(ylab=\"Central Concentration\", log=\"y\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done confint(sim, \"eff\", level=0.95) %>% plot(ylab=\"Effect\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done head(sim$param) #> sim.id KA TCl V2 Q V3 Kin Kout EC50 eta.Cl #> 1 1 0.294 18.6 40.2 10.5 297 1 1 200 -0.3163542 #> 2 2 0.294 18.6 40.2 10.5 297 1 1 200 0.1880698 #> 3 3 0.294 18.6 40.2 10.5 297 1 1 200 0.1536777 #> 4 4 0.294 18.6 40.2 10.5 297 1 1 200 0.6535432 #> 5 5 0.294 18.6 40.2 10.5 297 1 1 200 -0.5758445 #> 6 6 0.294 18.6 40.2 10.5 297 1 1 200 -0.1948311"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-unexplained-variability-sigma","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Simulation of unexplained variability (sigma)","title":"rxode2 Simulation","text":"addition conveniently simulating subject variability, can also easily simulate unexplained variability. One way create rxode2 model endpoints defined. Model piping can keeping model intact: can see dataset defined $multipleEndpoint: see endpoints defined eff C2: allows solve system: Since simulated model residual specification included multiple endpoint model, can summarize endpoint simply taking confidence interval \"sim\": want subset specific endpoint, like eff can create confidence interval endpoint using specification sim.eff, endpoint name separated sim dot:","code":"mod2 <- mod %>% model(eff ~ add(eff.sd), append=TRUE) %>% model(C2 ~ prop(prop.sd), append=TRUE) %>% ini(eff.sd=sqrt(0.1), prop.sd=sqrt(0.1)) #> ℹ add residual parameter `eff.sd` and set estimate to 1 #> ℹ add residual parameter `prop.sd` and set estimate to 1 #> ℹ change initial estimate of `eff.sd` to `0.316227766016838` #> ℹ change initial estimate of `prop.sd` to `0.316227766016838` mod2$multipleEndpoint #> variable cmt dvid* #> 1 eff ~ … cmt='eff' or cmt=4 dvid='eff' or dvid=1 #> 2 C2 ~ … cmt='C2' or cmt=5 dvid='C2' or dvid=2 ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=\"centr\") %>% et(seq(0,48, length.out=100), cmt=\"eff\") %>% et(seq(0,48, length.out=100), cmt=\"C2\") sim <- rxSolve(mod2, ev, nSub=100) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ s <- confint(sim, \"sim\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(s) seff <- confint(sim, \"sim.eff\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(seff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-individuals","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Simulation of Individuals","title":"rxode2 Simulation","text":"Sometimes may want match dosing observations individuals clinical trial. create data.frame using rxode2 event specification well ID column indicate individual. rxode2 event vignette talks datasets created.","code":"library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union ev1 <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=2) %>% et(0,48,length.out=10) ev2 <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=5000, cmt=2) %>% et(0,48,length.out=8) dat <- rbind(data.frame(ID=1, ev1$get.EventTable()), data.frame(ID=2, ev2$get.EventTable())) ## Note the number of subject is not needed since it is determined by the data sim <- rxSolve(mod, dat) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ sim %>% select(id, time, eff, C2) #> id time eff C2 #> 1 1 0.000000 [h] 1.000000 248.756219 #> 2 1 5.333333 [h] 1.085052 7.937758 #> 3 1 10.666667 [h] 1.018563 3.413740 #> 4 1 16.000000 [h] 1.015185 2.963251 #> 5 1 21.333333 [h] 1.013432 2.624691 #> 6 1 26.666667 [h] 1.011902 2.325724 #> 7 1 32.000000 [h] 1.010546 2.060828 #> 8 1 37.333333 [h] 1.009344 1.826102 #> 9 1 42.666667 [h] 1.008280 1.618112 #> 10 1 48.000000 [h] 1.007337 1.433813 #> 11 2 0.000000 [h] 1.000000 124.378109 #> 12 2 6.857143 [h] 1.051433 6.777712 #> 13 2 13.714286 [h] 1.018211 3.493754 #> 14 2 20.571429 [h] 1.015506 3.045168 #> 15 2 27.428571 [h] 1.013772 2.706558 #> 16 2 34.285714 [h] 1.012247 2.406904 #> 17 2 41.142857 [h] 1.010891 2.140458 #> 18 2 48.000000 [h] 1.009685 1.903509"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-clinical-trials","dir":"Articles","previous_headings":"","what":"Simulation of Clinical Trials","title":"rxode2 Simulation","text":"either using simple single event table, data clinical trial described , complete clinical trial simulation can performed. Typically clinical trial simulations want account uncertainty fixed parameter estimates, even uncertainty subject variability well unexplained variability. rxode2 allows account uncertainties simulating multiple virtual “studies,” specified parameter nStud. studies samples realization fixed effect parameters covariance matrices subject variability(omega) unexplained variabilities (sigma). Depending information models, strategies simulating realization omega sigma matrices. first strategy occurs either standard errors standard deviations (related parameters), modeled correlation model simulating . case suggested strategy use inverse Wishart (parameterized scale conjugate prior)/scaled inverse chi distribution. approach uses single parameter inform variability covariance matrix sampled (degrees freedom). second strategy occurs standard errors variance/standard deviation modeled correlations covariance matrix. approach perform separate simulations standard deviations correlation matrix. First simulate variance/standard deviation components thetaMat multivariate normal simulation. simulation transformation standard deviations, correlation matrix simulated using degrees freedom covariance matrix. Combining simulated standard deviation simulated correlation matrix give simulated covariance matrix. smaller dimension covariance matrices (dimension < 10x10) recommended use lkj distribution simulate correlation matrix. higher dimension covariance matrices suggested use inverse wishart distribution (transformed correlation matrix) simulations. covariance/variance prior simulated rxode2s cvPost() function.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-from-inverse-wishart-correlations","dir":"Articles","previous_headings":"Simulation of Clinical Trials","what":"Simulation from inverse Wishart correlations","title":"rxode2 Simulation","text":"example simulation : wish can see omega sigma used virtual study accessing solved data object $omega.list $sigma.list: can also see parameter realizations $params data frame.","code":"## Creating covariance matrix tmp <- matrix(rnorm(8^2), 8, 8) tMat <- tcrossprod(tmp, tmp) / (8 ^ 2) dimnames(tMat) <- list(NULL, names(mod2$theta)[1:8]) sim <- rxSolve(mod2, ev, nSub=100, thetaMat=tMat, nStud=10, dfSub=10, dfObs=100) s <-sim %>% confint(\"sim\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(s) head(sim$omegaList) #> [[1]] #> eta.Cl #> eta.Cl 0.1676778 #> #> [[2]] #> eta.Cl #> eta.Cl 0.2917085 #> #> [[3]] #> eta.Cl #> eta.Cl 0.1776813 #> #> [[4]] #> eta.Cl #> eta.Cl 0.1578682 #> #> [[5]] #> eta.Cl #> eta.Cl 0.1845614 #> #> [[6]] #> eta.Cl #> eta.Cl 0.3282268 head(sim$sigmaList) #> [[1]] #> rxerr.eff rxerr.C2 #> rxerr.eff 1.12416983 0.04197039 #> rxerr.C2 0.04197039 0.97293971 #> #> [[2]] #> rxerr.eff rxerr.C2 #> rxerr.eff 0.84311199 -0.06277998 #> rxerr.C2 -0.06277998 1.22140938 #> #> [[3]] #> rxerr.eff rxerr.C2 #> rxerr.eff 0.9834771 0.1060251 #> rxerr.C2 0.1060251 1.0024751 #> #> [[4]] #> rxerr.eff rxerr.C2 #> rxerr.eff 1.25556975 0.07690868 #> rxerr.C2 0.07690868 0.90991261 #> #> [[5]] #> rxerr.eff rxerr.C2 #> rxerr.eff 1.116261 -0.184748 #> rxerr.C2 -0.184748 1.320288 #> #> [[6]] #> rxerr.eff rxerr.C2 #> rxerr.eff 0.93539238 0.07270049 #> rxerr.C2 0.07270049 0.98648424"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulate-using-variancestandard-deviation-standard-errors","dir":"Articles","previous_headings":"Simulation of Clinical Trials","what":"Simulate using variance/standard deviation standard errors","title":"rxode2 Simulation","text":"Lets assume wish simulate nonmem run included xpose First setup model; Since taking nonmem like use free-form style classic rxode2 model start classic model: Next input estimated parameters: also covariances; , easiest way create named covariance matrix use lotri():","code":"rx1 <- rxode2({ cl <- tcl*(1+crcl.cl*(CLCR-65)) * exp(eta.cl) v <- tv * WT * exp(eta.v) ka <- tka * exp(eta.ka) ipred <- linCmt() obs <- ipred * (1 + prop.sd) + add.sd }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ theta <- c(tcl=2.63E+01, tv=1.35E+00, tka=4.20E+00, tlag=2.08E-01, prop.sd=2.05E-01, add.sd=1.06E-02, crcl.cl=7.17E-03, ## Note that since we are using the separation strategy the ETA variances are here too eta.cl=7.30E-02, eta.v=3.80E-02, eta.ka=1.91E+00) thetaMat <- lotri( tcl + tv + tka + tlag + prop.sd + add.sd + crcl.cl + eta.cl + eta.v + eta.ka ~ c(7.95E-01, 2.05E-02, 1.92E-03, 7.22E-02, -8.30E-03, 6.55E-01, -3.45E-03, -6.42E-05, 3.22E-03, 2.47E-04, 8.71E-04, 2.53E-04, -4.71E-03, -5.79E-05, 5.04E-04, 6.30E-04, -3.17E-06, -6.52E-04, -1.53E-05, -3.14E-05, 1.34E-05, -3.30E-04, 5.46E-06, -3.15E-04, 2.46E-06, 3.15E-06, -1.58E-06, 2.88E-06, -1.29E-03, -7.97E-05, 1.68E-03, -2.75E-05, -8.26E-05, 1.13E-05, -1.66E-06, 1.58E-04, -1.23E-03, -1.27E-05, -1.33E-03, -1.47E-05, -1.03E-04, 1.02E-05, 1.67E-06, 6.68E-05, 1.56E-04, 7.69E-02, -7.23E-03, 3.74E-01, 1.79E-03, -2.85E-03, 1.18E-05, -2.54E-04, 1.61E-03, -9.03E-04, 3.12E-01)) evw <- et(amount.units=\"mg\", time.units=\"hours\") %>% et(amt=100) %>% ## For this problem we will simulate with sampling windows et(list(c(0, 0.5), c(0.5, 1), c(1, 3), c(3, 6), c(6, 12))) %>% et(id=1:1000) ## From the run we know that: ## total number of observations is: 476 ## Total number of individuals: 74 sim <- rxSolve(rx1, theta, evw, nSub=100, nStud=10, thetaMat=thetaMat, ## Match boundaries of problem thetaLower=0, sigma=c(\"prop.sd\", \"add.sd\"), ## Sigmas are standard deviations sigmaXform=\"identity\", # default sigma xform=\"identity\" omega=c(\"eta.cl\", \"eta.v\", \"eta.ka\"), ## etas are variances omegaXform=\"variance\", # default omega xform=\"variance\" iCov=data.frame(WT=rnorm(1000, 70, 15), CLCR=rnorm(1000, 65, 25)), dfSub=74, dfObs=476); #> ℹ thetaMat has too many items, ignored: 'tlag' print(sim) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 10,000 × 9 #> sim.id id tcl crcl.cl eta.cl tv eta.v tka eta.ka #> #> 1 1 1 26.4 0.383 0.847 1.38 1.39 4.59 -1.13 #> 2 1 2 26.4 0.383 -0.733 1.38 1.01 4.59 -2.28 #> 3 1 3 26.4 0.383 -0.100 1.38 -0.676 4.59 1.72 #> 4 1 4 26.4 0.383 -0.276 1.38 0.484 4.59 2.08 #> 5 1 5 26.4 0.383 0.175 1.38 1.68 4.59 0.197 #> 6 1 6 26.4 0.383 0.215 1.38 0.872 4.59 -0.582 #> 7 1 7 26.4 0.383 -1.64 1.38 -1.45 4.59 0.415 #> 8 1 8 26.4 0.383 0.850 1.38 -0.509 4.59 -1.19 #> 9 1 9 26.4 0.383 0.486 1.38 -0.158 4.59 -0.404 #> 10 1 10 26.4 0.383 -0.705 1.38 -0.878 4.59 -1.64 #> # ℹ 9,990 more rows #> ── Initial Conditions ($inits): ── #> named numeric(0) #> #> Simulation with uncertainty in: #> • parameters ($thetaMat for changes) #> • omega matrix ($omegaList) #> • sigma matrix ($sigmaList) #> #> ── First part of data (object): ── #> # A tibble: 50,000 × 10 #> sim.id id time cl v ka ipred obs WT CLCR #> [h] #> 1 1 1 0.0155 162. 345. 1.49 0.00659 0.460 62.2 69.3 #> 2 1 1 0.749 162. 345. 1.49 0.159 1.57 62.2 69.3 #> 3 1 1 1.02 162. 345. 1.49 0.170 -3.31 62.2 69.3 #> 4 1 1 3.41 162. 345. 1.49 0.0830 -0.702 62.2 69.3 #> 5 1 1 7.81 162. 345. 1.49 0.0109 0.933 62.2 69.3 #> 6 1 2 0.0833 209. 134. 0.470 0.0268 -0.665 35.7 105. #> # ℹ 49,994 more rows ## Notice that the simulation time-points change for the individual ## If you want the same sampling time-points you can do that as well: evw <- et(amount.units=\"mg\", time.units=\"hours\") %>% et(amt=100) %>% et(0, 24, length.out=50) %>% et(id=1:100) sim <- rxSolve(rx1, theta, evw, nSub=100, nStud=10, thetaMat=thetaMat, ## Match boundaries of problem thetaLower=0, sigma=c(\"prop.sd\", \"add.sd\"), ## Sigmas are standard deviations sigmaXform=\"identity\", # default sigma xform=\"identity\" omega=c(\"eta.cl\", \"eta.v\", \"eta.ka\"), ## etas are variances omegaXform=\"variance\", # default omega xform=\"variance\" iCov=data.frame(WT=rnorm(100, 70, 15), CLCR=rnorm(100, 65, 25)), dfSub=74, dfObs=476, resample=TRUE) #> ℹ thetaMat has too many items, ignored: 'tlag' s <-sim %>% confint(c(\"ipred\")) #> summarizing data... #> done plot(s)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulate-without-uncertainty-in-omega-or-sigma-parameters","dir":"Articles","previous_headings":"Simulation of Clinical Trials","what":"Simulate without uncertainty in omega or sigma parameters","title":"rxode2 Simulation","text":"wish sample prior distributions either omega sigma matrices, can turn feature specifying simVariability = FALSE option solving: Note since realizations omega sigma simulated, $omegaList $sigmaList return NULL.","code":"sim <- rxSolve(mod2, ev, nSub=100, thetaMat=tMat, nStud=10, simVariability=FALSE) s <-sim %>% confint(c(\"centr\", \"eff\")) #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(s)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-single-subject.html","id":"single-subject-solving","dir":"Articles","previous_headings":"","what":"Single Subject solving","title":"Single Subject ODE solving -- differences from multiple subject","text":"Originally, rxode2 created solve ODEs one individual. single system without changes individual parameters. course still supported, classic examples found rxode2 intro. article discusses differences multiple subject single subject solving. three differences: Single solving solve ID parallel Single solving lacks id column parameters($params) well actual dataset. Single solving allows parameter exploration easier parameter can modified. multiple subject solves, make sure update individual parameter. first obvious difference speed; multiple subjects can run subject ID parallel. information examples speed gains multiple subject solving see Speeding rxode2 vignette. next difference amount information output final data. Taking 2 compartment indirect response model originally tutorial: Now simple solve better see differences single solve, can solve 2 individuals observing two solves, can see: multiple subject solve contains id column data frame data frame parameters subject. last feature obvious, modifying individual parameters. single subject data, can modify rxode2 data frame changing initial conditions parameter values part data frame, described rxode2 Data Frames. multiple subject solving, feature still works, requires care supplying individual’s parameter value, otherwise may change solve drop parameter key individuals.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 Q=1.05E+01 V3=2.97E+02 Kin=1 Kout=1 EC50=200 }) model({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) =-KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 }) } et <- et(amount.units='mg', time.units='hours') %>% et(dose=10000, addl=9, ii=12) %>% et(amt=20000, nbr.doses=5, start.time=120, dosing.interval=24) %>% et(0:240) # sampling x <- rxSolve(mod1, et) x #> ── Solved rxode2 object ── #> ── Parameters (x$params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions (x$inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows print(x) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions ($inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows plot(x, C2, eff) x2 <- rxSolve(mod1, et %>% et(id=1:2), params=data.frame(CL=c(18.6, 7.6))) print(x2) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 2 × 9 #> id KA CL V2 Q V3 Kin Kout EC50 #> #> 1 1 0.294 18.6 40.2 10.5 297 1 1 200 #> 2 2 0.294 7.6 40.2 10.5 297 1 1 200 #> ── Initial Conditions ($inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 482 × 8 #> id time C2 C3 depot centr peri eff #> [h] #> 1 1 0 0 0 10000 0 0 1 #> 2 1 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 1 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 1 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 1 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 1 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 476 more rows plot(x2, C2, eff)"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"a-note-about-the-speed-of-the-functional-form-for-rxode2","dir":"Articles","previous_headings":"","what":"A note about the speed of the functional form for rxode2","title":"Speeding up rxode2","text":"functional form benefit supported nlmixr2 therefore one interface solving estimating, takes computation time get underlying “classic” simulation code. models form : can also specify end-points simulation/estimation just like nlmixr2: every solve, compile (cached compile) underlying model. wish speed process can use two underlying rxode2 classic models. takes two steps: Parsing/evaluating model Creating simulation model first step can done rxode2(mod1) mod1() (second model ). second step create underlying “classic” rxode2 model, can done two different methods:$simulationModel $simulationIniModel. $simulationModel provide simulation code without initial conditions pre-pended, $simulationIniModel pre-pend values. endpoints specified, simulation code endpoint also output. can see differences : wish speed multiple simualtions rxode2 functions, need pre-calculate care steps : functions can act like normal ui model solved. can convert back UI .rxUi() function .function() needed. increase speed multiple simulations model use lower level simulation model (ie $simulationModel $simulationIniModel depending need)","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ KA <- 0.3 CL <- 7 V2 <- 40 Q <- 10 V3 <- 300 Kin <- 0.2 Kout <- 0.2 EC50 <- 8 }) model({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) = -KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 }) } mod2 <- function() { ini({ TKA <- 0.3 TCL <- 7 TV2 <- 40 TQ <- 10 TV3 <- 300 TKin <- 0.2 TKout <- 0.2 TEC50 <- 8 eta.cl + eta.v ~ c(0.09, 0.08, 0.25) c2.prop.sd <- 0.1 eff.add.sd <- 0.1 }) model({ KA <- TKA CL <- TCL*exp(eta.cl) V2 <- TV2*exp(eta.v) Q <- TQ V3 <- TV3 Kin <- TKin Kout <- TKout EC50 <- TEC50 C2 = centr/V2 C3 = peri/V3 d/dt(depot) = -KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 C2 ~ prop(c2.prop.sd) eff ~ add(eff.add.sd) }) } mod1 <- mod1() mod2 <- rxode2(mod2) summary(mod1$simulationModel) #> rxode2 2.0.14.9000 model named rx_dc699e1c896b208ee1d2c3d40f0517f6 model (✔ ready). #> DLL: /tmp/RtmphFlXM3/rxode2/rx_dc699e1c896b208ee1d2c3d40f0517f6__.rxd/rx_dc699e1c896b208ee1d2c3d40f0517f6_.so #> NULL #> #> Calculated Variables: #> [1] \"C2\" \"C3\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(KA, CL, V2, Q, V3, Kin, Kout, EC50) #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> }) summary(mod1$simulationIniModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_a70bc38d73df7fd8798a4d16d23549b7 model (✔ ready). #> DLL: /tmp/RtmphFlXM3/rxode2/rx_a70bc38d73df7fd8798a4d16d23549b7__.rxd/rx_a70bc38d73df7fd8798a4d16d23549b7_.so #> NULL #> #> Calculated Variables: #> [1] \"C2\" \"C3\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(KA, CL, V2, Q, V3, Kin, Kout, EC50) #> KA = 0.3 #> CL = 7 #> V2 = 40 #> Q = 10 #> V3 = 300 #> Kin = 0.2 #> Kout = 0.2 #> EC50 = 8 #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> }) summary(mod2$simulationModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_4f35e2e99d243ab6809555688909b8b5 model (✔ ready). #> DLL: /tmp/RtmphFlXM3/rxode2/rx_4f35e2e99d243ab6809555688909b8b5__.rxd/rx_4f35e2e99d243ab6809555688909b8b5_.so #> NULL #> #> Calculated Variables: #> [1] \"KA\" \"CL\" \"V2\" \"Q\" \"V3\" \"Kin\" #> [7] \"Kout\" \"EC50\" \"C2\" \"C3\" \"ipredSim\" \"sim\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(TKA, TCL, TV2, TQ, TV3, TKin, TKout, TEC50, c2.prop.sd, #> eff.add.sd, eta.cl, eta.v) #> KA = TKA #> CL = TCL * exp(eta.cl) #> V2 = TV2 * exp(eta.v) #> Q = TQ #> V3 = TV3 #> Kin = TKin #> Kout = TKout #> EC50 = TEC50 #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> if (CMT == 5) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ C2 #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (rx_pred_f_ * c2.prop.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.C2, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> if (CMT == 4) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ eff #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (eff.add.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.eff, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> cmt(C2) #> dvid(5, 4) #> }) summary(mod2$simulationIniModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_6e671c0a1d256755528eea1281ce8326 model (✔ ready). #> DLL: /tmp/RtmphFlXM3/rxode2/rx_6e671c0a1d256755528eea1281ce8326__.rxd/rx_6e671c0a1d256755528eea1281ce8326_.so #> NULL #> #> Calculated Variables: #> [1] \"KA\" \"CL\" \"V2\" \"Q\" \"V3\" \"Kin\" #> [7] \"Kout\" \"EC50\" \"C2\" \"C3\" \"ipredSim\" \"sim\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(TKA, TCL, TV2, TQ, TV3, TKin, TKout, TEC50, c2.prop.sd, #> eff.add.sd, eta.cl, eta.v) #> rxerr.C2 = 1 #> rxerr.eff = 1 #> TKA = 0.3 #> TCL = 7 #> TV2 = 40 #> TQ = 10 #> TV3 = 300 #> TKin = 0.2 #> TKout = 0.2 #> TEC50 = 8 #> c2.prop.sd = 0.1 #> eff.add.sd = 0.1 #> eta.cl = 0 #> eta.v = 0 #> KA = TKA #> CL = TCL * exp(eta.cl) #> V2 = TV2 * exp(eta.v) #> Q = TQ #> V3 = TV3 #> Kin = TKin #> Kout = TKout #> EC50 = TEC50 #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> if (CMT == 5) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ C2 #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (rx_pred_f_ * c2.prop.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.C2, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> if (CMT == 4) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ eff #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (eff.add.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.eff, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> cmt(C2) #> dvid(5, 4) #> }) mod1 <- mod1$simulationModel mod2 <- mod2$simulationModel"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"increasing-rxode2-speed-by-multi-subject-parallel-solving","dir":"Articles","previous_headings":"","what":"Increasing rxode2 speed by multi-subject parallel solving","title":"Speeding up rxode2","text":"Using classic rxode2 model specification (can convert functional/ui model style) continue discussion rxode2 speed enhancements. rxode2 originally developed ODE solver allowed ODE solve single subject. flexibility still supported. original code rxode2 tutorial :","code":"library(rxode2) library(microbenchmark) library(ggplot2) mod1 <- rxode2({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) = -KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## Create an event table ev <- et() %>% et(amt=10000, addl=9,ii=12) %>% et(time=120, amt=20000, addl=4, ii=24) %>% et(0:240) ## Add Sampling nsub <- 100 # 100 sub-problems sigma <- matrix(c(0.09,0.08,0.08,0.25),2,2) # IIV covariance matrix mv <- rxRmvn(n=nsub, rep(0,2), sigma) # Sample from covariance matrix CL <- 7*exp(mv[,1]) V2 <- 40*exp(mv[,2]) params.all <- cbind(KA=0.3, CL=CL, V2=V2, Q=10, V3=300, Kin=0.2, Kout=0.2, EC50=8)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"for-loop","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"For Loop","title":"Speeding up rxode2","text":"slowest way code use loop. example enclose function compare timing.","code":"runFor <- function(){ res <- NULL for (i in 1:nsub) { params <- params.all[i,] x <- mod1$solve(params, ev) ##Store results for effect compartment res <- cbind(res, x[, \"eff\"]) } return(res) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"running-with-apply","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Running with apply","title":"Speeding up rxode2","text":"general R, apply types functions perform better loop, tutorial also suggests speed enhancement","code":"runSapply <- function(){ res <- apply(params.all, 1, function(theta) mod1$run(theta, ev)[, \"eff\"]) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"run-using-a-single-threaded-solve","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Run using a single-threaded solve","title":"Speeding up rxode2","text":"can also rxode2 solve subject simultaneously without collecting results R, using single threaded solve. data output slightly different , still gives information:","code":"runSingleThread <- function(){ solve(mod1, params.all, ev, cores=1)[,c(\"sim.id\", \"time\", \"eff\")] }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"run-a-2-threaded-solve","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Run a 2 threaded solve","title":"Speeding up rxode2","text":"rxode2 supports multi-threaded solves, another option 2 threads (called cores solve options, can see options rxControl() rxSolve()).","code":"run2Thread <- function(){ solve(mod1, params.all, ev, cores=2)[,c(\"sim.id\", \"time\", \"eff\")] }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"compare-the-times-between-all-the-methods","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Compare the times between all the methods","title":"Speeding up rxode2","text":"Now moment truth, timings: clear largest jump performance using solve method providing parameters rxode2 solve without looping subject either sapply. number cores/threads applied solve also plays role solving. can explore number threads following code: can suite spot speed vs number cores. system type (mac, linux, windows /processor), complexity ODE solving number subjects may affect arbitrary number threads. 4 threads good number use without prior knowledge systems days least 4 threads (2 processors 4 threads).","code":"bench <- microbenchmark(runFor(), runSapply(), runSingleThread(),run2Thread()) print(bench) #> Unit: milliseconds #> expr min lq mean median uq max #> runFor() 270.69599 276.55658 287.34527 279.04749 283.91232 399.33829 #> runSapply() 270.92489 277.10728 286.33457 279.31426 284.37742 395.99029 #> runSingleThread() 28.37033 28.55639 29.56166 28.67460 28.90486 47.37217 #> run2Thread() 16.90444 17.11417 18.66124 17.29484 17.65497 29.40771 #> neval #> 100 #> 100 #> 100 #> 100 autoplot(bench) runThread <- function(n){ solve(mod1, params.all, ev, cores=n)[,c(\"sim.id\", \"time\", \"eff\")] } bench <- eval(parse(text=sprintf(\"microbenchmark(%s)\", paste(paste0(\"runThread(\", seq(1, 2 * rxCores()),\")\"), collapse=\",\")))) print(bench) #> Unit: milliseconds #> expr min lq mean median uq max neval #> runThread(1) 28.50206 28.80758 30.07428 29.76448 30.28849 51.17343 100 #> runThread(2) 16.99616 17.40397 19.68778 18.00946 19.60652 29.88473 100 #> runThread(3) 18.74504 19.83795 20.51225 20.06909 20.67744 28.24697 100 #> runThread(4) 16.64245 16.94800 19.28947 17.38783 17.77615 38.09974 100 autoplot(bench)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"a-real-life-example","dir":"Articles","previous_headings":"","what":"A real life example","title":"Speeding up rxode2","text":"parallel solving implemented, fastest way run rxode2 lapply. Rik Schoemaker created data-set nlmixr comparisons, reduced run faster automatic building pkgdown website. applying new parallel solving concepts can simply run simulation less code faster: can see striking time difference two methods; things keep mind: rxode2 use thread-safe sitmo threefry routines simulation eta values. Therefore results expected different (also random samples taken different order different) prior simulation run R 3.5, different random number generator results simulation different actual nlmixr comparison using slower simulation. speed comparison used data.table. rxode2 uses data.table internally (available) try speed sorting, different installations data.table installed. can force rxode2 use order() sorting using forderForceBase(TRUE). case little difference two, though examples data.table’s presence leads speed increase (less likely lead slowdown).","code":"library(rxode2) library(data.table) #Define the rxode2 model ode1 <- \" d/dt(abs) = -KA*abs; d/dt(centr) = KA*abs-(CL/V)*centr; C2=centr/V; \" #Create the rxode2 simulation object mod1 <- rxode2(model = ode1) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #Population parameter values on log-scale paramsl <- c(CL = log(4), V = log(70), KA = log(1)) #make 10,000 subjects to sample from: nsubg <- 300 # subjects per dose doses <- c(10, 30, 60, 120) nsub <- nsubg * length(doses) #IIV of 30% for each parameter omega <- diag(c(0.09, 0.09, 0.09))# IIV covariance matrix sigma <- 0.2 #Sample from the multivariate normal set.seed(98176247) rxSetSeed(98176247) library(MASS) mv <- mvrnorm(nsub, rep(0, dim(omega)[1]), omega) # Sample from covariance matrix #Combine population parameters with IIV params.all <- data.table( \"ID\" = seq(1:nsub), \"CL\" = exp(paramsl['CL'] + mv[, 1]), \"V\" = exp(paramsl['V'] + mv[, 2]), \"KA\" = exp(paramsl['KA'] + mv[, 3]) ) #set the doses (looping through the 4 doses) params.all[, AMT := rep(100 * doses,nsubg)] Startlapply <- Sys.time() #Run the simulations using lapply for speed s = lapply(1:nsub, function(i) { #selects the parameters associated with the subject to be simulated params <- params.all[i] #creates an eventTable with 7 doses every 24 hours ev <- eventTable() ev$add.dosing( dose = params$AMT, nbr.doses = 1, dosing.to = 1, rate = NULL, start.time = 0 ) #generates 4 random samples in a 24 hour period ev$add.sampling(c(0, sort(round(sample(runif(600, 0, 1440), 4) / 60, 2)))) #runs the rxode2 simulation x <- as.data.table(mod1$run(params, ev)) #merges the parameters and ID number to the simulation output x[, names(params) := params] }) #runs the entire sequence of 100 subjects and binds the results to the object res res = as.data.table(do.call(\"rbind\", s)) Stoplapply <- Sys.time() print(Stoplapply - Startlapply) #> Time difference of 12.56756 secs rx <- rxode2({ CL = log(4) V = log(70) KA = log(1) CL = exp(CL + eta.CL) V = exp(V + eta.V) KA = exp(KA + eta.KA) d/dt(abs) = -KA*abs; d/dt(centr) = KA*abs-(CL/V)*centr; C2=centr/V; }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ omega <- lotri(eta.CL ~ 0.09, eta.V ~ 0.09, eta.KA ~ 0.09) doses <- c(10, 30, 60, 120) startParallel <- Sys.time() ev <- do.call(\"rbind\", lapply(seq_along(doses), function(i){ et() %>% et(amt=doses[i]) %>% # Add single dose et(0) %>% # Add 0 observation ## Generate 4 samples in 24 hour period et(lapply(1:4, function(...){c(0, 24)})) %>% et(id=seq(1, nsubg) + (i - 1) * nsubg) %>% ## Convert to data frame to skip sorting the data ## When binding the data together as.data.frame })) ## To better compare, use the same output, that is data.table res <- rxSolve(rx, ev, omega=omega, returnType=\"data.table\") endParallel <- Sys.time() print(endParallel - startParallel) #> Time difference of 0.1166935 secs"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"want-more-ways-to-run-multi-subject-simulations","dir":"Articles","previous_headings":"A real life example","what":"Want more ways to run multi-subject simulations","title":"Speeding up rxode2","text":"version since tutorial even ways run multi-subject simulations, including adding variability sampling dosing times et() (see rxode2 events information), ability supply omega sigma matrix well adding thetaMat R simulate uncertainty omega, sigma theta matrices; see rxode2 simulation vignette.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"session-information","dir":"Articles","previous_headings":"A real life example","what":"Session Information","title":"Speeding up rxode2","text":"session information:","code":"sessionInfo() #> R version 4.3.2 (2023-10-31) #> Platform: x86_64-pc-linux-gnu (64-bit) #> Running under: Ubuntu 22.04.3 LTS #> #> Matrix products: default #> BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 #> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so; LAPACK version 3.10.0 #> #> locale: #> [1] LC_CTYPE=C.UTF-8 LC_NUMERIC=C LC_TIME=C.UTF-8 #> [4] LC_COLLATE=C.UTF-8 LC_MONETARY=C.UTF-8 LC_MESSAGES=C.UTF-8 #> [7] LC_PAPER=C.UTF-8 LC_NAME=C LC_ADDRESS=C #> [10] LC_TELEPHONE=C LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C #> #> time zone: UTC #> tzcode source: system (glibc) #> #> attached base packages: #> [1] stats graphics grDevices utils datasets methods base #> #> other attached packages: #> [1] MASS_7.3-60 data.table_1.14.8 ggplot2_3.4.4 #> [4] microbenchmark_1.4.10 rxode2_2.0.14.9000 #> #> loaded via a namespace (and not attached): #> [1] gtable_0.3.4 xfun_0.41 bslib_0.6.1 #> [4] RApiSerialize_0.1.2 lattice_0.21-9 vctrs_0.6.4 #> [7] tools_4.3.2 generics_0.1.3 tibble_3.2.1 #> [10] symengine_0.2.2 fansi_1.0.5 highr_0.10 #> [13] pkgconfig_2.0.3 checkmate_2.3.0 desc_1.4.2 #> [16] RcppParallel_5.1.7 lifecycle_1.0.4 compiler_4.3.2 #> [19] farver_2.1.1 stringr_1.5.1 textshaping_0.3.7 #> [22] munsell_0.5.0 qs_0.25.6 htmltools_0.5.7 #> [25] sys_3.4.2 sass_0.4.7 yaml_2.3.7 #> [28] lazyeval_0.2.2 pillar_1.9.0 pkgdown_2.0.7 #> [31] crayon_1.5.2 jquerylib_0.1.4 cachem_1.0.8 #> [34] nlme_3.1-163 tidyselect_1.2.0 digest_0.6.33 #> [37] lotri_0.4.4 stringi_1.8.2 dplyr_1.1.4 #> [40] purrr_1.0.2 rxode2ll_2.0.11.9000 rprojroot_2.0.4 #> [43] fastmap_1.1.1 grid_4.3.2 colorspace_2.1-0 #> [46] rxode2parse_2.0.17 cli_3.6.1 dparser_1.3.1-11 #> [49] magrittr_2.0.3 utf8_1.2.4 withr_2.5.2 #> [52] scales_1.3.0 backports_1.4.1 rmarkdown_2.25 #> [55] ragg_1.2.6 stringfish_0.16.0 memoise_2.0.1 #> [58] evaluate_0.23 knitr_1.45 rex_1.2.1 #> [61] rxode2et_2.0.11 rxode2random_2.0.12 PreciseSums_0.6 #> [64] rlang_1.1.2 Rcpp_1.0.11 glue_1.6.2 #> [67] jsonlite_1.8.7 R6_2.5.1 systemfonts_1.0.5 #> [70] fs_1.6.3 units_0.8-5"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-stiff.html","id":"stiff-odes-with-jacobian-specification","dir":"Articles","previous_headings":"","what":"Stiff ODEs with Jacobian Specification","title":"rxode2 Jacobian specification and Stiff Systems","text":"Occasionally, may come across stiff differential equation, differential equation numerically unstable small variations parameters cause different solutions ODEs. One way tackle choose stiff-solver, hybrid stiff solver (like default LSODA). Typically enough. However exact Jacobian solutions may increase stability ODE. (Note Jacobian derivative ODE specification respect variable). rxode2 can specify Jacobian df(state)/dy(variable)= statement. classic ODE stiff properties various conditions Van der Pol differential equations. rxode2 can specified following: stiff mu=1, mu=1000 stiff system easy enough , bit tedious. rxode2 setup appropriately, can use computer algebra system sympy calculate Jacobian automatically. done rxode2 option calcJac option:","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` Vtpol2 <- function() { ini({ mu <- 1 ## nonstiff; 10 moderately stiff; 1000 stiff }) model({ d/dt(y) <- dy d/dt(dy) <- mu*(1-y^2)*dy - y ## Jacobian df(y)/dy(dy) <- 1 df(dy)/dy(y) <- -2*dy*mu*y - 1 df(dy)/dy(dy) <- mu*(1-y^2) ## Initial conditions y(0) <- 2 dy(0) <- 0 }) } et <- et(0, 10, length.out=200) %>% et(amt=0) s1 <- Vtpol2 %>% solve(et, method=\"lsoda\") ## i parameter labels from comments will be replaced by 'label()' ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(s1) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## mu ## 1 ## -- Initial Conditions ($inits): -- ## y dy ## 2 0 ## -- First part of data (object): -- ## # A tibble: 200 x 3 ## time y dy ## ## 1 0 2 0 ## 2 0.0503 2.00 -0.0933 ## 3 0.101 1.99 -0.173 ## 4 0.151 1.98 -0.242 ## 5 0.201 1.97 -0.302 ## 6 0.251 1.95 -0.353 ## # i 194 more rows s2 <- Vtpol2 %>% solve(c(mu=1000), et) ## i parameter labels from comments will be replaced by 'label()' ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(s2) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## mu ## 1000 ## -- Initial Conditions ($inits): -- ## y dy ## 2 0 ## -- First part of data (object): -- ## # A tibble: 200 x 3 ## time y dy ## ## 1 0 2 0 ## 2 0.0503 2.00 -0.000667 ## 3 0.101 2.00 -0.000667 ## 4 0.151 2.00 -0.000667 ## 5 0.201 2.00 -0.000667 ## 6 0.251 2.00 -0.000667 ## # i 194 more rows Vtpol <- function() { ini({ mu <- 1 ## nonstiff; 10 moderately stiff; 1000 stiff }) model({ d/dt(y) <- dy d/dt(dy) <- mu*(1-y^2)*dy - y y(0) <- 2 dy(0) <- 0 }) } Vtpol <- Vtpol() # you can also use $symengineModelPrune if there is if/else blocks # that need to be converted: Vtpol <- rxode2(Vtpol$symengineModelNoPrune, calcJac=TRUE) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## > pruning branches (`if`/`else`)... ## v done ## > loading into symengine environment... ## v done ## > calculate jacobian ## [====|====|====|====|====|====|====|====|====|====] 0:00:00 ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ summary(Vtpol) ## rxode2 2.0.14.9000 model named rx_c792fb32c025c71523ec364315978cdc model (ready). ## DLL: /tmp/RtmphFlXM3/rxode2/rx_c792fb32c025c71523ec364315978cdc__.rxd/rx_c792fb32c025c71523ec364315978cdc_.so ## NULL ## -- rxode2 Model Syntax -- ## rxode2({ ## cmt(y) ## cmt(dy) ## d/dt(y) = dy ## d/dt(dy) = -y + mu * dy * (1 - Rx_pow_di(y, 2)) ## y(0) = 2 ## dy(0) = 0 ## df(y)/dy(y) = 0 ## df(dy)/dy(y) = -1 - 2 * y * mu * dy ## df(y)/dy(dy) = 1 ## df(dy)/dy(dy) = mu * (1 - Rx_pow_di(y, 2)) ## df(y)/dy(mu) = 0 ## df(dy)/dy(mu) = dy * (1 - Rx_pow_di(y, 2)) ## })"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"rxode2 ODE solving syntax","text":"briefly describes syntax used define models rxode2 translate R-callable compiled code. also describes communication variables R rxode2 modeling specification.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"creating-rxode2-models","dir":"Articles","previous_headings":"","what":"Creating rxode2 models","title":"rxode2 ODE solving syntax","text":"ODE-based model specification may coded inside four places: Inside rxode2({}) block statements: Inside rxode2(\"\") string statement: file name loaded rxode2: model function can parsed rxode2: block statement, character string text file internal rxode2 compilation manager translates ODE system C, compiles loads R session. call rxode2 produces object class rxode2 consists list-like structure (environment) various member functions. last type model (model function), call rxode2 creates parsed rxode2 ui can translated rxode2 compilation model. type function required nlmixr2 estimation can extended modified model piping. reason focused documentation.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod <- rxode2({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ mod <- rxode2(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \") #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ writeLines(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \", \"modelFile.rxode2\") mod <- rxode2(filename='modelFile.rxode2') unlink(\"modelFile.rxode2\") mod <- function() { model({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) } mod <- rxode2(mod) # or simply mod() if the model is at the end of the function # These model functions often have residual components and initial # (`ini({})`) conditions attached as well. For example the # theophylline model can be written as: one.compartment <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } # after parsing the model mod <- one.compartment() mod$simulationModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_22c65ca558a86c952936b1c78fe8feda model (✔ ready). #> x$state: depot, center #> x$stateExtra: cp #> x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp #> x$lhs: ka, cl, v, cp, ipredSim, sim # or mod$simulationIniModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_d8248586348ac8457375cc5740d5422f model (✔ ready). #> x$state: depot, center #> x$stateExtra: cp #> x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp #> x$lhs: ka, cl, v, cp, ipredSim, sim"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"syntax","dir":"Articles","previous_headings":"","what":"Syntax","title":"rxode2 ODE solving syntax","text":"basic model specification consists one statements optionally terminated semi-colons ; optional comments (comments delimited # end--line). block statements set statements delimited curly braces, { ... }. Statements can either assignments, conditional /else /else, loops (can exited break), special statements, printing statements (debugging/testing). Assignment statements can : simple assignments, left hand identifier (.e., variable) special time-derivative assignments, left hand specifies change amount corresponding state variable (compartment) respect time e.g., d/dt(depot): special initial-condition assignments left hand specifies compartment initial condition specified, e.g. depot(0) = 0 special model event changes including bioavailability (f(depot)=1), lag time (alag(depot)=0), modeled rate (rate(depot)=2) modeled duration (dur(depot)=2). example model features event specification modeled infusions rxode2 data specification found rxode2 events vignette. special change point syntax, model times. model times specified mtime(var)=time special Jacobian-derivative assignments, left hand specifies change compartment ode respect variable. example, d/dt(y) = dy, Jacobian compartment can specified df(y)/dy(dy) = 1. may advantage obtaining solution specifying Jacobian stiff ODE systems. However, stiff systems tried LSODA, actually slightly slowed solving. Note assignment can done =, <- ~. assigning ~ operator, simple assignments time-derivative assignments output. Note rxode2 model functions assignment ~ can also overloaded residual distribution specification. Special statements can : Compartment declaration statements, can change default dosing compartment assumed compartment number(s) well add extra compartment names end (useful multiple-endpoint nlmixr models); specified cmt(compartmentName) Parameter declaration statements, can make sure input parameters certain order instead ordering parameters order parsed. useful keeping parameter order using 2 different ODE models. specified param(par1, par2,...) example model shown : Expressions assignment statements can numeric logical. Numeric expressions can include following numeric operators +, -, *, /, ^ mathematical functions defined C R math libraries (e.g., fabs, exp, log, sin, abs). may also access R’s functions R math libraries, like lgammafn log gamma function. rxode2 syntax case-sensitive, .e., ABC different abc, Abc, ABc, etc.","code":"# simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3;"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"identifiers","dir":"Articles","previous_headings":"Syntax","what":"Identifiers","title":"rxode2 ODE solving syntax","text":"Like R, Identifiers (variable names) may consist one alphanumeric, underscore _ period . characters, first character digit underscore _. Identifiers model specification can refer : State variables dynamic system (e.g., compartments pharmacokinetics model). Implied input variable, t (time), tlast (last time point), podo (oral dose, undocumented case absorption transit models). Special constants like pi R’s predefined constants. Model parameters (e.g., ka rate absorption, CL clearance, etc.) Others, created assignments part model specification; referred LHS (left-hand side) variable. Currently, rxode2 modeling language recognizes system state variables “parameters”, thus, values need passed R ODE model (e.g., age) either passed params argument integrator function rxSolve() supplied event data-set. certain variable names rxode2 event tables. avoid confusion, following event table-related items assigned, used state can accessed rxode2 code: cmt dvid addl ss rate id However following variables used model specification: evid ii Sometimes rxode2 generates variables fed back rxode2. Similarly, nlmixr2 generates variables used nlmixr estimation simulation. variables start either rx nlmixr prefixes. avoid problems, suggested use variables starting either rx nlmixr prefixes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"logical-operators","dir":"Articles","previous_headings":"","what":"Logical Operators","title":"rxode2 ODE solving syntax","text":"Logical operators support standard R operators ==, != >= <= > <. Like R can () () statements, ifelse() expressions. Additionally can standard assignment. instance, following valid: Notice can also use character expressions comparisons. convenience comes cost since character comparisons slower numeric expressions. Unlike R, .numeric .integer logical statements needed, cause syntax error try use function.","code":"cov1 = covm*(sexf == \"female\") + covm*(sexf != \"female\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"supported-functions","dir":"Articles","previous_headings":"","what":"Supported functions","title":"rxode2 ODE solving syntax","text":"supported functions rxode2 can seen rxSupportedFuns(). brief description built-functions following table: Note lag(cmt) = equivalent alag(cmt) = = lag(wt)","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"reserved-keywords","dir":"Articles","previous_headings":"","what":"Reserved keywords","title":"rxode2 ODE solving syntax","text":"reserved keywords rxode2 model. following table: Note rxFlag always output 11 calc_lhs since final variables calculated, though can tweak test certain parts rxode2 using flag.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"residual-functions-when-using-rxode2-functions","dir":"Articles","previous_headings":"","what":"Residual functions when using rxode2 functions","title":"rxode2 ODE solving syntax","text":"addition ~ hiding output certain types output, also used specify residual output endpoint input rxode2 model function (includes residual model({}) block). specifications form: Indicating variable var variable represents individual central tendencies model also represents compartment specification data-set. can also change compartment name using | syntax, : case var represents central tendency cmt represents compartment dvid specification.","code":"var ~ add(add.sd) var ~ add(add.sd) | cmt"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"transformations","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Transformations","title":"rxode2 ODE solving syntax","text":"normal related distributions, can apply transformation sides using keywords/functions apply transformations. default likelihood transformations calculated untransformed scale. bounded variables like logit-normal probit-normal low high values defaulted 0 1 missing. models wish proportional model one transformation can replace standard deviation NA allow transformations, lnorm(), probitNorm() logitNorm() can combined variance stabilizing yeoJohnson() transformation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"normal-and-t-related-distributions","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Normal and t-related distributions","title":"rxode2 ODE solving syntax","text":"normal t-related distributions, wanted keep ability use skewed distributions additive proportional t/cauchy-space, distributions specified differently comparison supported distributions within nlmixr2: Note normal t-related distributions nlmixr2 calculate cwres npde normal assumption help assess goodness fit model. Also note +dnorm() mostly testing purposes slow estimation procedure nlmixr2. suggest adding (except explicit testing). multiple endpoint models mix non-normal normal distributions, whole problem shifted log-likelihood method estimation nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"notes-on-additive-proportional-models","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Notes on additive + proportional models","title":"rxode2 ODE solving syntax","text":"two different ways specify additive proportional models, call combined1 combined2, way Monolix calls two distributions (avoid software differences naming). first, combined1, assumes additive proportional differences standard deviation scale, : y=f+(+b* f^c)*err second, combined2, assumes additive proportional differences combined variance scale: y=f+\\[sqrt(^2+b^2 *f^(2c))\\]*err default nlmixr2/rxode2 otherwise specified combined2 since mirrors adding 2 normal distributions statistics add variances (standard deviations). However, combined1 can describe data possibly even better combined2 possible options rxode2/nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"distributions-of-known-likelihoods","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Distributions of known likelihoods","title":"rxode2 ODE solving syntax","text":"residuals related normal, t-distribution cauchy, often residual specification form: compartment specification left handed side specification. generalized likelihood can specify:","code":"cmt ~ dbeta(alpha, beta) ll(cmt) ~ llik specification"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"ordinal-likelihoods","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Ordinal likelihoods","title":"rxode2 ODE solving syntax","text":"Finally, ordinal likelihoods/simulations can specified 2 ways. first : err represents compartment p0 probability specific category: model ensure sum p values less 1. Additionally can write arbitrary number categories ordinal model described . seems little p0 probability category 1 sometimes scores non-whole numbers. can modeled follows: numeric categories specified explicitly, probabilities remain :","code":"err ~ c(p0, p1, p2) err ~ c(p0=0, p1=1, p2=2, 3)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"general-table-of-supported-residual-distributions","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"General table of supported residual distributions","title":"rxode2 ODE solving syntax","text":"general supported following table (available rxode2::rxResidualError)","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"bugs-andor-deficiencies","dir":"Articles","previous_headings":"","what":"Bugs and/or deficiencies","title":"rxode2 ODE solving syntax","text":"modulo operator %% currently unsupported.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"note","dir":"Articles","previous_headings":"","what":"Note","title":"rxode2 ODE solving syntax","text":"ODE specification mini-language parsed help open source tool , Plevyak (2015).","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"example-model","dir":"Articles","previous_headings":"","what":"Example model","title":"rxode2 ODE solving syntax","text":"commented example quickly show capabilities rxode2 syntax.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"example","dir":"Articles","previous_headings":"","what":"Example","title":"rxode2 ODE solving syntax","text":"","code":"f <- function() { ini({ }) model({ # An rxode2 model specification (this line is a comment). if(comed==0) { # concomitant medication (con-med)? F <- 1.0 # full bioavailability w.o. con-med } else { F <- 0.80 # 20% reduced bioavailability } C2 <- centr/V2 # concentration in the central compartment C3 <- peri/V3 # concentration in the peripheral compartment # ODE describing the PK and PD d/dt(depot) <- -KA*depot d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"interface-and-data-handling-between-r-and-the-generated-c-code","dir":"Articles","previous_headings":"","what":"Interface and data handling between R and the generated C code","title":"rxode2 ODE solving syntax","text":"Users specify variables dynamic system’s state variables via d/dt(identifier) operator part model specification, model parameters via params= argument rxode2 solve() method: values variables pre-specified time points saved model fitting/integration returned part fitted values (see function et(), define set time points capture values variables) returned part modeling output. ODE specification mini-language parsed help open source tool DParser, Plevyak (2015).","code":"m1 <- rxode2(model = ode, modName = \"m1\") # model parameters -- a named vector is required theta <- c(KA=0.29, CL=18.6, V2=40.2, Q=10.5, V3=297, Kin=1, Kout=1, EC50=200) # state variables and their amounts at time 0 (the use of names is # encouraged, but not required) inits <- c(depot=0, centr=0, peri=0, eff=1) # qd1 is an eventTable specification with a set of dosing and sampling # records (code not shown here) solve(theta, event = qd1, inits = inits)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-tutorials.html","id":"interactive-tutorials","dir":"Articles","previous_headings":"","what":"Interactive tutorials","title":"Interactive Tutorials","text":"rxode2 comes interactive tutorials can run R session; built Rstudio 1.3 can run R session :","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` ## rxode2 Syntax learnr::run_tutorial(\"rxode2-00-syntax\", \"rxode2\") ## rxode2 event tables learnr::run_tutorial(\"rxode2-00-events\", \"rxode2\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"creating-a-2-compartment-model-in-rxode2","dir":"Articles","previous_headings":"","what":"Creating a 2-compartment model in rxode2","title":"Weight Based Dosing in rxode2","text":"","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` ## Note the time covariate is not included in the simulation m1 <- function() { model({ CL ~ (1-0.2*SEX)*(0.807+0.00514*(CRCL-91.2))*exp(eta.cl) V1 ~ 4.8*exp(eta.v1) Q ~ (3.46+0.0593*(WT-75.1))*exp(eta.q); V2 ~ 1.93*(3.13+0.0458*(WT-75.1))*exp(eta.v2) A1 ~ centr; A2 ~ peri; d/dt(centr) <- - A1*(CL/V1 + Q/V1) + A2*Q/V2; d/dt(peri) <- A1*Q/V1 - A2*Q/V2; DV = centr / V1 * (1 + prop.err) }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"simulating-covariates","dir":"Articles","previous_headings":"","what":"Simulating Covariates","title":"Weight Based Dosing in rxode2","text":"simulation correlates age, sex, weight. Since using weight based dosing, needs simulated first","code":"set.seed(42) rxSetSeed(42) library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union nsub=30 # Simulate Weight based on age and gender AGE<-round(runif(nsub,min=18,max=70)) SEX<-round(runif(nsub,min=0,max=1)) HTm<-round(rnorm(nsub,176.3,0.17*sqrt(4482)),digits=1) HTf<-round(rnorm(nsub,162.2,0.16*sqrt(4857)),digits=1) WTm<-round(exp(3.28+1.92*log(HTm/100))*exp(rnorm(nsub,0,0.14)),digits=1) WTf<-round(exp(3.49+1.45*log(HTf/100))*exp(rnorm(nsub,0,0.17)),digits=1) WT<-ifelse(SEX==1,WTf,WTm) CRCL<-round(runif(nsub,30,140)) ## id is in lower case to match the event table cov.df <- tibble(id=seq_along(AGE), AGE=AGE, SEX=SEX, WT=WT, CRCL=CRCL) print(cov.df) #> # A tibble: 30 x 5 #> id AGE SEX WT CRCL #> #> 1 1 66 1 49.4 83 #> 2 2 67 1 52.5 79 #> 3 3 33 0 97.9 37 #> 4 4 61 1 63.8 66 #> 5 5 51 0 71.8 127 #> 6 6 45 1 69.6 132 #> 7 7 56 0 61 73 #> 8 8 25 0 57.7 47 #> 9 9 52 1 58.7 65 #> 10 10 55 1 73.1 64 #> # i 20 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"creating-weight-based-event-table","dir":"Articles","previous_headings":"","what":"Creating weight based event table","title":"Weight Based Dosing in rxode2","text":"","code":"s<-c(0,0.25,0.5,0.75,1,1.5,seq(2,24,by=1)) s <- lapply(s, function(x){.x <- 0.1 * x; c(x - .x, x + .x)}) e <- et() %>% ## Specify the id and weight based dosing from covariate data.frame ## This requires rxode2 XXX et(id=cov.df$id, amt=6*cov.df$WT, rate=6 * cov.df$WT) %>% ## Sampling is added for each ID et(s) %>% as.data.frame %>% ## Merge the event table with the covarite information merge(cov.df, by=\"id\") %>% as_tibble e #> # A tibble: 900 x 12 #> id low time high cmt amt rate evid AGE SEX WT CRCL #> #> 1 1 0 0 0 (obs) NA NA 0 66 1 49.4 83 #> 2 1 NA 0 NA (default) 296. 296. 1 66 1 49.4 83 #> 3 1 0.225 0.246 0.275 (obs) NA NA 0 66 1 49.4 83 #> 4 1 0.45 0.516 0.55 (obs) NA NA 0 66 1 49.4 83 #> 5 1 0.675 0.729 0.825 (obs) NA NA 0 66 1 49.4 83 #> 6 1 0.9 0.921 1.1 (obs) NA NA 0 66 1 49.4 83 #> 7 1 1.35 1.42 1.65 (obs) NA NA 0 66 1 49.4 83 #> 8 1 1.8 1.82 2.2 (obs) NA NA 0 66 1 49.4 83 #> 9 1 2.7 2.97 3.3 (obs) NA NA 0 66 1 49.4 83 #> 10 1 3.6 3.87 4.4 (obs) NA NA 0 66 1 49.4 83 #> # i 890 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"solving-daptomycin-simulation","dir":"Articles","previous_headings":"","what":"Solving Daptomycin simulation","title":"Weight Based Dosing in rxode2","text":"","code":"data <- rxSolve(m1, e, ## Lotri uses lower-triangular matrix rep. for named matrix omega=lotri(eta.cl ~ .306, eta.q ~0.0652, eta.v1 ~.567, eta.v2 ~ .191), sigma=lotri(prop.err ~ 0.15), addDosing = TRUE, addCov = TRUE) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(data) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> # A tibble: 30 x 5 #> id eta.cl eta.v1 eta.q eta.v2 #> #> 1 1 0.300 0.555 0.252 -0.356 #> 2 2 -0.730 -0.436 -0.0118 0.529 #> 3 3 -0.385 0.183 -0.0798 0.562 #> 4 4 0.936 1.47 -0.189 0.684 #> 5 5 -0.526 -0.711 -0.0836 0.148 #> 6 6 0.0258 0.759 0.108 -0.0149 #> 7 7 0.158 -0.646 -0.164 -0.285 #> 8 8 -0.840 0.348 0.146 -0.377 #> 9 9 -0.0904 0.379 -0.00389 -0.251 #> 10 10 -0.426 -0.354 0.167 0.132 #> # i 20 more rows #> -- Initial Conditions ($inits): -- #> centr peri #> 0 0 #> -- First part of data (object): -- #> # A tibble: 900 x 12 #> id evid cmt amt rate time DV centr peri SEX WT CRCL #> #> 1 1 1 1 296. 296. 0 0 0 0 1 49.4 83 #> 2 1 0 NA NA NA 0 0 0 0 1 49.4 83 #> 3 1 0 NA NA NA 0.246 6.36 69.7 2.40 1 49.4 83 #> 4 1 0 NA NA NA 0.516 30.7 140. 9.43 1 49.4 83 #> 5 1 0 NA NA NA 0.729 20.2 192. 17.3 1 49.4 83 #> 6 1 0 NA NA NA 0.921 25.0 236. 25.7 1 49.4 83 #> # i 894 more rows plot(data, log=\"y\") #> Warning in self$trans$transform(x): NaNs produced #> Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"daptomycin-reference","dir":"Articles","previous_headings":"","what":"Daptomycin Reference","title":"Weight Based Dosing in rxode2","text":"weight-based simulation adapted Daptomycin article : Dvorchik B, Arbeit RD, Chung J, Liu S, Knebel W, Kastrissios H. Population pharmacokinetics daptomycin. Antimicrob Agents Che mother 2004; 48: 2799-2807. doi:(10.1128/AAC.48.8.2799-2807.2004)[https://dx.doi.org/10.1128%2FAAC.48.8.2799-2807.2004] simulation example made available work Sherwin Sy modifications Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors","text":"Matthew L. Fidler (core team/developer/manual) Melissa Hallow (tutorial writer) Wenping Wang (core team/developer)","code":""},{"path":"https://nlmixr2.github.io/rxode2/authors.html","id":"contributors","dir":"","previous_headings":"","what":"Contributors","title":"Authors","text":"Zufar Mulyukov – Wrote initial version rxShiny() modifications Matthew Fidler Alan Hindmarsh – Lsoda author Awad H. Al-Mohy – Al-Mohy matrix exponential author Ernst Hairer – dop853 author Gerhard Wanner – dop853 author Goro Fuji – Timsort author Hadley Wickham – Author original findLhs RxODE, also original author .s3register (used permission anyone, changed Matthew Fidler) Jack Dongarra – LApack author Linda Petzold – LSODA Martin Maechler – expm author, used routines inductive linearization Morwenn – Timsort author Nicholas J. Higham – Author Al-mohy matrix exponential Roger B. Sidje – expokit matrix exponential author Simon Frost – thread safe C implementation liblsoda Kevin Ushey – Original author fast factor, modified Matthew Filder Yu Feng – thread safe liblsoda Cleve Moler – LApack author David Cooley – Author fast_factor modified now used RxODE quickly create factors IDs without sorting like R Drew Schmidt – Drew Schmidt author edits exponential matrix utility taken R package expm Matt Dowle & Arun Srinivasan – data.table authors openMp framework based upon","code":""},{"path":"https://nlmixr2.github.io/rxode2/authors.html","id":"rxode-acknowledgments","dir":"","previous_headings":"","what":"RxODE acknowledgments:","title":"Authors","text":"Sherwin Sy – Weight based dosing example Justin Wilkins – Documentation updates, logo testing Emma Schwager – R IJK distribution author J Coligne – dop853 fortran author Bill Denney – Documentation updates, manual minor bug fixes Tim Waterhouse – Fixed one bug mac working directories Richard Upton – Helped solving ADVAN linCmt() solutions Dirk Eddelbuettel – Made fixes Rcpp changes require R strict headers Ross Ihaka – R author Robert Gentleman – R author R core team – R authors","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"overview","dir":"","previous_headings":"","what":"Overview","title":"Facilities for Simulating from ODE-Based Models","text":"rxode2 R package solving simulating ode-based models. models convert rxode2 mini-language C create compiled dll fast solving. ODE solving using rxode2 key parts: rxode2() creates C code fast ODE solving based simple syntax related Leibnitz notation. NONMEM deSolve compatible data frame, created et() eventTable() easy simulation events data frame can augmented adding time-varying adding individual covariates (iCov= needed) multiple subject data, may parallelized. single subject output data frame adaptive Covariances metrics uncertanty can used simulate solving","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Facilities for Simulating from ODE-Based Models","text":"can install released version rxode2 CRAN : fastest way install development version rxode2 use r-universe service. service compiles binaries development version MacOS Windows don’t wait package compilation: doesn’t work install development version rxode2 build models rxode2, need working c compiler. use parallel threaded solving rxode2, c compiler needs support open-mp. can check see R working c compiler can check : toolchain, can set described platform information :","code":"install.packages(\"rxode2\") install.packages(c(\"dparser\", \"rxode2ll\", \"rxode2parse\", \"rxode2random\", \"rxode2et\", \"rxode2\"), repos=c(nlmixr2=\"https://nlmixr2.r-universe.dev\", CRAN=\"https://cloud.r-project.org\")) devtools::install_github(\"nlmixr2/rxode2parse\") devtools::install_github(\"nlmixr2/rxode2random\") devtools::install_github(\"nlmixr2/rxode2et\") devtools::install_github(\"nlmixr2/rxode2ll\") devtools::install_github(\"nlmixr2/rxode2\") ## install.packages(\"pkgbuild\") pkgbuild::has_build_tools(debug = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"windows","dir":"","previous_headings":"Installation","what":"Windows","title":"Facilities for Simulating from ODE-Based Models","text":"windows may simply use installr install rtools: Alternatively can download install rtools directly.","code":"install.packages(\"installr\") library(installr) install.rtools()"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"mac-osx","dir":"","previous_headings":"Installation","what":"Mac OSX","title":"Facilities for Simulating from ODE-Based Models","text":"get speed need OpenMP enabled compile rxode2 compiler. various options date discussion likely data.table installation FAQ MacOS. last thing keep mind rxode2 uses code similar original lsoda requires gfortran compiler setup well OpenMP compilers. going using rxode2 nlmixr together older mac computer, suggest trying following: crashes R session binary work Mac machine. able run nlmixr, need compile package manually. proceed assuming homebrew installed system. system terminal need install dependencies compile symengine: installing dependencies, need re-install symengine:","code":"library(symengine) brew install cmake gmp mpfr libmpc install.packages(\"symengine\", type=\"source\") library(symengine)"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"linux","dir":"","previous_headings":"Installation","what":"Linux","title":"Facilities for Simulating from ODE-Based Models","text":"install linux make sure install gcc (openmp support) gfortran using distribution’s package manager.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"r-versions-40-and-41","dir":"","previous_headings":"Installation","what":"R versions 4.0 and 4.1","title":"Facilities for Simulating from ODE-Based Models","text":"installation R versions 4.0.x 4.1.x, please see instructions install symengine nlmixr2 installation instructions: https://github.com/nlmixr2/nlmixr2#r-package-installation","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"development-version","dir":"","previous_headings":"","what":"Development version","title":"Facilities for Simulating from ODE-Based Models","text":"Since development version rxode2 uses StanHeaders, need make sure compiler setup support C++14, described rstan setup page. R 4.0, believe requires modifying windows toolchain longer (much easier setup). C++ toolchain setup appropriately, can install development version GitHub :","code":"# install.packages(\"devtools\") devtools::install_github(\"nlmixr2/rxode2parse\") devtools::install_github(\"nlmixr2/rxode2random\") devtools::install_github(\"nlmixr2/rxode2et\") devtools::install_github(\"nlmixr2/rxode2ll\") devtools::install_github(\"nlmixr2/rxode2\")"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"illustrated-example","dir":"","previous_headings":"","what":"Illustrated Example","title":"Facilities for Simulating from ODE-Based Models","text":"model equations can specified text string, model file R expression. differential algebraic equations permitted. Differential equations specified d/dt(var_name) =. equation can separated semicolon. load rxode2 package compile model: Model parameters may specified ini({}) model block, initial conditions can specified within model cmt(0)= X, like model eff(0) <- 1. may also specify subject variability initial conditions residual error components just like nlmixr2. allows single interface nlmixr2/rxode2 models. Also note, classic rxode2 interface still works just like past (don’t worry breaking code time). fact, can get classic rxode2 model $simulationModel ui object:","code":"library(rxode2) #> rxode2 2.0.13.9000 using 8 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ # central KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 # peripheral Q=1.05E+01 V3=2.97E+02 # effects Kin=1 Kout=1 EC50=200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 eff(0) <- 1 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } mod1 <- mod1() # create the ui object (can also use `rxode2(mod1)`) mod1 summary(mod1$simulationModel)"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"specify-dosing-and-sampling-in-rxode2","dir":"","previous_headings":"","what":"Specify Dosing and sampling in rxode2","title":"Facilities for Simulating from ODE-Based Models","text":"rxode2 provides simple flexible way specify dosing sampling functions generate event table. First, empty event table generated “et()” function. interface similar NONMEM event tables: can see code, can dose compartment named rxode2 model. slight deviation NONMEM can reduce need compartment renumbering. events can also combined expanded (multi-subject events complex regimens) rbind, c, seq, rep. information creating complex dosing regimens using rxode2 see rxode2 events vignette.","code":"ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9,ii=12,cmt=\"depot\") %>% et(time=120, amt=2000, addl=4, ii=14, cmt=\"depot\") %>% et(0:240) # Add sampling"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"solving-odes","dir":"","previous_headings":"","what":"Solving ODEs","title":"Facilities for Simulating from ODE-Based Models","text":"ODE can now solved using rxSolve: returns modified data frame. can see compartment values plot : , Note labels automatically labeled units initial event table. rxode2 extracts units label plot (present).","code":"x <- mod1 %>% rxSolve(ev) x #> ── Solved rxode2 object ── #> ── Parameters (x$params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions (x$inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows library(ggplot2) plot(x,C2) + ylab(\"Central Concentration\") plot(x,eff) + ylab(\"Effect\")"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"ode-solving","dir":"","previous_headings":"","what":"ODE solving","title":"Facilities for Simulating from ODE-Based Models","text":"brief comparison pharmacometric ODE solving R packages rxode2. several R packages differential equations. popular deSolve. However pharmacometrics-specific ODE solving, 2 packages rxode2 released CRAN. uses compiled code faster ODE solving. mrgsolve, uses C++ lsoda solver solve ODE systems. user required write hybrid R/C++ code create mrgsolve model translated C++ solving. contrast, rxode2 R-like mini-language parsed C code solves ODE system. Unlike rxode2, mrgsolve currently support symbolic manipulation ODE systems, like automatic Jacobian calculation forward sensitivity calculation (rxode2 currently supports basis nlmixr2’s FOCEi algorithm) dMod, uses unique syntax create “reactions”. reactions create underlying ODEs created c code compiled deSolve model. contrast rxode2 defines ODE systems lower level. rxode2’s parsing mini-language comes C, whereas dMod’s parsing comes R. Like rxode2, dMod supports symbolic manipulation ODE systems calculates forward sensitivities adjoint sensitivities systems. Unlike rxode2, dMod thread-safe since deSolve yet thread-safe. PKPDsim defines models R-like syntax converts system compiled code. Like mrgsolve, PKPDsim currently support symbolic manipulation ODE systems. PKPDsim thread-safe. open pharmacometrics open source community fairly friendly, rxode2 maintainers positive interactions ODE-solving pharmacometric projects listed.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"pk-solved-systems","dir":"","previous_headings":"","what":"PK Solved systems","title":"Facilities for Simulating from ODE-Based Models","text":"rxode2 supports 1-3 compartment models gradients (using stan math’s auto-differentiation). currently uses equations PKADVAN allow time-varying covariates. rxode2 can mix ODEs solved systems.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"the-following-packages-for-solved-pk-systems-are-on-cran","dir":"","previous_headings":"PK Solved systems","what":"The following packages for solved PK systems are on CRAN","title":"Facilities for Simulating from ODE-Based Models","text":"mrgsolve currently 1-2 compartment (poly-exponential models) models built-. solved systems ODEs currently mixed. pmxTools currently 1-3 compartment (super-positioning) models built-. R-implementation. PKPDsim uses 1-3 “ADVAN” solutions using non-superpositioning. PKPDmodels one-compartment model gradients.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"non-cran-libraries","dir":"","previous_headings":"PK Solved systems","what":"Non-CRAN libraries:","title":"Facilities for Simulating from ODE-Based Models","text":"PKADVAN Provides 1-3 compartment models using non-superpositioning. allows time-varying covariates.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":null,"dir":"Reference","previous_headings":"","what":"Turn into an ini block for initialization — as.ini","title":"Turn into an ini block for initialization — as.ini","text":"Turn ini block initialization","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Turn into an ini block for initialization — as.ini","text":"","code":"as.ini(x) # S3 method for character as.ini(x) # S3 method for data.frame as.ini(x) # S3 method for call as.ini(x) # S3 method for lotriFix as.ini(x) # S3 method for matrix as.ini(x) # S3 method for default as.ini(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Turn into an ini block for initialization — as.ini","text":"x Item convert rxode2/nlmixr2 ui ini expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Turn into an ini block for initialization — as.ini","text":"rxode2 ini expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Turn into an ini block for initialization — as.ini","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Turn into an ini block for initialization — as.ini","text":"","code":"ini <- quote(ini({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 add.sd <- 0.7 })) as.ini(ini) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) l <- quote(lotri({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 add.sd <- 0.7 })) as.ini(l) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) m <- lotri({ eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 }) as.ini(m) #> ini({ #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) one.compartment <- function() { ini({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } as.ini(one.compartment) #> #> #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ui <- one.compartment() as.ini(ui) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ui$iniDf #> ntheta neta1 neta2 name lower est upper fix label backTransform #> 1 1 NA NA tka -Inf 0.4510756 Inf FALSE #> 2 2 NA NA tcl -Inf 1.0006319 Inf FALSE #> 3 3 NA NA tv -Inf 3.4499875 Inf FALSE #> 4 4 NA NA add.sd 0 0.7000000 Inf FALSE #> 5 NA 1 1 eta.ka -Inf 0.6000000 Inf FALSE #> 6 NA 2 2 eta.cl -Inf 0.3000000 Inf FALSE #> 7 NA 3 3 eta.v -Inf 0.1000000 Inf FALSE #> condition err #> 1 #> 2 #> 3 #> 4 cp add #> 5 id #> 6 id #> 7 id as.ini(ui$iniDf) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ini <- c(\"ini({\", \"tka <- log(1.57)\", \"tcl <- log(2.72)\", \"tv <- log(31.5)\", \"eta.ka ~ 0.6\", \"eta.cl ~ 0.3\", \"eta.v ~ 0.1\", \"add.sd <- 0.7\", \"})\") as.ini(ini) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ini <- paste(ini, collapse=\"\\n\") as.ini(ini) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> })"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":null,"dir":"Reference","previous_headings":"","what":"Turn into a model expression — as.model","title":"Turn into a model expression — as.model","text":"Turn model expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Turn into a model expression — as.model","text":"","code":"as.model(x) # S3 method for character as.model(x) # S3 method for call as.model(x) # S3 method for list as.model(x) # S3 method for default as.model(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Turn into a model expression — as.model","text":"x item convert model({}) expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Turn into a model expression — as.model","text":"model expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Turn into a model expression — as.model","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Turn into a model expression — as.model","text":"","code":"model <- quote(model({ ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) })) as.model(model) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) one.compartment <- function() { ini({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } as.model(one.compartment) #> #> #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) ui <- one.compartment() as.model(ui) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) model <- c(\"model({\", \"ka <- exp(tka + eta.ka)\", \"cl <- exp(tcl + eta.cl)\", \"v <- exp(tv + eta.v)\", \"d/dt(depot) = -ka * depot\", \"d/dt(center) = ka * depot - cl / v * center\", \"cp = center / v\", \"cp ~ add(add.sd)\", \"})\") as.model(model) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) model <- paste(model, collapse=\"\\n\") as.model(model) #> model({ #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> })"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":null,"dir":"Reference","previous_headings":"","what":"As rxode2 ui — as.rxUi","title":"As rxode2 ui — as.rxUi","text":"rxode2 ui","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"As rxode2 ui — as.rxUi","text":"","code":"as.rxUi(x) # S3 method for rxode2 as.rxUi(x) # S3 method for rxode2tos as.rxUi(x) # S3 method for rxModelVars as.rxUi(x) # S3 method for `function` as.rxUi(x) # S3 method for rxUi as.rxUi(x) # S3 method for default as.rxUi(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"As rxode2 ui — as.rxUi","text":"x Object convert rxUi object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"As rxode2 ui — as.rxUi","text":"rxUi object (error converted)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"As rxode2 ui — as.rxUi","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"As rxode2 ui — as.rxUi","text":"","code":"mod1 <- function() { ini({ # central KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 # peripheral Q=1.05E+01 V3=2.97E+02 # effects Kin=1 Kout=1 EC50=200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 eff(0) <- 1 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } as.rxUi(mod1) #> #> #> ── rxode2-based free-form 4-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 centr #> 3 3 peri #> 4 4 eff #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> KA <- 0.294 #> CL <- 18.6 #> V2 <- 40.2 #> Q <- 10.5 #> V3 <- 297 #> Kin <- 1 #> Kout <- 1 #> EC50 <- 200 #> }) #> model({ #> C2 <- centr/V2 #> C3 <- peri/V3 #> d/dt(depot) <- -KA * depot #> d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) <- Q * C2 - Q * C3 #> eff(0) <- 1 #> d/dt(eff) <- Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":null,"dir":"Reference","previous_headings":"","what":"Assert properties of the rxUi models — assertRxUi","title":"Assert properties of the rxUi models — assertRxUi","text":"Assert properties rxUi models","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assert properties of the rxUi models — assertRxUi","text":"","code":"assertRxUi(model, extra = \"\", .var.name = .vname(model)) assertRxUiPrediction(model, extra = \"\", .var.name = .vname(model)) assertRxUiSingleEndpoint(model, extra = \"\", .var.name = .vname(model)) assertRxUiTransformNormal(model, extra = \"\", .var.name = .vname(model)) assertRxUiNormal(model, extra = \"\", .var.name = .vname(model)) assertRxUiMuRefOnly(model, extra = \"\", .var.name = .vname(model)) assertRxUiEstimatedResiduals(model, extra = \"\", .var.name = .vname(model)) assertRxUiPopulationOnly(model, extra = \"\", .var.name = .vname(model)) assertRxUiMixedOnly(model, extra = \"\", .var.name = .vname(model)) assertRxUiRandomOnIdOnly(model, extra = \"\", .var.name = .vname(model))"},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assert properties of the rxUi models — assertRxUi","text":"model Model check extra Extra text append error message (like \"focei\") .var.name [character(1)] Name checked object print assertions. Defaults heuristic implemented vname.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assert properties of the rxUi models — assertRxUi","text":"rxUi model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Assert properties of the rxUi models — assertRxUi","text":"functions different types assertions assertRxUi -- Make sure proper rxode2 model (throw error) assertRxUiSingleEndpoint -- Make sure rxode2 model single endpoint model (throw error) assertRxUiTransformNormal -- Make sure model residual distribution normal transformably normal assertRxUiNormal -- Make sure model residual distribution normal assertRxUiEstimatedResiduals -- Make sure residual error parameters estimated (modeled). assertRxUiPopulationOnly -- Make sure model population model (mixed effects) assertRxUiMixedOnly -- Make sure model mixed effect model (population effect, ) assertRxUiPrediction -- Make sure model predictions assertRxUiMuRefOnly -- Make sure parameters mu-referenced assertRxUiRandomOnIdOnly -- Make sure random effects ID level","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assert properties of the rxUi models — assertRxUi","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Assert properties of the rxUi models — assertRxUi","text":"","code":"# \\donttest{ one.cmt <- function() { ini({ tka <- 0.45; label(\"Ka\") tcl <- log(c(0, 2.7, 100)); label(\"Cl\") tv <- 3.45; label(\"V\") 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) }) } assertRxUi(one.cmt) #> #> # assertRxUi(rnorm) # will fail assertRxUiSingleEndpoint(one.cmt) #> #> # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"meant perform way quantile() can drop replacement code using quantile() using distributional assumptions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"","code":"binomProbs(x, ...) # S3 method for default binomProbs( x, probs = c(0.025, 0.05, 0.5, 0.95, 0.975), na.rm = FALSE, names = TRUE, onlyProbs = TRUE, n = 0L, m = 0L, pred = FALSE, piMethod = c(\"lim\"), M = 5e+05, tol = .Machine$double.eps^0.25, ciMethod = c(\"wilson\", \"wilsonCorrect\", \"agrestiCoull\", \"wald\", \"wc\", \"ac\"), ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"x numeric vector whose mean probability based confidence values wanted, NA NaN values allowed numeric vectors unless na.rm TRUE. ... Arguments passed default method, allows many different methods applied. probs numeric vector probabilities values interval 0 1, inclusive. 0, represents maximum observed, 1, represents maximum observed. 0.5 represents expected probability (mean). na.rm logical; true, NA NaN's removed x quantiles computed. names logical; true, result names attribute. onlyProbs logical; true, return probability based confidence interval/prediction interval estimates, otherwise return extra statistics. n integer/integerish; n used calculate prediction confidence interval. n=0 (default) use number non-NA observations. calculating prediction interval, represents number observations used input (\"true\") distribution. m integer. using prediction interval represents number samples observed future prediction interval. pred Use prediction interval instead confidence interval. default FALSE. piMethod gives prediction interval method (currently lim) Lu 2020 M number simulations run LIM PI. tol tolerance root finding LIM prediction interval ciMethod gives method calculating confidence interval. Can : \"argestiCoull\" \"ac\" -- Agresti-Coull method. 95\\ interval, method use concept \"adding 2 successes 2 failures,\" rather uses formulas explicitly described following link: https://en.wikipedia.org/wiki/Binomial_proportion_confidence_interval#Agresti-Coull_Interval. \"wilson\" -- Wilson Method \"wilsonCorrect\" \"wc\" -- Wilson method continuity correction \"wald\" -- Wald confidence interval standard z approximation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"default return probabilities names (named) points expected distribution located given sampling mean standard deviation. onlyProbs=FALSE prepend mean, variance, standard deviation, minimum, maximum number non-NA observations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"used confidence intervals rxode2 solved objects using confint(mean=\"binom\")","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"Newcombe, R. G. (1998). \"Two-sided confidence intervals single proportion: comparison seven methods\". Statistics Medicine. 17 (8): 857–872. doi:10.1002/(SICI)1097-0258(19980430)17:8<857::AID-SIM777>3.0.CO;2-E. PMID 9595616. Hezhi Lu, Hua Jin, new prediction interval binomial random variable based inferential models, Journal Statistical Planning Inference, Volume 205, 2020, Pages 156-174, ISSN 0378-3758, https://doi.org/10.1016/j.jspi.2019.07.001.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"","code":"x<- rbinom(7001, p=0.375, size=1) binomProbs(x) #> 2.5% 5% 50% 95% 97.5% #> 0.3561590 0.3579519 0.3673761 0.3769027 0.3787386 # you can also use the prediction interval # \\donttest{ binomProbs(x, pred=TRUE) #> 2.5% 5% 50% 95% 97.5% #> 0.3515212 0.3540923 0.3673761 0.3808027 0.3833738 # } # Can get some extra statistics if you request onlyProbs=FALSE binomProbs(x, onlyProbs=FALSE) #> mean var sd n 2.5% 5% #> 0.3673761 0.2324109 0.4820901 7001.0000000 0.3561590 0.3579519 #> 50% 95% 97.5% #> 0.3673761 0.3769027 0.3787386 x[2] <- NA_real_ binomProbs(x, onlyProbs=FALSE) #> mean var sd n 2.5% 5% 50% 95% 97.5% #> NA NA NA NA NA NA NA NA NA binomProbs(x, na.rm=TRUE) #> 2.5% 5% 50% 95% 97.5% #> 0.3562103 0.3580034 0.3674286 0.3769562 0.3787922"},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the rxode2 coefficients — coef.rxode2","title":"Return the rxode2 coefficients — coef.rxode2","text":"returns parameters , state variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the rxode2 coefficients — coef.rxode2","text":"","code":"# S3 method for rxode2 coef(object, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the rxode2 coefficients — coef.rxode2","text":"object rxode2 object ... ignored arguments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the rxode2 coefficients — coef.rxode2","text":"rxCoef object following params list strings parameters rxode2 object state list strings names state rxode2 object. ini model specified default values parameters. rxode2 referring rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the rxode2 coefficients — coef.rxode2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":null,"dir":"Reference","previous_headings":"","what":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"returns new expression, old expression, new variable old variable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"","code":".assertRenameErrorModelLine(line, vars)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"line quoted call information line vars Variables contained within mdel","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"list(new, old, newChar, oldChar)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":null,"dir":"Reference","previous_headings":"","what":"This copies the rxode2 UI object so it can be modified — .copyUi","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"copies rxode2 UI object can modified","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"","code":".copyUi(ui)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"ui Original UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"Copied UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":null,"dir":"Reference","previous_headings":"","what":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"Handle single error normal t distributions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"","code":".handleSingleErrTypeNormOrTFoceiBase( env, pred1, errNum = 1L, rxPredLlik = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"env Environment parsed model pred1 data.frame current error errNum number error specification nlmixr2 model rxPredLlik boolean indicating log likelihood calculated non-normal distributions. default TRUE.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"list lines added. lines contain rx_yj_ integer corresponds transformation type. rx_lambda_ transformation lambda rx_low_ lower boundary transformation rx_hi_ upper boundary transformation rx_pred_f_ prediction function rx_pred_ transformed prediction function rx_r_ transformed variance","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":null,"dir":"Reference","previous_headings":"","what":"Reorder rows in iniDf — .iniHandleAppend","title":"Reorder rows in iniDf — .iniHandleAppend","text":"Reorder rows iniDf","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Reorder rows in iniDf — .iniHandleAppend","text":"","code":".iniHandleAppend(expr, rxui, envir, append)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Reorder rows in iniDf — .iniHandleAppend","text":"expr Expression parsing rxui User interface function envir Environment parsing append Reorder theta parameters. NULL means change parameter order. parameter name (character string) means put new parameter named parameter. number less equal zero means put parameter beginning list. number greater last parameter number means put parameter end list.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Reorder rows in iniDf — .iniHandleAppend","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":null,"dir":"Reference","previous_headings":"","what":"Update the iniDf of a model — .iniHandleLine","title":"Update the iniDf of a model — .iniHandleLine","text":"Update iniDf model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Update the iniDf of a model — .iniHandleLine","text":"","code":".iniHandleLine(expr, rxui, envir = parent.frame(), append = NULL) .iniHandleFixOrUnfix(expr, rxui, envir = parent.frame(), append = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Update the iniDf of a model — .iniHandleLine","text":"expr Expression parsing rxui User interface function envir Environment parsing append Reorder theta parameters. NULL means change parameter order. parameter name (character string) means put new parameter named parameter. number less equal zero means put parameter beginning list. number greater last parameter number means put parameter end list.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Update the iniDf of a model — .iniHandleLine","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Update the iniDf of a model — .iniHandleLine","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":null,"dir":"Reference","previous_headings":"","what":"Check if a language object matches a template language object — .matchesLangTemplate","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"template == str2lang(\".\"), match anything. template == str2lang(\".name\"), match name. template == str2lang(\".call()\"), match call.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"","code":".matchesLangTemplate(x, template)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"x object check template template object match","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"TRUE matches, FALSE, otherwise","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"","code":".matchesLangTemplate(str2lang(\"d/dt(foo)\"), str2lang(\"d/dt(.name)\")) #> [1] TRUE .matchesLangTemplate(str2lang(\"d/dt(foo)\"), str2lang(\"d/foo(.name)\")) #> [1] FALSE .matchesLangTemplate(str2lang(\"d/dt(foo)\"), str2lang(\"d/.\")) #> [1] TRUE"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal messaging statements — .minfo","title":"Internal messaging statements — .minfo","text":"Internal messaging statements","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal messaging statements — .minfo","text":"","code":".minfo(text, ..., .envir = parent.frame()) .malert(text, ..., .envir = parent.frame()) .mwarn(text, ..., .envir = parent.frame()) .msuccess(text, ..., .envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal messaging statements — .minfo","text":"text Text ... arguments .envir Environment evaluate ","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal messaging statements — .minfo","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal messaging statements — .minfo","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":null,"dir":"Reference","previous_headings":"","what":"Handle model lines — .modelHandleModelLines","title":"Handle model lines — .modelHandleModelLines","text":"Handle model lines","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Handle model lines — .modelHandleModelLines","text":"","code":".modelHandleModelLines( modelLines, rxui, modifyIni = FALSE, append = FALSE, auto = TRUE, cov = NULL, envir )"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Handle model lines — .modelHandleModelLines","text":"modelLines model lines considered rxui rxode2 UI object modifyIni ini() considered append boolean determine lines appended piping. possible values : TRUE lines appended model instead replaced FALSE lines replaced model (default) NA lines pre-pended model instead replaced lhs expression, append lines last observed line expression lhs auto boolean tells piping automatically selects parameters characterized population parameter, subject variability, covariate. TRUE automatic selection occurs. FALSE automatic selection turned everything added covariate (can promoted parameter ini statement). default TRUE, can changed options(rxode2.autoVarPiping=FALSE). cov character vector variables assumed covariates. override automatic promotion population parameter estimate (eta) envir Environment evaluation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Handle model lines — .modelHandleModelLines","text":"New UI","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Handle model lines — .modelHandleModelLines","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":null,"dir":"Reference","previous_headings":"","what":"Returns quoted call information — .quoteCallInfoLines","title":"Returns quoted call information — .quoteCallInfoLines","text":"Returns quoted call information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Returns quoted call information — .quoteCallInfoLines","text":"","code":".quoteCallInfoLines(callInfo, envir = parent.frame(), iniDf = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Returns quoted call information — .quoteCallInfoLines","text":"callInfo Call information envir Environment evaluation (needed) iniDf parent model iniDf piping ini block (NULL otherwise)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Returns quoted call information — .quoteCallInfoLines","text":"Quote call information. name=expression, change name<-expression quoted call list. expressions within brackets ie {}, unlist brackets called one single sequence.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Returns quoted call information — .quoteCallInfoLines","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":null,"dir":"Reference","previous_headings":"","what":"Print out a table in the documentation — .rxDocTable","title":"Print out a table in the documentation — .rxDocTable","text":"Print table documentation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print out a table in the documentation — .rxDocTable","text":"","code":".rxDocTable(table, caption = \"none\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print out a table in the documentation — .rxDocTable","text":"table data frame caption character vector representing caption latex table","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print out a table in the documentation — .rxDocTable","text":"based knitr context: output kableExtra::kbl latex output output DT::datatable html output otherwise output knitr::kable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print out a table in the documentation — .rxDocTable","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Print out a table in the documentation — .rxDocTable","text":"","code":".rxDocTable(rxReservedKeywords) #> #> #> |Reserved Name |Meaning |Alias | #> |:--------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------| #> |time |solver time |t | #> |podo |In Transit compartment models, last dose amount | | #> |tlast |Time of Last dose | | #> |M_E |Exp(1) | | #> |M_LOG2E |log2(e) | | #> |M_LOG10E |log10(e) | | #> |M_LN2 |log(2) | | #> |M_LN10 |log(10) | | #> |M_PI |pi | | #> |M_PI_2 |pi/2 | | #> |M_PI_4 |pi/4 | | #> |M_1_PI |1/pi | | #> |M_2_PI |2/pi | | #> |M_2_SQRTPI |2/sqrt(pi) | | #> |M_SQRT2 |sqrt(2) | | #> |M_SQRT1_2 |1/sqrt(2) | | #> |M_SQRT_3 |sqrt(3) | | #> |M_SQRT_32 |sqrt(32) | | #> |M_LOG10_2 |Log10(2) | | #> |M_2PI |2*pi | | #> |M_SQRT_PI |sqrt(pi) | | #> |M_1_SQRT_2PI |1/(sqrt(2*pi)) | | #> |M_LN_SQRT_PI |log(sqrt(pi)) | | #> |M_LN_SQRT_2PI |log(sqrt(2*pi)) | | #> |M_LN_SQRT_PId2 |log(sqrt(pi/2)) | | #> |pi |pi | | #> |NA |R's NA value | | #> |NaN |Not a Number Value | | #> |Inf |Infinite Value | | #> |newind |1: First record of individual; 2: Subsequent record of individual |NEWIND | #> |rxFlag |Flag for what part of the rxode2 model is being run; 1: ddt; 2: jac; 3: ini; 4: F; 5: lag; 6: rate; 7: dur; 8: mtime; 9: matrix exponential; 10: inductive linearization; 11: lhs | |"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"Get upper boundary condition transformation ","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"","code":".rxGetHiBoundaryPred1AndIni(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"env Environment parsed model pred1 data.frame current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"Upper Boundary","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"Get lambda value based pred information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"","code":".rxGetLambdaFromPred1AndIni(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"env Environment environment pred1 Single error data frame","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"Lambda expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"Get lower boundary condition transformation requires ","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"","code":".rxGetLowBoundaryPred1AndIni(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"env Environment parsed model pred1 data.frame current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"Lower Boundary","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the Observation transformation — .rxGetPredictionDVTransform","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"Get Observation transformation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"","code":".rxGetPredictionDVTransform(env, pred1, yj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"env Environment parsed model pred1 data.frame current error yj transformation number current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"transformation expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the prediction name — .rxGetPredictionF","title":"Get the prediction name — .rxGetPredictionF","text":"Get prediction name","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the prediction name — .rxGetPredictionF","text":"","code":".rxGetPredictionF(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the prediction name — .rxGetPredictionF","text":"env Environment parsed model pred1 data.frame current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the prediction name — .rxGetPredictionF","text":"prediction symbol","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the prediction name — .rxGetPredictionF","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the prediction transformation — .rxGetPredictionFTransform","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"Get prediction transformation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"","code":".rxGetPredictionFTransform(env, pred1, yj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"env Environment parsed model pred1 data.frame current error yj transformation number current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"transformation expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":null,"dir":"Reference","previous_headings":"","what":"Get Variance for error type — .rxGetVarianceForErrorType","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"Get Variance error type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"","code":".rxGetVarianceForErrorType(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"env Environment pred1 Pred one end-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"Variance error type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"Internal function tell linCmt() model variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"","code":".rxIsLinCmt()"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"0 1","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function for calculating the Jacobian — .rxJacobian","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"Internal function calculating Jacobian","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"","code":".rxJacobian(model, vars = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"model symengine environment vars Variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"Jacobian information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"Internal function generate model variables linCmt() model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"","code":".rxLinCmtGen(lenState, vars)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"lenState Length state vars Variables model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"Model variables expanded linCmt model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal Pruning function — .rxPrune","title":"Internal Pruning function — .rxPrune","text":"Internal Pruning function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal Pruning function — .rxPrune","text":"","code":".rxPrune(x, envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal Pruning function — .rxPrune","text":"x List quoted lines envir Environment information stored","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal Pruning function — .rxPrune","text":"Pruned model code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal Pruning function — .rxPrune","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":null,"dir":"Reference","previous_headings":"","what":"Sensitivity for model — .rxSens","title":"Sensitivity for model — .rxSens","text":"Sensitivity model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Sensitivity for model — .rxSens","text":"","code":".rxSens(model, vars, vars2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Sensitivity for model — .rxSens","text":"model symengine model environment vars Variables single sensitivity vars2 present, 2 parameter sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Sensitivity for model — .rxSens","text":"Sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Sensitivity for model — .rxSens","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":null,"dir":"Reference","previous_headings":"","what":"Temporarily set options then restore them while running code — .rxWithOptions","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"Temporarily set options restore running code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"","code":".rxWithOptions(ops, code)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"ops list options temporarily set code code code run sink","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"value code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"","code":".rxWithOptions(list(digits = 21), { print(pi) }) #> [1] 3.141592653589793116 print(pi) #> [1] 3.141593"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":null,"dir":"Reference","previous_headings":"","what":"With one sink, then release — .rxWithSink","title":"With one sink, then release — .rxWithSink","text":"one sink, release","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"With one sink, then release — .rxWithSink","text":"","code":".rxWithSink(file, code) .rxWithSinkBoth(file, code)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"With one sink, then release — .rxWithSink","text":"file path file sink running code code code run sink","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"With one sink, then release — .rxWithSink","text":"return results code section","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"With one sink, then release — .rxWithSink","text":".rxWithSink captures output cat .rxWithSinkBoth captures output cat message","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"With one sink, then release — .rxWithSink","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"With one sink, then release — .rxWithSink","text":"","code":"t <- tempfile() .rxWithSink(t, cat(\"message\\n\")) cat(\"cat2\\n\") # now you can see the cat2 #> cat2 lines <- readLines(t) unlink(t)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":null,"dir":"Reference","previous_headings":"","what":"Temporarily set options then restore them while running code — .rxWithWd","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"Temporarily set options restore running code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"","code":".rxWithWd(wd, code)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"wd working directory temporarily set system evaluating code code code run sink","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"value code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"","code":".rxWithWd(tempdir(), { getwd() }) #> [1] \"/tmp/RtmphFlXM3\" getwd() #> [1] \"/home/runner/work/rxode2/rxode2/docs/reference\""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-useUtf.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function to figure out if this session supports Unicode — .useUtf","title":"Internal function to figure out if this session supports Unicode — .useUtf","text":"Internal function figure session supports Unicode","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-useUtf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function to figure out if this session supports Unicode — .useUtf","text":"","code":".useUtf()"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-useUtf.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function to figure out if this session supports Unicode — .useUtf","text":"boolean indicating session supports Unicode","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":null,"dir":"Reference","previous_headings":"","what":"Error function — erf","title":"Error function — erf","text":"Error function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Error function — erf","text":"","code":"erf(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Error function — erf","text":"x vector real values","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Error function — erf","text":"erf x","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Error function — erf","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Error function — erf","text":"","code":"erf(1.0) #> [1] 0.8427008"},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":null,"dir":"Reference","previous_headings":"","what":"Event translation for rxode2 — etTrans","title":"Event translation for rxode2 — etTrans","text":"Event translation rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Event translation for rxode2 — etTrans","text":"","code":"etTrans( inData, obj, addCmt = FALSE, dropUnits = FALSE, allTimeVar = FALSE, keepDosingOnly = FALSE, combineDvid = NULL, keep = character(0), addlKeepsCov = FALSE, addlDropSs = TRUE, ssAtDoseTime = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Event translation for rxode2 — etTrans","text":"inData Data frame translate obj Model translate data addCmt Add compartment data frame (default FALSE). dropUnits Boolean drop units (default FALSE). allTimeVar Treat covariates time-varying keepDosingOnly keep individuals dosing records trailing dosing records last observation. combineDvid boolean indicating rxode2 use DVID observation records change cmt value; Useful multiple-endpoint nlmixr models. default determined option(\"rxode2.combine.dvid\") option set, TRUE. typically affect rxode2 simulations. keep named vector items want keep final rxode2 dataset. added rxode2 event records (seen), last observation carried forward used. addlKeepsCov determines additional dosing items repeats dose (FALSE) keeps covariates record dose (TRUE) addlDropSs steady state doses addl specification steady state flag dropped repeated doses (TRUE) retained (FALSE) ssAtDoseTime Boolean TRUE back calculates steady concentration actual time dose, otherwise FALSE doses shifted","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Event translation for rxode2 — etTrans","text":"Object solving rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":null,"dir":"Reference","previous_headings":"","what":"Find the assignments in R expression — findLhs","title":"Find the assignments in R expression — findLhs","text":"Find assignments R expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Find the assignments in R expression — findLhs","text":"","code":"findLhs(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Find the assignments in R expression — findLhs","text":"x R expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Find the assignments in R expression — findLhs","text":"list assigned parameters","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Find the assignments in R expression — findLhs","text":"Hadley Wickham Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":null,"dir":"Reference","previous_headings":"","what":"Gammap: normalized lower incomplete gamma function — gammap","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"gamma_p boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"","code":"gammap(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"numeric '' parameter normalized lower incomplete gamma z numeric 'z' parameter normalized lower incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"gammap results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"gamma p function given : gammap = lowergamma(, z)/gamma()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"","code":"gammap(1, 3) #> [1] 0.9502129 gammap(1:3, 3) #> [1] 0.9502129 0.8008517 0.5768099 gammap(1, 1:3) #> [1] 0.6321206 0.8646647 0.9502129"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":null,"dir":"Reference","previous_headings":"","what":"gammapDer: derivative of gammap — gammapDer","title":"gammapDer: derivative of gammap — gammapDer","text":"gamma_p_derivative boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"gammapDer: derivative of gammap — gammapDer","text":"","code":"gammapDer(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"gammapDer: derivative of gammap — gammapDer","text":"numeric '' parameter upper incomplete gamma z numeric 'z' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"gammapDer: derivative of gammap — gammapDer","text":"lowergamma results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"gammapDer: derivative of gammap — gammapDer","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"gammapDer: derivative of gammap — gammapDer","text":"","code":"gammapDer(1:3, 3) #> [1] 0.04978707 0.14936121 0.22404181 gammapDer(1, 1:3) #> [1] 0.36787944 0.13533528 0.04978707"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":null,"dir":"Reference","previous_headings":"","what":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"gammapInv gammapInva: Inverses normalized gammap function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"","code":"gammapInv(a, p) gammapInva(x, p)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"numeric '' parameter upper incomplete gamma p numeric 'p' parameter upper incomplete gamma x numeric 'x' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"inverse gammap results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"equation: p = gammap(, x) 'gammapInv' function returns value 'x' satisfies equation 'gammapInva' function returns value 'q' satisfies equation NOTE: gammapInva slow","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"","code":"gammapInv(1:3, 0.5) #> [1] 0.6931472 1.6783470 2.6740603 gammapInv(1, 1:3 / 3.1) #> [1] 0.3894648 1.0360919 3.4339872 gammapInv(1:3, 1:3 / 3.1) #> [1] 0.3894648 2.1988984 6.8872929 gammapInva(1:3, 1:3 / 3.1) #> [1] 0.3894648 2.1988984 6.8872929"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":null,"dir":"Reference","previous_headings":"","what":"Gammaq: normalized upper incomplete gamma function — gammaq","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"gamma_q boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"","code":"gammaq(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"numeric '' parameter normalized upper incomplete gamma z numeric 'z' parameter normalized upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"gammaq results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"gamma q function given : gammaq = uppergamma(, z)/gamma()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"","code":"gammaq(1, 3) #> [1] 0.04978707 gammaq(1:3, 3) #> [1] 0.04978707 0.19914827 0.42319008 gammaq(1, 1:3) #> [1] 0.36787944 0.13533528 0.04978707"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":null,"dir":"Reference","previous_headings":"","what":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"gammaqInv gammaqInva: Inverses normalized gammaq function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"","code":"gammaqInv(a, q) gammaqInva(x, q)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"numeric '' parameter upper incomplete gamma q numeric 'q' parameter upper incomplete gamma x numeric 'x' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"inverse gammaq results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"equation: q = gammaq(, x) 'gammaqInv' function returns value 'x' satisfies equation 'gammaqInva' function returns value '' satisfies equation NOTE: gammaqInva slow","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"","code":"gammaqInv(1:3, 0.5) #> [1] 0.6931472 1.6783470 2.6740603 gammaqInv(1, 1:3 / 3) #> [1] 1.0986123 0.4054651 0.0000000 gammaqInv(1:3, 1:3 / 3.1) #> [1] 1.131402 1.248533 0.684289 gammaqInva(1:3, 1:3 / 3.1) #> [1] 1.131402 1.248533 0.684289"},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":null,"dir":"Reference","previous_headings":"","what":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"Create complete shiny application exploring dosing regimens given (hardcoded) PK/PD model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"","code":"genShinyApp.template( appDir = \"shinyExample\", verbose = TRUE, ODE.config = list(ode = \"model\", params = c(KA = 0.294), inits = c(eff = 1), method = \"lsoda\", atol = 1e-08, rtol = 1e-06) ) write.template.server(appDir) write.template.ui(appDir, statevars)"},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"appDir string directory store shiny app, default \"shinyExample\". directory appDir created exist. verbose logical specifying whether write messages shiny app generated. Defaults TRUE. ODE.config model name compiled list parameters sent rxSolve(). statevars List statevars passed write.template.ui() function. usually called directly. PK/PD model defined using rxode2(), set parameters initial values defined. appropriate R scripts shiny's user interface ui.R server logic server.R created directory appDir. function evaluates following PK/PD model default: can changed ODE.config parameter. launch shiny app, simply issue runApp(appDir) R command.","code":"C2 = centr/V2; C3 = peri/V3; d/dt(depot) =-KA*depot; d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) = Q*C2 - Q*C3; d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff;"},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"None, functions used side effects.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"functions create simple, working example dosing regimen simulation web application. Users may want modify code experiment creating shiny applications specific rxode2 models.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"","code":"# \\donttest{ # remove myapp when the example is complete on.exit(unlink(\"myapp\", recursive = TRUE, force = TRUE)) # create the shiny app example (template) genShinyApp.template(appDir = \"myapp\") #> #> Generating an example (template) for a dosing regimen shiny app #> #> Using the following PK/PD model: #> C2 = centr/V2; #> C3 = peri/V3; #> d/dt(depot) =-KA*depot; #> d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; #> d/dt(peri) = Q*C2 - Q*C3; #> d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; #> #> Translating the PK/PD ODE model into C, compiling, etc. #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> #> Parameters and their values: #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> #> Initial values in each compartment: #> depot centr pari eff #> 0 0 0 1 #> #> Warning: 2 arguments not used by format ' #> # #> # Dosing regimen template generated by rxode2::genShinyApp.template() #> # #> #> debug = TRUE #> #wd = sprintf(\"%%s/../\", getwd()) #> #setwd(wd) #> #> # Server inputs: Dose, dosing regimen, dosing frequency, #> # dosing cycle definition, number of dosing cycles #> #> library(shiny) #> library(rxode2) #> #> # read objects from \"rx_shiny_data.rda\" in the AppDir folder, #> # objects include, mod1, params, inits, method, atol, rtol.] #> #> load(\"./rx_shiny_data.rda\") #> if (!rxDynLoad(mod1)) mod1 <- rxode2(mod1, modName=\"mod1\") #> # Define server logic #> shinyServer(function(input, output) { #> #> get.cp <- reactive({ #> ds <- input$Dose #> reg <- switch(input$regimen, \"QD\"=1, \"BID\"=2) #> cyc <- switch(input$cycle, #> \"continous\"=c(7,0), #> \"1wkon 1wkoff\"=c(7,7), #> \"2wkon 1wkoff\"=c(14,7), #> \"3wkon 1wkoff\"=c(21,7) #> ) #> cyc <- [... truncated] #> Shiny files (ui.R, server.R) plus R data saved. #> #> To launch the Shiny app, type the following two R commands: #> #> \tlibrary(shiny) #> \trunApp(\"myapp\") #> # run the shiny app if (requireNamespace(\"shiny\", quietly=TRUE)) { library(shiny) # runApp(\"myapp\") # Won't launch in environments without browsers } # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"Get base simulation model simulation inis underlying rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"","code":"getBaseIniSimModel(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"obj Fit Object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"Simulation object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the base simulation model for simulation — getBaseSimModel","title":"Get the base simulation model for simulation — getBaseSimModel","text":"Get base simulation model simulation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the base simulation model for simulation — getBaseSimModel","text":"","code":"getBaseSimModel(obj) # S3 method for default getBaseSimModel(obj) # S3 method for default getBaseIniSimModel(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the base simulation model for simulation — getBaseSimModel","text":"obj Fit Object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the base simulation model for simulation — getBaseSimModel","text":"Simulation object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the base simulation model for simulation — getBaseSimModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"Get symengine loading symengine rxS()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"","code":"getBaseSymengineModel(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"obj Object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"Simulation model ready load symeng","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":null,"dir":"Reference","previous_headings":"","what":"Get/Set the number of threads that rxode2 uses — getRxThreads","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"Get/Set number threads rxode2 uses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"","code":"getRxThreads(verbose = FALSE) setRxThreads(threads = NULL, percent = NULL, throttle = NULL) rxCores(verbose = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"verbose Display value relevant OpenMP settings threads NULL (default) rereads environment variables. 0 means use logical CPUs available. Otherwise number >= 1 percent provided number 2 100; percentage logical CPUs use. default startup, 50 percent. throttle 2 (default) means , roughly speaking, single thread used number subjects solved <=2, 2 threads number points <=4, etc. throttle speed small data tasks (especially repeated many times) incurring overhead managing multiple threads. throttle also suppress sorting ID solved first (nsubject solved)*throttle <= nthreads. rxode2 sorting occurs minimize time waiting another thread finish. last item solved long solving time, solving wait last costly solving occur. items likely take time solved first, wait less likely impact overall solving time. rxode2 IDs sorted individual number solving points (largest first). also C interface allows IDs resorted total time spent solving equation. allows packages like nlmixr sort solving time needed. Overall number threads throttled (restricted) small tasks sorting IDs suppressed.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"number threads rxode2 uses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":null,"dir":"Reference","previous_headings":"","what":"Empty Guide — guide_none","title":"Empty Guide — guide_none","text":"empty guide draws nothing; included rxode2 compatibility ggplot 3.2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Empty Guide — guide_none","text":"","code":"guide_none(title = waiver(), position = waiver())"},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Empty Guide — guide_none","text":"title character string expression indicating title guide. NULL, title shown. default (waiver()), name scale object name specified labs() used title. position guide drawn: one top, bottom, left, right.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Empty Guide — guide_none","text":"nothing, simply included compatible ggplot 3.2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign the ini block in the rxode2 related object — ini<-","title":"Assign the ini block in the rxode2 related object — ini<-","text":"Assign ini block rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign the ini block in the rxode2 related object — ini<-","text":"","code":"ini(x, envir = environment(x)) <- value"},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign the ini block in the rxode2 related object — ini<-","text":"x rxode2 related object envir Environment assignment occurs value Value object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign the ini block in the rxode2 related object — ini<-","text":"rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign the ini block in the rxode2 related object — ini<-","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":null,"dir":"Reference","previous_headings":"","what":"Ini block for rxode2/nlmixr models — ini.rxUi","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"ini block controls initial conditions 'theta' (fixed effects), 'omega' (random effects), 'sigma' (residual error) elements model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"","code":"# S3 method for rxUi ini(x, ..., envir = parent.frame(), append = NULL) # S3 method for default ini(x, ..., envir = parent.frame(), append = NULL) ini(x, ..., envir = parent.frame(), append = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"x expression ... expressions ini() function envir environment unevaluated model expressions evaluated. May also NULL, list, data frame, pairlist integer specified sys.call. append Reorder theta parameters. NULL means change parameter order. parameter name (character string) means put new parameter named parameter. number less equal zero means put parameter beginning list. number greater last parameter number means put parameter end list.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"ini block","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"ini() function used two different ways. main way used set initial conditions associated attributes (described ) model. way used updating initial conditions model, often using pipe operator. 'theta' 'sigma' can set using either <- = tvCL <- 1 equivalently tvCL = 1. 'omega' can set ~ etaCL ~ 0.1. Parameters can named unnamed (though named parameters preferred). named parameter set using name left assignment unnamed parameters set without assignment operator. tvCL <- 1 set named parameter tvCL 1. Unnamed parameters set using just value, 1. estimation methods, lower upper bounds can set 'theta' 'sigma' values. set lower /upper bound, use vector values. vector c(lower, estimate, upper). vector may given just estimate (estimate), lower bound estimate (c(lower, estimate)), three (c(lower, estimate, upper)). set estimate upper bound without lower bound, set lower bound -Inf, c(-Inf, estimate, upper). estimation method support bounds, bounds ignored warning. 'omega' values can set single value values lower-triangular matrix. values may set either variance-covariance matrix (default) correlation matrix -diagonals standard deviations diagonals. Names may set left side ~. set variance-covariance matrix variance values 2 3 covariance -2.5 use ~c(2, 2.5, 3). set matrix names iivKa iivCL, use iivKa + iivCL~c(2, 2.5, 3). set correlation matrix standard deviations diagonal, use cor() like iivKa + iivCL~cor(2, -0.5, 3). Values may fixed (therefore estimated) using either name fixed end assignment calling fixed() function value fix. 'theta' 'sigma', either estimate full definition (including lower upper bounds) may included fixed setting. example, following effectively equivalent set 'theta' 'sigma' fixed value (lower upper bounds ignored fixed value): tvCL <- fixed(1), tvCL <- fixed(0, 1), tvCL <- fixed(0, 1, 2), tvCL <- c(0, fixed(1), 2), tvCL <- c(0, 1, fixed). 'omega' assignment, full block none block must set fixed. Examples setting 'omega' value fixed : iivKa~fixed(1), iivKa + iivCL~fixed(1, 2, 3), iivKa + iivCL~c(1, 2, 3, fixed). Anywhere fixed used, FIX, FIXED, fix may used equivalently. value, standard mathematical operators functions may used define value. example, log(2) 24*30 may used define value anywhere number can used (e.g. lower bound, estimate, upper bound, variance, etc.). Values may labeled using label() function assignment. Labels used make reporting easier giving human-readable description parameter, labels effect estimation. typical way set label parameter tvCL label \"Typical Value Clearance (L/hr)\" tvCL <- 1; label(\"Typical Value Clearance (L/hr)\"). rxode2/nlmixr2 attempt determine back-transformations user. example, CL <- exp(tvCL) detect tvCL must back-transformed exp() easier interpretation. want control back-transformation, can specify back-transformation using backTransform() assignment. example, set back-transformation exp(), can use tvCL <- 1; backTransform(exp()).","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"","code":"# Set the ini() block in a model one.compartment <- function() { ini({ tka <- log(1.57); label(\"Ka\") tcl <- log(2.72); label(\"Cl\") tv <- log(31.5); label(\"V\") 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } # Use piping to update initial conditions one.compartment %>% ini(tka <- log(2)) #> #> #> ℹ change initial estimate of `tka` to `0.693147180559945` #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.6931472 1.0006319 3.4499875 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.693147180559945 #> label(\"Ka\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> } one.compartment %>% ini(tka <- label(\"Absorption rate, Ka (1/hr)\")) #> #> #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.4510756 1.0006319 3.4499875 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.451075619360217 #> label(\"Absorption rate, Ka (1/hr)\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> } # Move the tka parameter to be just below the tv parameter (affects parameter # summary table, only) one.compartment %>% ini(tka <- label(\"Absorption rate, Ka (1/hr)\"), append = \"tv\") #> #> #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tcl tv tka add.sd #> 1.0006319 3.4499875 0.4510756 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> tka <- 0.451075619360217 #> label(\"Absorption rate, Ka (1/hr)\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> } # When programming with rxode2/nlmixr2, it may be easier to pass strings in # to modify the ini one.compartment %>% ini(\"tka <- log(2)\") #> #> #> ℹ change initial estimate of `tka` to `0.693147180559945` #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.6931472 1.0006319 3.4499875 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.693147180559945 #> label(\"Ka\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Check to see if this is an rxSolve object. — is.rxSolve","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"Check see rxSolve object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"","code":"is.rxSolve(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"x object check see rxSolve rxSolve object expired strip rxSolve information.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"boolean indicating rxSolve object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"Calculate log likelihood binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"","code":"llikBeta(x, shape1, shape2, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"x Observation shape1, shape2 non-negative parameters Beta distribution. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"data frame fx log pdf value dShape1 dShape2 derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"rxode2() model, can use llikBeta() use arguments. can also get derivative shape1 shape2 llikBetaDshape1() llikBetaDshape2().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"","code":"# \\donttest{ x <- seq(1e-4, 1 - 1e-4, length.out = 21) llikBeta(x, 0.5, 0.5) #> fx dShape1 dShape2 #> 1 3.46049030 -7.82404601 1.38619436 #> 2 0.37793108 -1.60763953 1.33490633 #> 3 0.05888752 -0.91549105 1.28084495 #> 4 -0.11510253 -0.51035907 1.22369308 #> 5 -0.22855163 -0.22284360 1.16307581 #> 6 -0.30780832 0.00019998 1.09854562 #> 7 -0.36444410 0.18245488 1.02956227 #> 8 -0.40444714 0.33655795 0.95546529 #> 9 -0.43118004 0.47005363 0.87543540 #> 10 -0.44655956 0.58780889 0.78843918 #> 11 -0.45158271 0.69314718 0.69314718 #> 12 -0.44655956 0.78843918 0.58780889 #> 13 -0.43118004 0.87543540 0.47005363 #> 14 -0.40444714 0.95546529 0.33655795 #> 15 -0.36444410 1.02956227 0.18245488 #> 16 -0.30780832 1.09854562 0.00019998 #> 17 -0.22855163 1.16307581 -0.22284360 #> 18 -0.11510253 1.22369308 -0.51035907 #> 19 0.05888752 1.28084495 -0.91549105 #> 20 0.37793108 1.33490633 -1.60763953 #> 21 3.46049030 1.38619436 -7.82404601 llikBeta(x, 1, 3, TRUE) #> x shape1 shape2 fx dShape1 dShape2 #> 1 0.00010 1 3 1.09841228 -7.37700704 0.33323333 #> 2 0.05009 1 3 0.99583622 -1.16060056 0.28194530 #> 3 0.10008 1 3 0.88771347 -0.46845208 0.22788392 #> 4 0.15007 1 3 0.77340972 -0.06332009 0.17073205 #> 5 0.20006 1 3 0.65217518 0.22419538 0.11011478 #> 6 0.25005 1 3 0.52311481 0.44723895 0.04558459 #> 7 0.30004 1 3 0.38514811 0.62949385 -0.02339876 #> 8 0.35003 1 3 0.23695415 0.78359692 -0.09749574 #> 9 0.40002 1 3 0.07689437 0.91709260 -0.17752562 #> 10 0.45001 1 3 -0.09709808 1.03484786 -0.26452185 #> 11 0.50000 1 3 -0.28768207 1.14018615 -0.35981385 #> 12 0.54999 1 3 -0.49835866 1.23547815 -0.46515214 #> 13 0.59998 1 3 -0.73386918 1.32247438 -0.58290740 #> 14 0.64997 1 3 -1.00086054 1.40250426 -0.71640308 #> 15 0.69996 1 3 -1.30906667 1.47660124 -0.87050615 #> 16 0.74995 1 3 -1.67357647 1.54558459 -1.05276105 #> 17 0.79994 1 3 -2.11966363 1.61011478 -1.27580462 #> 18 0.84993 1 3 -2.69469457 1.67073205 -1.56332009 #> 19 0.89992 1 3 -3.50495854 1.72788392 -1.96845208 #> 20 0.94991 1 3 -4.88925549 1.78194530 -2.66060056 #> 21 0.99990 1 3 -17.32206846 1.83323333 -8.87700704 et <- et(seq(1e-4, 1-1e-4, length.out=21)) et$shape1 <- 0.5 et$shape2 <- 1.5 model <- function() { model({ fx <- llikBeta(time, shape1, shape2) dShape1 <- llikBetaDshape1(time, shape1, shape2) dShape2 <- llikBetaDshape2(time, shape1, shape2) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 21 × 6 #> time fx dShape1 dShape2 shape1 shape2 #> #> 1 0.0001 4.15 -6.82 0.386 0.5 1.5 #> 2 0.0501 1.02 -0.608 0.335 0.5 1.5 #> 3 0.100 0.647 0.0845 0.281 0.5 1.5 #> 4 0.150 0.415 0.490 0.224 0.5 1.5 #> 5 0.200 0.241 0.777 0.163 0.5 1.5 #> 6 0.250 0.0976 1.00 0.0985 0.5 1.5 #> # ℹ 15 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"Calculate log likelihood binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"","code":"llikBinom(x, size, prob, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"x Number successes size Size trial prob probability success full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"data frame fx pdf value dProb derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"rxode2() model, can use llikBinom() use arguments. can also get derivative prob llikBinomDprob()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"","code":"# \\donttest{ llikBinom(46:54, 100, 0.5) #> fx dProb #> 1 -2.848030 -16 #> 2 -2.709193 -12 #> 3 -2.610102 -8 #> 4 -2.550679 -4 #> 5 -2.530876 0 #> 6 -2.550679 4 #> 7 -2.610102 8 #> 8 -2.709193 12 #> 9 -2.848030 16 llikBinom(46:54, 100, 0.5, TRUE) #> x size prob fx dProb #> 1 46 100 0.5 -2.848030 -16 #> 2 47 100 0.5 -2.709193 -12 #> 3 48 100 0.5 -2.610102 -8 #> 4 49 100 0.5 -2.550679 -4 #> 5 50 100 0.5 -2.530876 0 #> 6 51 100 0.5 -2.550679 4 #> 7 52 100 0.5 -2.610102 8 #> 8 53 100 0.5 -2.709193 12 #> 9 54 100 0.5 -2.848030 16 # In rxode2 you can use: et <- et(46:54) et$size <- 100 et$prob <-0.5 model <- function() { model({ fx <- llikBinom(time, size, prob) dProb <- llikBinomDprob(time, size, prob) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 9 × 5 #> time fx dProb size prob #> #> 1 46 -2.85 -16 100 0.5 #> 2 47 -2.71 -12 100 0.5 #> 3 48 -2.61 -8 100 0.5 #> 4 49 -2.55 -4 100 0.5 #> 5 50 -2.53 0 100 0.5 #> 6 51 -2.55 4 100 0.5 #> # ℹ 3 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"log likelihood Cauchy distribution derivatives (stan)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"","code":"llikCauchy(x, location = 0, scale = 1, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"x Observation location, scale location scale parameters. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"data frame fx log pdf value dLocation dScale derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"rxode2() model, can use llikCauchy() use arguments. can also get derivative location scale llikCauchyDlocation() llikCauchyDscale().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"","code":"# \\donttest{ x <- seq(-3, 3, length.out = 21) llikCauchy(x, 0, 1) #> fx dLocation dScale #> 1 -3.447315 -0.6000000 0.8000000 #> 2 -3.259780 -0.6513872 0.7587455 #> 3 -3.055753 -0.7100592 0.7041420 #> 4 -2.832979 -0.7763401 0.6303142 #> 5 -2.589293 -0.8490566 0.5283019 #> 6 -2.323385 -0.9230769 0.3846154 #> 7 -2.036728 -0.9836066 0.1803279 #> 8 -1.738057 -0.9944751 -0.1049724 #> 9 -1.452215 -0.8823529 -0.4705882 #> 10 -1.230908 -0.5504587 -0.8348624 #> 11 -1.144730 0.0000000 -1.0000000 #> 12 -1.230908 0.5504587 -0.8348624 #> 13 -1.452215 0.8823529 -0.4705882 #> 14 -1.738057 0.9944751 -0.1049724 #> 15 -2.036728 0.9836066 0.1803279 #> 16 -2.323385 0.9230769 0.3846154 #> 17 -2.589293 0.8490566 0.5283019 #> 18 -2.832979 0.7763401 0.6303142 #> 19 -3.055753 0.7100592 0.7041420 #> 20 -3.259780 0.6513872 0.7587455 #> 21 -3.447315 0.6000000 0.8000000 llikCauchy(x, 3, 1, full=TRUE) #> x location scale fx dLocation dScale #> 1 -3.0 3 1 -4.755648 -0.3243243 0.9459459 #> 2 -2.7 3 1 -4.655977 -0.3404001 0.9402807 #> 3 -2.4 3 1 -4.551246 -0.3580902 0.9336870 #> 4 -2.1 3 1 -4.440937 -0.3776379 0.9259534 #> 5 -1.8 3 1 -4.324449 -0.3993344 0.9168053 #> 6 -1.5 3 1 -4.201087 -0.4235294 0.9058824 #> 7 -1.2 3 1 -4.070040 -0.4506438 0.8927039 #> 8 -0.9 3 1 -3.930358 -0.4811845 0.8766194 #> 9 -0.6 3 1 -3.780926 -0.5157593 0.8567335 #> 10 -0.3 3 1 -3.620428 -0.5550883 0.8317914 #> 11 0.0 3 1 -3.447315 -0.6000000 0.8000000 #> 12 0.3 3 1 -3.259780 -0.6513872 0.7587455 #> 13 0.6 3 1 -3.055753 -0.7100592 0.7041420 #> 14 0.9 3 1 -2.832979 -0.7763401 0.6303142 #> 15 1.2 3 1 -2.589293 -0.8490566 0.5283019 #> 16 1.5 3 1 -2.323385 -0.9230769 0.3846154 #> 17 1.8 3 1 -2.036728 -0.9836066 0.1803279 #> 18 2.1 3 1 -1.738057 -0.9944751 -0.1049724 #> 19 2.4 3 1 -1.452215 -0.8823529 -0.4705882 #> 20 2.7 3 1 -1.230908 -0.5504587 -0.8348624 #> 21 3.0 3 1 -1.144730 0.0000000 -1.0000000 et <- et(-3, 3, length.out=10) et$location <- 0 et$scale <- 1 model <- function() { model({ fx <- llikCauchy(time, location, scale) dLocation <- llikCauchyDlocation(time, location, scale) dScale <- llikCauchyDscale(time, location, scale) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> Warning: #> with negative times, compartments initialize at first negative observed time #> with positive times, compartments initialize at time zero #> use 'rxSetIni0(FALSE)' to initialize at first observed time #> this warning is displayed once per session #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dLocation dScale location scale #> #> 1 -3 -3.45 -0.6 0.8 0 1 #> 2 -2.33 -3.01 -0.724 0.690 0 1 #> 3 -1.67 -2.47 -0.882 0.471 0 1 #> 4 -1 -1.84 -1 0 0 1 #> 5 -0.333 -1.25 -0.6 -0.8 0 1 #> 6 0.333 -1.25 0.600 -0.8 0 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for chi-squared distribution — llikChisq","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"log likelihood derivatives chi-squared distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"","code":"llikChisq(x, df, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"x variable distributed chi-squared distribution df degrees freedom (non-negative, can non-integer). full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"data frame fx log pdf value dDf derivatives respect df parameter observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"rxode2() model, can use llikChisq() use x df arguments. can also get derivative df llikChisqDdf().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"","code":"# \\donttest{ llikChisq(1, df = 1:3, full=TRUE) #> x df fx dDf #> 1 1 1 -1.418939 0.63518142 #> 2 1 2 -1.193147 -0.05796576 #> 3 1 3 -1.418939 -0.36481858 llikChisq(1, df = 6:9) #> fx dDf #> 1 -3.272589 -0.8079658 #> 2 -4.126989 -0.8981519 #> 3 -5.064348 -0.9746324 #> 4 -6.072899 -1.0410091 et <- et(1:3) et$x <- 1 model <- function() { model({ fx <- llikChisq(x, time) dDf <- llikChisqDdf(x, time) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 3 × 4 #> time fx dDf x #> #> 1 1 -1.42 0.635 1 #> 2 2 -1.19 -0.0580 1 #> 3 3 -1.42 -0.365 1 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for exponential distribution — llikExp","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"log likelihood derivatives exponential distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"","code":"llikExp(x, rate, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"x variable distributed exponential distribution rate vector rates. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"data frame fx log pdf value dRate derivatives respect rate parameter observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"rxode2() model, can use llikExp() use x rate arguments. can also get derivative rate llikExpDrate().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"","code":"# \\donttest{ llikExp(1, 1:3) #> fx dRate #> 1 -1.000000 0.0000000 #> 2 -1.306853 -0.5000000 #> 3 -1.901388 -0.6666667 llikExp(1, 1:3, full=TRUE) #> x rate fx dRate #> 1 1 1 -1.000000 0.0000000 #> 2 1 2 -1.306853 -0.5000000 #> 3 1 3 -1.901388 -0.6666667 # You can use rxode2 for these too: et <- et(1:3) et$x <- 1 model <- function() { model({ fx <- llikExp(x, time) dRate <- llikExpDrate(x, time) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 3 × 4 #> time fx dRate x #> #> 1 1 -1 0 1 #> 2 2 -1.31 -0.5 1 #> 3 3 -1.90 -0.667 1 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for F distribution — llikF","title":"log likelihood and derivatives for F distribution — llikF","text":"log likelihood derivatives F distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for F distribution — llikF","text":"","code":"llikF(x, df1, df2, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for F distribution — llikF","text":"x variable distributed f distribution df1, df2 degrees freedom. Inf allowed. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for F distribution — llikF","text":"data frame fx log pdf value dDf1 dDf2 derivatives respect df1/df2 parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for F distribution — llikF","text":"rxode2() model, can use llikF() use x rate arguments. can also get derivative df1 df2 llikFDdf1() llikFDdf2().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for F distribution — llikF","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for F distribution — llikF","text":"","code":"# \\donttest{ x <- seq(0.001, 5, length.out = 100) llikF(x^2, 1, 5) #> fx dDf1 dDf2 #> 1 5.939135090 -5.769327755 0.0098138672 #> 2 1.996061339 -1.829698617 0.0098667834 #> 3 1.308027230 -1.151720596 0.0100203751 #> 4 0.898151814 -0.758467992 0.0102713542 #> 5 0.601410048 -0.484842238 0.0106143384 #> 6 0.365567397 -0.278507461 0.0110419510 #> 7 0.167275143 -0.115987118 0.0115449567 #> 8 -0.005928407 0.015333168 0.0121124287 #> 9 -0.161467803 0.123053577 0.0127319420 #> 10 -0.304110944 0.212138450 0.0133897879 #> 11 -0.437089645 0.286034532 0.0140712037 #> 12 -0.562684604 0.347253504 0.0147606108 #> 13 -0.682555520 0.397699568 0.0154418570 #> 14 -0.797939098 0.438864917 0.0160984557 #> 15 -0.909773848 0.471951996 0.0167138175 #> 16 -1.018782007 0.497952966 0.0172714700 #> 17 -1.125525217 0.517703019 0.0177552614 #> 18 -1.230443500 0.531917117 0.0181495454 #> 19 -1.333883243 0.541215913 0.0184393449 #> 20 -1.436117763 0.546144408 0.0186104926 #> 21 -1.537362702 0.547185650 0.0186497493 #> 22 -1.637787764 0.544770962 0.0185448973 #> 23 -1.737525805 0.539287723 0.0182848126 #> 24 -1.836679954 0.531085385 0.0178595139 #> 25 -1.935329266 0.520480216 0.0172601925 #> 26 -2.033533263 0.507759100 0.0164792220 #> 27 -2.131335592 0.493182655 0.0155101530 #> 28 -2.228767013 0.476987816 0.0143476919 #> 29 -2.325847849 0.459390036 0.0129876676 #> 30 -2.422589998 0.440585182 0.0114269877 #> 31 -2.518998603 0.420751193 0.0096635860 #> 32 -2.615073425 0.400049565 0.0076963639 #> 33 -2.710810000 0.378626673 0.0055251263 #> 34 -2.806200581 0.356614982 0.0031505147 #> 35 -2.901234940 0.334134152 0.0005739382 #> 36 -2.995901017 0.311292055 -0.0022024960 #> 37 -3.090185467 0.288185720 -0.0051760516 #> 38 -3.184074111 0.264902202 -0.0083434311 #> 39 -3.277552304 0.241519400 -0.0117008417 #> 40 -3.370605236 0.218106810 -0.0152440579 #> 41 -3.463218177 0.194726229 -0.0189684823 #> 42 -3.555376677 0.171432411 -0.0228692014 #> 43 -3.647066718 0.148273673 -0.0269410395 #> 44 -3.738274839 0.125292465 -0.0311786073 #> 45 -3.828988227 0.102525891 -0.0355763478 #> 46 -3.919194789 0.080006197 -0.0401285781 #> 47 -4.008883199 0.057761220 -0.0448295271 #> 48 -4.098042931 0.035814802 -0.0496733702 #> 49 -4.186664276 0.014187176 -0.0546542601 #> 50 -4.274738350 -0.007104684 -0.0597663547 #> 51 -4.362257091 -0.028046739 -0.0650038410 #> 52 -4.449213248 -0.048627585 -0.0703609577 #> 53 -4.535600366 -0.068838184 -0.0758320130 #> 54 -4.621412763 -0.088671614 -0.0814114015 #> 55 -4.706645505 -0.108122840 -0.0870936184 #> 56 -4.791294380 -0.127188508 -0.0928732707 #> 57 -4.875355868 -0.145866755 -0.0987450876 #> 58 -4.958827105 -0.164157039 -0.1047039284 #> 59 -5.041705859 -0.182059980 -0.1107447891 #> 60 -5.123990491 -0.199577223 -0.1168628074 #> 61 -5.205679923 -0.216711307 -0.1230532668 #> 62 -5.286773611 -0.233465550 -0.1293115988 #> 63 -5.367271506 -0.249843943 -0.1356333846 #> 64 -5.447174028 -0.265851061 -0.1420143563 #> 65 -5.526482033 -0.281491973 -0.1484503963 #> 66 -5.605196787 -0.296772169 -0.1549375368 #> 67 -5.683319932 -0.311697491 -0.1614719584 #> 68 -5.760853464 -0.326274073 -0.1680499885 #> 69 -5.837799706 -0.340508283 -0.1746680988 #> 70 -5.914161282 -0.354406680 -0.1813229026 #> 71 -5.989941093 -0.367975967 -0.1880111521 #> 72 -6.065142296 -0.381222952 -0.1947297352 #> 73 -6.139768282 -0.394154517 -0.2014756717 #> 74 -6.213822655 -0.406777586 -0.2082461105 #> 75 -6.287309215 -0.419099097 -0.2150383254 #> 76 -6.360231938 -0.431125983 -0.2218497115 #> 77 -6.432594959 -0.442865149 -0.2286777813 #> 78 -6.504402560 -0.454323453 -0.2355201612 #> 79 -6.575659147 -0.465507693 -0.2423745875 #> 80 -6.646369247 -0.476424593 -0.2492389023 #> 81 -6.716537483 -0.487080791 -0.2561110501 #> 82 -6.786168572 -0.497482830 -0.2629890742 #> 83 -6.855267306 -0.507637151 -0.2698711122 #> 84 -6.923838547 -0.517550083 -0.2767553934 #> 85 -6.991887212 -0.527227840 -0.2836402345 #> 86 -7.059418267 -0.536676516 -0.2905240366 #> 87 -7.126436719 -0.545902081 -0.2974052813 #> 88 -7.192947604 -0.554910380 -0.3042825282 #> 89 -7.258955983 -0.563707126 -0.3111544109 #> 90 -7.324466935 -0.572297907 -0.3180196342 #> 91 -7.389485548 -0.580688177 -0.3248769714 #> 92 -7.454016916 -0.588883261 -0.3317252608 #> 93 -7.518066132 -0.596888352 -0.3385634034 #> 94 -7.581638284 -0.604708517 -0.3453903600 #> 95 -7.644738447 -0.612348689 -0.3522051484 #> 96 -7.707371685 -0.619813679 -0.3590068413 #> 97 -7.769543041 -0.627108167 -0.3657945633 #> 98 -7.831257537 -0.634236713 -0.3725674892 #> 99 -7.892520171 -0.641203751 -0.3793248413 #> 100 -7.953335909 -0.648013598 -0.3860658874 model <- function(){ model({ fx <- llikF(time, df1, df2) dMean <- llikFDdf1(time, df1, df2) dSd <- llikFDdf2(time, df1, df2) }) } et <- et(x) et$df1 <- 1 et$df2 <- 5 rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 100 × 6 #> time fx dMean dSd df1 df2 #> #> 1 0.001 2.48 -2.32 0.00983 1 5 #> 2 0.0515 0.484 -0.380 0.0108 1 5 #> 3 0.102 0.112 -0.0731 0.0117 1 5 #> 4 0.152 -0.118 0.0943 0.0125 1 5 #> 5 0.203 -0.291 0.204 0.0133 1 5 #> 6 0.253 -0.431 0.283 0.0140 1 5 #> # ℹ 94 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Gamma distribution — llikGamma","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"log likelihood derivatives Gamma distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"","code":"llikGamma(x, shape, rate, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"x variable distributed gamma distribution shape distribution's shape parameter. Must positive. rate distribution's rate parameters. Must positive. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"rxode2() model, can use llikGamma() use x rate arguments. can also get derivative shape rate llikGammaDshape() llikGammaDrate().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"","code":"# \\donttest{ llikGamma(1, 1, 10) #> fx dShape dRate #> 1 -7.697415 2.879801 -0.9 # You can use this in `rxode2` too: et <- et(seq(0.001, 1, length.out=10)) et$shape <- 1 et$rate <- 10 model <- function() { model({ fx <- llikGamma(time, shape, rate) dShape<- llikGammaDshape(time, shape, rate) dRate <- llikGammaDrate(time, shape, rate) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dShape dRate rate shape #> #> 1 0.001 2.29 -4.03 0.099 10 1 #> 2 0.112 1.18 0.691 -0.012 10 1 #> 3 0.223 0.0726 1.38 -0.123 10 1 #> 4 0.334 -1.04 1.78 -0.234 10 1 #> 5 0.445 -2.15 2.07 -0.345 10 1 #> 6 0.556 -3.26 2.29 -0.456 10 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Geom distribution — llikGeom","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"log likelihood derivatives Geom distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"","code":"llikGeom(x, prob, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"x variable distributed geom distribution prob probability success trial. 0 < prob <= 1. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"rxode2() model, can use llikGeom() use x rate arguments. can also get derivative prob llikGeomDprob().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"","code":"# \\donttest{ llikGeom(1:10, 0.2) #> fx dProb #> 1 -1.832581 3.75 #> 2 -2.055725 2.50 #> 3 -2.278869 1.25 #> 4 -2.502012 0.00 #> 5 -2.725156 -1.25 #> 6 -2.948299 -2.50 #> 7 -3.171443 -3.75 #> 8 -3.394586 -5.00 #> 9 -3.617730 -6.25 #> 10 -3.840873 -7.50 et <- et(1:10) et$prob <- 0.2 model <- function() { model({ fx <- llikGeom(time, prob) dProb <- llikGeomDprob(time, prob) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time fx dProb prob #> #> 1 1 -1.83 3.75 0.2 #> 2 2 -2.06 2.5 0.2 #> 3 3 -2.28 1.25 0.2 #> 4 4 -2.50 0 0.2 #> 5 5 -2.73 -1.25 0.2 #> 6 6 -2.95 -2.5 0.2 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"Calculate log likelihood negative binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"","code":"llikNbinom(x, size, prob, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"x Number successes size Size trial prob probability success full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"data frame fx pdf value dProb derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"rxode2() model, can use llikNbinom() use arguments. can also get derivative prob llikNbinomDprob()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"","code":"# \\donttest{ llikNbinom(46:54, 100, 0.5) #> fx dProb #> 1 -13.25200 108 #> 2 -12.81168 106 #> 3 -12.38560 104 #> 4 -11.97335 102 #> 5 -11.57458 100 #> 6 -11.18892 98 #> 7 -10.81603 96 #> 8 -10.45559 94 #> 9 -10.10728 92 llikNbinom(46:54, 100, 0.5, TRUE) #> x size prob fx dProb #> 1 46 100 0.5 -13.25200 108 #> 2 47 100 0.5 -12.81168 106 #> 3 48 100 0.5 -12.38560 104 #> 4 49 100 0.5 -11.97335 102 #> 5 50 100 0.5 -11.57458 100 #> 6 51 100 0.5 -11.18892 98 #> 7 52 100 0.5 -10.81603 96 #> 8 53 100 0.5 -10.45559 94 #> 9 54 100 0.5 -10.10728 92 # In rxode2 you can use: et <- et(46:54) et$size <- 100 et$prob <-0.5 model <- function() { model({ fx <- llikNbinom(time, size, prob) dProb <- llikNbinomDprob(time, size, prob) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 9 × 5 #> time fx dProb size prob #> #> 1 46 -13.3 108 100 0.5 #> 2 47 -12.8 106 100 0.5 #> 3 48 -12.4 104 100 0.5 #> 4 49 -12.0 102 100 0.5 #> 5 50 -11.6 100 100 0.5 #> 6 51 -11.2 98 100 0.5 #> # ℹ 3 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"Calculate log likelihood negative binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"","code":"llikNbinomMu(x, size, mu, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"x Number successes size Size trial mu mu parameter negative binomial full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"data frame fx pdf value dProb derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"rxode2() model, can use llikNbinomMu() use arguments. can also get derivative mu llikNbinomMuDmu()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"","code":"# \\donttest{ llikNbinomMu(46:54, 100, 40) #> fx dMu #> 1 -3.326828 0.1071429 #> 2 -3.446132 0.1250000 #> 3 -3.579663 0.1428571 #> 4 -3.727034 0.1607143 #> 5 -3.887874 0.1785714 #> 6 -4.061827 0.1964286 #> 7 -4.248554 0.2142857 #> 8 -4.447728 0.2321429 #> 9 -4.659037 0.2500000 llikNbinomMu(46:54, 100, 40, TRUE) #> x size mu fx dMu #> 1 46 100 40 -3.326828 0.1071429 #> 2 47 100 40 -3.446132 0.1250000 #> 3 48 100 40 -3.579663 0.1428571 #> 4 49 100 40 -3.727034 0.1607143 #> 5 50 100 40 -3.887874 0.1785714 #> 6 51 100 40 -4.061827 0.1964286 #> 7 52 100 40 -4.248554 0.2142857 #> 8 53 100 40 -4.447728 0.2321429 #> 9 54 100 40 -4.659037 0.2500000 et <- et(46:54) et$size <- 100 et$mu <- 40 model <- function() { model({ fx <- llikNbinomMu(time, size, mu) dProb <- llikNbinomMuDmu(time, size, mu) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 9 × 5 #> time fx dProb size mu #> #> 1 46 -3.33 0.107 100 40 #> 2 47 -3.45 0.125 100 40 #> 3 48 -3.58 0.143 100 40 #> 4 49 -3.73 0.161 100 40 #> 5 50 -3.89 0.179 100 40 #> 6 51 -4.06 0.196 100 40 #> # ℹ 3 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":null,"dir":"Reference","previous_headings":"","what":"Log likelihood for normal distribution — llikNorm","title":"Log likelihood for normal distribution — llikNorm","text":"Log likelihood normal distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Log likelihood for normal distribution — llikNorm","text":"","code":"llikNorm(x, mean = 0, sd = 1, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Log likelihood for normal distribution — llikNorm","text":"x Observation mean Mean likelihood sd Standard deviation likelihood full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Log likelihood for normal distribution — llikNorm","text":"data frame fx pdf value dMean dSd derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Log likelihood for normal distribution — llikNorm","text":"rxode2() model, can use llikNorm() use arguments. can also get derivatives llikNormDmean() llikNormDsd()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Log likelihood for normal distribution — llikNorm","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Log likelihood for normal distribution — llikNorm","text":"","code":"# \\donttest{ llikNorm(0) #> fx dMean dSd #> 1 -0.9189385 0 -1 llikNorm(seq(-2,2,length.out=10), full=TRUE) #> x mean sd fx dMean dSd #> 1 -2.0000000 0 1 -2.9189385 -2.0000000 3.0000000 #> 2 -1.5555556 0 1 -2.1288151 -1.5555556 1.4197531 #> 3 -1.1111111 0 1 -1.5362225 -1.1111111 0.2345679 #> 4 -0.6666667 0 1 -1.1411608 -0.6666667 -0.5555556 #> 5 -0.2222222 0 1 -0.9436299 -0.2222222 -0.9506173 #> 6 0.2222222 0 1 -0.9436299 0.2222222 -0.9506173 #> 7 0.6666667 0 1 -1.1411608 0.6666667 -0.5555556 #> 8 1.1111111 0 1 -1.5362225 1.1111111 0.2345679 #> 9 1.5555556 0 1 -2.1288151 1.5555556 1.4197531 #> 10 2.0000000 0 1 -2.9189385 2.0000000 3.0000000 # With rxode2 you can use: et <- et(-3, 3, length.out=10) et$mu <- 0 et$sigma <- 1 model <- function(){ model({ fx <- llikNorm(time, mu, sigma) dMean <- llikNormDmean(time, mu, sigma) dSd <- llikNormDsd(time, mu, sigma) }) } ret <- rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ret #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dMean dSd mu sigma #> #> 1 -3 -5.42 -3 8 0 1 #> 2 -2.33 -3.64 -2.33 4.44 0 1 #> 3 -1.67 -2.31 -1.67 1.78 0 1 #> 4 -1 -1.42 -1 0 0 1 #> 5 -0.333 -0.974 -0.333 -0.889 0 1 #> 6 0.333 -0.974 0.333 -0.889 0 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":null,"dir":"Reference","previous_headings":"","what":"log-likelihood for the Poisson distribution — llikPois","title":"log-likelihood for the Poisson distribution — llikPois","text":"log-likelihood Poisson distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log-likelihood for the Poisson distribution — llikPois","text":"","code":"llikPois(x, lambda, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log-likelihood for the Poisson distribution — llikPois","text":"x non negative integers lambda non-negative means full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log-likelihood for the Poisson distribution — llikPois","text":"data frame fx pdf value dLambda derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log-likelihood for the Poisson distribution — llikPois","text":"rxode2() model, can use llikPois() use arguments. can also get derivatives llikPoisDlambda()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log-likelihood for the Poisson distribution — llikPois","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log-likelihood for the Poisson distribution — llikPois","text":"","code":"# \\donttest{ llikPois(0:7, lambda = 1) #> fx dLambda #> 1 -1.000000 -1 #> 2 -1.000000 0 #> 3 -1.693147 1 #> 4 -2.791759 2 #> 5 -4.178054 3 #> 6 -5.787492 4 #> 7 -7.579251 5 #> 8 -9.525161 6 llikPois(0:7, lambda = 4, full=TRUE) #> x lambda fx dLambda #> 1 0 4 -4.000000 -1.00 #> 2 1 4 -2.613706 -0.75 #> 3 2 4 -1.920558 -0.50 #> 4 3 4 -1.632876 -0.25 #> 5 4 4 -1.632876 0.00 #> 6 5 4 -1.856020 0.25 #> 7 6 4 -2.261485 0.50 #> 8 7 4 -2.821101 0.75 # In rxode2 you can use: et <- et(0:10) et$lambda <- 0.5 model <- function() { model({ fx <- llikPois(time, lambda) dLambda <- llikPoisDlambda(time, lambda) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 11 × 4 #> time fx dLambda lambda #> #> 1 0 -0.5 -1 0.5 #> 2 1 -1.19 1 0.5 #> 3 2 -2.58 3 0.5 #> 4 3 -4.37 5 0.5 #> 5 4 -6.45 7 0.5 #> 6 5 -8.75 9 0.5 #> # ℹ 5 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":null,"dir":"Reference","previous_headings":"","what":"Log likelihood of T and it's derivatives (from stan) — llikT","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"Log likelihood T derivatives (stan)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"","code":"llikT(x, df, mean = 0, sd = 1, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"x Observation df degrees freedom (\\(> 0\\), maybe non-integer). df = Inf allowed. mean Mean likelihood sd Standard deviation likelihood full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"data frame fx log pdf value dDf dMean dSd derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"rxode2() model, can use llikT() use arguments. can also get derivative df, mean sd llikTDdf(), llikTDmean() llikTDsd().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"","code":"# \\donttest{ x <- seq(-3, 3, length.out = 21) llikT(x, 7, 0, 1) #> fx dDf dMean dSd #> 1 -4.2612484 -0.086858773 -1.5000000 3.5000000 #> 2 -3.8091335 -0.060260433 -1.5115465 3.0811756 #> 3 -3.3561547 -0.037201674 -1.5047022 2.6112853 #> 4 -2.9088542 -0.018379169 -1.4723926 2.0920245 #> 5 -2.4761000 -0.004340221 -1.4062500 1.5312500 #> 6 -2.0693878 0.004691380 -1.2972973 0.9459459 #> 7 -1.7028228 0.009010785 -1.1374408 0.3649289 #> 8 -1.3925134 0.009569214 -0.9218950 -0.1702945 #> 9 -1.1551333 0.007927361 -0.6521739 -0.6086957 #> 10 -1.0056349 0.005918024 -0.3385049 -0.8984485 #> 11 -0.9545342 0.005051942 0.0000000 -1.0000000 #> 12 -1.0056349 0.005918024 0.3385049 -0.8984485 #> 13 -1.1551333 0.007927361 0.6521739 -0.6086957 #> 14 -1.3925134 0.009569214 0.9218950 -0.1702945 #> 15 -1.7028228 0.009010785 1.1374408 0.3649289 #> 16 -2.0693878 0.004691380 1.2972973 0.9459459 #> 17 -2.4761000 -0.004340221 1.4062500 1.5312500 #> 18 -2.9088542 -0.018379169 1.4723926 2.0920245 #> 19 -3.3561547 -0.037201674 1.5047022 2.6112853 #> 20 -3.8091335 -0.060260433 1.5115465 3.0811756 #> 21 -4.2612484 -0.086858773 1.5000000 3.5000000 llikT(x, 15, 0, 1, full=TRUE) #> fx dDf dMean dSd #> 1 -4.6956220 -0.0338931511 -2.0000000 5.0000000 #> 2 -4.1042965 -0.0225073150 -1.9380888 4.2328398 #> 3 -3.5354158 -0.0134033865 -1.8497110 3.4393064 #> 4 -2.9974985 -0.0065857823 -1.7310665 2.6352396 #> 5 -2.5001272 -0.0019378861 -1.5789474 1.8421053 #> 6 -2.0536885 0.0007929097 -1.3913043 1.0869565 #> 7 -1.6689304 0.0019903977 -1.1678832 0.4014599 #> 8 -1.3563325 0.0021369166 -0.9108159 -0.1802657 #> 9 -1.1253251 0.0017504002 -0.6250000 -0.6250000 #> 10 -0.9834495 0.0012985422 -0.3180915 -0.9045726 #> 11 -0.9355929 0.0011086635 0.0000000 -1.0000000 #> 12 -0.9834495 0.0012985422 0.3180915 -0.9045726 #> 13 -1.1253251 0.0017504002 0.6250000 -0.6250000 #> 14 -1.3563325 0.0021369166 0.9108159 -0.1802657 #> 15 -1.6689304 0.0019903977 1.1678832 0.4014599 #> 16 -2.0536885 0.0007929097 1.3913043 1.0869565 #> 17 -2.5001272 -0.0019378861 1.5789474 1.8421053 #> 18 -2.9974985 -0.0065857823 1.7310665 2.6352396 #> 19 -3.5354158 -0.0134033865 1.8497110 3.4393064 #> 20 -4.1042965 -0.0225073150 1.9380888 4.2328398 #> 21 -4.6956220 -0.0338931511 2.0000000 5.0000000 et <- et(-3, 3, length.out=10) et$nu <- 7 et$mean <- 0 et$sd <- 1 model <- function() { model({ fx <- llikT(time, nu, mean, sd) dDf <- llikTDdf(time, nu, mean, sd) dMean <- llikTDmean(time, nu, mean, sd) dSd <- llikTDsd(time, nu, mean, sd) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 8 #> time fx dDf dMean dSd nu mean sd #> #> 1 -3 -4.26 -0.0869 -1.5 3.5 7 0 1 #> 2 -2.33 -3.26 -0.0326 -1.5 2.5 7 0 1 #> 3 -1.67 -2.29 0.000289 -1.36 1.27 7 0 1 #> 4 -1 -1.49 0.00971 -1 0 7 0 1 #> 5 -0.333 -1.02 0.00611 -0.375 -0.875 7 0 1 #> 6 0.333 -1.02 0.00611 0.375 -0.875 7 0 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Unif distribution — llikUnif","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"log likelihood derivatives Unif distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"","code":"llikUnif(x, alpha, beta, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"x variable distributed uniform distribution alpha lower limit uniform distribution beta upper limit distribution full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"rxode2() model, can use llikUnif() use x rate arguments. can also get derivative alpha beta llikUnifDalpha() llikUnifDbeta().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"","code":"# \\donttest{ llikUnif(1, -2, 2) #> fx dAlpha dBeta #> 1 -1.386294 0.25 -0.25 et <- et(seq(1,1, length.out=4)) et$alpha <- -2 et$beta <- 2 model <- function() { model({ fx <- llikUnif(time, alpha, beta) dAlpha<- llikUnifDalpha(time, alpha, beta) dBeta <- llikUnifDbeta(time, alpha, beta) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 4 × 6 #> time fx dAlpha dBeta alpha beta #> #> 1 1 -1.39 0.25 -0.25 -2 2 #> 2 1 -1.39 0.25 -0.25 -2 2 #> 3 1 -1.39 0.25 -0.25 -2 2 #> 4 1 -1.39 0.25 -0.25 -2 2 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Weibull distribution — llikWeibull","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"log likelihood derivatives Weibull distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"","code":"llikWeibull(x, shape, scale, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"x variable distributed Weibull distribution shape, scale shape scale parameters, latter defaulting 1. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"rxode2() model, can use llikWeibull() use x rate arguments. can also get derivative shape scale llikWeibullDshape() llikWeibullDscale().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"","code":"# \\donttest{ llikWeibull(1, 1, 10) #> fx dShape dScale #> 1 -2.402585 -1.072327 -0.09 # rxode2 can use this too: et <- et(seq(0.001, 1, length.out=10)) et$shape <- 1 et$scale <- 10 model <- function() { model({ fx <- llikWeibull(time, shape, scale) dShape<- llikWeibullDshape(time, shape, scale) dScale <- llikWeibullDscale(time, shape, scale) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dShape dScale shape scale #> #> 1 0.001 -2.30 -8.21 -0.100 1 10 #> 2 0.112 -2.31 -3.44 -0.0989 1 10 #> 3 0.223 -2.32 -2.72 -0.0978 1 10 #> 4 0.334 -2.34 -2.29 -0.0967 1 10 #> 5 0.445 -2.35 -1.97 -0.0956 1 10 #> 6 0.556 -2.36 -1.73 -0.0944 1 10 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":null,"dir":"Reference","previous_headings":"","what":"logit and inverse logit (expit) functions — logit","title":"logit and inverse logit (expit) functions — logit","text":"logit inverse logit (expit) functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"logit and inverse logit (expit) functions — logit","text":"","code":"logit(x, low = 0, high = 1) expit(alpha, low = 0, high = 1) logitNormInfo(mean = 0, sd = 1, low = 0, high = 1, abs.tol = 1e-06, ...) probitNormInfo(mean = 0, sd = 1, low = 0, high = 1, abs.tol = 1e-06, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"logit and inverse logit (expit) functions — logit","text":"x Input value(s) range [low,high] translate -Inf Inf low Lowest value range high Highest value range alpha Infinite value(s) translate range [low, high] mean logit-scale mean sd logit-scale standard deviation abs.tol absolute accuracy requested. ... parameters passed integrate()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"logit and inverse logit (expit) functions — logit","text":"values logit expit","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"logit and inverse logit (expit) functions — logit","text":"logit given : logit(p) = -log(1/p-1) : p = x-low/high-low expit given : expit(p, low, high) = (high-low)/(1+exp(-alpha)) + low logitNormInfo() gives mean, variance coefficient variability untransformed scale.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"logit and inverse logit (expit) functions — logit","text":"","code":"logit(0.25) #> [1] -1.098612 expit(-1.09) #> [1] 0.2516183 logitNormInfo(logit(0.25), sd = 0.1) #> mean var cv #> 0.2504672899 0.0003515538 0.0748591440 logitNormInfo(logit(1, 0, 10), sd = 1, low = 0, high = 10) #> mean var cv #> 1.3386966 1.2662276 0.8405697"},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":null,"dir":"Reference","previous_headings":"","what":"lowergamma: upper incomplete gamma function — lowergamma","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"tgamma_lower boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"","code":"lowergamma(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"numeric '' parameter upper incomplete gamma z numeric 'z' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"lowergamma results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"lowergamma function given : $$lowergamma(, z) = \\int_{0}^{z}t^{-1}\\cdot e^{-t} dt$$","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"","code":"lowergamma(1, 3) #> [1] 0.9502129 lowergamma(1:3, 3) #> [1] 0.9502129 0.8008517 1.1536198 lowergamma(1, 1:3) #> [1] 0.6321206 0.8646647 0.9502129"},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"generic function meanProbs produces expected confidence bands either t distribution normal sampling distribution. uses qnorm() qt() mean standard deviation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"","code":"meanProbs(x, ...) # S3 method for default meanProbs( x, probs = seq(0, 1, 0.25), na.rm = FALSE, names = TRUE, useT = TRUE, onlyProbs = TRUE, pred = FALSE, n = 0L, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"x numeric vector whose mean probability based confidence values wanted, NA NaN values allowed numeric vectors unless ‘na.rm’ ‘TRUE’. ... Arguments passed default method, allows many different methods applied. probs numeric vector probabilities values interval 0 1 . na.rm logical; true, NA NaN's removed x quantiles computed. names logical; true, result names attribute. useT logical; true, use t-distribution calculate confidence-based estimates. false use normal distribution calculate confidence based estimates. onlyProbs logical; true, return probability based confidence interval estimates, otherwise return pred logical; true use prediction interval instead confidence interval n integer/integerish; n used calculate prediction confidence interval. n=0 (default) use number non-NA observations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"default return probabilities names (named) points expected distribution located given sampling mean standard deviation. onlyProbs=FALSE prepend mean, variance, standard deviation, minimum, maximum number non-NA observations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"single probability, p, uses either: mean + qt(p, df=n)*sd/sqrt(n) mean + qnorm(p)*sd/sqrt(n) smallest observation corresponds probability 0 largest probability 1 mean corresponds 0.5. mean standard deviation sample calculated based Welford's method single pass. meant perform way quantile() can drop replacement code using quantile() using distributional assumptions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"","code":"quantile(x<- rnorm(1001)) #> 0% 25% 50% 75% 100% #> -3.66081708 -0.70662935 0.04051239 0.68069607 3.03578322 meanProbs(x) #> 0% 25% 50% 75% 100% #> -3.660817079 -0.038037712 -0.016742502 0.004552709 3.035783219 # Can get some extra statistics if you request onlyProbs=FALSE meanProbs(x, onlyProbs=FALSE) #> mean var sd min max #> -1.674250e-02 9.970829e-01 9.985404e-01 -3.660817e+00 3.035783e+00 #> n 0% 25% 50% 75% #> 1.001000e+03 -3.660817e+00 -3.803771e-02 -1.674250e-02 4.552709e-03 #> 100% #> 3.035783e+00 x[2] <- NA_real_ meanProbs(x, onlyProbs=FALSE) #> mean var sd min max n 0% 25% 50% 75% 100% #> NA NA NA NA NA NA NA NA NA NA NA quantile(x<- rnorm(42)) #> 0% 25% 50% 75% 100% #> -1.6269261 -0.9776975 -0.2483610 0.6196909 2.5541653 meanProbs(x) #> 0% 25% 50% 75% 100% #> -1.62692608 -0.16714488 -0.05481415 0.05751658 2.55416531 meanProbs(x, useT=FALSE) #> 0% 25% 50% 75% 100% #> -1.62692608 -0.16614937 -0.05481415 0.05652107 2.55416531"},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign the model block in the rxode2 related object — model<-","title":"Assign the model block in the rxode2 related object — model<-","text":"Assign model block rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign the model block in the rxode2 related object — model<-","text":"","code":"model(x, envir = environment(x)) <- value"},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign the model block in the rxode2 related object — model<-","text":"x rxode2 related object envir Environment assignment occurs value Value object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign the model block in the rxode2 related object — model<-","text":"rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign the model block in the rxode2 related object — model<-","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":null,"dir":"Reference","previous_headings":"","what":"Model block for rxode2/nlmixr models — model.function","title":"Model block for rxode2/nlmixr models — model.function","text":"Model block rxode2/nlmixr models","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Model block for rxode2/nlmixr models — model.function","text":"","code":"# S3 method for `function` model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) # S3 method for rxUi model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) # S3 method for rxode2 model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) # S3 method for rxModelVars model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) model( x, ..., append = FALSE, auto = getOption(\"rxode2.autoVarPiping\", TRUE), cov = NULL, envir = parent.frame() ) # S3 method for default model(x, ..., append = FALSE, cov = NULL, envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Model block for rxode2/nlmixr models — model.function","text":"x model expression ... arguments append boolean determine lines appended piping. possible values : TRUE lines appended model instead replaced FALSE lines replaced model (default) NA lines pre-pended model instead replaced lhs expression, append lines last observed line expression lhs auto boolean tells piping automatically selects parameters characterized population parameter, subject variability, covariate. TRUE automatic selection occurs. FALSE automatic selection turned everything added covariate (can promoted parameter ini statement). default TRUE, can changed options(rxode2.autoVarPiping=FALSE). cov character vector variables assumed covariates. override automatic promotion population parameter estimate (eta) envir environment unevaluated model expressions evaluated. May also NULL, list, data frame, pairlist integer specified sys.call.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Model block for rxode2/nlmixr models — model.function","text":"Model block ini information included. ini must called model block","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Model block for rxode2/nlmixr models — model.function","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract model lines from a rxui model — modelExtract","title":"Extract model lines from a rxui model — modelExtract","text":"Extract model lines rxui model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract model lines from a rxui model — modelExtract","text":"","code":"modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for `function` modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for rxUi modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for rxode2 modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for rxModelVars modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for default modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract model lines from a rxui model — modelExtract","text":"x model extract lines ... variables extract. missing, extract entire model (conditioned endpoint option ) expression return expressions (TRUE) strings (FALSE) endpoint include endpoint. can : NA -- Missing means include endpoint non-endpoint lines TRUE -- include endpoint lines FALSE -- include non-endpoint lines lines boolean. TRUE add lines attribute output value ie attr(, \"lines\") envir Environment evaluating variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract model lines from a rxui model — modelExtract","text":"expressions strings extracted lines. Note duplicated lhs expression line, return lines","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Extract model lines from a rxui model — modelExtract","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Extract model lines from a rxui model — modelExtract","text":"","code":"one.compartment <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V 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) d/dt(depot) <- -ka * depot d/dt(center) <- ka * depot - cl / v * center cp <- center / v cp ~ add(add.sd) }) } f <- one.compartment() modelExtract(f, cp) #> [1] \"cp <- center/v\" modelExtract(one.compartment, d/dt(depot)) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> [1] \"d/dt(depot) <- -ka * depot\" # from variable var <- \"d/dt(depot)\" modelExtract(one.compartment, var) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> [1] \"d/dt(depot) <- -ka * depot\" modelExtract(f, endpoint=NA, lines=TRUE, expression=TRUE) #> [[1]] #> ka <- exp(tka + eta.ka) #> #> [[2]] #> cl <- exp(tcl + eta.cl) #> #> [[3]] #> v <- exp(tv + eta.v) #> #> [[4]] #> d/dt(depot) <- -ka * depot #> #> [[5]] #> d/dt(center) <- ka * depot - cl/v * center #> #> [[6]] #> cp <- center/v #> #> [[7]] #> cp ~ add(add.sd) #> #> attr(,\"lines\") #> [1] 1 2 3 4 5 6 7"},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":null,"dir":"Reference","previous_headings":"","what":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"NULL given method, choices returned named vector.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"","code":"odeMethodToInt(method = c(\"liblsoda\", \"lsoda\", \"dop853\", \"indLin\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"method method solving ODEs. Currently supports: \"liblsoda\" thread safe lsoda. supports parallel thread-based solving, ignores user Jacobian specification. \"lsoda\" -- LSODA solver. support parallel thread-based solving, allows user Jacobian specification. \"dop853\" -- DOP853 solver. support parallel thread-based solving user Jacobian specification \"indLin\" -- Solving inductive linearization. rxode2 dll must setup specially use solving routine.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"integer method (unless input NULL, case, see details)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot rxode2 objects — plot.rxSolve","title":"Plot rxode2 objects — plot.rxSolve","text":"Plot rxode2 objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot rxode2 objects — plot.rxSolve","text":"","code":"# S3 method for rxSolve plot(x, y, ..., log = \"\", xlab = \"Time\", ylab = \"\") # S3 method for rxSolveConfint1 plot(x, y, ..., xlab = \"Time\", ylab = \"\", log = \"\") # S3 method for rxSolveConfint2 plot(x, y, ..., xlab = \"Time\", ylab = \"\", log = \"\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot rxode2 objects — plot.rxSolve","text":"x rxode2 object plot y Compartments left-hand-side values plot either bare name character vector ... Ignored log \"\" (neither x y), \"x\", \"y\", \"xy\" (\"yx\") log-scale? xlab, ylab x y axis labels","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot rxode2 objects — plot.rxSolve","text":"ggplot2 object","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Update Solved object with '+' — +.rxSolve","title":"Update Solved object with '+' — +.rxSolve","text":"Update Solved object '+'","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Update Solved object with '+' — +.rxSolve","text":"","code":"# S3 method for rxSolve +(solved, new)"},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Update Solved object with '+' — +.rxSolve","text":"solved Solved object new New information added table.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Update Solved object with '+' — +.rxSolve","text":"new solved object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Update Solved object with '+' — +.rxSolve","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":null,"dir":"Reference","previous_headings":"","what":"Print the rxCoef object — print.rxCoef","title":"Print the rxCoef object — print.rxCoef","text":"prints user supplied arguments rxCoef object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print the rxCoef object — print.rxCoef","text":"","code":"# S3 method for rxCoef print(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print the rxCoef object — print.rxCoef","text":"x rxCoef object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print the rxCoef object — print.rxCoef","text":"original object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print the rxCoef object — print.rxCoef","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":null,"dir":"Reference","previous_headings":"","what":"Print rxDll object — print.rxDll","title":"Print rxDll object — print.rxDll","text":"tells rxDll loaded, ready /deleted.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print rxDll object — print.rxDll","text":"","code":"# S3 method for rxDll print(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print rxDll object — print.rxDll","text":"original object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print rxDll object — print.rxDll","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Print information about the rxode2 object. — print.rxode2","title":"Print information about the rxode2 object. — print.rxode2","text":"prints model name status able solved","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print information about the rxode2 object. — print.rxode2","text":"","code":"# S3 method for rxode2 print(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print information about the rxode2 object. — print.rxode2","text":"x rxode2 object ... Ignored parameters","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print information about the rxode2 object. — print.rxode2","text":"original object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print information about the rxode2 object. — print.rxode2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":null,"dir":"Reference","previous_headings":"","what":"probit and inverse probit functions — probit","title":"probit and inverse probit functions — probit","text":"probit inverse probit functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"probit and inverse probit functions — probit","text":"","code":"probit(x, low = 0, high = 1) probitInv(x, low = 0, high = 1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"probit and inverse probit functions — probit","text":"x Input value(s) range [low,high] translate -Inf Inf low Lowest value range high Highest value range","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"probit and inverse probit functions — probit","text":"values probit, probitInv probitNormInfo","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"probit and inverse probit functions — probit","text":"","code":"probit(0.25) #> [1] -0.6744898 probitInv(-0.674) #> [1] 0.2501557 probitNormInfo(probit(0.25), sd = 0.1) #> mean var cv #> 0.25106491 0.00100658 0.12636827 probitNormInfo(probit(1, 0, 10), sd = 1, low = 0, high = 10) #> mean var cv #> 1.824166 4.307824 1.137796"},{"path":"https://nlmixr2.github.io/rxode2/reference/reexports.html","id":null,"dir":"Reference","previous_headings":"","what":"Objects exported from other packages — reexports","title":"Objects exported from other packages — reexports","text":"objects imported packages. Follow links see documentation. ggplot2 aes, expand_limits, facet_wrap, geom_line, ggplot, label_both, label_context, label_context, label_value, label_wrap_gen, scale_type, scale_x_continuous, scale_x_date, scale_x_discrete, scale_y_continuous, scale_y_date, scale_y_discrete, waiver, xlab, ylab lotri lotri magrittr %>% rxode2et .clearPipe, .collectWarnings, .s3register, add.dosing, add.sampling, .et, .rxEvid, .rxRateDur, et, etExpand, etRbind, etRep, etSeq, eventTable, rxCbindStudyIndividual, rxEtDispatchSolve, rxEvid, rxRateDur, rxReq, rxStack rxode2parse .getLastIdLvl, forderForceBase, rxDerived, rxSetIni0 rxode2random .cbindOme, .expandPars, .vecDf, cvPost, invWR1d, phi, rinvchisq, rLKJ1, rxGetSeed, rxGetSeed, rxRmvn, rxSeedEng, rxSetSeed, rxSetSeed, rxSetSeed, rxWithPreserveSeed, rxWithSeed, rxWithSeed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/reexports.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Objects exported from other packages — reexports","text":"Inherited parent routine","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":null,"dir":"Reference","previous_headings":"","what":"Allow unloading of dlls — rxAllowUnload","title":"Allow unloading of dlls — rxAllowUnload","text":"Allow unloading dlls","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Allow unloading of dlls — rxAllowUnload","text":"","code":"rxAllowUnload(allow)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Allow unloading of dlls — rxAllowUnload","text":"allow boolean indicating garbage collection unload rxode2 dlls.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Allow unloading of dlls — rxAllowUnload","text":"Boolean allow; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Allow unloading of dlls — rxAllowUnload","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Allow unloading of dlls — rxAllowUnload","text":"","code":"# Garbage collection will not unload un-used rxode2 dlls rxAllowUnload(FALSE); #> [1] FALSE # Garbage collection will unload unused rxode2 dlls rxAllowUnload(TRUE); #> [1] TRUE"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Append two rxui models together — rxAppendModel","title":"Append two rxui models together — rxAppendModel","text":"Append two rxui models together","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Append two rxui models together — rxAppendModel","text":"","code":"rxAppendModel(model1, model2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Append two rxui models together — rxAppendModel","text":"model1 rxUi model 1 model2 rxUi model 2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Append two rxui models together — rxAppendModel","text":"New model models appended together","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Append two rxui models together — rxAppendModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Append two rxui models together — rxAppendModel","text":"","code":"# \\donttest{ ocmt <- function() { ini({ tka <- exp(0.45) # Ka tcl <- exp(1) # Cl tv <- exp(3.45); # log V ## the label(\"Label name\") works with all models add.sd <- 0.7 }) model({ ka <- tka cl <- tcl v <- tv d/dt(depot) <- -ka * depot d/dt(center) <- ka * depot - cl / v * center cp <- center / v cp ~ add(add.sd) }) } idr <- function() { ini({ tkin <- log(1) tkout <- log(1) tic50 <- log(10) gamma <- fix(1) idr.sd <- 1 }) model({ kin <- exp(tkin) kout <- exp(tkout) ic50 <- exp(tic50) d/dt(eff) <- kin - kout*(1-ceff^gamma/(ic50^gamma+ceff^gamma)) eff ~ add(idr.sd) }) } rxAppendModel(ocmt %>% model(ceff=cp,append=TRUE), idr) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> #> #> ── rxode2-based free-form 3-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd tkin tkout tic50 gamma #> 1.568312 2.718282 31.500392 0.700000 0.000000 0.000000 2.302585 1.000000 #> idr.sd #> 1.000000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> 3 3 eff #> ── Multiple Endpoint Model ($multipleEndpoint): ── #> variable cmt dvid* #> 1 cp ~ … cmt='cp' or cmt=4 dvid='cp' or dvid=1 #> 2 eff ~ … cmt='eff' or cmt=3 dvid='eff' or dvid=2 #> * If dvids are outside this range, all dvids are re-numered sequentially, ie 1,7, 10 becomes 1,2,3 etc #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 1.56831218549017 #> label(\"Ka\") #> tcl <- 2.71828182845905 #> label(\"Cl\") #> tv <- 31.5003923087479 #> label(\"log V\") #> add.sd <- c(0, 0.7) #> tkin <- 0 #> tkout <- 0 #> tic50 <- 2.30258509299405 #> gamma <- fix(1) #> idr.sd <- c(0, 1) #> }) #> model({ #> ka <- tka #> cl <- tcl #> v <- tv #> d/dt(depot) <- -ka * depot #> d/dt(center) <- ka * depot - cl/v * center #> cp <- center/v #> cp ~ add(add.sd) #> ceff <- cp #> kin <- exp(tkin) #> kout <- exp(tkout) #> ic50 <- exp(tic50) #> d/dt(eff) <- kin - kout * (1 - ceff^gamma/(ic50^gamma + #> ceff^gamma)) #> eff ~ add(idr.sd) #> }) #> } # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign Control Variable — rxAssignControlValue","title":"Assign Control Variable — rxAssignControlValue","text":"Assign Control Variable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign Control Variable — rxAssignControlValue","text":"","code":"rxAssignControlValue(ui, option, value)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign Control Variable — rxAssignControlValue","text":"ui rxode2 ui function option Option name control modify value Value control modify","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign Control Variable — rxAssignControlValue","text":"Nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign Control Variable — rxAssignControlValue","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign pointer based on model variables — rxAssignPtr","title":"Assign pointer based on model variables — rxAssignPtr","text":"Assign pointer based model variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign pointer based on model variables — rxAssignPtr","text":"","code":"rxAssignPtr(object = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign pointer based on model variables — rxAssignPtr","text":"object rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign pointer based on model variables — rxAssignPtr","text":"nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":null,"dir":"Reference","previous_headings":"","what":"Creates a logical matrix for block matrixes. — rxBlockZeros","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"Creates logical matrix block matrixes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"","code":"rxBlockZeros(mat, i)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"mat Matrix Row/column block matrix setup.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"logical matrix returning elements zero.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the C file associated with the rxode2 object — rxC","title":"Return the C file associated with the rxode2 object — rxC","text":"return C code generating rxode2 DLL.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the C file associated with the rxode2 object — rxC","text":"","code":"rxC(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the C file associated with the rxode2 object — rxC","text":"obj rxode2 family objects character string model specification location file model specification.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the C file associated with the rxode2 object — rxC","text":"path library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the C file associated with the rxode2 object — rxC","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":null,"dir":"Reference","previous_headings":"","what":"Use cat when rxode2.verbose is TRUE — rxCat","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"Use cat rxode2.verbose TRUE","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"","code":"rxCat(a, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"... Parameters sent cat","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":null,"dir":"Reference","previous_headings":"","what":"rxChain Chain or add item to solved system of equations — rxChain","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"Add item solved system equations","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"","code":"rxChain(obj1, obj2) # S3 method for solveRxDll +(obj1, obj2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"obj1 Solved object. obj2 New object added/piped/chained solved object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"newObject event table, return new solved object new event table.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":null,"dir":"Reference","previous_headings":"","what":"Second command in chaining commands — rxChain2","title":"Second command in chaining commands — rxChain2","text":"s3 method called internally + \\%>\\% operators.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Second command in chaining commands — rxChain2","text":"","code":"rxChain2(obj, solvedObject) # S3 method for default rxChain2(obj, solvedObject) # S3 method for EventTable rxChain2(obj, solvedObject)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Second command in chaining commands — rxChain2","text":"obj object added/chained/piped solved object solvedObject solved object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Second command in chaining commands — rxChain2","text":"chained operation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Second command in chaining commands — rxChain2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":null,"dir":"Reference","previous_headings":"","what":"Cleanup anonymous DLLs by unloading them — rxClean","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"cleans rxode2 loaded DLLs","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"","code":"rxClean(wd)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"wd directory cleaned; (DEPRECIATED), longer anything. unloads rxode2 anonymous dlls.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"TRUE successful","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":null,"dir":"Reference","previous_headings":"","what":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"Combine Error Lines create rxode2 expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"","code":"rxCombineErrorLines( uiModel, errLines = NULL, prefixLines = NULL, paramsLine = NULL, modelVars = FALSE, cmtLines = TRUE, dvidLine = TRUE, lstExpr = NULL, useIf = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"uiModel UI model errLines Error lines; missing, get error lines rxGetDistributionSimulationLines() prefixLines Prefix lines, param statement paramsLine Params line, present. modelVars Return model vars instead rxode2 statement cmtLines Include trailing cmt lines dvidLine Include trailing dvid() specification lstExpr list expressions model, NULL. NULL defaults model expressions accessible uiModel$lstExpr. useIf Use (CMT == X) endpoints","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"quoted expression can evaluated compiled rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"exported allow functions mangle error lines make types estimation methods (needed)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"","code":"# \\donttest{ one.cmt <- function() { ini({ ## You may label each parameter with a comment tka <- 0.45 # Log Ka tcl <- log(c(0, 2.7, 100)) # Log Cl ## This works with interactive models ## You may also label the preceding line with label(\"label text\") tv <- 3.45; label(\"log V\") ## the label(\"Label name\") works with all models 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) }) } f <- rxode2(one.cmt) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' # You can get the simulation model easily by rxCombineErrorLines(f) #> rxode2({ #> params(tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v) #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ linCmt() #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (add.sd)^2 #> ipredSim <- rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim <- rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.rxLinCmt, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> cmt(rxLinCmt) #> dvid(1) #> }) # You can then get the compiled model by simply evaluting the model: r <- eval(rxCombineErrorLines(f)) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # This also works with multile endpoint models: pk.turnover.emax <- function() { ini({ tktr <- log(1) tka <- log(1) tcl <- log(0.1) tv <- log(10) ## eta.ktr ~ 1 eta.ka ~ 1 eta.cl ~ 2 eta.v ~ 1 prop.err <- 0.1 pkadd.err <- 0.1 ## temax <- logit(0.8) tec50 <- log(0.5) tkout <- log(0.05) te0 <- log(100) ## eta.emax ~ .5 eta.ec50 ~ .5 eta.kout ~ .5 eta.e0 ~ .5 ## pdadd.err <- 10 }) model({ ktr <- exp(tktr + eta.ktr) ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) ## emax=expit(temax+eta.emax) ec50 = exp(tec50 + eta.ec50) kout = exp(tkout + eta.kout) e0 = exp(te0 + eta.e0) ## DCP = center/v PD=1-emax*DCP/(ec50+DCP) ## effect(0) = e0 kin = e0*kout ## d/dt(depot) = -ktr * depot d/dt(gut) = ktr * depot -ka * gut d/dt(center) = ka * gut - cl / v * center d/dt(effect) = kin*PD -kout*effect ## cp = center / v cp ~ prop(prop.err) + add(pkadd.err) effect ~ add(pdadd.err) }) } f <- rxode2(pk.turnover.emax) #> #> rxCombineErrorLines(f) #> rxode2({ #> params(tktr, tka, tcl, tv, prop.err, pkadd.err, temax, tec50, #> tkout, te0, pdadd.err, eta.ktr, eta.ka, eta.cl, eta.v, #> eta.emax, eta.ec50, eta.kout, eta.e0) #> ktr <- exp(tktr + eta.ktr) #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> emax = expit(temax + eta.emax) #> ec50 = exp(tec50 + eta.ec50) #> kout = exp(tkout + eta.kout) #> e0 = exp(te0 + eta.e0) #> DCP = center/v #> PD = 1 - emax * DCP/(ec50 + DCP) #> effect(0) = e0 #> kin = e0 * kout #> d/dt(depot) = -ktr * depot #> d/dt(gut) = ktr * depot - ka * gut #> d/dt(center) = ka * gut - cl/v * center #> d/dt(effect) = kin * PD - kout * effect #> cp = center/v #> if (CMT == 5) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ cp #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (pkadd.err)^2 + (rx_pred_f_)^2 * (prop.err)^2 #> ipredSim <- rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim <- rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.cp, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> if (CMT == 4) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ effect #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (pdadd.err)^2 #> ipredSim <- rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim <- rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.effect, #> rx_lambda_, rx_yj_, rx_low_, rx_hi_) #> } #> cmt(cp) #> dvid(5, 4) #> }) # Note that in the parsed form, you can also get the compiled rxode2 # model with $simulationModel f$simulationModel #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_9b3b2a018ed95cc4155beec87f274fb6 model (✔ ready). #> $state: depot, gut, center, effect #> $stateExtra: cp #> $params: tktr, tka, tcl, tv, prop.err, pkadd.err, temax, tec50, tkout, te0, pdadd.err, eta.ktr, eta.ka, eta.cl, eta.v, eta.emax, eta.ec50, eta.kout, eta.e0, CMT, rxerr.cp, rxerr.effect #> $lhs: ktr, ka, cl, v, emax, ec50, kout, e0, DCP, PD, kin, cp, ipredSim, sim # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":null,"dir":"Reference","previous_headings":"","what":"Compile a model if needed — rxCompile","title":"Compile a model if needed — rxCompile","text":"compilation workhorse creating rxode2 model DLL files.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compile a model if needed — rxCompile","text":"","code":"rxCompile( model, dir, prefix, force = FALSE, modName = NULL, package = NULL, ... ) # S3 method for rxModelVars rxCompile( model, dir = NULL, prefix = NULL, force = FALSE, modName = NULL, package = NULL, ... ) # S3 method for character rxCompile( model, dir = NULL, prefix = NULL, force = FALSE, modName = NULL, package = NULL, ... ) # S3 method for rxDll rxCompile(model, ...) # S3 method for rxode2 rxCompile(model, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compile a model if needed — rxCompile","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . dir model directory C file stored compiling. prefix string indicating prefix use C based functions. missing, calculated based file name, md5 parsed model. force boolean stating (re)compile forced rxode2 detects models already generated. modName string used model name. string used naming various aspects computations, including generating C symbol names, dynamic libraries, etc. Therefore, necessary modName consists simple ASCII alphanumeric characters starting letter. package Package name pre-compiled binaries. ... arguments sent rxTrans() function.","code":"If unspecified, the C code is stored in a temporary directory, then the model is compiled and moved to the current directory. Afterwards the C code is removed. If specified, the C code is stored in the specified directory and then compiled in that directory. The C code is not removed after the DLL is created in the same directory. This can be useful to debug the c-code outputs."},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compile a model if needed — rxCompile","text":"rxDll object following components dllDLL path modelmodel specification .cA function call C code correct context DLL using .C() function. .callA function call C code correct context DLL using .Call() function. argsA list arguments used create rxDll object.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Compile a model if needed — rxCompile","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":null,"dir":"Reference","previous_headings":"","what":"Current Condition for rxode2 object — rxCondition","title":"Current Condition for rxode2 object — rxCondition","text":"Current Condition rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Current Condition for rxode2 object — rxCondition","text":"","code":"rxCondition(obj, condition = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Current Condition for rxode2 object — rxCondition","text":"obj rxode2 object condition specified one conditions rxode2 object (determined rxExpandIfElse()), assign rxode2 current condition parameter. condition one known condition, condition set NULL, implying conditioning currently used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Current Condition for rxode2 object — rxCondition","text":"Current condition rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Current Condition for rxode2 object — rxCondition","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":null,"dir":"Reference","previous_headings":"","what":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"assumes normal ODE equations first equations ODE expanded forward sensitivities type sensitivity (like adjoint)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"","code":"rxControlUpdateSens(rxControl, sensCmt = NULL, ncmt = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"rxControl Input list rxControl type list sensCmt Number sensitivity compartments ncmt Number compartments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"Updated rxControl $atol, $rtol, $ssAtol $ssRtol updated different sensitivities normal ODEs (first) different sensitivity larger compartments (sensitivities).","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"","code":"tmp <- rxControl() tmp2 <- rxControlUpdateSens(tmp, 3, 6) tmp2$atol #> [1] 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 tmp2$rtol #> [1] 1e-06 1e-06 1e-06 1e-06 1e-06 1e-06 tmp2$ssAtol #> [1] 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 tmp2$ssRtol #> [1] 1e-06 1e-06 1e-06 1e-06 1e-06 1e-06"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":null,"dir":"Reference","previous_headings":"","what":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"run, R_user_dir rxode2's cache present, create cache","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"","code":"rxCreateCache()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":null,"dir":"Reference","previous_headings":"","what":"Add to rxode2's derivative tables — rxD","title":"Add to rxode2's derivative tables — rxD","text":"Add rxode2's derivative tables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add to rxode2's derivative tables — rxD","text":"","code":"rxD(name, derivatives)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add to rxode2's derivative tables — rxD","text":"name Function Name derivatives list functions. function takes number arguments original function. first function construct derivative respect first argument; second function construct derivitive respect second argument, .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Add to rxode2's derivative tables — rxD","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Add to rxode2's derivative tables — rxD","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add to rxode2's derivative tables — rxD","text":"","code":"## Add an arbitrary list of derivative functions ## In this case the fun(x,y) is assumed to be 0.5*x^2+0.5*y^2 rxD(\"fun\", list( function(x, y) { return(x) }, function(x, y) { return(y) } ))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":null,"dir":"Reference","previous_headings":"","what":"Delete the DLL for the model — rxDelete","title":"Delete the DLL for the model — rxDelete","text":"function deletes DLL, delete model information object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Delete the DLL for the model — rxDelete","text":"","code":"rxDelete(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Delete the DLL for the model — rxDelete","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Delete the DLL for the model — rxDelete","text":"boolean stating operation successful.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Delete the DLL for the model — rxDelete","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":null,"dir":"Reference","previous_headings":"","what":"Demote the error type — rxDemoteAddErr","title":"Demote the error type — rxDemoteAddErr","text":"Demote error type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Demote the error type — rxDemoteAddErr","text":"","code":"rxDemoteAddErr(errType)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Demote the error type — rxDemoteAddErr","text":"errType Error type factor","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Demote the error type — rxDemoteAddErr","text":"Demoted Error Type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Demote the error type — rxDemoteAddErr","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Demote the error type — rxDemoteAddErr","text":"","code":"rxErrTypeCombine(\"add\") %>% rxErrTypeCombine(\"prop\") #> $transform #> [1] untransformed #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] add + prop #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] untransformed #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\" # This removes the internal additive error rxErrTypeCombine(\"add\") %>% rxErrTypeCombine(\"prop\") %>% rxDemoteAddErr() #> $transform #> [1] untransformed #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] prop #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] untransformed #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\" # This is used for logitNorm(NA), the additive portion is stripped"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":null,"dir":"Reference","previous_headings":"","what":"Jacobian and parameter derivatives — rxDfdy","title":"Jacobian and parameter derivatives — rxDfdy","text":"Return Jacobain parameter derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Jacobian and parameter derivatives — rxDfdy","text":"","code":"rxDfdy(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Jacobian and parameter derivatives — rxDfdy","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Jacobian and parameter derivatives — rxDfdy","text":"list jacobian parameters defined rxode2 object.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Jacobian and parameter derivatives — rxDfdy","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the DLL associated with the rxode2 object — rxDll","title":"Return the DLL associated with the rxode2 object — rxDll","text":"return dynamic load library shared object used run C code rxode2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the DLL associated with the rxode2 object — rxDll","text":"","code":"rxDll(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the DLL associated with the rxode2 object — rxDll","text":"obj rxode2 family objects character string model specification location file model specification.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the DLL associated with the rxode2 object — rxDll","text":"path library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the DLL associated with the rxode2 object — rxDll","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":null,"dir":"Reference","previous_headings":"","what":"Load rxode2 object — rxDynLoad","title":"Load rxode2 object — rxDynLoad","text":"Load rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Load rxode2 object — rxDynLoad","text":"","code":"rxDynLoad(obj) rxLoad(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Load rxode2 object — rxDynLoad","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Load rxode2 object — rxDynLoad","text":"Boolean returning rxode2 library loaded.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Load rxode2 object — rxDynLoad","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":null,"dir":"Reference","previous_headings":"","what":"Unload rxode2 object — rxDynUnload","title":"Unload rxode2 object — rxDynUnload","text":"Unload rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Unload rxode2 object — rxDynUnload","text":"","code":"rxDynUnload(obj) rxUnload(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Unload rxode2 object — rxDynUnload","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Unload rxode2 object — rxDynUnload","text":"Boolean returning rxode2 library loaded.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Unload rxode2 object — rxDynUnload","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":null,"dir":"Reference","previous_headings":"","what":"Combine transformations and error structures — rxErrTypeCombine","title":"Combine transformations and error structures — rxErrTypeCombine","text":"Combine error information figure transformation applied current endpoint","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Combine transformations and error structures — rxErrTypeCombine","text":"","code":"rxErrTypeCombine(oldErrType, newErrType)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Combine transformations and error structures — rxErrTypeCombine","text":"oldErrType old transformation, default zero representing prior transformation. parameter first allow piping. parameter addTransform missing oldErrType character value, functions swaps oldErrType addTransform assigns oldErrType zero assuming prior distribution. newErrType new distribution \"added\" current transformation. assumes inputs preferred distribution name, determined rxPreferredDistributionName()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Combine transformations and error structures — rxErrTypeCombine","text":"new transformation factor","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Combine transformations and error structures — rxErrTypeCombine","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Combine transformations and error structures — rxErrTypeCombine","text":"","code":"rxErrTypeCombine(\"probitNorm\") #> $transform #> [1] probit #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] add #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] none #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\" rxErrTypeCombine(\"probitNorm\") %>% rxErrTypeCombine(\"boxCox\") #> $transform #> [1] probit + boxCox #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] add #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] none #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand d(f)/d(eta) — rxExpandFEta_","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"Expand d(f)/d(eta)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"","code":"rxExpandFEta_(state, neta, pred, isTheta = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"state state expand neta number etas pred type prediction isTheta logical, expansion actually thetas instead etas","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"String symengine expressions evaluate calculate df/deta","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":null,"dir":"Reference","previous_headings":"","what":"Faster expand.grid — rxExpandGrid","title":"Faster expand.grid — rxExpandGrid","text":"support x y characters right now","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Faster expand.grid — rxExpandGrid","text":"","code":"rxExpandGrid(x, y, type = 0L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Faster expand.grid — rxExpandGrid","text":"x first element (must character) y second element (must character) type Internal type=0L traditional expand grid type=1L Jacobian expand grid (adds symbols)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Faster expand.grid — rxExpandGrid","text":"Expand grid","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Faster expand.grid — rxExpandGrid","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Faster expand.grid — rxExpandGrid","text":"","code":"## rxExpandGrid(letters, letters) #> Var1 Var2 #> 1 a a #> 2 b a #> 3 c a #> 4 d a #> 5 e a #> 6 f a #> 7 g a #> 8 h a #> 9 i a #> 10 j a #> 11 k a #> 12 l a #> 13 m a #> 14 n a #> 15 o a #> 16 p a #> 17 q a #> 18 r a #> 19 s a #> 20 t a #> 21 u a #> 22 v a #> 23 w a #> 24 x a #> 25 y a #> 26 z a #> 27 a b #> 28 b b #> 29 c b #> 30 d b #> 31 e b #> 32 f b #> 33 g b #> 34 h b #> 35 i b #> 36 j b #> 37 k b #> 38 l b #> 39 m b #> 40 n b #> 41 o b #> 42 p b #> 43 q b #> 44 r b #> 45 s b #> 46 t b #> 47 u b #> 48 v b #> 49 w b #> 50 x b #> 51 y b #> 52 z b #> 53 a c #> 54 b c #> 55 c c #> 56 d c #> 57 e c #> 58 f c #> 59 g c #> 60 h c #> 61 i c #> 62 j c #> 63 k c #> 64 l c #> 65 m c #> 66 n c #> 67 o c #> 68 p c #> 69 q c #> 70 r c #> 71 s c #> 72 t c #> 73 u c #> 74 v c #> 75 w c #> 76 x c #> 77 y c #> 78 z c #> 79 a d #> 80 b d #> 81 c d #> 82 d d #> 83 e d #> 84 f d #> 85 g d #> 86 h d #> 87 i d #> 88 j d #> 89 k d #> 90 l d #> 91 m d #> 92 n d #> 93 o d #> 94 p d #> 95 q d #> 96 r d #> 97 s d #> 98 t d #> 99 u d #> 100 v d #> 101 w d #> 102 x d #> 103 y d #> 104 z d #> 105 a e #> 106 b e #> 107 c e #> 108 d e #> 109 e e #> 110 f e #> 111 g e #> 112 h e #> 113 i e #> 114 j e #> 115 k e #> 116 l e #> 117 m e #> 118 n e #> 119 o e #> 120 p e #> 121 q e #> 122 r e #> 123 s e #> 124 t e #> 125 u e #> 126 v e #> 127 w e #> 128 x e #> 129 y e #> 130 z e #> 131 a f #> 132 b f #> 133 c f #> 134 d f #> 135 e f #> 136 f f #> 137 g f #> 138 h f #> 139 i f #> 140 j f #> 141 k f #> 142 l f #> 143 m f #> 144 n f #> 145 o f #> 146 p f #> 147 q f #> 148 r f #> 149 s f #> 150 t f #> 151 u f #> 152 v f #> 153 w f #> 154 x f #> 155 y f #> 156 z f #> 157 a g #> 158 b g #> 159 c g #> 160 d g #> 161 e g #> 162 f g #> 163 g g #> 164 h g #> 165 i g #> 166 j g #> 167 k g #> 168 l g #> 169 m g #> 170 n g #> 171 o g #> 172 p g #> 173 q g #> 174 r g #> 175 s g #> 176 t g #> 177 u g #> 178 v g #> 179 w g #> 180 x g #> 181 y g #> 182 z g #> 183 a h #> 184 b h #> 185 c h #> 186 d h #> 187 e h #> 188 f h #> 189 g h #> 190 h h #> 191 i h #> 192 j h #> 193 k h #> 194 l h #> 195 m h #> 196 n h #> 197 o h #> 198 p h #> 199 q h #> 200 r h #> 201 s h #> 202 t h #> 203 u h #> 204 v h #> 205 w h #> 206 x h #> 207 y h #> 208 z h #> 209 a i #> 210 b i #> 211 c i #> 212 d i #> 213 e i #> 214 f i #> 215 g i #> 216 h i #> 217 i i #> 218 j i #> 219 k i #> 220 l i #> 221 m i #> 222 n i #> 223 o i #> 224 p i #> 225 q i #> 226 r i #> 227 s i #> 228 t i #> 229 u i #> 230 v i #> 231 w i #> 232 x i #> 233 y i #> 234 z i #> 235 a j #> 236 b j #> 237 c j #> 238 d j #> 239 e j #> 240 f j #> 241 g j #> 242 h j #> 243 i j #> 244 j j #> 245 k j #> 246 l j #> 247 m j #> 248 n j #> 249 o j #> 250 p j #> 251 q j #> 252 r j #> 253 s j #> 254 t j #> 255 u j #> 256 v j #> 257 w j #> 258 x j #> 259 y j #> 260 z j #> 261 a k #> 262 b k #> 263 c k #> 264 d k #> 265 e k #> 266 f k #> 267 g k #> 268 h k #> 269 i k #> 270 j k #> 271 k k #> 272 l k #> 273 m k #> 274 n k #> 275 o k #> 276 p k #> 277 q k #> 278 r k #> 279 s k #> 280 t k #> 281 u k #> 282 v k #> 283 w k #> 284 x k #> 285 y k #> 286 z k #> 287 a l #> 288 b l #> 289 c l #> 290 d l #> 291 e l #> 292 f l #> 293 g l #> 294 h l #> 295 i l #> 296 j l #> 297 k l #> 298 l l #> 299 m l #> 300 n l #> 301 o l #> 302 p l #> 303 q l #> 304 r l #> 305 s l #> 306 t l #> 307 u l #> 308 v l #> 309 w l #> 310 x l #> 311 y l #> 312 z l #> 313 a m #> 314 b m #> 315 c m #> 316 d m #> 317 e m #> 318 f m #> 319 g m #> 320 h m #> 321 i m #> 322 j m #> 323 k m #> 324 l m #> 325 m m #> 326 n m #> 327 o m #> 328 p m #> 329 q m #> 330 r m #> 331 s m #> 332 t m #> 333 u m #> 334 v m #> 335 w m #> 336 x m #> 337 y m #> 338 z m #> 339 a n #> 340 b n #> 341 c n #> 342 d n #> 343 e n #> 344 f n #> 345 g n #> 346 h n #> 347 i n #> 348 j n #> 349 k n #> 350 l n #> 351 m n #> 352 n n #> 353 o n #> 354 p n #> 355 q n #> 356 r n #> 357 s n #> 358 t n #> 359 u n #> 360 v n #> 361 w n #> 362 x n #> 363 y n #> 364 z n #> 365 a o #> 366 b o #> 367 c o #> 368 d o #> 369 e o #> 370 f o #> 371 g o #> 372 h o #> 373 i o #> 374 j o #> 375 k o #> 376 l o #> 377 m o #> 378 n o #> 379 o o #> 380 p o #> 381 q o #> 382 r o #> 383 s o #> 384 t o #> 385 u o #> 386 v o #> 387 w o #> 388 x o #> 389 y o #> 390 z o #> 391 a p #> 392 b p #> 393 c p #> 394 d p #> 395 e p #> 396 f p #> 397 g p #> 398 h p #> 399 i p #> 400 j p #> 401 k p #> 402 l p #> 403 m p #> 404 n p #> 405 o p #> 406 p p #> 407 q p #> 408 r p #> 409 s p #> 410 t p #> 411 u p #> 412 v p #> 413 w p #> 414 x p #> 415 y p #> 416 z p #> 417 a q #> 418 b q #> 419 c q #> 420 d q #> 421 e q #> 422 f q #> 423 g q #> 424 h q #> 425 i q #> 426 j q #> 427 k q #> 428 l q #> 429 m q #> 430 n q #> 431 o q #> 432 p q #> 433 q q #> 434 r q #> 435 s q #> 436 t q #> 437 u q #> 438 v q #> 439 w q #> 440 x q #> 441 y q #> 442 z q #> 443 a r #> 444 b r #> 445 c r #> 446 d r #> 447 e r #> 448 f r #> 449 g r #> 450 h r #> 451 i r #> 452 j r #> 453 k r #> 454 l r #> 455 m r #> 456 n r #> 457 o r #> 458 p r #> 459 q r #> 460 r r #> 461 s r #> 462 t r #> 463 u r #> 464 v r #> 465 w r #> 466 x r #> 467 y r #> 468 z r #> 469 a s #> 470 b s #> 471 c s #> 472 d s #> 473 e s #> 474 f s #> 475 g s #> 476 h s #> 477 i s #> 478 j s #> 479 k s #> 480 l s #> 481 m s #> 482 n s #> 483 o s #> 484 p s #> 485 q s #> 486 r s #> 487 s s #> 488 t s #> 489 u s #> 490 v s #> 491 w s #> 492 x s #> 493 y s #> 494 z s #> 495 a t #> 496 b t #> 497 c t #> 498 d t #> 499 e t #> 500 f t #> 501 g t #> 502 h t #> 503 i t #> 504 j t #> 505 k t #> 506 l t #> 507 m t #> 508 n t #> 509 o t #> 510 p t #> 511 q t #> 512 r t #> 513 s t #> 514 t t #> 515 u t #> 516 v t #> 517 w t #> 518 x t #> 519 y t #> 520 z t #> 521 a u #> 522 b u #> 523 c u #> 524 d u #> 525 e u #> 526 f u #> 527 g u #> 528 h u #> 529 i u #> 530 j u #> 531 k u #> 532 l u #> 533 m u #> 534 n u #> 535 o u #> 536 p u #> 537 q u #> 538 r u #> 539 s u #> 540 t u #> 541 u u #> 542 v u #> 543 w u #> 544 x u #> 545 y u #> 546 z u #> 547 a v #> 548 b v #> 549 c v #> 550 d v #> 551 e v #> 552 f v #> 553 g v #> 554 h v #> 555 i v #> 556 j v #> 557 k v #> 558 l v #> 559 m v #> 560 n v #> 561 o v #> 562 p v #> 563 q v #> 564 r v #> 565 s v #> 566 t v #> 567 u v #> 568 v v #> 569 w v #> 570 x v #> 571 y v #> 572 z v #> 573 a w #> 574 b w #> 575 c w #> 576 d w #> 577 e w #> 578 f w #> 579 g w #> 580 h w #> 581 i w #> 582 j w #> 583 k w #> 584 l w #> 585 m w #> 586 n w #> 587 o w #> 588 p w #> 589 q w #> 590 r w #> 591 s w #> 592 t w #> 593 u w #> 594 v w #> 595 w w #> 596 x w #> 597 y w #> 598 z w #> 599 a x #> 600 b x #> 601 c x #> 602 d x #> 603 e x #> 604 f x #> 605 g x #> 606 h x #> 607 i x #> 608 j x #> 609 k x #> 610 l x #> 611 m x #> 612 n x #> 613 o x #> 614 p x #> 615 q x #> 616 r x #> 617 s x #> 618 t x #> 619 u x #> 620 v x #> 621 w x #> 622 x x #> 623 y x #> 624 z x #> 625 a y #> 626 b y #> 627 c y #> 628 d y #> 629 e y #> 630 f y #> 631 g y #> 632 h y #> 633 i y #> 634 j y #> 635 k y #> 636 l y #> 637 m y #> 638 n y #> 639 o y #> 640 p y #> 641 q y #> 642 r y #> 643 s y #> 644 t y #> 645 u y #> 646 v y #> 647 w y #> 648 x y #> 649 y y #> 650 z y #> 651 a z #> 652 b z #> 653 c z #> 654 d z #> 655 e z #> 656 f z #> 657 g z #> 658 h z #> 659 i z #> 660 j z #> 661 k z #> 662 l z #> 663 m z #> 664 n z #> 665 o z #> 666 p z #> 667 q z #> 668 r z #> 669 s z #> 670 t z #> 671 u z #> 672 v z #> 673 w z #> 674 x z #> 675 y z #> 676 z z ## Another fast method; See ## https://stackoverflow.com/questions/10405637/use-outer-instead-of-expand-grid expand.grid.jc <- function(seq1, seq2) { cbind( Var1 = rep.int(seq1, length(seq2)), Var2 = rep.int(seq2, rep.int(length(seq1), length(seq2))) ) } # \\donttest{ microbenchmark::microbenchmark(rxExpandGrid(letters, letters), expand.grid.jc(letters, letters)) #> Unit: microseconds #> expr min lq mean median uq #> rxExpandGrid(letters, letters) 11.552 13.124 106.88926 13.6105 14.518 #> expand.grid.jc(letters, letters) 15.489 17.007 18.79241 18.4795 20.087 #> max neval #> 4314.928 100 #> 39.854 100 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand grid internal function — rxExpandGrid_","title":"Expand grid internal function — rxExpandGrid_","text":"Expand grid internal function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand grid internal function — rxExpandGrid_","text":"","code":"rxExpandGrid_(c1, c2, type)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand grid internal function — rxExpandGrid_","text":"c1 character vector items expanded c2 second character vector items expanded type 0 typical data frame, 1 symengine sensitivity expansion","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand grid internal function — rxExpandGrid_","text":"data frame (type = 0) symengine string (type=1)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"Expand /else clauses multiple different types lines.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"","code":"rxExpandIfElse(model, removeInis = TRUE, removePrint = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"model Model can character, rxode2 model. needs normalized syntax, (...){} line. else statement must line closing bracket statement previous line. else statment must also contain opening bracket, like code else {} removeInis boolean indicating parameter initializations removed model. removePrint boolean indicating printing statements removed model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"named character vector. names vector logical conditions, values lines satisfy logical conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand second order sensitivity — rxExpandSens2_","title":"Expand second order sensitivity — rxExpandSens2_","text":"Expand second order sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand second order sensitivity — rxExpandSens2_","text":"","code":"rxExpandSens2_(state, s1, s2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand second order sensitivity — rxExpandSens2_","text":"state state expand s1 variables calculate sensitivity s2 variables calculate second order sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand second order sensitivity — rxExpandSens2_","text":"string symengine second order sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand sensitivity — rxExpandSens_","title":"Expand sensitivity — rxExpandSens_","text":"Expand sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand sensitivity — rxExpandSens_","text":"","code":"rxExpandSens_(state, calcSens)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand sensitivity — rxExpandSens_","text":"state state expand calcSens variables calculate sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand sensitivity — rxExpandSens_","text":"symengine string expanded sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":null,"dir":"Reference","previous_headings":"","what":"Clear memoise cache for rxode2 — rxForget","title":"Clear memoise cache for rxode2 — rxForget","text":"Clear memoise cache rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Clear memoise cache for rxode2 — rxForget","text":"","code":"rxForget()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Clear memoise cache for rxode2 — rxForget","text":"nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Clear memoise cache for rxode2 — rxForget","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":null,"dir":"Reference","previous_headings":"","what":"Add/Create C functions for use in rxode2 — rxFun","title":"Add/Create C functions for use in rxode2 — rxFun","text":"Add/Create C functions use rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add/Create C functions for use in rxode2 — rxFun","text":"","code":"rxFun(name, args, cCode) rxRmFun(name)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add/Create C functions for use in rxode2 — rxFun","text":"name can either give name user function simple R function wish convert C. rxode2 convert R function C, name function match function name provided number arguments match R function provided. Hence, providing R function conversion C, rest arguments implied. args gives arguments user function cCode C-code new function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add/Create C functions for use in rxode2 — rxFun","text":"","code":"# \\donttest{ ## Right now rxode2 is not aware of the function fun ## Therefore it cannot translate it to symengine or ## Compile a model with it. try(rxode2(\"a=fun(a,b,c)\")) #> #> #> Error : syntax errors (see above) ## Note for this approach to work, it cannot interfere with C ## function names or reserved rxode2 special terms. Therefore ## f(x) would not work since f is an alias for bioavailability. fun <- \" double fun(double a, double b, double c) { return a*a+b*a+c; } \" ## C-code for function rxFun(\"fun\", c(\"a\", \"b\", \"c\"), fun) ## Added function ## Now rxode2 knows how to translate this function to symengine rxToSE(\"fun(a,b,c)\") #> [1] \"fun(a,b,c)\" ## And will take a central difference when calculating derivatives rxFromSE(\"Derivative(fun(a,b,c),a)\") #> [1] \"(fun((a)+6.05545445239334e-06,b,c)-fun(a,b,c))/6.05545445239334e-06\" ## Of course, you could specify the derivative table manually rxD(\"fun\", list( function(a, b, c) { paste0(\"2*\", a, \"+\", b) }, function(a, b, c) { return(a) }, function(a, b, c) { return(\"0.0\") } )) rxFromSE(\"Derivative(fun(a,b,c),a)\") #> [1] \"2*a+b\" # You can also remove the functions by `rxRmFun` rxRmFun(\"fun\") # you can also use R functions directly in rxode2 gg <- function(x, y) { x + y } f <- rxode2({ z = gg(x, y) }) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ e <- et(1:10) |> as.data.frame() e$x <- 1:10 e$y <- 21:30 rxSolve(f, e) #> Warning: not thread safe method, using 1 core #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time z x y #> #> 1 1 22 1 21 #> 2 2 24 2 22 #> 3 3 26 3 23 #> 4 4 28 4 24 #> 5 5 30 5 25 #> 6 6 32 6 26 #> # ℹ 4 more rows # Note that since it touches R, it can only run single-threaded. # There are also requirements for the function: # # 1. It accepts one value per argument (numeric) # # 2. It returns one numeric value # If it is a simple function (like gg) you can also convert it to C # using rxFun and load it into rxode2 rxFun(gg) #> → finding duplicate expressions in d(gg)/d(x)... #> → finding duplicate expressions in d(gg)/d(y)... #> converted R function 'gg' to C (will now use in rxode2) #> converted R function 'rx_gg_d_x' to C (will now use in rxode2) #> converted R function 'rx_gg_d_y' to C (will now use in rxode2) #> Added derivative table for 'gg' rxSolve(f, e) #> compiled with R user function 'gg'; now there is a clashing C user function #> triggered a recompile to use the C user function (they are always preferred) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time z x y #> #> 1 1 22 1 21 #> 2 2 24 2 22 #> 3 3 26 3 23 #> 4 4 28 4 24 #> 5 5 30 5 25 #> 6 6 32 6 26 #> # ℹ 4 more rows # to stop the recompile simply reassign the function f <- rxode2(f) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ rxSolve(f, e) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time z x y #> #> 1 1 22 1 21 #> 2 2 24 2 22 #> 3 3 26 3 23 #> 4 4 28 4 24 #> 5 5 30 5 25 #> 6 6 32 6 26 #> # ℹ 4 more rows rxRmFun(\"gg\") rm(gg) rm(f) # You can also automatically convert a R function to R code (and # calculate first derivatives) fun <- function(a, b, c) { a^2+b*a+c } rxFun(fun) #> → finding duplicate expressions in d(fun)/d(a)... #> → finding duplicate expressions in d(fun)/d(b)... #> → finding duplicate expressions in d(fun)/d(c)... #> converted R function 'fun' to C (will now use in rxode2) #> converted R function 'rx_fun_d_a' to C (will now use in rxode2) #> converted R function 'rx_fun_d_b' to C (will now use in rxode2) #> converted R function 'rx_fun_d_c' to C (will now use in rxode2) #> Added derivative table for 'fun' # You can see the R code if you want with rxC message(rxC(\"fun\")) #> double fun(double a, double b, double c) { #> double _lastValue=NA_REAL; #> _lastValue = R_pow_di(a,2)+b*a+c; #> return _lastValue; #> } # you can also remove both the function and the # derivatives with rxRmFun(\"fun\") rxRmFun(\"fun\") # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":null,"dir":"Reference","previous_headings":"","what":"rxGetControl option from ui — rxGetControl","title":"rxGetControl option from ui — rxGetControl","text":"rxGetControl option ui","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxGetControl option from ui — rxGetControl","text":"","code":"rxGetControl(ui, option, default)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxGetControl option from ui — rxGetControl","text":"ui rxode2 ui object option Option get default Default value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxGetControl option from ui — rxGetControl","text":"Option (present) default value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxGetControl option from ui — rxGetControl","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":null,"dir":"Reference","previous_headings":"","what":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"S3 method getting distribution lines rxode2 simulation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"","code":"rxGetDistributionSimulationLines(line) # S3 method for norm rxGetDistributionSimulationLines(line) # S3 method for dnorm rxGetDistributionSimulationLines(line) # S3 method for t rxGetDistributionSimulationLines(line) # S3 method for cauchy rxGetDistributionSimulationLines(line) # S3 method for ordinal rxGetDistributionSimulationLines(line) # S3 method for default rxGetDistributionSimulationLines(line) # S3 method for rxUi rxGetDistributionSimulationLines(line)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"line Parsed rxode2 model environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"Lines simulation ipred dv. based idea focei parameters defined","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the linear compartment model true function — rxGetLin","title":"Get the linear compartment model true function — rxGetLin","text":"Get linear compartment model true function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the linear compartment model true function — rxGetLin","text":"","code":"rxGetLin( model, linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), verbose = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the linear compartment model true function — rxGetLin","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . linCmtSens method calculate linCmt() solutions verbose TRUE verbose linear compartmental model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the linear compartment model true function — rxGetLin","text":"model linCmt() replaced linCmtA()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the linear compartment model true function — rxGetLin","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get model properties without compiling it. — rxGetModel","title":"Get model properties without compiling it. — rxGetModel","text":"Get model properties without compiling .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get model properties without compiling it. — rxGetModel","text":"","code":"rxGetModel( model, calcSens = NULL, calcJac = NULL, collapseModel = NULL, indLin = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get model properties without compiling it. — rxGetModel","text":"model rxode2 specification calcSens boolean indicating rxode2 calculate sensitivities according specified ODEs. calcJac boolean indicating rxode2 calculate Jacobain according specified ODEs. collapseModel boolean indicating rxode2 remove LHS variables calculating sensitivities. indLin Calculate inductive linearization matrices compile inductive linearization support.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get model properties without compiling it. — rxGetModel","text":"rxode2 trans list","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get model properties without compiling it. — rxGetModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Get rxode2 model from object — rxGetrxode2","title":"Get rxode2 model from object — rxGetrxode2","text":"Get rxode2 model object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get rxode2 model from object — rxGetrxode2","text":"","code":"rxGetrxode2(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get rxode2 model from object — rxGetrxode2","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get rxode2 model from object — rxGetrxode2","text":"rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":null,"dir":"Reference","previous_headings":"","what":"Format rxSolve and related objects as html. — rxHtml","title":"Format rxSolve and related objects as html. — rxHtml","text":"Format rxSolve related objects html.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Format rxSolve and related objects as html. — rxHtml","text":"","code":"rxHtml(x, ...) # S3 method for rxSolve rxHtml(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Format rxSolve and related objects as html. — rxHtml","text":"x rxode2 object ... Extra arguments sent kable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Format rxSolve and related objects as html. — rxHtml","text":"html code rxSolve object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Format rxSolve and related objects as html. — rxHtml","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":null,"dir":"Reference","previous_headings":"","what":"Set the preferred factoring by state — rxIndLinState","title":"Set the preferred factoring by state — rxIndLinState","text":"Set preferred factoring state","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set the preferred factoring by state — rxIndLinState","text":"","code":"rxIndLinState(preferred = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set the preferred factoring by state — rxIndLinState","text":"preferred list state's preferred factorization","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set the preferred factoring by state — rxIndLinState","text":"Nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set the preferred factoring by state — rxIndLinState","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":null,"dir":"Reference","previous_headings":"","what":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"one state ODE separated specifies incorporated matrix exponential.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"","code":"rxIndLinStrategy(strategy = c(\"curState\", \"split\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"strategy strategy inductive linearization matrix building curState Prefer parameterizing terms current state, followed first state observed term. split Split parameterization states term dividing number states term adding matrix term state.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"Nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLin_.html","id":null,"dir":"Reference","previous_headings":"","what":"Inductive linearization solver — rxIndLin_","title":"Inductive linearization solver — rxIndLin_","text":"Inductive linearization solver","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLin_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Inductive linearization solver — rxIndLin_","text":"cSub = Current subject number op rxode2 solving options tp Prior time point/time zero yp Prior state; vector size = neq; Final state updated tf Final Time InfusionRate = Rates compartment; vector size = neq Indicator compartment \"\" cache 0 = Cache doIndLin == 0, cache > 0 = nInf-1 rxode2 matrix exponential function IndF rxode2 Inductive Linearization function F","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLin_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Inductive linearization solver — rxIndLin_","text":"Returns status solving 1 = Successful solve -1 = Maximum number iterations reached inductive linearization","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":null,"dir":"Reference","previous_headings":"","what":"Initial Values and State values for a rxode2 object — rxInits","title":"Initial Values and State values for a rxode2 object — rxInits","text":"Returns initial values rxDll object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Initial Values and State values for a rxode2 object — rxInits","text":"","code":"rxInits( obj, vec = NULL, req = NULL, defaultValue = 0, noerror = FALSE, noini = FALSE, rxLines = FALSE ) rxInit( obj, vec = NULL, req = NULL, defaultValue = 0, noerror = FALSE, noini = FALSE, rxLines = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Initial Values and State values for a rxode2 object — rxInits","text":"obj rxDll, rxode2, named vector representing default initial arguments vec supplied, named vector model. req Required names, required order ODE solver defaultValue number NA representing default value parameters missing vec, required req. noerror boolean specifying error thrown missing parameter values default = NA","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Initial Values and State values for a rxode2 object — rxInits","text":"Initial values rxDll object","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Initial Values and State values for a rxode2 object — rxInits","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":null,"dir":"Reference","previous_headings":"","what":"Invert matrix using RcppArmadillo. — rxInv","title":"Invert matrix using RcppArmadillo. — rxInv","text":"Invert matrix using RcppArmadillo.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Invert matrix using RcppArmadillo. — rxInv","text":"","code":"rxInv(matrix)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Invert matrix using RcppArmadillo. — rxInv","text":"matrix matrix inverted.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Invert matrix using RcppArmadillo. — rxInv","text":"inverse pseudo inverse matrix.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":null,"dir":"Reference","previous_headings":"","what":"Check the type of an object using Rcpp — rxIs","title":"Check the type of an object using Rcpp — rxIs","text":"Check type object using Rcpp","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check the type of an object using Rcpp — rxIs","text":"","code":"rxIs(obj, cls)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check the type of an object using Rcpp — rxIs","text":"obj Object check cls Type class. s3 classes lists/environments primitive classes checked. matrix types distinguished numeric.matrix, integer.matrix, logical.matrix, character.matrix well traditional matrix class. Additionally checks event.data.frame data.frame object time, evid amt. (UPPER, lower Title cases accepted)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check the type of an object using Rcpp — rxIs","text":"boolean indicating object member class.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Check the type of an object using Rcpp — rxIs","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":null,"dir":"Reference","previous_headings":"","what":"Checks if the rxode2 object was built with the current build — rxIsCurrent","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"Checks rxode2 object built current build","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"","code":"rxIsCurrent(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"boolean indicating built current rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":null,"dir":"Reference","previous_headings":"","what":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"Determine DLL associated rxode2 object loaded","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"","code":"rxIsLoaded(obj) rxDllLoaded(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"Boolean returning rxode2 library loaded.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":null,"dir":"Reference","previous_headings":"","what":"Left handed Variables — rxLhs","title":"Left handed Variables — rxLhs","text":"returns model calculated variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Left handed Variables — rxLhs","text":"","code":"rxLhs(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Left handed Variables — rxLhs","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Left handed Variables — rxLhs","text":"character vector listing calculated parameters","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Left handed Variables — rxLhs","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":null,"dir":"Reference","previous_headings":"","what":"Lock/unlocking of rxode2 dll file — rxLock","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"Lock/unlocking rxode2 dll file","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"","code":"rxLock(obj) rxUnlock(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the md5 of an rxode2 object or file — rxMd5","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"md5 based model possibly extra c code supplied model. addition md5 based syntax options, compiled rxode2 library md5, rxode2 version/repository.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"","code":"rxMd5(model, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . ... ignored arguments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"rxode2 object, return named list: file_md5 model's file's md5 parsed_md5 parsed model's file's md5. Otherwise return md5 based arguments provided","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":null,"dir":"Reference","previous_headings":"","what":"All model variables for a rxode2 object — rxModelVars","title":"All model variables for a rxode2 object — rxModelVars","text":"Return known model variables specified rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"All model variables for a rxode2 object — rxModelVars","text":"","code":"rxModelVars(obj) rxModelVarsS3(obj) # S3 method for rxUi rxModelVarsS3(obj) # S3 method for default rxModelVarsS3(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"All model variables for a rxode2 object — rxModelVars","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"All model variables for a rxode2 object — rxModelVars","text":"list rxode2 model properties including: params character vector names model parameters lhs character vector names model calculated parameters state character vector compartments rxode2 object trans named vector translated model properties including type jacobian specified, C function prefixes, well C functions names called compiled model. md5a named vector gives digest model (file_md5) parsed model (parsed_md5) model named vector giving input model (model), normalized model (comments standard syntax parsing, normModel), interim code used generate final C file parseModel","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"All model variables for a rxode2 object — rxModelVars","text":"items calculated compilation; built-rxode2 compiled DLL. allow extension, s3 hook added function rxModelVarsS3.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"All model variables for a rxode2 object — rxModelVars","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the rxModels information — rxModels_","title":"Get the rxModels information — rxModels_","text":"Get rxModels information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the rxModels information — rxModels_","text":"","code":"rxModels_(env = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the rxModels information — rxModels_","text":"env boolean returns environment models stored (TRUE), currently assigned rxode2 model variables (FALSE).","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the rxModels information — rxModels_","text":"internal rxModels information environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the normalized model — rxNorm","title":"Get the normalized model — rxNorm","text":"get syntax preferred model processing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the normalized model — rxNorm","text":"","code":"rxNorm(obj, condition = NULL, removeInis, removeJac, removeSens)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the normalized model — rxNorm","text":"obj rxode2 family objects condition Character string logical condition use subsetting normalized model. missing, condition set via rxCondition, return whole code conditional settings intact. condition set rxCondition, use condition. removeInis boolean indicating parameter initialization removed model removeJac boolean indicating Jacobians removed. removeSens boolean indicating sensitivities removed.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the normalized model — rxNorm","text":"Normalized Normal syntax (comments)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the normalized model — rxNorm","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":null,"dir":"Reference","previous_headings":"","what":"Optimize rxode2 for computer evaluation — rxOptExpr","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"optimizes rxode2 code computer evaluation calculating redundant expressions .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"","code":"rxOptExpr(x, msg = \"model\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"x rxode2 model can accessed rxNorm msg name type object rxode2 optimizing message optimizing. example \"model\" produce following message optimizing model: finding duplicate expressions model...","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"Optimized rxode2 model text. order type lhs state variables maintained evaluation sped . parameters names maintained, order may modified.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":null,"dir":"Reference","previous_headings":"","what":"Parameters specified by the model — rxParams","title":"Parameters specified by the model — rxParams","text":"returns model's parameters required solve ODE system, can used pipe parameters rxode2 solve","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Parameters specified by the model — rxParams","text":"","code":"rxParams(obj, ...) # S3 method for rxode2 rxParams( obj, constants = TRUE, ..., params = NULL, inits = NULL, iCov = NULL, keep = NULL, thetaMat = NULL, omega = NULL, dfSub = NULL, sigma = NULL, dfObs = NULL, nSub = NULL, nStud = NULL ) # S3 method for rxSolve rxParams( obj, constants = TRUE, ..., params = NULL, inits = NULL, iCov = NULL, keep = NULL, thetaMat = NULL, omega = NULL, dfSub = NULL, sigma = NULL, dfObs = NULL, nSub = NULL, nStud = NULL ) # S3 method for rxEt rxParams( obj, ..., params = NULL, inits = NULL, iCov = NULL, keep = NULL, thetaMat = NULL, omega = NULL, dfSub = NULL, sigma = NULL, dfObs = NULL, nSub = NULL, nStud = NULL ) rxParam(obj, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Parameters specified by the model — rxParams","text":"obj rxode2 family objects ... arguments including scaling factors compartment. includes S# = numeric scale compartment # dividing compartment amount scale factor, like NONMEM. constants boolean indicting constants included list parameters. Currently rxode2 parses constants variables case wish change without recompiling rxode2 model. params numeric named vector values every parameter ODE system; names must correspond parameter identifiers used ODE specification; inits vector initial values state variables (e.g., amounts compartment), order vector must state variables (e.g., PK/PD compartments); iCov data frame individual non-time varying covariates combine events dataset merge. keep Columns keep either input dataset iCov dataset. iCov dataset, column kept per line. input dataset, records added data LOCF (Last Observation Carried forward) imputation performed. thetaMat Named theta matrix. omega Estimate Covariance matrix. omega list, assume block matrix convert full matrix simulations. omega NA using rxode2 ui model, subject variability described omega matrix set zero. dfSub Degrees freedom sample subject variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. sigma Named sigma covariance Cholesky decomposition covariance matrix. names columns indicate parameters simulated. simulated every observation solved system. sigma NA using rxode2 ui model, unexplained variability described sigma matrix set zero. dfObs Degrees freedom sample unexplained variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. nSub Number subject variabilities (ETAs) simulated every realization parameters. nStud Number virtual studies characterize uncertainty estimated parameters.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Parameters specified by the model — rxParams","text":"extracting parameters rxode2 model, character vector listing parameters model.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Parameters specified by the model — rxParams","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":null,"dir":"Reference","previous_headings":"","what":"Prepare Error function for inclusion in rxode2 — rxParseErr","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"Prepare Error function inclusion rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"","code":"rxParseErr( x, baseTheta, ret = \"rx_r_\", init = NULL, addProp = c(\"combined2\", \"combined1\") )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"x error function baseTheta Base theta start numbering add(.) prop(.) . ret Internal return type. changed user... init Initialization vector","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"rxode2 transformed text","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":null,"dir":"Reference","previous_headings":"","what":"Parse PK function for inclusion in rxode2 — rxParsePk","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"Parse PK function inclusion rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"","code":"rxParsePk(x, init = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"x PK function init Initialization vector","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"rxode2 transformed text.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":null,"dir":"Reference","previous_headings":"","what":"Prepare Pred function for inclusion in rxode2 — rxParsePred","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"Prepare Pred function inclusion rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"","code":"rxParsePred(x, init = NULL, err = NULL, addProp = c(\"combined2\", \"combined1\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"x pred function init Initialization vector","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"rxode2 transformed text.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":null,"dir":"Reference","previous_headings":"","what":"Creates a package from compiled rxode2 models — rxPkg","title":"Creates a package from compiled rxode2 models — rxPkg","text":"Creates package compiled rxode2 models","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Creates a package from compiled rxode2 models — rxPkg","text":"","code":"rxPkg( ..., package, wd = getwd(), action = c(\"install\", \"build\", \"binary\", \"create\"), license = c(\"gpl3\", \"lgpl\", \"mit\", \"agpl3\"), name = \"Firstname Lastname\", fields = list() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Creates a package from compiled rxode2 models — rxPkg","text":"... Models build package package String package name create wd character string working directory create subdirectory according modName. specified, subdirectory named “modName.d” created populated C file, dynamic loading library, plus various working files. missing, files created (removed) temporary directory, rxode2 DLL model created current directory named rx_????_platform, example rx_129f8f97fb94a87ca49ca8dafe691e1e_i386.dll action Type action take package created license type license package. name Full name author fields named list fields add DESCRIPTION, potentially overriding default values. See use_description() can set personalized defaults using package options.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Creates a package from compiled rxode2 models — rxPkg","text":"function returns nothing used side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Creates a package from compiled rxode2 models — rxPkg","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate a from a Poisson process — rxPp","title":"Simulate a from a Poisson process — rxPp","text":"Simulate Poisson process","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate a from a Poisson process — rxPp","text":"","code":"rxPp( n, lambda, gamma = 1, prob = NULL, t0 = 0, tmax = Inf, randomOrder = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate a from a Poisson process — rxPp","text":"n Number time points simulate Poisson process lambda Rate Poisson process gamma Asymmetry rate Poisson process. gamma=1.0, simulates homogenous Poisson process. gamma<1.0, Poisson process events early, gamma > 1.0, Poisson process events late process. gamma non-zero, tmax infinite indicate end Poisson process simulated. pharamcometric cases, end study. Internally uses rate : l(t) = lambdagamma(t/tmax)^(gamma-1) prob specified, probability function one argument, time, gives probability Poisson time t accepted rejection time. t0 starting time Poisson process tmax maximum time Poisson process randomOrder TRUE randomize order Poisson events. default (FALSE) returns Poisson process order events occurred.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate a from a Poisson process — rxPp","text":"returns vector Poisson process times; dropout >= tmax, rest times = tmax indicate dropout equal tmax.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simulate a from a Poisson process — rxPp","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate a from a Poisson process — rxPp","text":"","code":"## Sample homogenous Poisson process of rate 1/10 rxPp(10, 1 / 10) #> [1] 26.15775 33.38380 47.94631 54.17793 55.85722 66.26814 73.62000 #> [8] 106.75224 116.90016 126.39661 ## Sample inhomogenous Poisson rate of 1/10 rxPp(10, 1 / 10, gamma = 2, tmax = 100) #> [1] 19.01904 50.51773 52.22514 52.76671 57.93220 59.95101 63.86916 69.82497 #> [9] 70.21448 70.65940 ## Typically the Poisson process times are in a sequential order, ## using randomOrder gives the Poisson process in random order rxPp(10, 1 / 10, gamma = 2, tmax = 10, randomOrder = TRUE) #> [1] 10.000000 10.000000 10.000000 10.000000 10.000000 10.000000 10.000000 #> [8] 10.000000 10.000000 6.122726 ## This uses an arbitrary function to sample a non-homogenous Poisson process rxPp(10, 1 / 10, prob = function(x) { 1/(1+abs(x)) }) #> [1] 76.20239 136.99708 141.49227 242.51418 303.74927 442.45036 475.40954 #> [8] 558.23538 591.07437 635.88796"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":null,"dir":"Reference","previous_headings":"","what":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"determined internal preferred condition name list .errIdenticalDists","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"","code":"rxPreferredDistributionName(dist)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"dist input distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"Preferred distribution term","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"","code":"rxPreferredDistributionName(\"dt\") #> [1] \"t\" rxPreferredDistributionName(\"add\") #> [1] \"add\" # can be vectorized rxPreferredDistributionName(c(\"add\",\"dt\")) #> add dt #> \"add\" \"t\""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":null,"dir":"Reference","previous_headings":"","what":"rxode2 progress bar functions — rxProgress","title":"rxode2 progress bar functions — rxProgress","text":"rxProgress sets progress bar","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxode2 progress bar functions — rxProgress","text":"","code":"rxProgress(num, core = 0L) rxTick() rxProgressStop(clear = TRUE) rxProgressAbort(error = \"Aborted calculation\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxode2 progress bar functions — rxProgress","text":"num Tot number operations track core Number cores show. 1, show number cores clear Boolean telling clear progress bar completion (displayed). default TRUE error rxProgressAbort error displayed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxode2 progress bar functions — rxProgress","text":"return NULL invisibly.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"rxode2 progress bar functions — rxProgress","text":"rxTick progress bar tick rxProgressStop stop progress bar rxProgressAbort shows abort rxProgressStop called.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxode2 progress bar functions — rxProgress","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"rxode2 progress bar functions — rxProgress","text":"","code":"f <- function() { on.exit({ rxProgressAbort() }) rxProgress(100) for (i in 1:100) { rxTick() Sys.sleep(1 / 100) } rxProgressStop() } # \\donttest{ f() # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":null,"dir":"Reference","previous_headings":"","what":"Prune branches (ie if/else) from rxode2 — rxPrune","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"prunes branches (ie /else) rxode2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"","code":"rxPrune(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"x rxode2 model can accessed rxNorm","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"Pruned rxode2 model text.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":null,"dir":"Reference","previous_headings":"","what":"Reload rxode2 DLL — rxReload","title":"Reload rxode2 DLL — rxReload","text":"Can useful debugging","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Reload rxode2 DLL — rxReload","text":"","code":"rxReload()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Reload rxode2 DLL — rxReload","text":"boolean object reloaded","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Reload rxode2 DLL — rxReload","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":null,"dir":"Reference","previous_headings":"","what":"rxRemoveControl options for UI object — rxRemoveControl","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"rxRemoveControl options UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"","code":"rxRemoveControl(ui)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"ui rxode2 ui object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":null,"dir":"Reference","previous_headings":"","what":"Rename items inside of a rxode2 ui model — rxRename","title":"Rename items inside of a rxode2 ui model — rxRename","text":"rxRename() changes names individual variables, lhs, ode states using new_name = old_name syntax","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rename items inside of a rxode2 ui model — rxRename","text":"","code":"rxRename(.data, ..., envir = parent.frame()) .rxRename(.data, ..., envir = parent.frame()) rename.rxUi(.data, ...) rename.function(.data, ...) # S3 method for rxUi rxRename(.data, ...) # S3 method for `function` rxRename(.data, ...) # S3 method for default rxRename(.data, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rename items inside of a rxode2 ui model — rxRename","text":".data rxode2 ui function, named data consistent dplyr::rename() ... rename items envir Environment evaluation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rename items inside of a rxode2 ui model — rxRename","text":"New model items renamed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Rename items inside of a rxode2 ui model — rxRename","text":"similar dplyr's rename() function. dplyr loaded, s3 methods work ui objects. Note .rxRename() internal function called renaming likely need call unless writing extension function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Rename items inside of a rxode2 ui model — rxRename","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Rename items inside of a rxode2 ui model — rxRename","text":"","code":"ocmt <- function() { ini({ tka <- exp(0.45) # Ka tcl <- exp(1) # Cl ## This works with interactive models ## You may also label the preceding line with label(\"label text\") tv <- exp(3.45) # log V ## the label(\"Label name\") works with all models add.sd <- 0.7 }) model({ ka <- tka cl <- tcl v <- tv d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } ocmt %>% rxRename(cpParent=cp) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 1.568312 2.718282 31.500392 0.700000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 1.56831218549017 #> label(\"Ka\") #> tcl <- 2.71828182845905 #> label(\"Cl\") #> tv <- 31.5003923087479 #> label(\"log V\") #> add.sd <- c(0, 0.7) #> }) #> model({ #> ka <- tka #> cl <- tcl #> v <- tv #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cpParent = center/v #> cpParent ~ add(add.sd) #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":null,"dir":"Reference","previous_headings":"","what":"Rep R0 for foce — rxRepR0_","title":"Rep R0 for foce — rxRepR0_","text":"Rep R0 foce","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rep R0 for foce — rxRepR0_","text":"","code":"rxRepR0_(neta)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rep R0 for foce — rxRepR0_","text":"neta ETA substitute","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rep R0 for foce — rxRepR0_","text":"Returns string R code substitute rx_r expression symengine environment .s","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReservedKeywords.html","id":null,"dir":"Reference","previous_headings":"","what":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","title":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","text":"list description rxode2 supported reserved keywords","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReservedKeywords.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","text":"","code":"rxReservedKeywords"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReservedKeywords.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","text":"data frame 3 columns 31 rows Reserved Name Reserved Keyword Name Meaning Reserved Keyword Meaning Alias Keyword Alias","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxResidualError.html","id":null,"dir":"Reference","previous_headings":"","what":"A description of Rode2 supported residual errors — rxResidualError","title":"A description of Rode2 supported residual errors — rxResidualError","text":"description Rode2 supported residual errors","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxResidualError.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A description of Rode2 supported residual errors — rxResidualError","text":"","code":"rxResidualError"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxResidualError.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"A description of Rode2 supported residual errors — rxResidualError","text":"data frame 6 columns 181 rows Error model description type residual error Functional Form additive proportional functional form used Transformation type transformation done DV prediction code Example code residual error type addProp type add+prop residual error default equivalent lhs left handed side specification represents, either response variable, compartment specification","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":null,"dir":"Reference","previous_headings":"","what":"Load a model into a symengine environment — rxS","title":"Load a model into a symengine environment — rxS","text":"Load model symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Load a model into a symengine environment — rxS","text":"","code":"rxS(x, doConst = TRUE, promoteLinSens = FALSE, envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Load a model into a symengine environment — rxS","text":"x rxode2 object doConst Load constants environment well. promoteLinSens Promote solved linear compartment systems sensitivity-based solutions. envir default NULL; Environment put symengine variables .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Load a model into a symengine environment — rxS","text":"rxode2/symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Load a model into a symengine environment — rxS","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":null,"dir":"Reference","previous_headings":"","what":"rxSetControl options for UI object — rxSetControl","title":"rxSetControl options for UI object — rxSetControl","text":"rxSetControl options UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxSetControl options for UI object — rxSetControl","text":"","code":"rxSetControl(ui, control)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxSetControl options for UI object — rxSetControl","text":"ui rxode2 ui object control Default value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxSetControl options for UI object — rxSetControl","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxSetControl options for UI object — rxSetControl","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign covariates for piping — rxSetCovariateNamesForPiping","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"Assign covariates piping","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"","code":"rxSetCovariateNamesForPiping(covariates = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"covariates NULL (covariates), list covariates. nlmixr uses function set covariates pipe nlmixr fit.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"","code":"# First set the name of known covariates # Note this is case sensitive rxSetCovariateNamesForPiping(c(\"WT\",\"HT\", \"TC\")) one.compartment <- function() { ini({ tka <- 0.45 ; label(\"Log Ka\") tcl <- 1 ; label(\"Log Cl\") tv <- 3.45 ; label(\"Log V\") eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 add.err <- 0.7 }) model({ ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) d / dt(depot) <- -ka * depot d/dt(depot) <- -ka * depot d / dt(center) <- ka * depot - cl / v * center cp <- center / v cp ~ add(add.err) }) } # now TC is detected as a covariate instead of a population parameter one.compartment %>% model({ka <- exp(tka + eta.ka + TC * cov_C)}) #> #> #> ℹ add covariate `TC` (known covariate) #> ℹ add population parameter `cov_C` and set estimate to 1 #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.err cov_C #> 0.45 1.00 3.45 0.70 1.00 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level covariates #> 1 tka eta.ka id TC*cov_C #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.45 #> label(\"Log Ka\") #> tcl <- 1 #> label(\"Log Cl\") #> tv <- 3.45 #> label(\"Log V\") #> add.err <- c(0, 0.7) #> cov_C <- 1 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka + TC * cov_C) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) <- -ka * depot #> d/dt(depot) <- -ka * depot #> d/dt(center) <- ka * depot - cl/v * center #> cp <- center/v #> cp ~ add(add.err) #> }) #> } # You can turn it off by simply adding it back rxSetCovariateNamesForPiping() one.compartment %>% model({ka <- exp(tka + eta.ka + TC * cov_C)}) #> #> #> ℹ add population parameter `TC` and set estimate to 1 #> ℹ add population parameter `cov_C` and set estimate to 1 #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.err TC cov_C #> 0.45 1.00 3.45 0.70 1.00 1.00 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.45 #> label(\"Log Ka\") #> tcl <- 1 #> label(\"Log Cl\") #> tv <- 3.45 #> label(\"Log V\") #> add.err <- c(0, 0.7) #> TC <- 1 #> cov_C <- 1 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka + TC * cov_C) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) <- -ka * depot #> d/dt(depot) <- -ka * depot #> d/dt(center) <- ka * depot - cl/v * center #> cp <- center/v #> cp ~ add(add.err) #> }) #> } # The covariates you set with `rxSetCovariateNamesForPiping()` # are turned off every time you solve (or fit in nlmixr)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":null,"dir":"Reference","previous_headings":"","what":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"Set variables model piping automatic covarite selection","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"","code":"rxSetPipingAuto( thetamodelVars = rex::rex(or(\"tv\", \"t\", \"pop\", \"POP\", \"Pop\", \"TV\", \"T\", \"cov\", \"err\", \"eff\")), covariateExceptions = rex::rex(start, or(\"wt\", \"sex\", \"crcl\"), end), etaParts = c(\"eta\", \"ETA\", \"Eta\", \"ppv\", \"PPV\", \"Ppv\", \"iiv\", \"Iiv\", \"bsv\", \"Bsv\", \"BSV\", \"bpv\", \"Bpv\", \"BPV\", \"psv\", \"PSV\", \"Psv\") )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"thetamodelVars prefixes theta model variables regular expression covariateExceptions regular expression covariates always covariates etaParts list eta prefixes/post-fixes identify variable subject variability","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"called startup set defaults, though can change wish piping can work differently individual setup","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":null,"dir":"Reference","previous_headings":"","what":"Defunct setting of product — rxSetProd","title":"Defunct setting of product — rxSetProd","text":"Defunct setting product","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Defunct setting of product — rxSetProd","text":"","code":"rxSetProd(type = c(\"long double\", \"double\", \"logify\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Defunct setting of product — rxSetProd","text":"type used type product","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Defunct setting of product — rxSetProd","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":null,"dir":"Reference","previous_headings":"","what":"Set timing for progress bar — rxSetProgressBar","title":"Set timing for progress bar — rxSetProgressBar","text":"Set timing progress bar","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set timing for progress bar — rxSetProgressBar","text":"","code":"rxSetProgressBar(seconds = 1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set timing for progress bar — rxSetProgressBar","text":"seconds sets number seconds need elapse drawing next segment progress bar. zero turns progress bar.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set timing for progress bar — rxSetProgressBar","text":"nothing, used side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set timing for progress bar — rxSetProgressBar","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":null,"dir":"Reference","previous_headings":"","what":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"Silence rxode2's C/C++ messages","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"","code":"rxSetSilentErr(silent)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"silent can 0L \"noisy\" 1L \"silent\"","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"TRUE; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":null,"dir":"Reference","previous_headings":"","what":"Defunct setting of sum — rxSetSum","title":"Defunct setting of sum — rxSetSum","text":"Defunct setting sum","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Defunct setting of sum — rxSetSum","text":"","code":"rxSetSum(type = c(\"pairwise\", \"fsum\", \"kahan\", \"neumaier\", \"c\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Defunct setting of sum — rxSetSum","text":"type used type product","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Defunct setting of sum — rxSetSum","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Setup the initial conditions. — rxSetupIni","title":"Setup the initial conditions. — rxSetupIni","text":"Setup initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Setup the initial conditions. — rxSetupIni","text":"","code":"rxSetupIni(obj, inits = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Setup the initial conditions. — rxSetupIni","text":"obj rxode2 object inits numeric vector initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Setup the initial conditions. — rxSetupIni","text":"initial conditions setup","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Setup the initial conditions. — rxSetupIni","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":null,"dir":"Reference","previous_headings":"","what":"Setup the initial conditions. — rxSetupScale","title":"Setup the initial conditions. — rxSetupScale","text":"Setup initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Setup the initial conditions. — rxSetupScale","text":"","code":"rxSetupScale(obj, scale = NULL, extraArgs = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Setup the initial conditions. — rxSetupScale","text":"obj rxode2 object scale numeric vector scales extraArgs list extra args parse initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Setup the initial conditions. — rxSetupScale","text":"setup scale changing compartment values","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Setup the initial conditions. — rxSetupScale","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":null,"dir":"Reference","previous_headings":"","what":"Use Shiny to help develop an rxode2 model — rxShiny","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"Use Shiny help develop rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"","code":"rxShiny( object, params = NULL, events = NULL, inits = NULL, ..., data = data.frame() ) # S3 method for rxSolve rxShiny( object, params = NULL, events = NULL, inits = NULL, ..., data = data.frame() ) # S3 method for default rxShiny( object = NULL, params = NULL, events = NULL, inits = NULL, ..., data = data.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"object rxode2 family objects. supplied 2-compartment indirect effect model used. supplied, use model associated rxode2 object model exploration. params Initial parameters model events Event information (currently ignored) inits Initial estimates model ... arguments passed rxShiny. Currently anything. data data like plot. data time variable well compartment calculated variable matches rxode2 model, data added plot specific compartment calculated variable.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"Nothing; Starts shiny server","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"Zufar Mulyukov Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"Simulate Parameters Theta/Omega specification","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"","code":"rxSimThetaOmega( params = NULL, omega = NULL, omegaDf = NULL, omegaLower = as.numeric(c(R_NegInf)), omegaUpper = as.numeric(c(R_PosInf)), omegaIsChol = FALSE, omegaSeparation = \"auto\", omegaXform = 1L, nSub = 1L, thetaMat = NULL, thetaLower = as.numeric(c(R_NegInf)), thetaUpper = as.numeric(c(R_PosInf)), thetaDf = NULL, thetaIsChol = FALSE, nStud = 1L, sigma = NULL, sigmaLower = as.numeric(c(R_NegInf)), sigmaUpper = as.numeric(c(R_PosInf)), sigmaDf = NULL, sigmaIsChol = FALSE, sigmaSeparation = \"auto\", sigmaXform = 1L, nCoresRV = 1L, nObs = 1L, dfSub = 0, dfObs = 0, simSubjects = TRUE, simVariability = as.logical(c(NA_LOGICAL)) )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"params Named Vector rxode2 model parameters omega Estimate Covariance matrix. omega list, assume block matrix convert full matrix simulations. omega NA using rxode2 ui model, subject variability described omega matrix set zero. omegaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. omegaLower Lower bounds simulated ETAs (default -Inf) omegaUpper Upper bounds simulated ETAs (default Inf) omegaIsChol Indicates omega supplied Cholesky decomposed matrix instead traditional symmetric matrix. omegaSeparation Omega separation strategy Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. omegaXform taking omega values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. nSub Number subject variabilities (ETAs) simulated every realization parameters. thetaMat Named theta matrix. thetaLower Lower bounds simulated population parameter variability (default -Inf) thetaUpper Upper bounds simulated population unexplained variability (default Inf) thetaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. thetaIsChol Indicates theta supplied Cholesky decomposed matrix instead traditional symmetric matrix. nStud Number virtual studies characterize uncertainty estimated parameters. sigma Named sigma covariance Cholesky decomposition covariance matrix. names columns indicate parameters simulated. simulated every observation solved system. sigma NA using rxode2 ui model, unexplained variability described sigma matrix set zero. sigmaLower Lower bounds simulated unexplained variability (default -Inf) sigmaUpper Upper bounds simulated unexplained variability (default Inf) sigmaDf Degrees freedom sigma t-distribution. default equivalent Inf, normal distribution. sigmaIsChol Boolean indicating sigma Cholesky decomposition instead symmetric covariance sigmaSeparation separation strategy sigma; Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. sigmaXform taking sigma values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. nCoresRV Number cores used simulation sigma variables. default 1. reproduce results need run platform number cores. reason set one, regardless number cores used threaded ODE solving. nObs Number observations simulate (sigma matrix) dfSub Degrees freedom sample subject variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. dfObs Degrees freedom sample unexplained variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. simSubjects boolean indicated rxode2 simulate subjects studies (TRUE, default) studies (FALSE) simVariability determines variability simulated. NA (default) determined solver.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"data frame simulated subjects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Options, Solving & Simulation of an ODE/solved system — rxSolve","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"uses rxode2 family objects, file, model specification solve ODE system. many options solved rxode2 model, first required object, events -times optional params inits.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"","code":"rxSolve( object, params = NULL, events = NULL, inits = NULL, scale = NULL, method = c(\"liblsoda\", \"lsoda\", \"dop853\", \"indLin\"), sigdig = NULL, atol = 1e-08, rtol = 1e-06, maxsteps = 70000L, hmin = 0, hmax = NA_real_, hmaxSd = 0, hini = 0, maxordn = 12L, maxords = 5L, ..., cores, covsInterpolation = c(\"locf\", \"linear\", \"nocb\", \"midpoint\"), addCov = TRUE, sigma = NULL, sigmaDf = NULL, sigmaLower = -Inf, sigmaUpper = Inf, nCoresRV = 1L, sigmaIsChol = FALSE, sigmaSeparation = c(\"auto\", \"lkj\", \"separation\"), sigmaXform = c(\"identity\", \"variance\", \"log\", \"nlmixrSqrt\", \"nlmixrLog\", \"nlmixrIdentity\"), nDisplayProgress = 10000L, amountUnits = NA_character_, timeUnits = \"hours\", theta = NULL, thetaLower = -Inf, thetaUpper = Inf, eta = NULL, addDosing = FALSE, stateTrim = Inf, updateObject = FALSE, omega = NULL, omegaDf = NULL, omegaIsChol = FALSE, omegaSeparation = c(\"auto\", \"lkj\", \"separation\"), omegaXform = c(\"variance\", \"identity\", \"log\", \"nlmixrSqrt\", \"nlmixrLog\", \"nlmixrIdentity\"), omegaLower = -Inf, omegaUpper = Inf, nSub = 1L, thetaMat = NULL, thetaDf = NULL, thetaIsChol = FALSE, nStud = 1L, dfSub = 0, dfObs = 0, returnType = c(\"rxSolve\", \"matrix\", \"data.frame\", \"data.frame.TBS\", \"data.table\", \"tbl\", \"tibble\"), seed = NULL, nsim = NULL, minSS = 10L, maxSS = 1000L, infSSstep = 12, strictSS = TRUE, istateReset = TRUE, subsetNonmem = TRUE, maxAtolRtolFactor = 0.1, from = NULL, to = NULL, by = NULL, length.out = NULL, iCov = NULL, keep = NULL, indLinPhiTol = 1e-07, indLinPhiM = 0L, indLinMatExpType = c(\"expokit\", \"Al-Mohy\", \"arma\"), indLinMatExpOrder = 6L, drop = NULL, idFactor = TRUE, mxhnil = 0, hmxi = 0, warnIdSort = TRUE, warnDrop = TRUE, ssAtol = 1e-08, ssRtol = 1e-06, safeZero = TRUE, sumType = c(\"pairwise\", \"fsum\", \"kahan\", \"neumaier\", \"c\"), prodType = c(\"long double\", \"double\", \"logify\"), sensType = c(\"advan\", \"autodiff\", \"forward\", \"central\"), linDiff = c(tlag = 1.5e-05, f = 1.5e-05, rate = 1.5e-05, dur = 1.5e-05, tlag2 = 1.5e-05, f2 = 1.5e-05, rate2 = 1.5e-05, dur2 = 1.5e-05), linDiffCentral = c(tlag = TRUE, f = TRUE, rate = TRUE, dur = TRUE, tlag2 = TRUE, f2 = TRUE, rate2 = TRUE, dur2 = TRUE), resample = NULL, resampleID = TRUE, maxwhile = 1e+05, atolSens = 1e-08, rtolSens = 1e-06, ssAtolSens = 1e-08, ssRtolSens = 1e-06, simVariability = NA, nLlikAlloc = NULL, useStdPow = FALSE, naTimeHandle = c(\"ignore\", \"warn\", \"error\"), addlKeepsCov = FALSE, addlDropSs = TRUE, ssAtDoseTime = TRUE, ss2cancelAllPending = FALSE, envir = parent.frame() ) # S3 method for `function` rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for rxUi rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for rxode2tos rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for nlmixr2FitData rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for nlmixr2FitCore rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for default rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for rxSolve update(object, ...) # S3 method for rxode2 predict(object, ...) # S3 method for `function` predict(object, ...) # S3 method for rxUi predict(object, ...) # S3 method for rxSolve predict(object, ...) # S3 method for rxEt predict(object, ...) # S3 method for rxParams predict(object, ...) # S3 method for rxode2 simulate(object, nsim = 1L, seed = NULL, ...) # S3 method for rxSolve simulate(object, nsim = 1L, seed = NULL, ...) # S3 method for rxParams simulate(object, nsim = 1L, seed = NULL, ...) # S3 method for rxSolve solve(a, b, ...) # S3 method for rxUi solve(a, b, ...) # S3 method for `function` solve(a, b, ...) # S3 method for rxode2 solve(a, b, ...) # S3 method for rxParams solve(a, b, ...) # S3 method for rxEt solve(a, b, ...) rxControl( ..., params = NULL, events = NULL, inits = NULL, envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"object either rxode2 family objects, file-name rxode2 model specification, string rxode2 model specification. params numeric named vector values every parameter ODE system; names must correspond parameter identifiers used ODE specification; events eventTable object describing input (e.g., doses) dynamic system observation sampling time points (see eventTable()); inits vector initial values state variables (e.g., amounts compartment), order vector must state variables (e.g., PK/PD compartments); scale numeric named vector scaling ode parameters system. names must correspond parameter identifiers ODE specification. ODE variables divided scaling factor. example scale=c(center=2) divide center ODE variable 2. method method solving ODEs. Currently supports: \"liblsoda\" thread safe lsoda. supports parallel thread-based solving, ignores user Jacobian specification. \"lsoda\" -- LSODA solver. support parallel thread-based solving, allows user Jacobian specification. \"dop853\" -- DOP853 solver. support parallel thread-based solving user Jacobian specification \"indLin\" -- Solving inductive linearization. rxode2 dll must setup specially use solving routine. sigdig Specifies \"significant digits\" ode solving requests. specified controls relative absolute tolerances ODE solvers. default tolerance 0.5*10^(-sigdig-2) regular ODEs. sensitivity equations default 0.5*10\\^(-sigdig-1.5) (sensitivity changes applicable liblsoda). also controls atol/rtol steady state solutions. ssAtol/ssRtol 0.5*10\\^(-sigdig) sensitivities 0.5*10\\^(-sigdig+0.625). default unspecified (NULL) uses standard atol/rtol. atol numeric absolute tolerance (1e-8 default) used ODE solver determine good solution achieved; also used solved linear model check prior doses add anything solution. rtol numeric relative tolerance (1e-6 default) used ODE solver determine good solution achieved. also used solved linear model check prior doses add anything solution. maxsteps maximum number (internally defined) steps allowed one call solver. (5000 default) hmin minimum absolute step size allowed. default value 0. hmax maximum absolute step size allowed. hmax=NA (default), uses average difference + hmaxSd*sd times sampling events. hmaxSd user specified parameter defaults zero. hmax=NULL rxode2 uses maximum difference times sampling events. value 0 equivalent infinite maximum absolute step size. hmaxSd number standard deviations time difference add hmax. default 0 hini step size attempted first step. default value determined solver (hini = 0) maxordn maximum order allowed nonstiff (Adams) method. default 12. can 1 12. maxords maximum order allowed stiff (BDF) method. default value 5. can 1 5. ... arguments including scaling factors compartment. includes S# = numeric scale compartment # dividing compartment amount scale factor, like NONMEM. cores Number cores used parallel ODE solving. equivalent calling setRxThreads() covsInterpolation specifies interpolation method time-varying covariates. solving ODEs often samples times outside sampling time specified events. happens, time varying covariates interpolated. Currently can : \"linear\" interpolation, interpolates covariate solving line observed covariates extrapolating new covariate value. \"constant\" -- Last observation carried forward (default). \"NOCB\" -- Next Observation Carried Backward. method NONMEM uses. \"midpoint\" Last observation carried forward midpoint; Next observation carried backward midpoint. addCov boolean indicating covariates added output matrix data frame. default disabled. sigma Named sigma covariance Cholesky decomposition covariance matrix. names columns indicate parameters simulated. simulated every observation solved system. sigma NA using rxode2 ui model, unexplained variability described sigma matrix set zero. sigmaDf Degrees freedom sigma t-distribution. default equivalent Inf, normal distribution. sigmaLower Lower bounds simulated unexplained variability (default -Inf) sigmaUpper Upper bounds simulated unexplained variability (default Inf) nCoresRV Number cores used simulation sigma variables. default 1. reproduce results need run platform number cores. reason set one, regardless number cores used threaded ODE solving. sigmaIsChol Boolean indicating sigma Cholesky decomposition instead symmetric covariance sigmaSeparation separation strategy sigma; Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. sigmaXform taking sigma values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. nDisplayProgress integer indicating minimum number c-based solves progress bar shown. default 10,000. amountUnits supplies dose units data frame supplied instead event table. importing data rxode2 event table. timeUnits supplies time units data frame supplied instead event table. importing data rxode2 event table. theta vector parameters named THETA\\[#\\] added parameters thetaLower Lower bounds simulated population parameter variability (default -Inf) thetaUpper Upper bounds simulated population unexplained variability (default Inf) eta vector parameters named ETA\\[#\\] added parameters addDosing Boolean indicating solve add rxode2 EVID related columns. also include dosing information estimates doses. default, rxode2 includes estimates observations. (default FALSE). addDosing NULL, include EVID=0 solve exclude model-times EVID=2. addDosing NA classic rxode2 EVID events returned. addDosing TRUE add event information NONMEM-style format; subsetNonmem=FALSE rxode2 also include extra event types (EVID) ending infusion modeled times: EVID=-1 modeled rate infusions turned (matches rate=-1) EVID=-2 modeled duration infusions turned (matches rate=-2) EVID=-10 specified rate infusions turned (matches rate>0) EVID=-20 specified dur infusions turned (matches dur>0) EVID=101,102,103,... Modeled time 101 first model time, 102 second etc. stateTrim amounts/concentrations one states value, trim value. default Inf. Also trims -stateTrim large negative amounts/concentrations. want trim range say c(0, 2000000) may specify 2 values lower upper range make sure state values reasonable range. updateObject internally used flag update rxode2 solved object (supplying rxode2 solved object) well returning new object. probably modify FALSE default unless willing unexpected results. omega Estimate Covariance matrix. omega list, assume block matrix convert full matrix simulations. omega NA using rxode2 ui model, subject variability described omega matrix set zero. omegaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. omegaIsChol Indicates omega supplied Cholesky decomposed matrix instead traditional symmetric matrix. omegaSeparation Omega separation strategy Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. omegaXform taking omega values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. omegaLower Lower bounds simulated ETAs (default -Inf) omegaUpper Upper bounds simulated ETAs (default Inf) nSub Number subject variabilities (ETAs) simulated every realization parameters. thetaMat Named theta matrix. thetaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. thetaIsChol Indicates theta supplied Cholesky decomposed matrix instead traditional symmetric matrix. nStud Number virtual studies characterize uncertainty estimated parameters. dfSub Degrees freedom sample subject variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. dfObs Degrees freedom sample unexplained variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. returnType tells type object returned. currently supported types : \"rxSolve\" (default) return reactive data frame can change easily change different pieces solve update data frame. currently standard solving method rxode2, used rxSolve(object, ...), solve(object,...), \"data.frame\" -- returns plain, non-reactive data frame; Currently slightly faster returnType=\"matrix\" \"matrix\" -- returns plain matrix column names attached solved object. used object$run well object$solve \"data.table\" -- returns data.table; data.table created reference (ie setDt()), fast. \"tbl\" \"tibble\" returns tibble format. seed object specifying random number generator initialized nsim represents number simulations. rxode2, supply single subject event tables (created [eventTable()]) minSS Minimum number iterations steady-state dose maxSS Maximum number iterations steady-state dose infSSstep Step size determining constant infusion reached steady state. default large value, 12. strictSS Boolean indicating strict steady-state required. strict steady-state (TRUE) required least minSS doses administered total number steady states doses continue maxSS reached, atol rtol every compartment reached. However, ODE solving problems occur minSS reached whole subject considered invalid solve. strictSS FALSE long minSS reached last good solve ODE solving problems occur considered steady state, even though either atol, rtol maxSS achieved. istateReset TRUE, reset ISTATE variable 1 lsoda liblsoda doses, like deSolve; FALSE, reset ISTATE variable doses. subsetNonmem subset NONMEM compatible EVIDs . default TRUE. maxAtolRtolFactor maximum atol/rtol FOCEi routines may adjust . default 0.1 observations event table, start observations value. default zero. observations event table, end observations value. default 24 + maximum dose time. observations event table, amount increment observations . length.number observations create observations event table. default 200. iCov data frame individual non-time varying covariates combine events dataset merge. keep Columns keep either input dataset iCov dataset. iCov dataset, column kept per line. input dataset, records added data LOCF (Last Observation Carried forward) imputation performed. indLinPhiTol requested accuracy tolerance exponential matrix. indLinPhiM maximum size Krylov basis indLinMatExpType matrix exponential type use rxode2. Currently following supported: Al-Mohy Uses exponential matrix method Al-Mohy Higham (2009) arma Use exponential matrix RcppArmadillo expokit Use exponential matrix Roger B. Sidje (1998) indLinMatExpOrder integer, order approximation used, Al-Mohy expokit values. best value depends machine precision (slightly matrix). use 6 default. drop Columns drop output idFactor boolean indicates original ID values maintained. changes default sequentially ordered ID factor original ID values original dataset. default enabled. mxhnil maximum number messages printed (per problem) warning T + H = T step (H = step size). must positive result non-default value. default value 0 (infinite). hmxi inverse maximum absolute value H used. hmxi = 0.0 allowed corresponds infinite hmax1 (default). hminandhmximay changed time, take effect next change ofHis considered. option considered withmethod=\"liblsoda\"`. warnIdSort Warn ID present rxode2 assumes order parameters/iCov order parameters input dataset. warnDrop Warn column(s) supposed dropped, present. ssAtol Steady state atol convergence factor. Can vector based state. ssRtol Steady state rtol convergence factor. Can vector based state. safeZero Use safe zero divide log routines. default turned may turn wish. sumType Sum type use sum() rxode2 code blocks. pairwise uses pairwise sum (fast, default) fsum uses PreciseSum package's fsum function (accurate) kahan uses Kahan correction neumaier uses Neumaier correction c uses correction: default/native summing prodType Product use prod() rxode2 blocks long double converts long double, performs multiplication converts back. double uses standard double scale multiplication. sensType Sensitivity type linCmt() model: advan Use direct advan solutions autodiff Use autodiff advan solutions forward Use forward difference solutions central Use central differences linDiff gives linear difference amount types linear compartment model parameters sensitivities calculated. named components numeric vector : \"lag\" Central compartment lag \"f\" Central compartment bioavailability \"rate\" Central compartment modeled rate \"dur\" Central compartment modeled duration \"lag2\" Depot compartment lag \"f2\" Depot compartment bioavailability \"rate2\" Depot compartment modeled rate \"dur2\" Depot compartment modeled duration linDiffCentral gives parameters use central differences linear compartment model parameters. components linDiff resample character vector model variables resample input dataset; sampling done replacement. NULL FALSE resampling done. TRUE resampling done covariates input dataset resampleID boolean representing resampling done individual basis TRUE (ie. whole patient selected) covariate resampled independent subject identifier FALSE. resampleID=TRUE correlations parameters retained, resampleID=FALSE ignores patient covariate correaltions. Hence default resampleID=TRUE. maxwhile represents maximum times loop evaluated exiting. default 100000 atolSens Sensitivity atol, can different atol liblsoda. allows less accurate solve gradients (desired) rtolSens Sensitivity rtol, can different rtol liblsoda. allows less accurate solve gradients (desired) ssAtolSens Sensitivity absolute tolerance (atol) calculating steady state achieved sensitivity compartments. ssRtolSens Sensitivity relative tolerance (rtol) calculating steady state achieved sensitivity compartments. simVariability determines variability simulated. NA (default) determined solver. nLlikAlloc number log likelihood endpoints used model. allows independent log likelihood per endpoint focei nlmixr2. likely set, though hurt anything (just may take memory larger allocations). useStdPow uses C's pow exponentiation instead R's R_pow R_pow_di. default FALSE naTimeHandle Determines time handling happens time becomes NA: current options : ignore ignores NA time input passes . warn (default) produce warning end solve, continues solving passing NA time error stop solve parallel solved ODE (otherwise stopping can crash R) addlKeepsCov determines additional dosing items repeats dose (FALSE) keeps covariates record dose (TRUE) addlDropSs steady state doses addl specification steady state flag dropped repeated doses (TRUE) retained (FALSE) ssAtDoseTime Boolean TRUE back calculates steady concentration actual time dose, otherwise FALSE doses shifted ss2cancelAllPending TRUE SS=2 event type cancels pending doses like SS=1. FALSE pending doses canceled SS=2 (infusions started SS=2 occurred canceled, though). envir environment look R user functions (defaults parent environment) using solve(), equivalent object argument. specify object later argument list overwrites parameter. b using solve(), equivalent params argument. specify params named argument, overwrites output","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"“rxSolve” solve object stores solved value special data.frame type determined returnType. default many rows sampled time points many columns system variables (defined ODEs additional assignments rxode2 model code). also stores information call allow dynamic updating solved object. operations object similar data-frame, expand $ [[\"\"]] access operators assignment operators resolve based different parameter values, initial conditions, solver parameters, events (updating time variable). can call eventTable() methods solved object update event table resolve system equations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"rest document focus different ODE solving methods, followed core solving method's options, rxode2 event handling options, rxode2's numerical stability options, rxode2's output options, finally internal rxode2 options compatibility options.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"\"New Scaling Squaring Algorithm Matrix Exponential\", Awad H. Al-Mohy Nicholas J. Higham, August 2009 Roger B. Sidje (1998). EXPOKIT: Software package computing matrix exponentials. ACM - Transactions Mathematical Software 24(1), 130-156. Hindmarsh, . C. ODEPACK, Systematized Collection ODE Solvers. Scientific Computing, R. S. Stepleman et al. (Eds.), North-Holland, Amsterdam, 1983, pp. 55-64. Petzold, L. R. Automatic Selection Methods Solving Stiff Nonstiff Systems Ordinary Differential Equations. Siam J. Sci. Stat. Comput. 4 (1983), pp. 136-148. Hairer, E., Norsett, S. P., Wanner, G. Solving ordinary differential equations , nonstiff problems. 2nd edition, Springer Series Computational Mathematics, Springer-Verlag (1993).","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"Matthew Fidler, Melissa Hallow Wenping Wang","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolveFree.html","id":null,"dir":"Reference","previous_headings":"","what":"Free the C solving/parsing information. — rxSolveFree","title":"Free the C solving/parsing information. — rxSolveFree","text":"Take ODE C system free .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolveFree.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Free the C solving/parsing information. — rxSolveFree","text":"","code":"rxSolveFree()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolveFree.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Free the C solving/parsing information. — rxSolveFree","text":"logical indicating memory successfully freed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":null,"dir":"Reference","previous_headings":"","what":"This function splits a function based on + or - terms — rxSplitPlusQ","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"uses parser disturb terms within functions. example:","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"","code":"rxSplitPlusQ(x, level = 0, mult = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"x Quoted R expression splitting level Internal level parsing mult boolean split based * / expressions instead. default turned .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"character vector split expressions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"aexp(b+c)+dlog(e-f)-g*f return c(\"* exp(b + c)\", \"d * log(e - f)\", \"- g * f\")","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":null,"dir":"Reference","previous_headings":"","what":"State variables — rxState","title":"State variables — rxState","text":"returns model's compartments states.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"State variables — rxState","text":"","code":"rxState(obj = NULL, state = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"State variables — rxState","text":"obj rxode2 family objects state string indicating state compartment like lookup.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"State variables — rxState","text":"state missing, return character vector states. state string, return compartment number named state.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"State variables — rxState","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Recast model in terms of sum/prod — rxSumProdModel","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"Recast model terms sum/prod","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"","code":"rxSumProdModel(model, expand = FALSE, sum = TRUE, prod = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"model rxode2 model expand Boolean indicating expression expanded. sum Use sum(...) prod Use prod(...)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"model string prod(.) sum(.) operations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":null,"dir":"Reference","previous_headings":"","what":"Get list of supported functions — rxSupportedFuns","title":"Get list of supported functions — rxSupportedFuns","text":"Get list supported functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get list of supported functions — rxSupportedFuns","text":"","code":"rxSupportedFuns()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get list of supported functions — rxSupportedFuns","text":"list supported functions rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Get list of supported functions — rxSupportedFuns","text":"","code":"rxSupportedFuns() #> [1] \"gammafn\" \"lgammafn\" \"lgamma\" #> [4] \"loggamma\" \"digamma\" \"trigamma\" #> [7] \"tetragamma\" \"pentagamma\" \"cospi\" #> [10] \"sinpi\" \"tanpi\" \"log1p\" #> [13] \"expm1\" \"factorial\" \"lfactorial\" #> [16] \"lgamma1p\" \"log10\" \"log2\" #> [19] \"log1pexp\" \"phi\" \"pnorm\" #> [22] \"normcdf\" \"qnorm\" \"fabs\" #> [25] \"pow\" \"R_pow\" \"R_pow_di\" #> [28] \"Rx_pow_di\" \"Rx_pow\" \"lbeta\" #> [31] \"abs\" \"acos\" \"acosh\" #> [34] \"asin\" \"asinh\" \"atan\" #> [37] \"atan2\" \"atanh\" \"beta\" #> [40] \"cos\" \"cosh\" \"erf\" #> [43] \"erfc\" \"exp\" \"gamma\" #> [46] \"linCmtA\" \"linCmtC\" \"linCmtB\" #> [49] \"log\" \"polygamma\" \"rxTBS\" #> [52] \"rxTBSi\" \"rxTBSd\" \"rxTBSd2\" #> [55] \"sin\" \"sinh\" \"sqrt\" #> [58] \"tan\" \"tanh\" \"gammap\" #> [61] \"floor\" \"round\" \"ceil\" #> [64] \"trunc\" \"bessel_i\" \"bessel_j\" #> [67] \"bessel_k\" \"bessel_y\" \"logspace_add\" #> [70] \"logspace_sub\" \"fmax2\" \"fmin2\" #> [73] \"sign\" \"fsign\" \"fprec\" #> [76] \"fround\" \"ftrunc\" \"transit\" #> [79] \"gammaq\" \"gammapDer\" \"gammapInv\" #> [82] \"gammapInva\" \"gammaqInv\" \"gammaqInva\" #> [85] \"lowergamma\" \"uppergamma\" \"max\" #> [88] \"min\" \"logit\" \"expit\" #> [91] \"probit\" \"probitInv\" \"tlast\" #> [94] \"tfirst\" \"lag\" \"lead\" #> [97] \"dose\" \"podo\" \"dabs\" #> [100] \"dabs2\" \"abs1\" \"dabs1\" #> [103] \"erfinv\" \"abs0\" \"dosenum\" #> [106] \"first\" \"last\" \"diff\" #> [109] \"is.nan\" \"is.na\" \"is.finite\" #> [112] \"is.infinite\" \"llikPois\" \"llikPoisDlambda\" #> [115] \"llikBinom\" \"llikBinomDprob\" \"llikNbinom\" #> [118] \"llikNbinomDprob\" \"llikNbinomMu\" \"llikNbinomMuDmu\" #> [121] \"llikBeta\" \"llikBetaDshape1\" \"llikBetaDshape2\" #> [124] \"llikT\" \"llikTDdf\" \"llikTDmean\" #> [127] \"llikTDsd\" \"llikChisq\" \"llikChisqDdf\" #> [130] \"llikExp\" \"llikExpDrate\" \"llikF\" #> [133] \"llikFDdf1\" \"llikFDdf2\" \"llikGeom\" #> [136] \"llikGeomDprob\" \"llikUnif\" \"llikUnifDalpha\" #> [139] \"llikUnifDbeta\" \"llikWeibull\" \"llikWeibullDshape\" #> [142] \"llikWeibullDscale\" \"llikGamma\" \"llikGammaDshape\" #> [145] \"llikGammaDrate\" \"llikCauchy\" \"llikCauchyDlocation\" #> [148] \"llikCauchyDscale\" \"llikNorm\" \"llikNormDmean\" #> [151] \"llikNormDsd\" \"llikXPois\" \"llikXPoisDlambda\" #> [154] \"llikXBinom\" \"llikXBinomDprob\" \"llikXNbinomMu\" #> [157] \"llikXNbinomMuDmu\" \"llikXNbinom\" \"llikXNbinomDprob\" #> [160] \"llikXBeta\" \"llikXBetaDshape1\" \"llikXBetaDshape2\" #> [163] \"llikXT\" \"llikXTDdf\" \"llikXTDmean\" #> [166] \"llikXTDsd\" \"llikXChisq\" \"llikXChisqDdf\" #> [169] \"llikXExp\" \"llikXExpDrate\" \"llikXF\" #> [172] \"llikXFDdf1\" \"llikXFDdf2\" \"llikXGeom\" #> [175] \"llikXGeomDprob\" \"llikXUnif\" \"llikXUnifDalpha\" #> [178] \"llikXUnifDbeta\" \"llikXWeibull\" \"llikXWeibullDshape\" #> [181] \"llikXWeibullDscale\" \"llikXGamma\" \"llikXGammaDshape\" #> [184] \"llikXGammaDrate\" \"llikXCauchy\" \"llikXCauchyDlocation\" #> [187] \"llikXCauchyDscale\" \"llikXNorm\" \"llikXNormDmean\" #> [190] \"llikXNormDsd\" \"linCmt\" \"rnorm\" #> [193] \"rxnorm\" \"rxbinom\" \"rbinom\" #> [196] \"rxcauchy\" \"rcauchy\" \"rchisq\" #> [199] \"rxchisq\" \"rexp\" \"rxexp\" #> [202] \"rbeta\" \"rxbeta\" \"rgeom\" #> [205] \"rxgeom\" \"rxpois\" \"rpois\" #> [208] \"rxt\" \"rt\""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":null,"dir":"Reference","previous_headings":"","what":"Respect suppress messages — rxSuppressMsg","title":"Respect suppress messages — rxSuppressMsg","text":"turns silent REprintf C suppressMessages() turned . makes REprintf act like messages R, can suppressed suppressMessages()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Respect suppress messages — rxSuppressMsg","text":"","code":"rxSuppressMsg()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Respect suppress messages — rxSuppressMsg","text":"Nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Respect suppress messages — rxSuppressMsg","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Respect suppress messages — rxSuppressMsg","text":"","code":"# rxSupressMsg() is called with rxode2() # Note the errors are output to the console try(rxode2(\"d/dt(matt)=/3\"), silent = TRUE) #> #> # When using suppressMessages, the output is suppressed suppressMessages(try(rxode2(\"d/dt(matt)=/3\"), silent = TRUE)) # In rxode2, we use REprintf so that interrupted threads do not crash R # if there is a user interrupt. This isn't captured by R's messages, but # This interface allows the `suppressMessages()` to suppress the C printing # as well # If you want to suppress messages from rxode2 in other packages, you can use # this function"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":null,"dir":"Reference","previous_headings":"","what":"Get Omega^-1 and derivatives — rxSymInvChol","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"Get Omega^-1 derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"","code":"rxSymInvChol( invObjOrMatrix, theta = NULL, type = \"cholOmegaInv\", thetaNumber = 0L )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"invObjOrMatrix Object inverse-type calculations. matrix, setup object inversion rxSymInvCholCreate() default arguments return reactive s3 object. Otherwise, use inversion object calculate requested derivative/inverse. theta Thetas used calculation. missing (NULL), special s3 class created returned access Omega^1 objects needed cache based theta used. type type object. Currently following types supported: cholOmegaInv gives Cholesky decomposition Omega Inverse matrix. omegaInv gives Omega Inverse matrix. d(omegaInv) gives d(Omega^-1) withe respect theta parameter specified thetaNumber. d(D) gives d(diagonal(Omega^-1)) respect theta parameter specified thetaNumber parameter thetaNumber types d(omegaInv) d(D), theta number derivative taken . must positive 1 number thetas defining Omega matrix.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"Matrix based parameters environment matrixes calculated variables omega, omegaInv, dOmega, dOmegaInv.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":null,"dir":"Reference","previous_headings":"","what":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"Creates object calculating Omega/Omega^-1 derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"","code":"rxSymInvCholCreate( mat, diag.xform = c(\"sqrt\", \"log\", \"identity\"), create.env = TRUE, envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"mat Initial Omega matrix diag.xform transformation diagonal elements OMEGA. chol(Omega^-1) create.env -- Create environment calculate inverses. (default TRUE) envir -- Environment evaluate function, bu default parent frame.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"rxSymInv object rxSymInv environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholN.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","title":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","text":"Return dimension built-derivatives/inverses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholN.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","text":"","code":"rxSymInvCholN()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholN.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","text":"dimension built-derivatives/inverses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":null,"dir":"Reference","previous_headings":"","what":"Sync options with rxode2 variables — rxSyncOptions","title":"Sync options with rxode2 variables — rxSyncOptions","text":"Accessing rxode2 options via getOption slows solving. allows options synced variables.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Sync options with rxode2 variables — rxSyncOptions","text":"","code":"rxSyncOptions(setDefaults = c(\"none\", \"permissive\", \"strict\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Sync options with rxode2 variables — rxSyncOptions","text":"setDefaults setup rxode2's default solving options following options: \"none\" leave options alone \"permissive\" permissive option set similar R language specifications. \"strict\" strict option set similar original rxode2(). requires semicolons end lines equals assignment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Sync options with rxode2 variables — rxSyncOptions","text":"nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Sync options with rxode2 variables — rxSyncOptions","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyntaxFunctions.html","id":null,"dir":"Reference","previous_headings":"","what":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","title":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","text":"list description Rode supported syntax functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyntaxFunctions.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","text":"","code":"rxSyntaxFunctions"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyntaxFunctions.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","text":"data frame 3 columns 98 rows Function Reserved function Name Description Description function Aliases Function Aliases","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTempDir.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the rxode2 temporary directory — rxTempDir","title":"Get the rxode2 temporary directory — rxTempDir","text":"Get rxode2 temporary directory","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTempDir.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the rxode2 temporary directory — rxTempDir","text":"","code":"rxTempDir()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTempDir.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the rxode2 temporary directory — rxTempDir","text":"rxode2 temporary directory.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":null,"dir":"Reference","previous_headings":"","what":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"rxTheme ggplot2 theme rxode2 plots","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"","code":"rxTheme( base_size = 11, base_family = \"\", base_line_size = base_size/22, base_rect_size = base_size/22, grid = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"base_size base font size, given pts. base_family base font family base_line_size base size line elements base_rect_size base size rect elements grid Boolean indicating grid (TRUE) (FALSE). also character indicating x y.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"ggplot2 theme used rxode2","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":null,"dir":"Reference","previous_headings":"","what":"rxode2 to symengine environment — rxToSE","title":"rxode2 to symengine environment — rxToSE","text":"rxode2 symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxode2 to symengine environment — rxToSE","text":"","code":"rxToSE( x, envir = NULL, progress = FALSE, promoteLinSens = TRUE, parent = parent.frame() ) .rxToSE(x, envir = NULL, progress = FALSE) rxFromSE( x, unknownDerivatives = c(\"forward\", \"central\", \"error\"), parent = parent.frame() ) .rxFromSE(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxode2 to symengine environment — rxToSE","text":"x expression envir default NULL; Environment put symengine variables . progress shows progress bar true. promoteLinSens Promote solved linear compartment systems sensitivity-based solutions. parent parent environment look R-based user functions unknownDerivatives handling derivatives unknown functions, translator translate different types numeric derivatives. currently supported methods :","code":"- `forward` for forward differences - `central` for central differences - `error` for throwing an error for unknown derivatives"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxode2 to symengine environment — rxToSE","text":"rxode2 symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxode2 to symengine environment — rxToSE","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":null,"dir":"Reference","previous_headings":"","what":"Translate the model to C code if needed — rxTrans","title":"Translate the model to C code if needed — rxTrans","text":"function translates model C code, needed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Translate the model to C code if needed — rxTrans","text":"","code":"rxTrans( model, modelPrefix = \"\", md5 = \"\", modName = NULL, modVars = FALSE, ... ) # S3 method for default rxTrans( model, modelPrefix = \"\", md5 = \"\", modName = NULL, modVars = FALSE, ... ) # S3 method for character rxTrans( model, modelPrefix = \"\", md5 = \"\", modName = NULL, modVars = FALSE, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Translate the model to C code if needed — rxTrans","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . modelPrefix Prefix model functions compiled make sure multiple rxode2 objects can coexist R session. md5 md5 model parsing, used embed md5 DLL, provide functions like rxModelVars(). modName string used model name. string used naming various aspects computations, including generating C symbol names, dynamic libraries, etc. Therefore, necessary modName consists simple ASCII alphanumeric characters starting letter. modVars returns model variables instead named vector translated properties. ... Ignored parameters.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Translate the model to C code if needed — rxTrans","text":"named vector translated model properties including type jacobian specified, C function prefixes, well C functions names called compiled model.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Translate the model to C code if needed — rxTrans","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":null,"dir":"Reference","previous_headings":"","what":"Compress/Decompress rxode2 ui — rxUiDecompress","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"Compress/Decompress rxode2 ui","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"","code":"rxUiDecompress(ui) rxUiCompress(ui)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"ui rxode2 ui object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"compressed decompressed rxui object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"","code":"one.cmt <- function() { ini({ ## You may label each parameter with a comment tka <- 0.45 # Log Ka tcl <- log(c(0, 2.7, 100)) # Log Cl ## This works with interactive models ## You may also label the preceding line with label(\"label text\") tv <- 3.45; label(\"log V\") ## the label(\"Label name\") works with all models 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) | tmp }) } f <- rxode2(one.cmt) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' print(class(f)) #> [1] \"rxUi\" \"raw\" print(is.environment(f)) #> [1] FALSE f <- rxUiDecompress(f) print(class(f)) #> [1] \"rxUi\" print(is.environment(f)) #> [1] TRUE f <- rxUiCompress(f) print(class(f)) #> [1] \"rxUi\" \"raw\" print(is.environment(f)) #> [1] FALSE"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":null,"dir":"Reference","previous_headings":"","what":"S3 for getting information from UI model — rxUiGet.cmtLines","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"S3 getting information UI model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"","code":"# S3 method for cmtLines rxUiGet(x, ...) # S3 method for dvidLine rxUiGet(x, ...) # S3 method for paramsLine rxUiGet(x, ...) # S3 method for simulationSigma rxUiGet(x, ...) # S3 method for simulationModel rxUiGet(x, ...) # S3 method for symengineModelNoPrune rxUiGet(x, ...) # S3 method for symengineModelPrune rxUiGet(x, ...) # S3 method for simulationIniModel rxUiGet(x, ...) rxUiGet(x, ...) # S3 method for theta rxUiGet(x, ...) # S3 method for lstChr rxUiGet(x, ...) # S3 method for omega rxUiGet(x, ...) # S3 method for funTxt rxUiGet(x, ...) # S3 method for allCovs rxUiGet(x, ...) # S3 method for muRefTable rxUiGet(x, ...) # S3 method for multipleEndpoint rxUiGet(x, ...) # S3 method for funPrint rxUiGet(x, ...) # S3 method for fun rxUiGet(x, ...) # S3 method for md5 rxUiGet(x, ...) # S3 method for ini rxUiGet(x, ...) # S3 method for iniFun rxUiGet(x, ...) # S3 method for modelFun rxUiGet(x, ...) # S3 method for modelDesc rxUiGet(x, ...) # S3 method for thetaLower rxUiGet(x, ...) # S3 method for thetaUpper rxUiGet(x, ...) # S3 method for lhsVar rxUiGet(x, ...) # S3 method for varLhs rxUiGet(x, ...) # S3 method for lhsEta rxUiGet(x, ...) # S3 method for lhsTheta rxUiGet(x, ...) # S3 method for lhsCov rxUiGet(x, ...) # S3 method for etaLhs rxUiGet(x, ...) # S3 method for thetaLhs rxUiGet(x, ...) # S3 method for covLhs rxUiGet(x, ...) # S3 method for default rxUiGet(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"x list (UIenvironment, exact). UI environment parsed function rxode2. exact boolean says exact match required. ... arguments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"value requested UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":null,"dir":"Reference","previous_headings":"","what":"Unloads all rxode2 compiled DLLs — rxUnloadAll","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"Unloads rxode2 compiled DLLs","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"","code":"rxUnloadAll()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"List rxode2 dlls still loaded boolean rxode2 dlls unloaded","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"","code":"print(rxUnloadAll()) #> NULL"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":null,"dir":"Reference","previous_headings":"","what":"Use model object in your package — rxUse","title":"Use model object in your package — rxUse","text":"Use model object package","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Use model object in your package — rxUse","text":"","code":"rxUse(obj, overwrite = TRUE, compress = \"bzip2\", internal = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Use model object in your package — rxUse","text":"obj model save. overwrite default, use_data() overwrite existing files. really want , set TRUE. compress Choose type compression used save(). one \"gzip\", \"bzip2\", \"xz\". internal run internally. default FALSE","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Use model object in your package — rxUse","text":"Nothing; used side effects called user","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":null,"dir":"Reference","previous_headings":"","what":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"Validate rxode2 allows easy validation/qualification nlmixr running testing suite system.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"","code":"rxValidate(type = NULL, skipOnCran = TRUE) rxTest(type = NULL, skipOnCran = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"type Type test filter test type, expression, evaluate contents, respecting skipOnCran skipOnCran TRUE skip test CRAN.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":null,"dir":"Reference","previous_headings":"","what":"Version and repository for this dparser package. — rxVersion","title":"Version and repository for this dparser package. — rxVersion","text":"Version repository dparser package.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Version and repository for this dparser package. — rxVersion","text":"","code":"rxVersion( extra = \"\", echo = FALSE, version = sessionInfo()$otherPkgs$rxode2$Version )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Version and repository for this dparser package. — rxVersion","text":"extra extra text display logo echo Boolean echo text logo, default FALSE version Version display/return","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Version and repository for this dparser package. — rxVersion","text":"character vector version repository.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Version and repository for this dparser package. — rxVersion","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate beta variable from threefry generator — rxbeta","title":"Simulate beta variable from threefry generator — rxbeta","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate beta variable from threefry generator — rxbeta","text":"","code":"rxbeta(shape1, shape2, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate beta variable from threefry generator — rxbeta","text":"shape1, shape2 non-negative parameters Beta distribution. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate beta variable from threefry generator — rxbeta","text":"beta random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate beta variable from threefry generator — rxbeta","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate beta variable from threefry generator — rxbeta","text":"","code":"# \\donttest{ ## Use threefry engine rxbeta(0.5, 0.5, n = 10) # with rxbeta you have to explicitly state n #> [1] 0.509350000 0.912413304 0.977069379 0.027279110 0.059673210 0.040116272 #> [7] 0.710132972 0.793500848 0.006985738 0.180815174 rxbeta(5, 1, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0.8076466 0.8110352 0.7379905 0.7328007 0.7911829 0.4855712 0.5843775 #> [8] 0.6370308 0.7837448 0.9117020 rxbeta(1, 3) #> [1] 0.2779042 ## This example uses `rxbeta` directly in the model rx <- function() { model({ a <- rxbeta(2, 2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Binomial variable from threefry generator — rxbinom","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"","code":"rxbinom(size, prob, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"size number trials (zero ). prob probability success trial. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"binomial random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"","code":"# \\donttest{ ## Use threefry engine rxbinom(10, 0.9, n = 10) # with rxbinom you have to explicitly state n #> [1] 9 9 8 8 10 9 8 10 9 9 rxbinom(3, 0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 2 3 1 2 2 0 2 0 0 1 rxbinom(4, 0.7) #> [1] 3 ## This example uses `rxbinom` directly in the model rx <- function() { model({ a <- rxbinom(1, 0.5) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Cauchy variable from threefry generator — rxcauchy","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"","code":"rxcauchy(location = 0, scale = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"location, scale location scale parameters. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"Cauchy random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"","code":"# \\donttest{ ## Use threefry engine rxcauchy(0, 1, n = 10) # with rxcauchy you have to explicitly state n #> [1] -1.3413470 -7.9470343 0.3502155 -1.0087065 0.1895231 -0.8865630 #> [7] 0.3504988 0.8707094 -16.4643437 -2.0439314 rxcauchy(0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 1.2173030 -1.6710622 0.7850675 0.1878941 1.8991325 0.2196978 #> [7] -3.2933655 0.4879173 -1.0001039 -51.8868570 rxcauchy(3) #> [1] 3.389173 ## This example uses `rxcauchy` directly in the model rx <- function() { model({ a <- rxcauchy(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate chi-squared variable from threefry generator — rxchisq","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"","code":"rxchisq(df, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"df degrees freedom (non-negative, can non-integer). n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"chi squared random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"","code":"# \\donttest{ ## Use threefry engine rxchisq(0.5, n = 10) # with rxchisq you have to explicitly state n #> [1] 4.386053e-01 2.394589e-05 4.476409e-06 3.182313e-01 5.428819e-01 #> [6] 1.177320e+00 1.485223e+00 1.975781e-01 1.858028e-01 3.011321e-03 rxchisq(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 1.4302599 2.2884995 4.1638938 10.9317622 2.3443199 1.6247647 #> [7] 5.9977646 2.6555508 4.9660984 0.7984326 rxchisq(1) #> [1] 7.302332 ## This example uses `rxchisq` directly in the model rx <- function() { model({ a <- rxchisq(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate exponential variable from threefry generator — rxexp","title":"Simulate exponential variable from threefry generator — rxexp","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate exponential variable from threefry generator — rxexp","text":"","code":"rxexp(rate, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate exponential variable from threefry generator — rxexp","text":"rate vector rates. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate exponential variable from threefry generator — rxexp","text":"exponential random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate exponential variable from threefry generator — rxexp","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate exponential variable from threefry generator — rxexp","text":"","code":"# \\donttest{ ## Use threefry engine rxexp(0.5, n = 10) # with rxexp you have to explicitly state n #> [1] 2.5063330 2.8993883 0.7395998 1.4183406 0.1358327 0.4820661 3.0171991 #> [8] 0.7060092 0.3121306 0.2673030 rxexp(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0.001473441 0.742426584 0.155037193 0.171660703 0.022404456 0.341253688 #> [7] 1.872270927 0.303458674 0.063965722 0.049181592 rxexp(1) #> [1] 1.032471 ## This example uses `rxexp` directly in the model rx <- function() { model({ a <- rxexp(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate F variable from threefry generator — rxf","title":"Simulate F variable from threefry generator — rxf","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate F variable from threefry generator — rxf","text":"","code":"rxf(df1, df2, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate F variable from threefry generator — rxf","text":"df1, df2 degrees freedom. Inf allowed. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate F variable from threefry generator — rxf","text":"f random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate F variable from threefry generator — rxf","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate F variable from threefry generator — rxf","text":"","code":"# \\donttest{ ## Use threefry engine rxf(0.5, 0.5, n = 10) # with rxf you have to explicitly state n #> [1] 6.487134e-01 6.029017e-01 1.827351e+04 1.909204e+00 2.574643e+01 #> [6] 2.605475e-03 1.389581e+00 1.477292e-01 6.585338e-04 4.422300e-02 rxf(5, 1, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 43.8692980 44.6980929 0.0430548 4075.9888069 1.4885375 #> [6] 11.4684113 2.9502174 4.9623572 1.1885575 4.7529777 rxf(1, 3) #> [1] 4.04815 ## This example uses `rxf` directly in the model rx <- function() { model({ a <- rxf(2, 2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate gamma variable from threefry generator — rxgamma","title":"Simulate gamma variable from threefry generator — rxgamma","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate gamma variable from threefry generator — rxgamma","text":"","code":"rxgamma(shape, rate = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate gamma variable from threefry generator — rxgamma","text":"shape shape gamma random variable rate alternative way specify scale. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate gamma variable from threefry generator — rxgamma","text":"gamma random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate gamma variable from threefry generator — rxgamma","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate gamma variable from threefry generator — rxgamma","text":"","code":"# \\donttest{ ## Use threefry engine rxgamma(0.5, n = 10) # with rxgamma you have to explicitly state n #> [1] 0.1894634559 0.3955014939 2.1180269016 0.0124893414 1.9029689758 #> [6] 0.0007099950 0.0003539078 2.0218610937 0.1698756362 0.1470387595 rxgamma(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 4.490430 4.631281 4.101066 3.004822 2.537177 4.231033 4.323290 2.422572 #> [9] 4.608253 7.725234 rxgamma(1) #> [1] 0.8117069 ## This example uses `rxbeta` directly in the model rx <- function() { model({ a <- rxgamma(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate geometric variable from threefry generator — rxgeom","title":"Simulate geometric variable from threefry generator — rxgeom","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate geometric variable from threefry generator — rxgeom","text":"","code":"rxgeom(prob, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate geometric variable from threefry generator — rxgeom","text":"prob probability success trial. 0 < prob <= 1. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate geometric variable from threefry generator — rxgeom","text":"geometric random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate geometric variable from threefry generator — rxgeom","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate geometric variable from threefry generator — rxgeom","text":"","code":"# \\donttest{ ## Use threefry engine rxgeom(0.5, n = 10) # with rxgeom you have to explicitly state n #> [1] 0 0 1 0 0 4 0 0 2 1 rxgeom(0.25, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0 2 5 2 5 1 1 0 22 4 rxgeom(0.75) #> [1] 0 ## This example uses `rxgeom` directly in the model rx <- function() { model({ a <- rxgeom(0.24) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Binomial variable from threefry generator — rxnbinom","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"","code":"rxnbinom(size, prob, n = 1L, ncores = 1L) rxnbinomMu(size, mu, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"size target number successful trials, dispersion parameter (shape parameter gamma mixing distribution). Must strictly positive, need integer. prob probability success trial. 0 < prob <= 1. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks mu alternative parametrization via mean: see ‘Details’.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"negative binomial random deviates. Note rxbinom2 uses mu parameterization rxbinom uses prob parameterization (mu=size/(prob+size))","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"","code":"# \\donttest{ ## Use threefry engine rxnbinom(10, 0.9, n = 10) # with rxbinom you have to explicitly state n #> [1] 9 8 9 10 10 10 9 10 9 8 rxnbinom(3, 0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 3 3 3 3 3 3 3 3 3 1 rxnbinom(4, 0.7) #> [1] 3 # use mu parameter rxnbinomMu(40, 40, n=10) #> [1] 20 18 22 20 18 16 15 20 21 23 ## This example uses `rxbinom` directly in the model rx <- function() { model({ a <- rxnbinom(10, 0.5) }) } et <- et(1, id = 1:100) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ rx <- function() { model({ a <- rxnbinomMu(10, 40) }) } s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate random normal variable from threefry generator — rxnormV","title":"Simulate random normal variable from threefry generator — rxnormV","text":"Simulate random normal variable threefry generator","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate random normal variable from threefry generator — rxnormV","text":"","code":"rxnormV(mean = 0, sd = 1, n = 1L, ncores = 1L) rxnorm(mean = 0, sd = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate random normal variable from threefry generator — rxnormV","text":"mean vector means. sd vector standard deviations. n number observations ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate random normal variable from threefry generator — rxnormV","text":"normal random number deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate random normal variable from threefry generator — rxnormV","text":"","code":"# \\donttest{ ## Use threefry engine rxnorm(n = 10) # with rxnorm you have to explicitly state n #> [1] 0.09733128 0.60045493 -2.07389520 1.14343365 -0.38633998 0.01287412 #> [7] -0.04752667 -1.51913058 0.37560137 -0.01275985 rxnorm(n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0.3180825 -1.1154098 0.1856747 -1.2032700 0.3088301 -0.7022739 #> [7] 0.8265574 -0.3676887 0.7052192 0.9639559 rxnorm(2, 3) ## The first 2 arguments are the mean and standard deviation #> [1] -1.103648 ## This example uses `rxnorm` directly in the model rx <- function() { model({ a <- rxnorm() }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":null,"dir":"Reference","previous_headings":"","what":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"Set function body rxUi object retaining object information (like data)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"","code":"rxode2(x, envir = environment(x)) <- value # S3 method for `function` rxode2(x, envir = environment(x)) <- value # S3 method for default rxode2(x, envir = environment(x)) <- value rxode(x, envir = environment(x)) <- value RxODE(x, envir = environment(x)) <- value"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"x rxUi object envir environment assignment ocurs value value assigned","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"rxode2 ui/function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"","code":"one.compartment <- function() { ini({ tka <- log(1.57); label(\"Ka\") tcl <- log(2.72); label(\"Cl\") tv <- log(31.5); label(\"V\") 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } two.compartment <- function() { ini({ lka <- 0.45 ; label(\"Absorption rate (Ka)\") lcl <- 1 ; label(\"Clearance (CL)\") lvc <- 3 ; label(\"Central volume of distribution (V)\") lvp <- 5 ; label(\"Peripheral volume of distribution (Vp)\") lq <- 0.1 ; label(\"Intercompartmental clearance (Q)\") propSd <- 0.5 ; label(\"Proportional residual error (fraction)\") }) model({ ka <- exp(lka) cl <- exp(lcl) vc <- exp(lvc) vp <- exp(lvp) q <- exp(lq) kel <- cl/vc k12 <- q/vc k21 <- q/vp d/dt(depot) <- -ka*depot d/dt(central) <- ka*depot - kel*central - k12*central + k21*peripheral1 d/dt(peripheral1) <- k12*central - k21*peripheral1 cp <- central / vc cp ~ prop(propSd) }) } ui <- rxode2(one.compartment) #> #> rxode2(ui) <- two.compartment"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Create an ODE-based model specification — rxode2","title":"Create an ODE-based model specification — rxode2","text":"Create dynamic ODE-based model object suitably translation fast C code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create an ODE-based model specification — rxode2","text":"","code":"rxode2( model, modName = basename(wd), wd = getwd(), filename = NULL, extraC = NULL, debug = FALSE, calcJac = NULL, calcSens = NULL, collapseModel = FALSE, package = NULL, ..., linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), indLin = FALSE, verbose = FALSE, fullPrint = getOption(\"rxode2.fullPrint\", FALSE), envir = parent.frame() ) RxODE( model, modName = basename(wd), wd = getwd(), filename = NULL, extraC = NULL, debug = FALSE, calcJac = NULL, calcSens = NULL, collapseModel = FALSE, package = NULL, ..., linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), indLin = FALSE, verbose = FALSE, fullPrint = getOption(\"rxode2.fullPrint\", FALSE), envir = parent.frame() ) rxode( model, modName = basename(wd), wd = getwd(), filename = NULL, extraC = NULL, debug = FALSE, calcJac = NULL, calcSens = NULL, collapseModel = FALSE, package = NULL, ..., linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), indLin = FALSE, verbose = FALSE, fullPrint = getOption(\"rxode2.fullPrint\", FALSE), envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create an ODE-based model specification — rxode2","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . modName string used model name. string used naming various aspects computations, including generating C symbol names, dynamic libraries, etc. Therefore, necessary modName consists simple ASCII alphanumeric characters starting letter. wd character string working directory create subdirectory according modName. specified, subdirectory named “modName.d” created populated C file, dynamic loading library, plus various working files. missing, files created (removed) temporary directory, rxode2 DLL model created current directory named rx_????_platform, example rx_129f8f97fb94a87ca49ca8dafe691e1e_i386.dll filename file name connection object ODE-based model specification resides. one model filename may specified. extraC Extra c code include model. can useful specify functions model. C functions usually take double precision arguments, return double precision values. debug boolean indicating executable compiled verbose debugging information turned . calcJac boolean indicating rxode2 calculate Jacobain according specified ODEs. calcSens boolean indicating rxode2 calculate sensitivities according specified ODEs. collapseModel boolean indicating rxode2 remove LHS variables calculating sensitivities. package Package name pre-compiled binaries. ... ignored arguments. linCmtSens method calculate linCmt() solutions indLin Calculate inductive linearization matrices compile inductive linearization support. verbose TRUE verbose linear compartmental model fullPrint using printf within model, TRUE print every step (except /indLin), otherwise FALSE print calculating d/dt envir environment look R user functions (defaults parent environment)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create an ODE-based model specification — rxode2","text":"object (environment) class rxode2 (see Chambers Temple Lang (2001)) consisting following list strings functions:","code":"* `model` a character string holding the source model specification. * `get.modelVars`a function that returns a list with 3 character vectors, `params`, `state`, and `lhs` of variable names used in the model specification. These will be output when the model is computed (i.e., the ODE solved by integration). * `solve`{this function solves (integrates) the ODE. This is done by passing the code to [rxSolve()]. This is as if you called `rxSolve(rxode2object, ...)`, but returns a matrix instead of a rxSolve object. `params`: a numeric named vector with values for every parameter in the ODE system; the names must correspond to the parameter identifiers used in the ODE specification; `events`: an `eventTable` object describing the input (e.g., doses) to the dynamic system and observation sampling time points (see [eventTable()]); `inits`: a vector of initial values of the state variables (e.g., amounts in each compartment), and the order in this vector must be the same as the state variables (e.g., PK/PD compartments); `stiff`: a logical (`TRUE` by default) indicating whether the ODE system is stiff or not. For stiff ODE systems (`stiff = TRUE`), `rxode2` uses the LSODA (Livermore Solver for Ordinary Differential Equations) Fortran package, which implements an automatic method switching for stiff and non-stiff problems along the integration interval, authored by Hindmarsh and Petzold (2003). For non-stiff systems (`stiff = FALSE`), `rxode2` uses `DOP853`, an explicit Runge-Kutta method of order 8(5, 3) of Dormand and Prince as implemented in C by Hairer and Wanner (1993). `trans_abs`: a logical (`FALSE` by default) indicating whether to fit a transit absorption term (TODO: need further documentation and example); `atol`: a numeric absolute tolerance (1e-08 by default); `rtol`: a numeric relative tolerance (1e-06 by default). The output of \\dQuote{solve} is a matrix with as many rows as there are sampled time points and as many columns as system variables (as defined by the ODEs and additional assignments in the rxode2 model code).} * `isValid` a function that (naively) checks for model validity, namely that the C object code reflects the latest model specification. * `version` a string with the version of the `rxode2` object (not the package). * `dynLoad` a function with one `force = FALSE` argument that dynamically loads the object code if needed. * `dynUnload` a function with no argument that unloads the model object code. * `delete` removes all created model files, including C and DLL files. The model object is no longer valid and should be removed, e.g., `rm(m1)`. * `run` deprecated, use `solve`. * `get.index` deprecated. * `getObj` internal (not user callable) function."},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Create an ODE-based model specification — rxode2","text":"Rx name rxode2 meant suggest abbreviation Rx medical prescription, thus suggest package emphasis pharmacometrics modeling, including pharmacokinetics (PK), pharmacodynamics (PD), disease progression, drug-disease modeling, etc. ODE-based model specification may coded inside four places: Inside rxode2({}) block statements: Inside rxode2(\"\") string statement: file name loaded rxode2: model function can parsed rxode2: block statement, character string text file internal rxode2 compilation manager translates ODE system C, compiles loads R session. call rxode2 produces object class rxode2 consists list-like structure (environment) various member functions. last type model (model function), call rxode2 creates parsed rxode2 ui can translated rxode2 compilation model. type function required nlmixr2 estimation can extended modified model piping. reason focused documentation. basic model specification consists one statements optionally terminated semi-colons ; optional comments (comments delimited # end--line). block statements set statements delimited curly braces, { ... }. Statements can either assignments, conditional /else /else, loops (can exited break), special statements, printing statements (debugging/testing). Assignment statements can : simple assignments, left hand identifier (.e., variable) special time-derivative assignments, left hand specifies change amount corresponding state variable (compartment) respect time e.g., d/dt(depot): special initial-condition assignments left hand specifies compartment initial condition specified, e.g. depot(0) = 0 special model event changes including bioavailability (f(depot)=1), lag time (alag(depot)=0), modeled rate (rate(depot)=2) modeled duration (dur(depot)=2). example model features event specification modeled infusions rxode2 data specification found rxode2 events vignette. special change point syntax, model times. model times specified mtime(var)=time special Jacobian-derivative assignments, left hand specifies change compartment ode respect variable. example, d/dt(y) = dy, Jacobian compartment can specified df(y)/dy(dy) = 1. may advantage obtaining solution specifying Jacobian stiff ODE systems. However, stiff systems tried LSODA, actually slightly slowed solving. Note assignment can done =, <- ~. assigning ~ operator, simple assignments time-derivative assignments output. Note rxode2 model functions assignment ~ can also overloaded residual distribution specification. Special statements can : Compartment declaration statements, can change default dosing compartment assumed compartment number(s) well add extra compartment names end (useful multiple-endpoint nlmixr models); specified cmt(compartmentName) Parameter declaration statements, can make sure input parameters certain order instead ordering parameters order parsed. useful keeping parameter order using 2 different ODE models. specified param(par1, par2,...) example model shown : Expressions assignment statements can numeric logical. Numeric expressions can include following numeric operators +, -, *, /, ^ mathematical functions defined C R math libraries (e.g., fabs, exp, log, sin, abs). may also access R’s functions R math libraries, like lgammafn log gamma function. rxode2 syntax case-sensitive, .e., ABC different abc, Abc, ABc, etc.","code":"library(rxode2) mod <- rxode2({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ mod <- rxode2(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \") ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ writeLines(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \", \"modelFile.rxode2\") mod <- rxode2(filename='modelFile.rxode2') unlink(\"modelFile.rxode2\") mod <- function() { model({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) } mod <- rxode2(mod) # or simply mod() if the model is at the end of the function # These model functions often have residual components and initial # (`ini({})`) conditions attached as well. For example the # theophylline model can be written as: one.compartment <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } # after parsing the model mod <- one.compartment() mod$simulationModel ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## rxode2 2.0.14.9000 model named rx_4d7e23c27b311c0b8fa7436caae3124f model (ready). ## x$state: depot, center ## x$stateExtra: cp ## x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp ## x$lhs: ka, cl, v, cp, ipredSim, sim # or mod$simulationIniModel ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## rxode2 2.0.14.9000 model named rx_175d15ed553ae1eccaf047d565b24f55 model (ready). ## x$state: depot, center ## x$stateExtra: cp ## x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp ## x$lhs: ka, cl, v, cp, ipredSim, sim # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3;"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"identifiers","dir":"Reference","previous_headings":"","what":"Identifiers","title":"Create an ODE-based model specification — rxode2","text":"Like R, Identifiers (variable names) may consist one alphanumeric, underscore _ period . characters, first character digit underscore _. Identifiers model specification can refer : State variables dynamic system (e.g., compartments pharmacokinetics model). Implied input variable, t (time), tlast (last time point), podo (oral dose, undocumented case absorption transit models). Special constants like pi R’s predefined constants. Model parameters (e.g., ka rate absorption, CL clearance, etc.) Others, created assignments part model specification; referred LHS (left-hand side) variable. Currently, rxode2 modeling language recognizes system state variables “parameters”, thus, values need passed R ODE model (e.g., age) either passed params argument integrator function rxSolve() supplied event data-set. certain variable names rxode2 event tables. avoid confusion, following event table-related items assigned, used state can accessed rxode2 code: cmt dvid addl ss rate id However following variables used model specification: evid ii Sometimes rxode2 generates variables fed back rxode2. Similarly, nlmixr2 generates variables used nlmixr estimation simulation. variables start either rx nlmixr prefixes. avoid problems, suggested use variables starting either rx nlmixr prefixes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"logical-operators","dir":"Reference","previous_headings":"","what":"Logical Operators","title":"Create an ODE-based model specification — rxode2","text":"Logical operators support standard R operators ==, != >= <= > <. Like R can () () statements, ifelse() expressions. Additionally can standard assignment. instance, following valid: Notice can also use character expressions comparisons. convenience comes cost since character comparisons slower numeric expressions. Unlike R, .numeric .integer logical statements needed, cause syntax error try use function.","code":"cov1 = covm*(sexf == \"female\") + covm*(sexf != \"female\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"supported-functions","dir":"Reference","previous_headings":"","what":"Supported functions","title":"Create an ODE-based model specification — rxode2","text":"supported functions rxode2 can seen rxSupportedFuns(). brief description built-functions following table: Note lag(cmt) = equivalent alag(cmt) = = lag(wt)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"reserved-keywords","dir":"Reference","previous_headings":"","what":"Reserved keywords","title":"Create an ODE-based model specification — rxode2","text":"reserved keywords rxode2 model. following table: Note rxFlag always output 11 calc_lhs since final variables calculated, though can tweak test certain parts rxode2 using flag.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"residual-functions-when-using-rxode-functions","dir":"Reference","previous_headings":"","what":"Residual functions when using rxode2 functions","title":"Create an ODE-based model specification — rxode2","text":"addition ~ hiding output certain types output, also used specify residual output endpoint input rxode2 model function (includes residual model({}) block). specifications form: Indicating variable var variable represents individual central tendencies model also represents compartment specification data-set. can also change compartment name using | syntax, : case var represents central tendency cmt represents compartment dvid specification.","code":"var ~ add(add.sd) var ~ add(add.sd) | cmt"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"transformations","dir":"Reference","previous_headings":"","what":"Transformations","title":"Create an ODE-based model specification — rxode2","text":"normal related distributions, can apply transformation sides using keywords/functions apply transformations. default likelihood transformations calculated untransformed scale. bounded variables like logit-normal probit-normal low high values defaulted 0 1 missing. models wish proportional model one transformation can replace standard deviation NA allow transformations, lnorm(), probitNorm() logitNorm() can combined variance stabilizing yeoJohnson() transformation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"normal-and-t-related-distributions","dir":"Reference","previous_headings":"","what":"Normal and t-related distributions","title":"Create an ODE-based model specification — rxode2","text":"normal t-related distributions, wanted keep ability use skewed distributions additive proportional t/cauchy-space, distributions specified differently comparison supported distributions within nlmixr2: Note normal t-related distributions nlmixr2 calculate cwres npde normal assumption help assess goodness fit model. Also note +dnorm() mostly testing purposes slow estimation procedure nlmixr2. suggest adding (except explicit testing). multiple endpoint models mix non-normal normal distributions, whole problem shifted log-likelihood method estimation nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"notes-on-additive-proportional-models","dir":"Reference","previous_headings":"","what":"Notes on additive + proportional models","title":"Create an ODE-based model specification — rxode2","text":"two different ways specify additive proportional models, call combined1 combined2, way Monolix calls two distributions (avoid software differences naming). first, combined1, assumes additive proportional differences standard deviation scale, : y=f+(+b* f^c)*err second, combined2, assumes additive proportional differences combined variance scale: y=f+[sqrt(^2+b^2 *f^(2c))]*err default nlmixr2/rxode2 otherwise specified combined2 since mirrors adding 2 normal distributions statistics add variances (standard deviations). However, combined1 can describe data possibly even better combined2 possible options rxode2/nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"distributions-of-known-likelihoods","dir":"Reference","previous_headings":"","what":"Distributions of known likelihoods","title":"Create an ODE-based model specification — rxode2","text":"residuals related normal, t-distribution cauchy, often residual specification form: compartment specification left handed side specification. generalized likelihood can specify:","code":"cmt ~ dbeta(alpha, beta) ll(cmt) ~ llik specification"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"ordinal-likelihoods","dir":"Reference","previous_headings":"","what":"Ordinal likelihoods","title":"Create an ODE-based model specification — rxode2","text":"Finally, ordinal likelihoods/simulations can specified 2 ways. first : err represents compartment p0 probability specific category: model ensure sum p values less 1. Additionally can write arbitrary number categories ordinal model described . seems little p0 probability category 1 sometimes scores non-whole numbers. can modeled follows: numeric categories specified explicitly, probabilities remain :","code":"err ~ c(p0, p1, p2) err ~ c(p0=0, p1=1, p2=2, 3)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"general-table-of-supported-residual-distributions","dir":"Reference","previous_headings":"","what":"General table of supported residual distributions","title":"Create an ODE-based model specification — rxode2","text":"general supported following table (available rxode2::rxResidualError)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"creating-rxode-models","dir":"Reference","previous_headings":"","what":"Creating rxode2 models","title":"Create an ODE-based model specification — rxode2","text":"NA","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Create an ODE-based model specification — rxode2","text":"Chamber, J. M. Temple Lang, D. (2001) Object Oriented Programming R. R News, Vol. 1, . 3, September 2001. https://cran.r-project.org/doc/Rnews/Rnews_2001-3.pdf. Hindmarsh, . C. ODEPACK, Systematized Collection ODE Solvers. Scientific Computing, R. S. Stepleman et al. (Eds.), North-Holland, Amsterdam, 1983, pp. 55-64. Petzold, L. R. Automatic Selection Methods Solving Stiff Nonstiff Systems Ordinary Differential Equations. Siam J. Sci. Stat. Comput. 4 (1983), pp. 136-148. Hairer, E., Norsett, S. P., Wanner, G. Solving ordinary differential equations , nonstiff problems. 2nd edition, Springer Series Computational Mathematics, Springer-Verlag (1993). Plevyak, J. dparser, https://dparser.sourceforge.net/. Web. 12 Oct. 2015.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Create an ODE-based model specification — rxode2","text":"Melissa Hallow, Wenping Wang Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Create an ODE-based model specification — rxode2","text":"","code":"# \\donttest{ mod <- function() { ini({ KA <- .291 CL <- 18.6 V2 <- 40.2 Q <- 10.5 V3 <- 297.0 Kin <- 1.0 Kout <- 1.0 EC50 <- 200.0 }) model({ # A 4-compartment model, 3 PK and a PD (effect) compartment # (notice state variable names 'depot', 'centr', 'peri', 'eff') C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot; d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) <- Q*C2 - Q*C3; d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff; eff(0) <- 1 }) } m1 <- rxode2(mod) #> #> print(m1) #> ── rxode2-based free-form 4-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> KA CL V2 Q V3 Kin Kout EC50 #> 0.291 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 centr #> 3 3 peri #> 4 4 eff #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> KA <- 0.291 #> CL <- 18.6 #> V2 <- 40.2 #> Q <- 10.5 #> V3 <- 297 #> Kin <- 1 #> Kout <- 1 #> EC50 <- 200 #> }) #> model({ #> C2 <- centr/V2 #> C3 <- peri/V3 #> d/dt(depot) <- -KA * depot #> d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) <- Q * C2 - Q * C3 #> d/dt(eff) <- Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) <- 1 #> }) #> } # Step 2 - Create the model input as an EventTable, # including dosing and observation (sampling) events # QD (once daily) dosing for 5 days. qd <- et(amountUnits = \"ug\", timeUnits = \"hours\") %>% et(amt = 10000, addl = 4, ii = 24) # Sample the system hourly during the first day, every 8 hours # then after qd <- qd %>% et(0:24) %>% et(from = 24 + 8, to = 5 * 24, by = 8) # Step 3 - solve the system qd.cp <- rxSolve(m1, qd) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ head(qd.cp) #> time C2 C3 depot centr peri eff #> 1 0 [h] 0.00000 0.0000000 10000.000 0.000 0.0000 1.000000 #> 2 1 [h] 43.99334 0.9113641 7475.157 1768.532 270.6751 1.083968 #> 3 2 [h] 54.50866 2.6510696 5587.797 2191.248 787.3677 1.179529 #> 4 3 [h] 51.65163 4.4243597 4176.966 2076.396 1314.0348 1.227523 #> 5 4 [h] 44.37513 5.9432612 3122.347 1783.880 1765.1486 1.233503 #> 6 5 [h] 36.46382 7.1389804 2334.004 1465.845 2120.2772 1.214084 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate ordinal value — rxord","title":"Simulate ordinal value — rxord","text":"Simulate ordinal value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate ordinal value — rxord","text":"","code":"rxord(...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate ordinal value — rxord","text":"... probabilities simulated. sum number one.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate ordinal value — rxord","text":"number 1 (number probabilities specified + 1)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate ordinal value — rxord","text":"values entered 'rxord' simulation simulate probability falling group. falls outside specified probabilities, simulate group (number probabilities specified + 1)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simulate ordinal value — rxord","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate ordinal value — rxord","text":"","code":"# This will give values 1, and 2 rxord(0.5) #> [1] 2 rxord(0.5) #> [1] 2 rxord(0.5) #> [1] 1 rxord(0.5) #> [1] 2 # This will give values 1, 2 and 3 rxord(0.3, 0.3) #> [1] 1 rxord(0.3, 0.3) #> [1] 3 rxord(0.3, 0.3) #> [1] 3"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate random Poisson variable from threefry generator — rxpois","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"","code":"rxpois(lambda, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"lambda vector (non-negative) means. n number random values return. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"poission random number deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"","code":"# \\donttest{ ## Use threefry engine rxpois(lambda = 3, n = 10) # with rxpois you have to explicitly state n #> [1] 2 5 2 2 1 3 2 3 2 2 rxpois(lambda = 3, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 1 2 4 2 5 0 1 3 3 3 rxpois(4) ## The first arguments are the lambda parameter #> [1] 5 ## This example uses `rxpois` directly in the model rx <- function() { model({ a <- rxpois(3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate student t variable from threefry generator — rxt","title":"Simulate student t variable from threefry generator — rxt","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate student t variable from threefry generator — rxt","text":"","code":"rxt(df, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate student t variable from threefry generator — rxt","text":"df degrees freedom (\\(> 0\\), maybe non-integer). df = Inf allowed. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate student t variable from threefry generator — rxt","text":"t-distribution random numbers","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate student t variable from threefry generator — rxt","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate student t variable from threefry generator — rxt","text":"","code":"# \\donttest{ ## Use threefry engine rxt(df = 3, n = 10) # with rxt you have to explicitly state n #> [1] 0.3757489 -1.0929198 0.4496582 -0.7100168 4.0821279 0.1564602 #> [7] -2.3129516 0.9455909 -1.3950564 -1.0967017 rxt(df = 3, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] -0.09560338 2.30004650 -0.44279496 0.40352877 -0.06773039 0.84341867 #> [7] -0.51744228 -1.88729910 -1.65975277 0.87533914 rxt(4) ## The first argument is the df parameter #> [1] 0.1890926 ## This example uses `rxt` directly in the model rx <- function() { model({ a <- rxt(3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate uniform variable from threefry generator — rxunif","title":"Simulate uniform variable from threefry generator — rxunif","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate uniform variable from threefry generator — rxunif","text":"","code":"rxunif(min = 0, max = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate uniform variable from threefry generator — rxunif","text":"min, max lower upper limits distribution. Must finite. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate uniform variable from threefry generator — rxunif","text":"uniform random numbers","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate uniform variable from threefry generator — rxunif","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate uniform variable from threefry generator — rxunif","text":"","code":"# \\donttest{ ## Use threefry engine rxunif(min = 0, max = 4, n = 10) # with rxunif you have to explicitly state n #> [1] 8.372550e-01 3.583999e+00 2.408055e+00 6.399907e-01 2.294921e-02 #> [6] 2.839426e+00 6.982711e-05 2.993348e+00 2.264349e+00 1.249635e+00 rxunif(min = 0, max = 4, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 2.4039488 0.3410682 0.5535628 2.2799663 0.5887105 2.6540469 2.3969818 #> [8] 2.2524206 3.7296385 3.7817212 rxunif() #> [1] 0.7661502 ## This example uses `rxunif` directly in the model rx <- function() { model({ a <- rxunif(0, 3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Weibull variable from threefry generator — rxweibull","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"","code":"rxweibull(shape, scale = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"shape, scale shape scale parameters, latter defaulting 1. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"Weibull random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"","code":"# \\donttest{ ## Use threefry engine # with rxweibull you have to explicitly state n rxweibull(shape = 1, scale = 4, n = 10) #> [1] 0.3874992 3.1784742 0.3866576 0.4752647 11.6122071 5.2736322 #> [7] 4.8772255 0.7743957 3.6822614 3.1735263 # You can parallelize the simulation using openMP rxweibull(shape = 1, scale = 4, n = 10, ncores = 2) #> [1] 0.4541006 8.0030203 3.8028113 4.6215899 0.1147611 0.1336322 0.2441735 #> [8] 1.8856361 4.7262429 7.3846402 rxweibull(3) #> [1] 0.5283103 ## This example uses `rxweibull` directly in the model rx <- function() { model({ a <- rxweibull(1, 3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":null,"dir":"Reference","previous_headings":"","what":"Dosing/Amt geom/stat — stat_amt","title":"Dosing/Amt geom/stat — stat_amt","text":"dosing geom shows vertical lines dose occurs","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Dosing/Amt geom/stat — stat_amt","text":"","code":"stat_amt( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, ... ) geom_amt( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Dosing/Amt geom/stat — stat_amt","text":"mapping Set aesthetic mappings created aes(). specified inherit.aes = TRUE (default), combined default mapping top level plot. must supply mapping plot mapping. data data displayed layer. three options: NULL, default, data inherited plot data specified call ggplot(). data.frame, object, override plot data. objects fortified produce data frame. See fortify() variables created. function called single argument, plot data. return value must data.frame, used layer data. function can created formula (e.g. ~ head(.x, 10)). position Position adjustment, either string naming adjustment (e.g. \"jitter\" use position_jitter), result call position adjustment function. Use latter need change settings adjustment. show.legend logical. layer included legends? NA, default, includes aesthetics mapped. FALSE never includes, TRUE always includes. can also named logical vector finely select aesthetics display. inherit.aes FALSE, overrides default aesthetics, rather combining . useful helper functions define data aesthetics inherit behaviour default plot specification, e.g. borders(). ... arguments passed layer(). often aesthetics, used set aesthetic fixed value, like colour = \"red\" size = 3. may also parameters paired geom/stat.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Dosing/Amt geom/stat — stat_amt","text":"returns stat_amt context ggplot2 plot","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Dosing/Amt geom/stat — stat_amt","text":"Requires following aesthetics: x representing x values, usually time amt representing dosing values; missing zero dose given","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Dosing/Amt geom/stat — stat_amt","text":"","code":"# \\donttest{ library(rxode2) library(units) #> udunits database from /usr/share/xml/udunits/udunits2.xml ## Model from RxODE tutorial mod1 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } ## These are making the more complex regimens of the rxode2 tutorial ## bid for 5 days bid <- et(timeUnits=\"hr\") %>% et(amt=10000,ii=12,until=set_units(5, \"days\")) ## qd for 5 days qd <- et(timeUnits=\"hr\") %>% et(amt=20000,ii=24,until=set_units(5, \"days\")) ## bid for 5 days followed by qd for 5 days et <- seq(bid,qd) %>% et(seq(0,11*24,length.out=100)) bidQd <- rxSolve(mod1, et, addDosing=TRUE) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # by default dotted and under-stated plot(bidQd, C2) + geom_amt(aes(amt=amt)) # of course you can make it a bit more visible plot(bidQd, C2) + geom_amt(aes(amt=amt), col=\"red\", lty=1, linewidth=1.2) # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":null,"dir":"Reference","previous_headings":"","what":"Censoring geom/stat — stat_cens","title":"Censoring geom/stat — stat_cens","text":"censoring geom shows left right censoring specified nlmixr input data-set fit","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Censoring geom/stat — stat_cens","text":"","code":"stat_cens( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, width = 0.01, ... ) geom_cens( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, width = 0.01, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Censoring geom/stat — stat_cens","text":"mapping Set aesthetic mappings created aes(). specified inherit.aes = TRUE (default), combined default mapping top level plot. must supply mapping plot mapping. data data displayed layer. three options: NULL, default, data inherited plot data specified call ggplot(). data.frame, object, override plot data. objects fortified produce data frame. See fortify() variables created. function called single argument, plot data. return value must data.frame, used layer data. function can created formula (e.g. ~ head(.x, 10)). position Position adjustment, either string naming adjustment (e.g. \"jitter\" use position_jitter), result call position adjustment function. Use latter need change settings adjustment. show.legend logical. layer included legends? NA, default, includes aesthetics mapped. FALSE never includes, TRUE always includes. can also named logical vector finely select aesthetics display. inherit.aes FALSE, overrides default aesthetics, rather combining . useful helper functions define data aesthetics inherit behaviour default plot specification, e.g. borders(). width represents width (\\ censoring box ... arguments passed layer(). often aesthetics, used set aesthetic fixed value, like colour = \"red\" size = 3. may also parameters paired geom/stat.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Censoring geom/stat — stat_cens","text":"returns ggplot2 stat","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Censoring geom/stat — stat_cens","text":"Requires following aesthetics: x Represents independent variable, often time scale y represents dependent variable CENS censoring information; (-1 right censored, 0 censoring 1 left censoring) LIMIT represents corresponding limit () add boxes representing areas fit censored.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":null,"dir":"Reference","previous_headings":"","what":"Summary of rxDll object — summary.rxDll","title":"Summary of rxDll object — summary.rxDll","text":"gives expanded information rxDll object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Summary of rxDll object — summary.rxDll","text":"","code":"# S3 method for rxDll summary(object, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Summary of rxDll object — summary.rxDll","text":"object RxDll object ... arguments. Includes noprint, logical telling object print rxDll object first. default FALSE","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Summary of rxDll object — summary.rxDll","text":"object returned","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Summary of rxDll object — summary.rxDll","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Print expanded information about the rxode2 object. — summary.rxode2","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"prints expanded information rxode2 object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"","code":"# S3 method for rxode2 summary(object, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"object rxode2 object ... Ignored parameters","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"object returned","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":null,"dir":"Reference","previous_headings":"","what":"Update for rxUi — update.rxUi","title":"Update for rxUi — update.rxUi","text":"Update rxUi","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Update for rxUi — update.rxUi","text":"","code":"# S3 method for rxUi update(object, ..., envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Update for rxUi — update.rxUi","text":"object rxode2 UI object ... Lines update envir Environment evaluating ini() style calls","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Update for rxUi — update.rxUi","text":"new rxode2 updated UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":null,"dir":"Reference","previous_headings":"","what":"uppergamma: upper incomplete gamma function — uppergamma","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"tgamma boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"","code":"uppergamma(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"numeric '' parameter upper incomplete gamma z numeric 'z' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"uppergamma results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"uppergamma function given : \\(uppergamma(, z) = \\int_{z}^{\\infty}t^{-1}\\cdot e^{-t} dt\\)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"","code":"uppergamma(1, 3) #> [1] 0.04978707 uppergamma(1:3, 3) #> [1] 0.04978707 0.19914827 0.84638016 uppergamma(1, 1:3) #> [1] 0.36787944 0.13533528 0.04978707"},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":null,"dir":"Reference","previous_headings":"","what":"Set random effects and residual error to zero — zeroRe","title":"Set random effects and residual error to zero — zeroRe","text":"Set random effects residual error zero","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set random effects and residual error to zero — zeroRe","text":"","code":"zeroRe(object, which = c(\"omega\", \"sigma\"), fix = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set random effects and residual error to zero — zeroRe","text":"object model modify types parameters set zero fix parameters fixed zero value?","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set random effects and residual error to zero — zeroRe","text":"object parameters set zero","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set random effects and residual error to zero — zeroRe","text":"Bill Denney","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Set random effects and residual error to zero — zeroRe","text":"","code":"one.compartment <- function() { ini({ tka <- log(1.57); label(\"Ka\") tcl <- log(2.72); label(\"Cl\") tv <- log(31.5); label(\"V\") 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } zeroRe(one.compartment) #> #> #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.4510756 1.0006319 3.4499875 0.0000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0 0 0 #> eta.cl 0 0 0 #> eta.v 0 0 0 #> attr(,\"lotriFix\") #> eta.ka eta.cl eta.v #> eta.ka TRUE FALSE FALSE #> eta.cl FALSE TRUE FALSE #> eta.v FALSE FALSE TRUE #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.451075619360217 #> label(\"Ka\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- fix(0, 0) #> eta.ka ~ fix(0) #> eta.cl ~ fix(0) #> eta.v ~ fix(0) #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> }"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"breaking-changes-development-version","dir":"Changelog","previous_headings":"","what":"Breaking changes","title":"rxode2 (development version)","text":"Steady state lag times longer shifted lag time solved steady state default. addition steady state original time dosing also back-calculated. want old behavior can bring back option ssAtDoseTime=FALSE. “dop853” now uses hmax/h0 values rxControl() rxSolve(). may change ODE solving using “dop853” specified (xgxr available), x axis longer assumed hours","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-development-version","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 (development version)","text":"User defined functions can now R functions. many R functions can converted C rxFun() (can see C code afterwards rxC(\"funName\")) Parallel solving models require sorting (like modeled lag times, modeled duration etc) now solve parallel instead downgrading single threaded solving Steady state infusions duration infusions greater inter-dose interval now supported. Added $symengineModelNoPrune $symengineModelPrune loading models rxode2 rxS() plotting creating confidence intervals multiple endpoint models simulated rxode2 ui model, can plot/summarize endpoint sim. (ie. confint(model, \"sim\") plot(model, sim)). want summarize subset endpoints, can focus endpoint pre-pending endpoint sim. example wanted plot/summarize endpoint eff use sim.eff. (ie confint(model, \"sim.eff\") plot(model, sim.eff)) Added model$simulationIniModel prepend initial conditions ini({}) block classic rxode2({}) model. Now model$simulationModel model$simulationIniModel save use initialization values compiled model, solve original ui model. Allow ini(model) <- NULL drop ini block .ini(NULL) gives ini({}) (Issue #523) Add function modelExtract() extract model lines allow modifying changing model piping simply assigning modified lines model(ui) <- newModifiedLines Add Algebraic mu-referencing detection (mu2) allows express mu-referenced covariates : Instead previously required (log.WT.div.70.5 calculated data) mu expressions. ui now information allow transformation data internally transformation old mu-referencing style run optimization. Allow steady state infusions duration infusion greater inter-dose interval solved. Solves now possibly print information issuing “solve system” error function rxSetPipingAuto() now exported change way affect piping individual setup Allow covariates specified model piping, mod %>% model(=var+3, cov=\"var\") add \"var\" covariate. calculating confidence intervals rxode2 simulated objects can now use stratify simulation summary. example can now stratify gender race : confint(sim, \"sim\", =c(\"race\", \"gender\")) calculating intervals rxode2 simulated objects can now use ci=FALSE calculates default intervals without bands percentiles; can also choose match secondary bands limits levels use ci=0.99 instance new function introduced meanProbs() calculates mean expected confidence bands either normal t distribution related new function introduced calculates mean confidence bands Bernoulli/Binomial distribution (binomProbs()) calculating intervals rxode2 simulated objects can also use mean=TRUE use mean first level confidence using meanProbs(). confidence interval can override n used confidence interval using n=#. can also change prediction interval instead using pred=TRUE. Also calculating intervals rxode2 simulated object can also use mean=\"binom\" use binomial distributional information (ci) first level confidence using binomProbs(). confidence interval can override n used confidence interval using n=#. can also change prediction interval instead using pred=TRUE. pred=TRUE can override number predicted samples m=# plotting confint derived intervals rxode2 simulation, can now subset based simulated value like plot(ci, Cc) plot variable Cc summarized even also summarized eff (instance).","code":"cl <- exp(tcl + eta.cl + wt_cl * log(WT/70.5)) cl <- exp(tcl + eta.cl + wt_cl * log.WT.div.70.5)"},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"internal-new-features-development-version","dir":"Changelog","previous_headings":"","what":"Internal new features","title":"rxode2 (development version)","text":"Add .model() list expressions, implies model(ui) <- ui$lstExpr assign model components. also robustly work character vectors Simulated objects rxSolve now can access model variables $rxModelVars Simulation models UI now use rxerr.endpoint instead err.endpoint sigma residual error. align convention internally generated variables start rx nlmixr Sorting uses timsort now, upgraded latest version Morwenn","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-development-version","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 (development version)","text":"Piping add constants initial estimates constants specified model({}) block (like k <- 1), ini block Bug fix geom_amt() aes transformation x Bug fix covariate updates may affect multiple compartment models (like issue #581)","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"maintenance-fixes-development-version","dir":"Changelog","previous_headings":"","what":"Maintenance fixes","title":"rxode2 (development version)","text":"Modify plot code work development xgxr","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2014","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.14","title":"rxode2 2.0.14","text":"CRAN release: 2023-10-07 CRAN requested FORTRAN kind changed portable; commented code, simply removed comment. Bug-fix geom_amt(); also now uses linewidth least ggplot2 3.4.0 documentation cleaned rxode2 2.0.13","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2013","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.13","title":"rxode2 2.0.13","text":"CRAN release: 2023-04-22","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-2-0-13","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 2.0.13","text":"bug fixed zeroRe() function works correlated omega values. bug fixed rename() function works initial conditions compartments (cmt(0))","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-2-0-13","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 2.0.13","text":"new function zeroRe() allows simple setting omega /sigma values zero model (#456) Diagonal zeros omega sigma matrices treated zeros model. corresponding omega sigma matrices drop columns/rows diagonals zero create new omega sigma matrix simulation. idiom NONMEM uses simulation matrices. Add ability pipe model estimates another model parentModel %>% ini(modelWithNewEsts) Add ability append model statements piping using %>% model(x=3, append=d/dt(depot)), still supports appending append=TRUE pre-pending append=NA (default replace lines append=FALSE) rxSolve’s keep argument now maintain character factor classes input data class (#190) Parameter labels may now modified via ini(param = label(\"text\")) (#351). Parameter order may modified via append argument ini() piping model. example, ini(param = 1, append = 0) ini(param = label(\"text\"), append = \"param2\") (#352).","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"internal-changes-2-0-13","dir":"Changelog","previous_headings":"","what":"Internal changes","title":"rxode2 2.0.13","text":"lower/upper bounds outside required bounds, adjustment displayed. initial values piped break model’s boundary condition reset boundary unbounded message boundary reset. Added .rxUi() function convert following objects rxUi objects: rxode2, rxModelVars, function. Converting nlmixr2 fits rxUi placed s3 method corresponding package. assertRxUi(x) now uses .rxUi() can extended outside rxode2/nlmixr2. rxode2 now supports addl ss doses Moved rxDerived rxode2parse (re-exported ). Added test transit compartment solving absence dosing transit compartment (fixed rxode2parse solving tested ) Using ini() without arguments rxode2 type function return ini() block. Also added method ini(mod) <- iniBlock modify ini block wish. iniBlock expression. Using model() without arguments rxode2 type function return model() block. Also added new method model(mod) <- modelBlock Added new method rxode2(mod) <- modFunction allows replacing function new function maintaining meta information ui (like information comes nonmem2rx models). modFunction body new function, new function, new rxode2 ui. rxode2 ui objects now $sticky item inside internal (compressed) environment. $sticky tells variables keep “significant” change ui piping sort model change. respected model piping, modifying model ini(mod)<-, model(mod)<-, rxode2(mod)<-. significant change change model block, change number estimates, change value estimates. Estimate bounds, weather estimate fixed estimate label changes considered significant. Added .ini() method convert various formats ini expression. used internally ini(mod)<-. want assign something new can convert ini expression, add method .ini(). Added .model() method convert various formats model expression. used internally model(mod)<-. want assign something new can convert model expression, add method .model().","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2011","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.11","title":"rxode2 2.0.11","text":"CRAN release: 2022-11-01 Give meaningful error ‘rxode2’ ui models error expressions Break ABI requirement roxde2() rxode2parse() new rxode2parse fix sprintf exclusion shown CRAN.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2010","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.10","title":"rxode2 2.0.10","text":"CRAN release: 2022-10-20 Time invariant covariates can now contain ‘NA’ values. column ‘NA’ entire id, now ‘rxode2’ warns id column instead just id. fix CRAN issues ‘nlmixr2est’, make version dependency explicit.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-209","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.9","title":"rxode2 2.0.9","text":"CRAN release: 2022-10-19 Remove log likelihoods ‘rxode2’ reduce compilation time increase maintainability ‘rxode2’. transferred ‘rxode2ll’ (requested CRAN). Remove parsing ‘rxode2’ solved linear compartment code move ‘rxode2parse’ reduce compilation time (requested CRAN). Remove random number generation ‘rxode2’ move ‘rxode2random’ reduce compilation time (requested CRAN). Remove event table translation generation ‘rxode2’ move ‘rxode2et’ reduce compilation time (requested CRAN). Change rxode2 ui object compressed, serialized object default. reduce C stack size problem occurs many environments R. Warn ignoring items simulations Export method change ‘rxode2’ solve methods internal integers Bug fix time invariant covariates identified time variant covariate individual’s time starts 0.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-208","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.8","title":"rxode2 2.0.8","text":"CRAN release: 2022-09-23","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"breaking-changes-2-0-8","dir":"Changelog","previous_headings":"","what":"Breaking changes","title":"rxode2 2.0.8","text":"rxgamma now allows rate input. aligns internal rxode2 version rxgamma clarifies used. also aligned llikGamma function used generalized likelihood estimation. ui cauchy simulations now follow ui normal t distributions, means can combine transformations. cauchy t distribution one degree freedom. ui dnorm() norm() longer equivalent add(). Now allows use loglik llikNorm() instead standard nlmixr2 style focei likelihood. done adding dnorm() end line. also means dnorm() now doesn’t take arguments. Vandercorput normal removed (non-random number generator)","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-2-0-8","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 2.0.8","text":"Allow models nlmixr2 form without ini({}) block Allow model piping omega matrix f %>% ini(omegaMatrix) Standard models created rxode2() can piped model function Families log-likelihood added rxode2 mixed likelihood nonlinear mixed effects models may specified run. memory footprint rxode2 solving reduced Piping now allow named strings (issue #249)","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-2-0-8","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 2.0.8","text":"rxode2’s symengine convert sqrt(2) M_SQRT_2 M_SQRT2. fixed; noticeable nlmixr2 log-likelihood estimation methods rxode2 treats DV non-covariate etTran (last time duplicate model). noticeable nlmixr2 log-likelihood estimation methods.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-2-0-8-1","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 2.0.8","text":"new flag (rxFlag) created tell rxode2 solving process . useful debugging. outputting variable always 11 calculating left handed equations. using conjunction printf() methods, double variable formatted \"%f\". additional option fullPrint added rxode2() allows rprintf() used almost rxode2() steps (inductive linearization matrix exponential exception ) instead just integration ddt step. defaults FALSE.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-207","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.7","title":"rxode2 2.0.7","text":"CRAN release: 2022-05-17 Removed accidental ^S news requested CRAN. Bug fix complicated mu-referencing. Change rxode2 md5 depend C/C++/Fortran code headers R files. way binary compatibility nlmixr2est rxode2, new version nlmixr2est need submitted CRAN.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-206","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.6","title":"rxode2 2.0.6","text":"CRAN release: 2022-05-09","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"solving-controls-2-0-6","dir":"Changelog","previous_headings":"Breaking changes","what":"Solving controls","title":"rxode2 2.0.6","text":"options rxControl rxSolve strict. camelCase now always used. Old options like add.cov transit_abs longer supported, addCov supported. new option, sigdig added rxControl(), controls common significant figure options like atol, rtol, ssAtol, ssRtol, single option.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"simulations-2-0-6","dir":"Changelog","previous_headings":"Breaking changes","what":"Simulations","title":"rxode2 2.0.6","text":"simulations, $simulationSigma now assumes diagonal matrix. sigma values assumed standard normal, uncorrelated endpoints. Simulation uncertainty still draw identity diagonal matrix Parallel solving now seeds simulation per individual based initial seed plus simulation id. makes simulation reproducible regardless number cores running simulation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"other-breaking-changes-2-0-6","dir":"Changelog","previous_headings":"Breaking changes","what":"Other breaking changes","title":"rxode2 2.0.6","text":"Solved objects now access underlying rxode model $rxode2 instead $rxode Since change names, rxode2, rxode RxODE perform function. Options changed RxODE.syntax rxode2.syntax. Assigning states rxode2.syntax.assign.state (RxODE.syntax.assign.state) longer supported. Enforcing “pure” assignment syntax = syntax longer supported rxode2.syntax.assign longer supported (RxODE.syntax.assign). Since R supports ** exponentiation operator, pure syntax without ** can longer enabled. Hence rxode2.syntax.star.pow (RxODE.syntax.star.pow) longer effect. “pure” syntax requires semicolon can longer enabled. Therefore rxode2.syntax.require.semicolon (RxODE.syntax.require.semicolon) longer effect. syntax state(0) can longer turned . rxode2.syntax.allow.ini0 (RxODE.syntax.allow.ini0) removed. Variable dots variable state names like state.name works R. Therefore, “pure” syntax excluding . values variables enforced rxode2.syntax.allow.dots (RxODE.syntax.allow.dots). mnemonic et(rate=model) et(dur=model) mnemonics removed. rate needs set -1 -2 manually instead. function rxode2Test() removed favor using testthat directly. Transit compartments need use new evid, evid=7. said, transitAbs option longer supported. ID columns input parameter data frames sorted merged original dataset ; underlying assumption ID order now checked outside rxode2(). Note event data frame still sorted.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"additional-features-2-0-6","dir":"Changelog","previous_headings":"","what":"Additional features","title":"rxode2 2.0.6","text":"UI functions nlmixr ported work rxode2 directly. rxModelVars({}) now supported. may now combine 2 models rxode2 rxAppendModel(). fact, long first value rxode2 evaluated ui model, can use c/rbind bind 2 models together. may now append model lines piping using %>% model(lines, append=TRUE) can also pre-pend lines %>% model(lines, append=NA) may now rename model variables, states defined parameters %>% rxRename(new=old) dplyr loaded: %>% rename(new=old) can fix parameters %>% ini(tcl=fix) %>% ini(fix(tcl)) well unfix parameters %>% ini(tcl=unfix) %>% ini(unfix(tcl))","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"internal-changes-2-0-6","dir":"Changelog","previous_headings":"","what":"Internal changes","title":"rxode2 2.0.6","text":"Strict R headers enforced places Since many changes incompatible, version renamed rxode2 rxode2() printout longer uses rules centered headings make display better larger variety systems.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-2-0-6","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 2.0.6","text":"tad() related time features reset start infusion (opposed starting beginning end infusion)","code":""}] +[{"path":"https://nlmixr2.github.io/rxode2/articles/Integrating-User-Defined-Functions-into-rxode2.html","id":"user-defined-functions","dir":"Articles","previous_headings":"","what":"User Defined Functions","title":"Integrating User Defined Functions into rxode2","text":"defining models may wished write small R function make function integrate rxode2 somehow. article discusses 2 ways : R-based user function can loaded simple function certain circumstances translated C run efficiently C function define integrate code","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()`"},{"path":"https://nlmixr2.github.io/rxode2/articles/Integrating-User-Defined-Functions-into-rxode2.html","id":"r-based-user-functions","dir":"Articles","previous_headings":"","what":"R based user functions","title":"Integrating User Defined Functions into rxode2","text":"R-based user function convenient include ODE, slower done written C , C++ compiled language. requested github appropriate example; However, use simple example simply illustrate concepts. Now ODE compiled R functions called solving ODE. Since calling R, forces parallization turned since R single-threaded. also takes time solve since shuttling back forth R C. Lets see simple function performs: terribly bad, even though shuffling R C. can make better converting functions C: C version almost twice fast R version. may noticed conversion also created C versions first derivative. done automatically gives just C versions function, C versions derivatives registers rxode2. allows C versions work rxode2 nlmixr2 models. function setup advance allow type conversion. general derivatives calculated return() statement user defined function. means simply let R return last value instead explictly calling return(). Many people prefer method coding. Even return function, function converted C. github issue, used function convert derivatives: still helpful functions early returns, nlmixr2 models requiring derivatives calculated non-optimized finite differences occurs. gets internals rxode2 nlmixr2 can see easily calculating derivatives: Whereas originally defined function newAbs() use new derivatives calculated well: circumstances, conversion C possible, though can still use R function. requirements R functions integrated rxode2 system: function must set number arguments, variable arguments like f(…) currently allowed. function given argument single number, function return single number requirements met can use R function rxode2. Additional requirements conversion C include: functions use within R function must understood available rxode2. Practically speaking fun2() refers fun1(), fun1() must changed C code available rxode2 changing function fun2() C. functions can include /else assignments simple return statements (either returning value value line ). Special R control structures functions (like lapply) present. function refer package functions mentioned, return() statement present, derivative C functions rxode2’s derivative table updated.","code":"newAbs <- function(x) { if (x < 0) { -x } else { x } } f <- rxode2({ a <- newAbs(time) }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ e <- et(-10, 10, length.out=40) mb1 <- microbenchmark::microbenchmark(withoutC=suppressWarnings(rxSolve(f,e))) library(ggplot2) autoplot(mb1) + rxTheme() # Create C functions automatically with `rxFun()` rxFun(newAbs) #> → finding duplicate expressions in d(newAbs)/d(x)... #> [====|====|====|====|====|====|====|====|====|====] 0:00:00 #> → optimizing duplicate expressions in d(newAbs)/d(x)... #> [====|====|====|====|====|====|====|====|====|====] 0:00:00 #> converted R function 'newAbs' to C (will now use in rxode2) #> converted R function 'rx_newAbs_d_x' to C (will now use in rxode2) #> Added derivative table for 'newAbs' # Recompile to use the C functions # Note it would recompile anyway if you didn't do this step, # it just makes sure that it doesn't recompile every step in # the benchmark f <- rxode2({ a <- newAbs(time) }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ mb2 <- microbenchmark::microbenchmark(withC=rxSolve(f,e, cores=1)) mb <- rbind(mb1, mb2) autoplot(mb) + rxTheme() + xgxr::xgx_scale_y_log10() #> Scale for y is already present. #> Adding another scale for y, which will replace the existing scale. print(mb) #> Unit: milliseconds #> expr min lq mean median uq max neval #> withoutC 7.622042 7.688254 8.259156 7.735658 7.875183 13.217607 100 #> withC 2.042315 2.082330 2.407566 2.169873 2.681195 6.437425 100 # Light f_R <- function(actRad, k_0, a_k) { photfac <- a_k * actRad + k_0 if (photfac > 1) { photfac = 1 } return(photfac) } rxFun(f_R) #> function contains return statement; derivatives not calculated #> converted R function 'f_R' to C (will now use in rxode2) rxFromSE(\"Derivative(f_R(actRad, k_0, a_k),k_0)\") #> [1] \"(f_R(actRad,(k_0)+6.05545445239334e-06,a_k)-f_R(actRad,k_0,a_k))/6.05545445239334e-06\" rxFromSE(\"Derivative(newAbs(x),x)\") #> [1] \"rx_newAbs_d_x(x)\""},{"path":"https://nlmixr2.github.io/rxode2/articles/Integrating-User-Defined-Functions-into-rxode2.html","id":"c-based-functions","dir":"Articles","previous_headings":"","what":"C based functions","title":"Integrating User Defined Functions into rxode2","text":"can add C functions directly rxode2 well using rxFun(): wanted also use C functions expressions derivatives using rxD() function: Removing function rxRmFun() also remove derivative table:","code":"fun <- \" double fun(double a, double b, double c) { return a*a+b*a+c; } \" ## C-code for function rxFun(\"fun\", c(\"a\", \"b\", \"c\"), fun) rxD(\"fun\", list( function(a, b, c) { # derivative of arg1: a paste0(\"2*\", a, \"+\", b) }, function(a, b, c) { # derivative of arg2: b return(a) }, function(a, b, c) { # derivative of arg3: c return(\"0.0\") } )) rxRmFun(\"fun\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-cmt.html","id":"how-rxode2-assigns-compartment-numbers","dir":"Articles","previous_headings":"","what":"How rxode2 assigns compartment numbers","title":"Changing rxode2 compartment numbers","text":"rxode2 automatically assigns compartment numbers parsing. example, Mavoglurant PBPK model following model may used: look printout, can see rxode2 assigned compartment number(s) can also see classic rxode2 model. case use summary() function: case, Venous_Blood assigned compartment 15. Figuring can inconvenient also lead re-numbering compartment simulation estimation datasets. easy probably clearer specify compartment name, tools support compartment numbers. Therefore, way number compartment easily can lead less data modification multiple tools.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` pbpk <- function() { model({ KbBR = exp(lKbBR) KbMU = exp(lKbMU) KbAD = exp(lKbAD) CLint= exp(lCLint + eta.LClint) KbBO = exp(lKbBO) KbRB = exp(lKbRB) ## Regional blood flows # Cardiac output (L/h) from White et al (1968) CO = (187.00*WT^0.81)*60/1000 QHT = 4.0 *CO/100 QBR = 12.0*CO/100 QMU = 17.0*CO/100 QAD = 5.0 *CO/100 QSK = 5.0 *CO/100 QSP = 3.0 *CO/100 QPA = 1.0 *CO/100 QLI = 25.5*CO/100 QST = 1.0 *CO/100 QGU = 14.0*CO/100 # Hepatic artery blood flow QHA = QLI - (QSP + QPA + QST + QGU) QBO = 5.0 *CO/100 QKI = 19.0*CO/100 QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI) QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + QRB ## Organs' volumes = organs' weights / organs' density VLU = (0.76 *WT/100)/1.051 VHT = (0.47 *WT/100)/1.030 VBR = (2.00 *WT/100)/1.036 VMU = (40.00*WT/100)/1.041 VAD = (21.42*WT/100)/0.916 VSK = (3.71 *WT/100)/1.116 VSP = (0.26 *WT/100)/1.054 VPA = (0.14 *WT/100)/1.045 VLI = (2.57 *WT/100)/1.040 VST = (0.21 *WT/100)/1.050 VGU = (1.44 *WT/100)/1.043 VBO = (14.29*WT/100)/1.990 VKI = (0.44 *WT/100)/1.050 VAB = (2.81 *WT/100)/1.040 VVB = (5.62 *WT/100)/1.040 VRB = (3.86 *WT/100)/1.040 ## Fixed parameters BP = 0.61 # Blood:plasma partition coefficient fup = 0.028 # Fraction unbound in plasma fub = fup/BP # Fraction unbound in blood KbLU = exp(0.8334) KbHT = exp(1.1205) KbSK = exp(-.5238) KbSP = exp(0.3224) KbPA = exp(0.3224) KbLI = exp(1.7604) KbST = exp(0.3224) KbGU = exp(1.2026) KbKI = exp(1.3171) ##----------------------------------------- S15 = VVB*BP/1000 C15 = Venous_Blood/S15 ##----------------------------------------- d/dt(Lungs) = QLU*(Venous_Blood/VVB - Lungs/KbLU/VLU) d/dt(Heart) = QHT*(Arterial_Blood/VAB - Heart/KbHT/VHT) d/dt(Brain) = QBR*(Arterial_Blood/VAB - Brain/KbBR/VBR) d/dt(Muscles) = QMU*(Arterial_Blood/VAB - Muscles/KbMU/VMU) d/dt(Adipose) = QAD*(Arterial_Blood/VAB - Adipose/KbAD/VAD) d/dt(Skin) = QSK*(Arterial_Blood/VAB - Skin/KbSK/VSK) d/dt(Spleen) = QSP*(Arterial_Blood/VAB - Spleen/KbSP/VSP) d/dt(Pancreas) = QPA*(Arterial_Blood/VAB - Pancreas/KbPA/VPA) d/dt(Liver) = QHA*Arterial_Blood/VAB + QSP*Spleen/KbSP/VSP + QPA*Pancreas/KbPA/VPA + QST*Stomach/KbST/VST + QGU*Gut/KbGU/VGU - CLint*fub*Liver/KbLI/VLI - QLI*Liver/KbLI/VLI d/dt(Stomach) = QST*(Arterial_Blood/VAB - Stomach/KbST/VST) d/dt(Gut) = QGU*(Arterial_Blood/VAB - Gut/KbGU/VGU) d/dt(Bones) = QBO*(Arterial_Blood/VAB - Bones/KbBO/VBO) d/dt(Kidneys) = QKI*(Arterial_Blood/VAB - Kidneys/KbKI/VKI) d/dt(Arterial_Blood) = QLU*(Lungs/KbLU/VLU - Arterial_Blood/VAB) d/dt(Venous_Blood) = QHT*Heart/KbHT/VHT + QBR*Brain/KbBR/VBR + QMU*Muscles/KbMU/VMU + QAD*Adipose/KbAD/VAD + QSK*Skin/KbSK/VSK + QLI*Liver/KbLI/VLI + QBO*Bones/KbBO/VBO + QKI*Kidneys/KbKI/VKI + QRB*Rest_of_Body/KbRB/VRB - QLU*Venous_Blood/VVB d/dt(Rest_of_Body) = QRB*(Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) }) } pbpk <- pbpk() print(pbpk) #> -- rxode2-based free-form 16-cmt ODE model ------------------------------------- #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 Lungs #> 2 2 Heart #> 3 3 Brain #> 4 4 Muscles #> 5 5 Adipose #> 6 6 Skin #> 7 7 Spleen #> 8 8 Pancreas #> 9 9 Liver #> 10 10 Stomach #> 11 11 Gut #> 12 12 Bones #> 13 13 Kidneys #> 14 14 Arterial_Blood #> 15 15 Venous_Blood #> 16 16 Rest_of_Body #> -- Model (Normalized Syntax): -- #> function() { #> model({ #> KbBR = exp(lKbBR) #> KbMU = exp(lKbMU) #> KbAD = exp(lKbAD) #> CLint = exp(lCLint + eta.LClint) #> KbBO = exp(lKbBO) #> KbRB = exp(lKbRB) #> CO = (187 * WT^0.81) * 60/1000 #> QHT = 4 * CO/100 #> QBR = 12 * CO/100 #> QMU = 17 * CO/100 #> QAD = 5 * CO/100 #> QSK = 5 * CO/100 #> QSP = 3 * CO/100 #> QPA = 1 * CO/100 #> QLI = 25.5 * CO/100 #> QST = 1 * CO/100 #> QGU = 14 * CO/100 #> QHA = QLI - (QSP + QPA + QST + QGU) #> QBO = 5 * CO/100 #> QKI = 19 * CO/100 #> QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + #> QKI) #> QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + #> QRB #> VLU = (0.76 * WT/100)/1.051 #> VHT = (0.47 * WT/100)/1.03 #> VBR = (2 * WT/100)/1.036 #> VMU = (40 * WT/100)/1.041 #> VAD = (21.42 * WT/100)/0.916 #> VSK = (3.71 * WT/100)/1.116 #> VSP = (0.26 * WT/100)/1.054 #> VPA = (0.14 * WT/100)/1.045 #> VLI = (2.57 * WT/100)/1.04 #> VST = (0.21 * WT/100)/1.05 #> VGU = (1.44 * WT/100)/1.043 #> VBO = (14.29 * WT/100)/1.99 #> VKI = (0.44 * WT/100)/1.05 #> VAB = (2.81 * WT/100)/1.04 #> VVB = (5.62 * WT/100)/1.04 #> VRB = (3.86 * WT/100)/1.04 #> BP = 0.61 #> fup = 0.028 #> fub = fup/BP #> KbLU = exp(0.8334) #> KbHT = exp(1.1205) #> KbSK = exp(-0.5238) #> KbSP = exp(0.3224) #> KbPA = exp(0.3224) #> KbLI = exp(1.7604) #> KbST = exp(0.3224) #> KbGU = exp(1.2026) #> KbKI = exp(1.3171) #> S15 = VVB * BP/1000 #> C15 = Venous_Blood/S15 #> d/dt(Lungs) = QLU * (Venous_Blood/VVB - Lungs/KbLU/VLU) #> d/dt(Heart) = QHT * (Arterial_Blood/VAB - Heart/KbHT/VHT) #> d/dt(Brain) = QBR * (Arterial_Blood/VAB - Brain/KbBR/VBR) #> d/dt(Muscles) = QMU * (Arterial_Blood/VAB - Muscles/KbMU/VMU) #> d/dt(Adipose) = QAD * (Arterial_Blood/VAB - Adipose/KbAD/VAD) #> d/dt(Skin) = QSK * (Arterial_Blood/VAB - Skin/KbSK/VSK) #> d/dt(Spleen) = QSP * (Arterial_Blood/VAB - Spleen/KbSP/VSP) #> d/dt(Pancreas) = QPA * (Arterial_Blood/VAB - Pancreas/KbPA/VPA) #> d/dt(Liver) = QHA * Arterial_Blood/VAB + QSP * Spleen/KbSP/VSP + #> QPA * Pancreas/KbPA/VPA + QST * Stomach/KbST/VST + #> QGU * Gut/KbGU/VGU - CLint * fub * Liver/KbLI/VLI - #> QLI * Liver/KbLI/VLI #> d/dt(Stomach) = QST * (Arterial_Blood/VAB - Stomach/KbST/VST) #> d/dt(Gut) = QGU * (Arterial_Blood/VAB - Gut/KbGU/VGU) #> d/dt(Bones) = QBO * (Arterial_Blood/VAB - Bones/KbBO/VBO) #> d/dt(Kidneys) = QKI * (Arterial_Blood/VAB - Kidneys/KbKI/VKI) #> d/dt(Arterial_Blood) = QLU * (Lungs/KbLU/VLU - Arterial_Blood/VAB) #> d/dt(Venous_Blood) = QHT * Heart/KbHT/VHT + QBR * Brain/KbBR/VBR + #> QMU * Muscles/KbMU/VMU + QAD * Adipose/KbAD/VAD + #> QSK * Skin/KbSK/VSK + QLI * Liver/KbLI/VLI + QBO * #> Bones/KbBO/VBO + QKI * Kidneys/KbKI/VKI + QRB * Rest_of_Body/KbRB/VRB - #> QLU * Venous_Blood/VVB #> d/dt(Rest_of_Body) = QRB * (Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) #> }) #> } pbpk <- pbpk$simulationModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ summary(pbpk) #> rxode2 2.0.14.9000 model named rx_5da87c6d1f91668f6d05372040b2eafc model (ready). #> DLL: /tmp/RtmpG6A6n6/rxode2/rx_5da87c6d1f91668f6d05372040b2eafc__.rxd/rx_5da87c6d1f91668f6d05372040b2eafc_.so #> NULL #> #> Calculated Variables: #> [1] \"KbBR\" \"KbMU\" \"KbAD\" \"CLint\" \"KbBO\" \"KbRB\" \"CO\" \"QHT\" \"QBR\" #> [10] \"QMU\" \"QAD\" \"QSK\" \"QSP\" \"QPA\" \"QLI\" \"QST\" \"QGU\" \"QHA\" #> [19] \"QBO\" \"QKI\" \"QRB\" \"QLU\" \"VLU\" \"VHT\" \"VBR\" \"VMU\" \"VAD\" #> [28] \"VSK\" \"VSP\" \"VPA\" \"VLI\" \"VST\" \"VGU\" \"VBO\" \"VKI\" \"VAB\" #> [37] \"VVB\" \"VRB\" \"fub\" \"KbLU\" \"KbHT\" \"KbSK\" \"KbSP\" \"KbPA\" \"KbLI\" #> [46] \"KbST\" \"KbGU\" \"KbKI\" \"S15\" \"C15\" #> -- rxode2 Model Syntax -- #> rxode2({ #> param(lKbBR, lKbMU, lKbAD, lCLint, eta.LClint, lKbBO, lKbRB, #> WT) #> KbBR = exp(lKbBR) #> KbMU = exp(lKbMU) #> KbAD = exp(lKbAD) #> CLint = exp(lCLint + eta.LClint) #> KbBO = exp(lKbBO) #> KbRB = exp(lKbRB) #> CO = (187 * WT^0.81) * 60/1000 #> QHT = 4 * CO/100 #> QBR = 12 * CO/100 #> QMU = 17 * CO/100 #> QAD = 5 * CO/100 #> QSK = 5 * CO/100 #> QSP = 3 * CO/100 #> QPA = 1 * CO/100 #> QLI = 25.5 * CO/100 #> QST = 1 * CO/100 #> QGU = 14 * CO/100 #> QHA = QLI - (QSP + QPA + QST + QGU) #> QBO = 5 * CO/100 #> QKI = 19 * CO/100 #> QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI) #> QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + QRB #> VLU = (0.76 * WT/100)/1.051 #> VHT = (0.47 * WT/100)/1.03 #> VBR = (2 * WT/100)/1.036 #> VMU = (40 * WT/100)/1.041 #> VAD = (21.42 * WT/100)/0.916 #> VSK = (3.71 * WT/100)/1.116 #> VSP = (0.26 * WT/100)/1.054 #> VPA = (0.14 * WT/100)/1.045 #> VLI = (2.57 * WT/100)/1.04 #> VST = (0.21 * WT/100)/1.05 #> VGU = (1.44 * WT/100)/1.043 #> VBO = (14.29 * WT/100)/1.99 #> VKI = (0.44 * WT/100)/1.05 #> VAB = (2.81 * WT/100)/1.04 #> VVB = (5.62 * WT/100)/1.04 #> VRB = (3.86 * WT/100)/1.04 #> BP = 0.61 #> fup = 0.028 #> fub = fup/BP #> KbLU = exp(0.8334) #> KbHT = exp(1.1205) #> KbSK = exp(-0.5238) #> KbSP = exp(0.3224) #> KbPA = exp(0.3224) #> KbLI = exp(1.7604) #> KbST = exp(0.3224) #> KbGU = exp(1.2026) #> KbKI = exp(1.3171) #> S15 = VVB * BP/1000 #> C15 = Venous_Blood/S15 #> d/dt(Lungs) = QLU * (Venous_Blood/VVB - Lungs/KbLU/VLU) #> d/dt(Heart) = QHT * (Arterial_Blood/VAB - Heart/KbHT/VHT) #> d/dt(Brain) = QBR * (Arterial_Blood/VAB - Brain/KbBR/VBR) #> d/dt(Muscles) = QMU * (Arterial_Blood/VAB - Muscles/KbMU/VMU) #> d/dt(Adipose) = QAD * (Arterial_Blood/VAB - Adipose/KbAD/VAD) #> d/dt(Skin) = QSK * (Arterial_Blood/VAB - Skin/KbSK/VSK) #> d/dt(Spleen) = QSP * (Arterial_Blood/VAB - Spleen/KbSP/VSP) #> d/dt(Pancreas) = QPA * (Arterial_Blood/VAB - Pancreas/KbPA/VPA) #> d/dt(Liver) = QHA * Arterial_Blood/VAB + QSP * Spleen/KbSP/VSP + #> QPA * Pancreas/KbPA/VPA + QST * Stomach/KbST/VST + QGU * #> Gut/KbGU/VGU - CLint * fub * Liver/KbLI/VLI - QLI * Liver/KbLI/VLI #> d/dt(Stomach) = QST * (Arterial_Blood/VAB - Stomach/KbST/VST) #> d/dt(Gut) = QGU * (Arterial_Blood/VAB - Gut/KbGU/VGU) #> d/dt(Bones) = QBO * (Arterial_Blood/VAB - Bones/KbBO/VBO) #> d/dt(Kidneys) = QKI * (Arterial_Blood/VAB - Kidneys/KbKI/VKI) #> d/dt(Arterial_Blood) = QLU * (Lungs/KbLU/VLU - Arterial_Blood/VAB) #> d/dt(Venous_Blood) = QHT * Heart/KbHT/VHT + QBR * Brain/KbBR/VBR + #> QMU * Muscles/KbMU/VMU + QAD * Adipose/KbAD/VAD + QSK * #> Skin/KbSK/VSK + QLI * Liver/KbLI/VLI + QBO * Bones/KbBO/VBO + #> QKI * Kidneys/KbKI/VKI + QRB * Rest_of_Body/KbRB/VRB - #> QLU * Venous_Blood/VVB #> d/dt(Rest_of_Body) = QRB * (Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) #> })"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-cmt.html","id":"changing-compartment-numbers-by-pre-declaring-the-compartments","dir":"Articles","previous_headings":"","what":"Changing compartment numbers by pre-declaring the compartments","title":"Changing rxode2 compartment numbers","text":"add compartments rxode2 model order desire simply need pre-declare compartments cmt. example specifying Venous_Blood Skin 1st 2nd compartments, respectively, simple: can see change simple printout first two compartments Venous_Blood followed Skin.","code":"pbpk2 <- function() { model({ ## Now this is the first compartment, ie cmt=1 cmt(Venous_Blood) ## Skin may be a compartment you wish to dose to as well, ## so it is now cmt=2 cmt(Skin) KbBR = exp(lKbBR) KbMU = exp(lKbMU) KbAD = exp(lKbAD) CLint= exp(lCLint + eta.LClint) KbBO = exp(lKbBO) KbRB = exp(lKbRB) ## Regional blood flows # Cardiac output (L/h) from White et al (1968)m CO = (187.00*WT^0.81)*60/1000; QHT = 4.0 *CO/100; QBR = 12.0*CO/100; QMU = 17.0*CO/100; QAD = 5.0 *CO/100; QSK = 5.0 *CO/100; QSP = 3.0 *CO/100; QPA = 1.0 *CO/100; QLI = 25.5*CO/100; QST = 1.0 *CO/100; QGU = 14.0*CO/100; QHA = QLI - (QSP + QPA + QST + QGU); # Hepatic artery blood flow QBO = 5.0 *CO/100; QKI = 19.0*CO/100; QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI); QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + QRB; ## Organs' volumes = organs' weights / organs' density VLU = (0.76 *WT/100)/1.051; VHT = (0.47 *WT/100)/1.030; VBR = (2.00 *WT/100)/1.036; VMU = (40.00*WT/100)/1.041; VAD = (21.42*WT/100)/0.916; VSK = (3.71 *WT/100)/1.116; VSP = (0.26 *WT/100)/1.054; VPA = (0.14 *WT/100)/1.045; VLI = (2.57 *WT/100)/1.040; VST = (0.21 *WT/100)/1.050; VGU = (1.44 *WT/100)/1.043; VBO = (14.29*WT/100)/1.990; VKI = (0.44 *WT/100)/1.050; VAB = (2.81 *WT/100)/1.040; VVB = (5.62 *WT/100)/1.040; VRB = (3.86 *WT/100)/1.040; ## Fixed parameters BP = 0.61; # Blood:plasma partition coefficient fup = 0.028; # Fraction unbound in plasma fub = fup/BP; # Fraction unbound in blood KbLU = exp(0.8334); KbHT = exp(1.1205); KbSK = exp(-.5238); KbSP = exp(0.3224); KbPA = exp(0.3224); KbLI = exp(1.7604); KbST = exp(0.3224); KbGU = exp(1.2026); KbKI = exp(1.3171); ##----------------------------------------- S15 = VVB*BP/1000; C15 = Venous_Blood/S15 ##----------------------------------------- d/dt(Lungs) = QLU*(Venous_Blood/VVB - Lungs/KbLU/VLU); d/dt(Heart) = QHT*(Arterial_Blood/VAB - Heart/KbHT/VHT); d/dt(Brain) = QBR*(Arterial_Blood/VAB - Brain/KbBR/VBR); d/dt(Muscles) = QMU*(Arterial_Blood/VAB - Muscles/KbMU/VMU); d/dt(Adipose) = QAD*(Arterial_Blood/VAB - Adipose/KbAD/VAD); d/dt(Skin) = QSK*(Arterial_Blood/VAB - Skin/KbSK/VSK); d/dt(Spleen) = QSP*(Arterial_Blood/VAB - Spleen/KbSP/VSP); d/dt(Pancreas) = QPA*(Arterial_Blood/VAB - Pancreas/KbPA/VPA); d/dt(Liver) = QHA*Arterial_Blood/VAB + QSP*Spleen/KbSP/VSP + QPA*Pancreas/KbPA/VPA + QST*Stomach/KbST/VST + QGU*Gut/KbGU/VGU - CLint*fub*Liver/KbLI/VLI - QLI*Liver/KbLI/VLI; d/dt(Stomach) = QST*(Arterial_Blood/VAB - Stomach/KbST/VST); d/dt(Gut) = QGU*(Arterial_Blood/VAB - Gut/KbGU/VGU); d/dt(Bones) = QBO*(Arterial_Blood/VAB - Bones/KbBO/VBO); d/dt(Kidneys) = QKI*(Arterial_Blood/VAB - Kidneys/KbKI/VKI); d/dt(Arterial_Blood) = QLU*(Lungs/KbLU/VLU - Arterial_Blood/VAB); d/dt(Venous_Blood) = QHT*Heart/KbHT/VHT + QBR*Brain/KbBR/VBR + QMU*Muscles/KbMU/VMU + QAD*Adipose/KbAD/VAD + QSK*Skin/KbSK/VSK + QLI*Liver/KbLI/VLI + QBO*Bones/KbBO/VBO + QKI*Kidneys/KbKI/VKI + QRB*Rest_of_Body/KbRB/VRB - QLU*Venous_Blood/VVB; d/dt(Rest_of_Body) = QRB*(Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB); }) } pbpk2 <- pbpk2() pbpk2 #> -- rxode2-based free-form 16-cmt ODE model ------------------------------------- #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 Venous_Blood #> 2 2 Skin #> 3 3 Lungs #> 4 4 Heart #> 5 5 Brain #> 6 6 Muscles #> 7 7 Adipose #> 8 8 Spleen #> 9 9 Pancreas #> 10 10 Liver #> 11 11 Stomach #> 12 12 Gut #> 13 13 Bones #> 14 14 Kidneys #> 15 15 Arterial_Blood #> 16 16 Rest_of_Body #> -- Model (Normalized Syntax): -- #> function() { #> model({ #> cmt(Venous_Blood) #> cmt(Skin) #> KbBR = exp(lKbBR) #> KbMU = exp(lKbMU) #> KbAD = exp(lKbAD) #> CLint = exp(lCLint + eta.LClint) #> KbBO = exp(lKbBO) #> KbRB = exp(lKbRB) #> CO = (187 * WT^0.81) * 60/1000 #> QHT = 4 * CO/100 #> QBR = 12 * CO/100 #> QMU = 17 * CO/100 #> QAD = 5 * CO/100 #> QSK = 5 * CO/100 #> QSP = 3 * CO/100 #> QPA = 1 * CO/100 #> QLI = 25.5 * CO/100 #> QST = 1 * CO/100 #> QGU = 14 * CO/100 #> QHA = QLI - (QSP + QPA + QST + QGU) #> QBO = 5 * CO/100 #> QKI = 19 * CO/100 #> QRB = CO - (QHT + QBR + QMU + QAD + QSK + QLI + QBO + #> QKI) #> QLU = QHT + QBR + QMU + QAD + QSK + QLI + QBO + QKI + #> QRB #> VLU = (0.76 * WT/100)/1.051 #> VHT = (0.47 * WT/100)/1.03 #> VBR = (2 * WT/100)/1.036 #> VMU = (40 * WT/100)/1.041 #> VAD = (21.42 * WT/100)/0.916 #> VSK = (3.71 * WT/100)/1.116 #> VSP = (0.26 * WT/100)/1.054 #> VPA = (0.14 * WT/100)/1.045 #> VLI = (2.57 * WT/100)/1.04 #> VST = (0.21 * WT/100)/1.05 #> VGU = (1.44 * WT/100)/1.043 #> VBO = (14.29 * WT/100)/1.99 #> VKI = (0.44 * WT/100)/1.05 #> VAB = (2.81 * WT/100)/1.04 #> VVB = (5.62 * WT/100)/1.04 #> VRB = (3.86 * WT/100)/1.04 #> BP = 0.61 #> fup = 0.028 #> fub = fup/BP #> KbLU = exp(0.8334) #> KbHT = exp(1.1205) #> KbSK = exp(-0.5238) #> KbSP = exp(0.3224) #> KbPA = exp(0.3224) #> KbLI = exp(1.7604) #> KbST = exp(0.3224) #> KbGU = exp(1.2026) #> KbKI = exp(1.3171) #> S15 = VVB * BP/1000 #> C15 = Venous_Blood/S15 #> d/dt(Lungs) = QLU * (Venous_Blood/VVB - Lungs/KbLU/VLU) #> d/dt(Heart) = QHT * (Arterial_Blood/VAB - Heart/KbHT/VHT) #> d/dt(Brain) = QBR * (Arterial_Blood/VAB - Brain/KbBR/VBR) #> d/dt(Muscles) = QMU * (Arterial_Blood/VAB - Muscles/KbMU/VMU) #> d/dt(Adipose) = QAD * (Arterial_Blood/VAB - Adipose/KbAD/VAD) #> d/dt(Skin) = QSK * (Arterial_Blood/VAB - Skin/KbSK/VSK) #> d/dt(Spleen) = QSP * (Arterial_Blood/VAB - Spleen/KbSP/VSP) #> d/dt(Pancreas) = QPA * (Arterial_Blood/VAB - Pancreas/KbPA/VPA) #> d/dt(Liver) = QHA * Arterial_Blood/VAB + QSP * Spleen/KbSP/VSP + #> QPA * Pancreas/KbPA/VPA + QST * Stomach/KbST/VST + #> QGU * Gut/KbGU/VGU - CLint * fub * Liver/KbLI/VLI - #> QLI * Liver/KbLI/VLI #> d/dt(Stomach) = QST * (Arterial_Blood/VAB - Stomach/KbST/VST) #> d/dt(Gut) = QGU * (Arterial_Blood/VAB - Gut/KbGU/VGU) #> d/dt(Bones) = QBO * (Arterial_Blood/VAB - Bones/KbBO/VBO) #> d/dt(Kidneys) = QKI * (Arterial_Blood/VAB - Kidneys/KbKI/VKI) #> d/dt(Arterial_Blood) = QLU * (Lungs/KbLU/VLU - Arterial_Blood/VAB) #> d/dt(Venous_Blood) = QHT * Heart/KbHT/VHT + QBR * Brain/KbBR/VBR + #> QMU * Muscles/KbMU/VMU + QAD * Adipose/KbAD/VAD + #> QSK * Skin/KbSK/VSK + QLI * Liver/KbLI/VLI + QBO * #> Bones/KbBO/VBO + QKI * Kidneys/KbKI/VKI + QRB * Rest_of_Body/KbRB/VRB - #> QLU * Venous_Blood/VVB #> d/dt(Rest_of_Body) = QRB * (Arterial_Blood/VAB - Rest_of_Body/KbRB/VRB) #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-cmt.html","id":"appending-compartments-to-the-model","dir":"Articles","previous_headings":"","what":"Appending compartments to the model","title":"Changing rxode2 compartment numbers","text":"can also append “compartments” model. ODE solving internals, add fake compartments model differential equations defined. example legal: can see clearly underlying classic rxode2 model: compartments defined differential equations supported; model : give error:","code":"ode.1c.ka <- function(){ model({ C2 = center/V d / dt(depot) = -KA * depot d/dt(center) = KA * depot - CL*C2 cmt(eff) }) } ode.1c.ka <- ode.1c.ka() print(ode.1c.ka) #> -- rxode2-based free-form 2-cmt ODE model -------------------------------------- #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> -- Model (Normalized Syntax): -- #> function() { #> model({ #> C2 = center/V #> d/dt(depot) = -KA * depot #> d/dt(center) = KA * depot - CL * C2 #> cmt(eff) #> }) #> } ode.1c.ka$simulationModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_93a4b5aac982087fb323c655d89a3bb9 model (ready). #> x$state: depot, center #> x$stateExtra: eff #> x$params: V, KA, CL #> x$lhs: C2 ode.1c.ka <- rxode2({ cmt(eff) C2 = center/V; d / dt(depot) = -KA * depot d/dt(center) = KA * depot - CL*C2 }) Error in rxModelVars_(obj) : Evaluation error: Compartment 'eff' needs differential equations defined."},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-covariates.html","id":"individual-covariates","dir":"Articles","previous_headings":"","what":"Individual Covariates","title":"rxode2 Covariates","text":"individual covariate wish solve may specify iCov dataset:","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` library(units) ## udunits database from /usr/share/xml/udunits/udunits2.xml library(xgxr) mod3 <- function() { ini({ TKA <- 2.94E-01 ## Clearance with individuals TCL <- 1.86E+01 TV2 <-4.02E+01 TQ <-1.05E+01 TV3 <-2.97E+02 TKin <- 1 TKout <- 1 TEC50 <-200 }) model({ KA <- TKA CL <- TCL * (WT / 70) ^ 0.75 V2 <- TV2 Q <- TQ V3 <- TV3 Kin <- TKin Kout <- TKout EC50 <- TEC50 Tz <- 8 amp <- 0.1 C2 <- central/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(central) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 ## This specifies that the effect compartment starts at 1. }) } ev <- et(amount.units=\"mg\", time.units=\"hours\") %>% et(amt=10000, cmt=1) %>% et(0,48,length.out=100) %>% et(id=1:4) set.seed(10) rxSetSeed(10) ## Now use iCov to simulate a 4-id sample r1 <- solve(mod3, ev, # Create individual covariate data-frame iCov=data.frame(id=1:4, WT=rnorm(4, 70, 10))) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(r1) ## ── Solved rxode2 object ── ## ── Parameters ($params): ── ## TKA TCL TV2 TQ TV3 TKin TKout TEC50 Tz amp ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 8.000 0.100 ## ── Initial Conditions ($inits): ── ## depot central peri eff ## 0 0 0 1 ## ── First part of data (object): ── ## # A tibble: 400 × 17 ## id time KA CL V2 Q V3 Kin Kout EC50 C2 C3 depot ## [h] ## 1 1 0 0.294 18.6 40.2 10.5 297 1 1 200 0 0 10000 ## 2 1 0.485 0.294 18.6 40.2 10.5 297 1 1 200 27.8 0.257 8671. ## 3 1 0.970 0.294 18.6 40.2 10.5 297 1 1 200 43.7 0.873 7519. ## 4 1 1.45 0.294 18.6 40.2 10.5 297 1 1 200 51.7 1.68 6520. ## 5 1 1.94 0.294 18.6 40.2 10.5 297 1 1 200 54.7 2.56 5654. ## 6 1 2.42 0.294 18.6 40.2 10.5 297 1 1 200 54.5 3.45 4903. ## # ℹ 394 more rows ## # ℹ 4 more variables: central , peri , eff , WT plot(r1, C2, log=\"y\") ## Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-covariates.html","id":"time-varying-covariates","dir":"Articles","previous_headings":"","what":"Time Varying Covariates","title":"rxode2 Covariates","text":"Covariates easy specify rxode2, can specify variable. Time-varying covariates, like clock time circadian rhythm model, can also used. Extending indirect response model already discussed, : Now covariate present event dataset, system can solved combining dataset model: solving ODE equations, solver may sample times outside data. happens, ODE solver can use linear interpolation covariate values. equivalent R’s approxfun method=\"linear\". Note linear approximation case leads kinks solved system 24-hours covariate linear interpolation near 24 near 0. linear seems reasonable, cases like clock time make interpolation methods attractive. rxode2 default covariate interpolation last observation carried forward (locf), constant approximation. equivalent R’s approxfun method=\"constant\". gives following plots: case, plots seem smoother. can also use NONMEM’s preferred interpolation style next observation carried backward (NOCB): gives following plots:","code":"library(rxode2) library(units) mod4 <- mod3 %>% model(d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff) %>% model(-Kin) %>% model(Kin <- TKin + amp *cos(2*pi*(ctime-Tz)/24), append=C2, cov=\"ctime\") ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=1) %>% et(0,48,length.out=100) ## Create data frame of 8 am dosing for the first dose This is done ## with base R but it can be done with dplyr or data.table ev$ctime <- (ev$time+set_units(8,hr)) %% 24 ev$WT <- 70 r1 <- solve(mod4, ev, covsInterpolation=\"linear\") print(r1) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> TKA TCL TV2 TQ TV3 TKout TEC50 #> 0.294000 18.600000 40.200000 10.500000 297.000000 1.000000 200.000000 #> TKin Tz amp pi #> 1.000000 8.000000 0.100000 3.141593 #> ── Initial Conditions ($inits): ── #> depot central peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 100 × 17 #> time KA CL V2 Q V3 Kout EC50 C2 Kin C3 depot #> [h] #> 1 0 0.294 18.6 40.2 10.5 297 1 200 0 1.1 0 10000 #> 2 0.485 0.294 18.6 40.2 10.5 297 1 200 27.8 1.10 0.257 8671. #> 3 0.970 0.294 18.6 40.2 10.5 297 1 200 43.7 1.10 0.874 7519. #> 4 1.45 0.294 18.6 40.2 10.5 297 1 200 51.8 1.09 1.68 6520. #> 5 1.94 0.294 18.6 40.2 10.5 297 1 200 54.8 1.09 2.56 5654. #> 6 2.42 0.294 18.6 40.2 10.5 297 1 200 54.6 1.08 3.45 4903. #> # ℹ 94 more rows #> # ℹ 5 more variables: central , peri , eff , ctime [h], WT plot(r1,C2, ylab=\"Central Concentration\") plot(r1,eff) + ylab(\"Effect\") + xlab(\"Time\") r1 <- solve(mod4, ev,covsInterpolation=\"locf\") print(r1) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> TKA TCL TV2 TQ TV3 TKout TEC50 #> 0.294000 18.600000 40.200000 10.500000 297.000000 1.000000 200.000000 #> TKin Tz amp pi #> 1.000000 8.000000 0.100000 3.141593 #> ── Initial Conditions ($inits): ── #> depot central peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 100 × 17 #> time KA CL V2 Q V3 Kout EC50 C2 Kin C3 depot #> [h] #> 1 0 0.294 18.6 40.2 10.5 297 1 200 0 1.1 0 10000 #> 2 0.485 0.294 18.6 40.2 10.5 297 1 200 27.8 1.10 0.257 8671. #> 3 0.970 0.294 18.6 40.2 10.5 297 1 200 43.7 1.10 0.874 7519. #> 4 1.45 0.294 18.6 40.2 10.5 297 1 200 51.8 1.09 1.68 6520. #> 5 1.94 0.294 18.6 40.2 10.5 297 1 200 54.8 1.09 2.56 5654. #> 6 2.42 0.294 18.6 40.2 10.5 297 1 200 54.6 1.08 3.45 4903. #> # ℹ 94 more rows #> # ℹ 5 more variables: central , peri , eff , ctime [h], WT plot(r1,C2, ylab=\"Central Concentration\", xlab=\"Time\") plot(r1,eff, ylab=\"Effect\", xlab=\"Time\") r1 <- solve(mod4, ev,covsInterpolation=\"nocb\") print(r1) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> TKA TCL TV2 TQ TV3 TKout TEC50 #> 0.294000 18.600000 40.200000 10.500000 297.000000 1.000000 200.000000 #> TKin Tz amp pi #> 1.000000 8.000000 0.100000 3.141593 #> ── Initial Conditions ($inits): ── #> depot central peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 100 × 17 #> time KA CL V2 Q V3 Kout EC50 C2 Kin C3 depot #> [h] #> 1 0 0.294 18.6 40.2 10.5 297 1 200 0 1.1 0 10000 #> 2 0.485 0.294 18.6 40.2 10.5 297 1 200 27.8 1.10 0.257 8671. #> 3 0.970 0.294 18.6 40.2 10.5 297 1 200 43.7 1.10 0.874 7519. #> 4 1.45 0.294 18.6 40.2 10.5 297 1 200 51.8 1.09 1.68 6520. #> 5 1.94 0.294 18.6 40.2 10.5 297 1 200 54.8 1.09 2.56 5654. #> 6 2.42 0.294 18.6 40.2 10.5 297 1 200 54.6 1.08 3.45 4903. #> # ℹ 94 more rows #> # ℹ 5 more variables: central , peri , eff , ctime [h], WT plot(r1,C2, ylab=\"Central Concentration\", xlab=\"Time\") plot(r1,eff, ylab=\"Effect\", xlab=\"Time\")"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"creating-an-interactive-data-frame","dir":"Articles","previous_headings":"Using rxode2 data frames","what":"Creating an interactive data frame","title":"rxode2 Data Frames","text":"rxode2 supports returning solved object modified data-frame. done predict(), solve(), rxSolve() methods.","code":"library(rxode2) library(units) ## Setup example model mod1 <- function() { ini({ # central KA <- 2.94E-01 CL <- 1.86E+01 # peripheral V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 # effects Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) } ## Seup parameters and initial conditions ## Setup dosing event information ev <- et(amountUnits=\"mg\", timeUnits = \"hours\") %>% et(amt=10000, addl=9, ii=12) %>% et(amt=20000, addl=4, time=120, ii=24) %>% et(0:240) ## Now solve x <- predict(mod1, ev) x #> -- Solved rxode2 object -- #> -- Parameters (x$params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> -- Initial Conditions (x$inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 241 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # i 235 more rows"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"using-the-solved-object-as-a-simple-data-frame","dir":"Articles","previous_headings":"Using rxode2 data frames","what":"Using the solved object as a simple data frame","title":"rxode2 Data Frames","text":"solved object acts data.frame tbl can filtered dpylr. example filter easily.","code":"library(dplyr) ## You can drop units for comparisons and filtering x <- mod1 %>% solve(ev) %>% drop_units() %>% filter(time <= 3) %>% as_tibble() ## or keep them and compare with the proper units. x <- mod1 %>% solve(ev) %>% filter(time <= set_units(3, hr)) %>% as_tibble() x #> # A tibble: 4 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"updating-the-data-set-interactively","dir":"Articles","previous_headings":"","what":"Updating the data-set interactively","title":"rxode2 Data Frames","text":"However isn’t just simple data object. can use solved object update parameters fly, even change sampling time. First need recreate original solved system:","code":"x <- mod1 %>% solve(ev) print(x) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 241 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # i 235 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"modifying-observation-times-for-rxode2","dir":"Articles","previous_headings":"Updating the data-set interactively","what":"Modifying observation times for rxode2","title":"rxode2 Data Frames","text":"Notice initial effect now 2. can also change sampling times easily method changing t time. example:","code":"x$t <- seq(0,5,length.out=20) print(x) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 20 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 0.263 16.8 0.0817 9255. 677. 24.3 1.01 #> 3 0.526 29.5 0.299 8566. 1187. 88.7 1.03 #> 4 0.789 38.9 0.615 7929. 1562. 183. 1.06 #> 5 1.05 45.5 1.00 7338. 1830. 298. 1.09 #> 6 1.32 50.1 1.44 6792. 2013. 427. 1.12 #> # i 14 more rows plot(x)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-data-frame.html","id":"modifying-simulation-parameters","dir":"Articles","previous_headings":"Updating the data-set interactively","what":"Modifying simulation parameters","title":"rxode2 Data Frames","text":"can also access change parameters $ operator. example, accessing KA can done : may change assigning new value. can access/change parameters, initialization(s) events $params, $inits, $events accessor syntax, similar used . syntax makes easy update explore effect various parameters solved object.","code":"x$KA #> [1] 0.294 x$KA <- 1 print(x) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> KA CL V2 Q V3 Kin Kout EC50 #> 1.0 18.6 40.2 10.5 297.0 1.0 1.0 200.0 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> -- First part of data (object): -- #> # A tibble: 20 x 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 0.263 52.2 0.261 7686. 2098. 77.6 1.03 #> 3 0.526 83.3 0.900 5908. 3348. 267. 1.09 #> 4 0.789 99.8 1.75 4541. 4010. 519. 1.15 #> 5 1.05 106. 2.69 3490. 4273. 800. 1.21 #> 6 1.32 106. 3.66 2683. 4272. 1086. 1.26 #> # i 14 more rows plot(x)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"datasets-for-rxode2-nlmixr","dir":"Articles","previous_headings":"","what":"Datasets for rxode2 & nlmixr","title":"rxode2 Event Types","text":"Data input nlmixr type data input rxode2, similar data NONMEM (NONMEM-ready datasets can used directly nlmixr).","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"subject-identification-columns","dir":"Articles","previous_headings":"Columns Described by Type of Use","what":"Subject Identification Columns","title":"rxode2 Event Types","text":"subject identification column separates subjects identification random effects. ID: subject identifier may integer, character, factor.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"observation-columns","dir":"Articles","previous_headings":"Columns Described by Type of Use","what":"Observation Columns","title":"rxode2 Event Types","text":"Observation columns used indicate dependent variable use measure . DV: numeric column measurement CENS: numeric column indication censoring, limit quantification assay. LIMIT: numeric column helping indicate type censoring, limit quantification assay. MDV: indicator missing DV values CMT: name number compartment DVID: dependent variable identifier EVID event identifier","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dosing-columns","dir":"Articles","previous_headings":"Columns Described by Type of Use","what":"Dosing Columns","title":"rxode2 Event Types","text":"AMT: amount dose CMT: name number compartment EVID: event identifier ADDL: number additional doses RATE DUR: rate duration dose","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"details-for-specific-dataset-columns","dir":"Articles","previous_headings":"","what":"Details for Specific Dataset Columns","title":"rxode2 Event Types","text":"details sorted alphabetically column name. grouping use, see documentation .","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"amt-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"AMT Column","title":"rxode2 Event Types","text":"AMT column defines amount dose. observation rows, 0 NA. dosing rows, amount dose administered CMT. dose zero-order rate (constant infusion), infusion may setup using RATE DUR column.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"censlimit-columns","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"CENS/LIMIT Columns","title":"rxode2 Event Types","text":"CENS column indicator column indicating censoring occurred. pharmacokinetic modeling, censoring typically sample limit quantification. Internally rxode2 saves values nlmixr can use likelihood calculations. CENS = 0 indicates value DV measured without censoring. CENS = 1 indicates value left censored (limit quantitation) value DV censoring/quantitation limit. CENS = -1 indicates value right censored (limit quantitation) value DV censoring/quantitation limit. LIMIT additional information censoring handled nlmixr stored rxode2’s data structure well. value left censored, like limit 1 may also believe value certain threshold, like zero. case, limit 0 indicates censored value 0 1. short : CENS = 0 LIMIT ignored observation censored CENS = 1 value censored (LIMIT, DV) CENS = -1 value censored (DV, LIMIT)","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"cmt-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"CMT Column","title":"rxode2 Event Types","text":"CMT column indicates compartment event occurs. given character string factor (preferred method), matched name model. given integer, matched order compartments appear model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dur-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"DUR Column","title":"rxode2 Event Types","text":"DUR column defines duration infusion. used set duration zero-order rate infusion.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dv-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"DV Column","title":"rxode2 Event Types","text":"DV column indicates current measurement current compartment (see CMT) current measurement identifier (see DVID) may missing (see MDV) censored (see CENS).","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"dvid-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"DVID Column","title":"rxode2 Event Types","text":"TODO","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"evid-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"EVID Column","title":"rxode2 Event Types","text":"EVID column event identifier row data. observation records, 0. normal dosing records, 1. Many EVID values detailed rxode2 Event Types Classic rxode2 Events vignettes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"id-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"ID Column","title":"rxode2 Event Types","text":"ID column subject identifier. column used separate one individual (usually single person animal) another. model, ID column used separate individuals. numerical integrator re-initializes new individual, new values random effects selected.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-datasets.html","id":"rate-column","dir":"Articles","previous_headings":"Details for Specific Dataset Columns","what":"RATE Column","title":"rxode2 Event Types","text":"TODO","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"creating-rxode2s-event-tables","dir":"Articles","previous_headings":"","what":"Creating rxode2’s event tables","title":"Easy rxode2 Event Tables","text":"event table rxode2 specialized data frame acts container rxode2’s events observation times. create rxode2 event table may use code eventTable(), et(), even create data frame right event information contained . closely related types events rxode2 supports. event table can add sampling/observations doses piping direct access. short table two main functions create dosing Sampling times can added add.sampling( sampling times ) et( sampling times ). Dosing intervals sampling windows also supported. documentation using et() syntax, though supported. models, can illustrate using model shared rxode2 tutorial:","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` library(units) #> udunits database from /usr/share/xml/udunits/udunits2.xml (ev <- et()) #> -- EventTable with 0 records -- #> 0 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) (ev <- et()) #> -- EventTable with 0 records -- #> 0 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) ## Model from rxode2 tutorial m1 <-function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff; eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"adding-doses-to-the-event-table","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Adding doses to the event table","title":"Easy rxode2 Event Tables","text":"created can add dosing event table add.dosing(), et() functions. Using add.dosing() function : Notice units specified table. specified, units use units package keep track units convert needed. Additionally, ggforce uses label ggplot axes. set_units drop_units useful set drop rxode2 event table units. example, can see time axes labeled: familiar NONMEM/rxode2 event records, can also specify dosing using et dose elements directly: gives: shows easy creating event tables can .","code":"ev <- eventTable(amount.units=\"mg\", time.units=\"hr\") ## The methods ar attached to the event table, so you can use ## them directly ev$add.dosing(dose=10000, nbr.doses = 3)# loading doses ## Starts at time 0; Default dosing interval is 24 ## You can also pipe the event tables to these methods. ev <- ev %>% add.dosing(dose=5000, nbr.doses=14, dosing.interval=12)# maintenance ev #> -- EventTable with 2 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 2 x 5 #> time amt ii addl evid #> [h] [mg] [h] #> 1 0 10000 24 2 1:Dose (Add) #> 2 0 5000 12 13 1:Dose (Add) rxSolve(m1, ev) %>% plot(C2) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ev <- et(timeUnits=\"hr\") %>% et(amt=10000, until = set_units(3, days), ii=12) # loading doses ev #> -- EventTable with 1 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 1 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 10000 12 6 1:Dose (Add) rxSolve(m1, ev) %>% plot(C2) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"adding-sampling-to-an-event-table","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Adding sampling to an event table","title":"Easy rxode2 Event Tables","text":"notice examples, rxode2 generated default sampling times since sampling times. wish control sampling time, add samples rxode2 event table add.sampling et gives: use et can simply add similar way add.sampling: gives following rxode2 solve: Note jagged nature plots since sample times.","code":"ev <- eventTable(amount.units=\"mg\", time.units=\"hr\") ## The methods ar attached to the event table, so you can use them ## directly ev$add.dosing(dose=10000, nbr.doses = 3)# loading doses ev$add.sampling(seq(0,24,by=4)) ev #> -- EventTable with 8 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 7 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 8 x 5 #> time amt ii addl evid #> [h] [mg] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 24 2 1:Dose (Add) #> 3 4 NA NA NA 0:Observation #> 4 8 NA NA NA 0:Observation #> 5 12 NA NA NA 0:Observation #> 6 16 NA NA NA 0:Observation #> 7 20 NA NA NA 0:Observation #> 8 24 NA NA NA 0:Observation solve(m1, ev) %>% plot(C2) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, until = set_units(3, days), ii=12) %>% # loading doses et(seq(0,24,by=4)) ev #> -- EventTable with 8 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 7 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 8 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 6 1:Dose (Add) #> 3 4 NA NA NA 0:Observation #> 4 8 NA NA NA 0:Observation #> 5 12 NA NA NA 0:Observation #> 6 16 NA NA NA 0:Observation #> 7 20 NA NA NA 0:Observation #> 8 24 NA NA NA 0:Observation solve(m1, ev) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"expand-the-event-table-to-a-multi-subject-event-table-","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Expand the event table to a multi-subject event table.","title":"Easy rxode2 Event Tables","text":"thing needed expand event table list IDs want expand; can see following simulation 4 individuals solved :","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, until = set_units(3, days), ii=12) %>% # loading doses et(seq(0,48,length.out=200)) %>% et(id=1:4) ev #> -- EventTable with 804 records -- #> 4 dosing records (see x$get.dosing(); add with add.dosing or et) #> 800 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 804 x 6 #> id time amt ii addl evid #> [h] [h] #> 1 1 0 NA NA NA 0:Observation #> 2 1 0 10000 12 6 1:Dose (Add) #> 3 1 0.241 NA NA NA 0:Observation #> 4 1 0.482 NA NA NA 0:Observation #> 5 1 0.724 NA NA NA 0:Observation #> 6 1 0.965 NA NA NA 0:Observation #> 7 1 1.21 NA NA NA 0:Observation #> 8 1 1.45 NA NA NA 0:Observation #> 9 1 1.69 NA NA NA 0:Observation #> 10 1 1.93 NA NA NA 0:Observation #> # i 794 more rows set.seed(42) rxSetSeed(42) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"add-doses-and-samples-within-a-sampling-window","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Add doses and samples within a sampling window","title":"Easy rxode2 Event Tables","text":"addition adding fixed doses fixed sampling times, can windows sample draw doses . dosing windows specify time ordered numerical vector lowest dosing time highest dosing time inside list. example, start dosing time 6 hour dosing window: can clearly see different dosing times following simulation: course reality dosing interval may 2 hours: sort thing can specified sampling times. specify sampling times terms sampling window, can create list sampling times. sampling time two element ordered numeric vector. shows flexibility dosing sampling rxode2 event tables allow.","code":"set.seed(42) rxSetSeed(42) ev <- et(timeUnits=\"hr\") %>% et(time=list(c(0,6)), amt=10000, until = set_units(2, days), ii=12) %>% # loading doses et(id=1:4) ev #> -- EventTable with 16 records -- #> 16 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 16 x 6 #> id low time high amt evid #> [h] [h] [h] #> 1 1 0 5.49 6 10000 1:Dose (Add) #> 2 1 12 17.0 18 10000 1:Dose (Add) #> 3 1 24 25.7 30 10000 1:Dose (Add) #> 4 1 36 41.6 42 10000 1:Dose (Add) #> 5 2 0 4.31 6 10000 1:Dose (Add) #> 6 2 12 14.7 18 10000 1:Dose (Add) #> 7 2 24 28.2 30 10000 1:Dose (Add) #> 8 2 36 39.9 42 10000 1:Dose (Add) #> 9 3 0 0.808 6 10000 1:Dose (Add) #> 10 3 12 16.4 18 10000 1:Dose (Add) #> 11 3 24 27.1 30 10000 1:Dose (Add) #> 12 3 36 39.9 42 10000 1:Dose (Add) #> 13 4 0 4.98 6 10000 1:Dose (Add) #> 14 4 12 13.7 18 10000 1:Dose (Add) #> 15 4 24 29.6 30 10000 1:Dose (Add) #> 16 4 36 41.5 42 10000 1:Dose (Add) ev <- ev %>% et(seq(0,48,length.out=200)) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2) set.seed(42) rxSetSeed(42) ev <- et(timeUnits=\"hr\") %>% et(time=list(c(0,2)), amt=10000, until = set_units(2, days), ii=12) %>% # loading doses et(id=1:4) %>% et(seq(0,48,length.out=200)) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2) rxSetSeed(42) set.seed(42) ev <- et(timeUnits=\"hr\") %>% et(time=list(c(0,2)), amt=10000, until = set_units(2, days), ii=12) %>% # loading doses et(id=1:4) ## Create 20 samples in the first 24 hours and 20 samples in the ## second 24 hours samples <- c(lapply(1:20, function(...){c(0,24)}), lapply(1:20, function(...){c(20,48)})) ## Add the random collection to the event table ev <- ev %>% et(samples) library(ggplot2) solve(m1, ev, params=data.frame(KA=0.294*exp(rnorm(4)), CL=18.6*exp(rnorm(4)))) %>% plot(C2) + geom_point()"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"combining-event-tables","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Combining event tables","title":"Easy rxode2 Event Tables","text":"Since can create dosing records sampling records, can create complex dosing regimen wish. addition, rxode2 allows combine event tables c, seq, rep, rbind.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"sequencing-event-tables","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Sequencing event tables","title":"Easy rxode2 Event Tables","text":"One way combine event table sequence c, seq etSeq. takes two dosing groups adds least one inter-dose interval : sequencing events, can also separate sequence period time; example wanted separate week, easily following sequence event tables: Note example time bid qd event tables exactly one week, 1 week plus 24 hours inter-dose interval. want behavior, can sequence using wait=\"+ii\". Also note, rxode2 assumes dosing want space event tables , clears sampling records combine event tables. true, can also use option samples=\"use\"","code":"## bid for 5 days bid <- et(timeUnits=\"hr\") %>% et(amt=10000,ii=12,until=set_units(5, \"days\")) ## qd for 5 days qd <- et(timeUnits=\"hr\") %>% et(amt=20000,ii=24,until=set_units(5, \"days\")) ## bid for 5 days followed by qd for 5 days et <- seq(bid,qd) %>% et(seq(0,11*24,length.out=100)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days followed by qd for 5 days et <- seq(bid,set_units(1, \"week\"), qd) %>% et(seq(0,18*24,length.out=100)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days followed by qd for 5 days et <- seq(bid,set_units(1, \"week\"), qd,wait=\"+ii\") %>% et(seq(0,18*24,length.out=100)); rxSolve(m1, et) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"repeating-event-tables","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Repeating event tables","title":"Easy rxode2 Event Tables","text":"can event table can repeat etRep rep. example 4 rounds 2 weeks QD therapy 1 week therapy can simply specified: simplified way use sequence event tables. Therefore, many options still apply; samples cleared unless use samples=\"use\", time event tables least inter-dose interval. can adjust timing wait option.","code":"qd <-et(timeUnits = \"hr\") %>% et(amt=10000, ii=24, until=set_units(2, \"weeks\"), cmt=\"depot\") et <- rep(qd, times=4, wait=set_units(1,\"weeks\")) %>% add.sampling(set_units(seq(0, 12.5,by=0.005),weeks)) rxSolve(m1, et) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"combining-event-tables-with-rbind","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Combining event tables with rbind","title":"Easy rxode2 Event Tables","text":"may combine event tables rbind. consider event times combining event tables, keeps times. space event tables waiting period, also consider inter-dose interval. Using previous seq can clearly see difference. sequence: bind together rbind Still waiting period applies (consider inter-dose interval) can also bind tables together make ID event table unique; can good combine cohorts different expected dosing sampling times. requires id=\"unique\" option; Using first example shows different case:","code":"## bid for 5 days bid <- et(timeUnits=\"hr\") %>% et(amt=10000,ii=12,until=set_units(5, \"days\")) ## qd for 5 days qd <- et(timeUnits=\"hr\") %>% et(amt=20000,ii=24,until=set_units(5, \"days\")) et <- seq(bid,qd) %>% et(seq(0,18*24,length.out=500)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days et <- rbind(bid,qd) %>% et(seq(0,18*24,length.out=500)); rxSolve(m1, et) %>% plot(C2) et <- rbind(bid,wait=set_units(10,days),qd) %>% et(seq(0,18*24,length.out=500)); rxSolve(m1, et) %>% plot(C2) ## bid for 5 days et <- etRbind(bid,qd, id=\"unique\") %>% et(seq(0,150,length.out=500)); library(ggplot2) rxSolve(m1, et) %>% plot(C2) + facet_wrap( ~ id)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-table.html","id":"event-tables-in-rstudio-notebooks","dir":"Articles","previous_headings":"Creating rxode2’s event tables","what":"Event tables in Rstudio Notebooks","title":"Easy rxode2 Event Tables","text":"addition output console shown examples, Rstudio notebook output different can seen following screenshots; first screenshot shows event table looks evaluating Rstduio notebook simple dataframe allows page contents. click first box Rstudio notebook output, notes event table: ## Expanding events Event tables can expanded contain addl data item, like following example: can expand events addl items $expand() etExpand(ev): first, etExpand(ev) expands event table without modifying original data frame: can see addl events expanded, however original data frame remained intact: use ev$expand() modify ev object. similar object-oriented method:","code":"ev <- et() %>% et(dose=50, ii=8, until=48) ev #> -- EventTable with 1 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 1 x 5 #> time amt ii addl evid #> #> 1 0 50 8 6 1:Dose (Add) etExpand(ev) #> -- EventTable with 7 records -- #> 7 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 7 x 4 #> time amt ii evid #> #> 1 0 50 0 1:Dose (Add) #> 2 8 50 0 1:Dose (Add) #> 3 16 50 0 1:Dose (Add) #> 4 24 50 0 1:Dose (Add) #> 5 32 50 0 1:Dose (Add) #> 6 40 50 0 1:Dose (Add) #> 7 48 50 0 1:Dose (Add) print(ev) #> -- EventTable with 1 records -- #> 1 dosing records (see $get.dosing(); add with add.dosing or et) #> 0 observation times (see $get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with $expand(); or etExpand() #> -- First part of : -- #> # A tibble: 1 x 5 #> time amt ii addl evid #> #> 1 0 50 8 6 1:Dose (Add) ev$expand() ev #> -- EventTable with 7 records -- #> 7 dosing records (see x$get.dosing(); add with add.dosing or et) #> 0 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 7 x 4 #> time amt ii evid #> #> 1 0 50 0 1:Dose (Add) #> 2 8 50 0 1:Dose (Add) #> 3 16 50 0 1:Dose (Add) #> 4 24 50 0 1:Dose (Add) #> 5 32 50 0 1:Dose (Add) #> 6 40 50 0 1:Dose (Add) #> 7 48 50 0 1:Dose (Add)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"rxode2-event-tables","dir":"Articles","previous_headings":"","what":"rxode2 event tables","title":"rxode2 Event Types","text":"general, rxode2 event tables follow NONMEM dataset convention exceptions: may turn compartment negative compartment number “-cmt” cmt compartment name. compartment data item (cmt) can still number, number compartment defined appearance compartment name model. can tedious count, can specify compartment numbers easier using cmt(cmtName) beginning model. Bioavailability changes change rate infusion since dur/amt fixed input data. Similarly, specifying rate/amt infusion, bioavailability change infusion duration since rate/amt fixed input data. infrequent NONMEM columns supported: pcmt, call. evid=5 replace event; replaces value compartment value specified amt column. equivalent deSolve=replace. evid=6 multiply event; multiplies value compartment value specified amt column. equivalent deSolve=multiply. evid=7 transit compartment model/phantom event. puts dose dose() function calculates time since last dose tad() doesn’t actually put dose compartment. allows transit() function easily apply compartment. legal entries data table: notes: evid can classic RxODE (described ) NONMEM-style evid described . NONMEM’s DV required; rxode2 ODE solving framework. NONMEM’s MDV required, since captured EVID. Instead NONMEM-compatible data, can accept deSolve compatible data-frames. returning rxode2 solved data-set additional event ids (EVID) may see depending solving options: EVID = -1 modeled rate ends (corresponds rate = -1) EVID = -2 modeled duration ends (corresponds rate=-2) EVID = -10 rate specified zero-order infusion ends (corresponds rate > 0) EVID = -20 duration specified zero-order infusion ends (corresponds dur > 0) EVID = 101, 102, 103,... correspond 1, 2, 3, … modeled time (mtime). can accessed solving option combination addDosing=TRUE subsetNonmem=FALSE. want see classic EVID equivalents can use addDosing=NA. illustrate event types use model original rxode2 tutorial.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` ## Model from rxode2 tutorial m1 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"bolusadditive-doses","dir":"Articles","previous_headings":"","what":"Bolus/Additive Doses","title":"rxode2 Event Types","text":"bolus dose default type dose rxode2 requires amt/dose. Note uses convenience function et() described rxode2 event tables","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 2 1:Dose (Add) #> 3 0.242 NA NA NA 0:Observation #> 4 0.485 NA NA NA 0:Observation #> 5 0.727 NA NA NA 0:Observation #> 6 0.970 NA NA NA 0:Observation #> 7 1.21 NA NA NA 0:Observation #> 8 1.45 NA NA NA 0:Observation #> 9 1.70 NA NA NA 0:Observation #> 10 1.94 NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev) %>% plot(C2) + xlab(\"Time\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"infusion-doses","dir":"Articles","previous_headings":"","what":"Infusion Doses","title":"rxode2 Event Types","text":"different type infusions rxode2 supports: Constant Rate Infusion (rate) Constant Duration Infusion (dur) Estimated Rate Infusion Estimated Duration Infusion","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"constant-infusion-in-terms-of-duration-and-rate","dir":"Articles","previous_headings":"Infusion Doses","what":"Constant Infusion (in terms of duration and rate)","title":"rxode2 Event Types","text":"next type event infusion; two ways specify infusion; first dur keyword. example : can also specified rate component: exception bioavailability changes infusion. case modeling rate, bioavailability decrease, decreases infusion duration, NONMEM. example: Similarly increasing bioavailability increases infusion duration. rationale behavior rate amt specified event table, thing can change bioavailability increase duration infusion. specify amt dur components event table, bioavailability changes affect rate infusion. can see side--side comparison bioavailability changes affecting rate instead duration records following plots:","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, dur=8) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt ii addl evid dur #> [h] [h] [h] #> 1 0 NA NA NA 0:Observation NA #> 2 0 10000 12 2 1:Dose (Add) 8 #> 3 0.242 NA NA NA 0:Observation NA #> 4 0.485 NA NA NA 0:Observation NA #> 5 0.727 NA NA NA 0:Observation NA #> 6 0.970 NA NA NA 0:Observation NA #> 7 1.21 NA NA NA 0:Observation NA #> 8 1.45 NA NA NA 0:Observation NA #> 9 1.70 NA NA NA 0:Observation NA #> 10 1.94 NA NA NA 0:Observation NA #> # i 91 more rows rxSolve(m1, ev) %>% plot(depot, C2) + xlab(\"Time\") ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, rate=10000/8) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt rate ii addl evid #> [h] [h] #> 1 0 NA NA NA NA 0:Observation #> 2 0 10000 1250 12 2 1:Dose (Add) #> 3 0.242 NA NA NA NA 0:Observation #> 4 0.485 NA NA NA NA 0:Observation #> 5 0.727 NA NA NA NA 0:Observation #> 6 0.970 NA NA NA NA 0:Observation #> 7 1.21 NA NA NA NA 0:Observation #> 8 1.45 NA NA NA NA 0:Observation #> 9 1.70 NA NA NA NA 0:Observation #> 10 1.94 NA NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev) %>% plot(depot, C2) + xlab(\"Time\") rxSolve(m1, ev, c(fdepot=0.25)) %>% plot(depot, C2) + xlab(\"Time\") rxSolve(m1, ev, c(fdepot=1.25)) %>% plot(depot, C2) + xlab(\"Time\") ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, dur=8) %>% et(seq(0, 24, length.out=100)) library(ggplot2) library(patchwork) p1 <- rxSolve(m1, ev, c(fdepot=1.25)) %>% plot(depot) + xlab(\"Time\") + ylim(0,5000) p2 <- rxSolve(m1, ev, c(fdepot=0.25)) %>% plot(depot) + xlab(\"Time\")+ ylim(0,5000) ## Use patchwork syntax to combine plots p1 * p2"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"modeled-rate-and-duration-of-infusion","dir":"Articles","previous_headings":"Infusion Doses","what":"Modeled Rate and Duration of Infusion","title":"rxode2 Event Types","text":"can model duration, equivalent NONMEM’s rate=-2. Similarly, may also model rate. equivalent NONMEM’s rate=-1 rxode2’s event table specifies data item well.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, rate=-2) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt rate ii addl evid #> [h] [h] #> 1 0 NA NA NA NA 0:Observation #> 2 0 10000 -2:dur 12 2 1:Dose (Add) #> 3 0.242 NA NA NA NA 0:Observation #> 4 0.485 NA NA NA NA 0:Observation #> 5 0.727 NA NA NA NA 0:Observation #> 6 0.970 NA NA NA NA 0:Observation #> 7 1.21 NA NA NA NA 0:Observation #> 8 1.45 NA NA NA NA 0:Observation #> 9 1.70 NA NA NA NA 0:Observation #> 10 1.94 NA NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev, c(durDepot=7)) %>% plot(depot, C2) + xlab(\"Time\") ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12,until=24, rate=-1) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 101 x 6 #> time amt rate ii addl evid #> [h] [h] #> 1 0 NA NA NA NA 0:Observation #> 2 0 10000 -1:rate 12 2 1:Dose (Add) #> 3 0.242 NA NA NA NA 0:Observation #> 4 0.485 NA NA NA NA 0:Observation #> 5 0.727 NA NA NA NA 0:Observation #> 6 0.970 NA NA NA NA 0:Observation #> 7 1.21 NA NA NA NA 0:Observation #> 8 1.45 NA NA NA NA 0:Observation #> 9 1.70 NA NA NA NA 0:Observation #> 10 1.94 NA NA NA NA 0:Observation #> # i 91 more rows rxSolve(m1, ev, c(rateDepot=10000/3)) %>% plot(depot, C2) + xlab(\"Time\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"steady-state","dir":"Articles","previous_headings":"","what":"Steady State","title":"rxode2 Event Types","text":"doses solved steady state reached constant inter-dose interval.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, ss=1) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 101 records -- #> 1 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> -- First part of x: -- #> # A tibble: 101 x 5 #> time amt ii evid ss #> [h] [h] #> 1 0 NA NA 0:Observation NA #> 2 0 10000 12 1:Dose (Add) 1 #> 3 0.242 NA NA 0:Observation NA #> 4 0.485 NA NA 0:Observation NA #> 5 0.727 NA NA 0:Observation NA #> 6 0.970 NA NA 0:Observation NA #> 7 1.21 NA NA 0:Observation NA #> 8 1.45 NA NA 0:Observation NA #> 9 1.70 NA NA 0:Observation NA #> 10 1.94 NA NA 0:Observation NA #> # i 91 more rows rxSolve(m1, ev) %>% plot(C2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"steady-state-for-complex-dosing","dir":"Articles","previous_headings":"Steady State","what":"Steady state for complex dosing","title":"rxode2 Event Types","text":"using ss=2 flag, can use super-positioning principle linear kinetics get steady state nonstandard dosing (.e. morning 100 mg vs evening 150 mg). done : Saving state values Resetting states solving system steady state Adding back prior state values can see takes full dose cycle reach true complex steady state dosing.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=24, ss=1) %>% et(time=12, amt=15000, ii=24, ss=2) %>% et(time=24, amt=10000, ii=24, addl=3) %>% et(time=36, amt=15000, ii=24, addl=3) %>% et(seq(0, 64, length.out=500)) library(ggplot2) rxSolve(m1, ev,maxsteps=10000) %>% plot(C2) + annotate(\"rect\", xmin=0, xmax=24, ymin=-Inf, ymax=Inf, alpha=0.2) + annotate(\"text\", x=12.5, y=7, label=\"Initial Steady State Period\") + annotate(\"text\", x=44, y=7, label=\"Steady State AM/PM dosing\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"steady-state-for-constant-infusion-or-zero-order-processes","dir":"Articles","previous_headings":"Steady State","what":"Steady state for constant infusion or zero order processes","title":"rxode2 Event Types","text":"last type steady state rxode2 supports steady-state constant infusion rate. can specified way NONMEM, : inter-dose interval ii=0 steady state dose, ie ss=1 Either positive rate (rate>0) estimated rate rate=-1. zero dose, ie amt=0 steady-state constant infusion achieved, infusion turned using record, just like NONMEM. Note rate=-2 model duration infusion doesn’t make much sense since solving infusion steady state. duration specified steady state solution. Also note bioavailability changes steady state infusion also make sense neither change rate duration steady state infusion. Hence modeled bioavailability type dosing event ignored. example: can used PK, can used steady-state disease processes.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=0, ss=1,rate=10000/8) p1 <- rxSolve(m1, ev) %>% plot(C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=200000, rate=10000/8) %>% et(0, 250, length.out=1000) p2 <- rxSolve(m1, ev) %>% plot(C2, eff) library(patchwork) p1 / p2"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"reset-events","dir":"Articles","previous_headings":"","what":"Reset Events","title":"rxode2 Event Types","text":"Reset events implemented evid=3 evid=reset, reset evid=4 reset dose. solving show happens system system reset 6 hours post-dose. can see compartments reset initial values. next dose start dosing cycle . case, whole system reset dose given","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, evid=reset) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 102 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 102 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 3 1:Dose (Add) #> 3 0.242 NA NA NA 0:Observation #> 4 0.485 NA NA NA 0:Observation #> 5 0.727 NA NA NA 0:Observation #> 6 0.970 NA NA NA 0:Observation #> 7 1.21 NA NA NA 0:Observation #> 8 1.45 NA NA NA 0:Observation #> 9 1.70 NA NA NA 0:Observation #> 10 1.94 NA NA NA 0:Observation #> # i 92 more rows rxSolve(m1, ev) %>% plot(depot,C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, amt=10000, evid=4) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 102 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 102 x 5 #> time amt ii addl evid #> [h] [h] #> 1 0 NA NA NA 0:Observation #> 2 0 10000 12 3 1:Dose (Add) #> 3 0.242 NA NA NA 0:Observation #> 4 0.485 NA NA NA 0:Observation #> 5 0.727 NA NA NA 0:Observation #> 6 0.970 NA NA NA 0:Observation #> 7 1.21 NA NA NA 0:Observation #> 8 1.45 NA NA NA 0:Observation #> 9 1.70 NA NA NA 0:Observation #> 10 1.94 NA NA NA 0:Observation #> # i 92 more rows rxSolve(m1, ev) %>% plot(depot,C2, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-event-types.html","id":"turning-off-compartments","dir":"Articles","previous_headings":"","what":"Turning off compartments","title":"rxode2 Event Types","text":"may also turn compartment, similar reset event. Solving shows system: case, depot turned , depot compartment concentrations set initial values compartment concentrations/levels reset. another dose depot administered depot compartment turned back . Note dose compartment turns back compartment dosed. Hence turn effect compartment, continues another dose depot. turn back compartment, zero-dose compartment evid=2 compartment needed.","code":"ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, cmt=\"-depot\", evid=2) %>% et(seq(0, 24, length.out=100)) ev #> -- EventTable with 102 records -- #> 2 dosing records (see x$get.dosing(); add with add.dosing or et) #> 100 observation times (see x$get.sampling(); add with add.sampling or et) #> multiple doses in `addl` columns, expand with x$expand(); or etExpand(x) #> -- First part of x: -- #> # A tibble: 102 x 6 #> time cmt amt ii addl evid #> [h] [h] #> 1 0 (obs) NA NA NA 0:Observation #> 2 0 (default) 10000 12 3 1:Dose (Add) #> 3 0.242 (obs) NA NA NA 0:Observation #> 4 0.485 (obs) NA NA NA 0:Observation #> 5 0.727 (obs) NA NA NA 0:Observation #> 6 0.970 (obs) NA NA NA 0:Observation #> 7 1.21 (obs) NA NA NA 0:Observation #> 8 1.45 (obs) NA NA NA 0:Observation #> 9 1.70 (obs) NA NA NA 0:Observation #> 10 1.94 (obs) NA NA NA 0:Observation #> # i 92 more rows rxSolve(m1, ev) %>% plot(depot,C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, cmt=\"-eff\", evid=2) %>% et(seq(0, 24, length.out=100)) rxSolve(m1, ev) %>% plot(depot,C2, eff) ev <- et(timeUnits=\"hr\") %>% et(amt=10000, ii=12, addl=3) %>% et(time=6, cmt=\"-eff\", evid=2) %>% et(time=12,cmt=\"eff\",evid=2) %>% et(seq(0, 24, length.out=100)) rxSolve(m1, ev) %>% plot(depot,C2, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"classic-rxode-evid-values","dir":"Articles","previous_headings":"","what":"Classic RxODE evid values","title":"Classic rxode2 Events","text":"Originally RxODE supported compound event IDs; rxode2 still supports parameters, often useful use normal NONMEM dataset standard used many modeling tools like NONMEM, Monolix nlmixr, described rxode2 types article. Classically, RxODE supported event coding single event id evid described following table. classic EVID concatenate numbers table, infusion compartment 1 10101 infusion compartment 199 119901. EVID = 0 (observations), EVID=2 (type event) EVID=3 supported. Internally EVID=9 non-observation event makes sure system initialized zero; EVID=9 manually set. EVID 10-99 represents modeled time interventions, similar NONMEM’s MTIME. along amount (amt) time columns specify events ODE system. infusions specified EVIDs > 100 amt column represents rate value. Infusion flags 1 2 +amt turn infusion specific compartment -amt turn infusion specific compartment. specify dose/duration place dosing records time duration starts stops. modeled rate/duration infusion flags infusion flag must followed infusion record. number concatenated together form full RxODE event ID, shown following examples:","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"bolus-dose-examples","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Bolus Dose Examples","title":"Classic rxode2 Events","text":"100 bolus dose compartment #1 time 0 100 bolus dose compartment #99 time 0 100 bolus dose compartment #199 time 0","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"infusion-event-examples","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Infusion Event Examples","title":"Classic rxode2 Events","text":"Bolus infusion rate 50 compartment 1 1.5 hr, (modeled bioavailability changes duration infusion) Bolus infusion rate 50 compartment 1 1.5 hr (modeled bioavailability changes rate infusion) Modeled rate amount 50 Modeled duration amount 50","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"steady-state-for-classic-rxode-evid-example","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Steady State for classic RxODE EVID example","title":"Classic rxode2 Events","text":"Steady state dose cmt 1 Steady State super-positioning principle 50 pm 100 dose","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"steady-state-with-lagged-dose-for-classic-rxode-evid","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Steady state with lagged dose for classic RxODE evid","title":"Classic rxode2 Events","text":"Steady state lagged dose bolus dose: time | evid | amt | ii | 0 | 109 | 100 | 24 | 0 | 101 | 100 | 0 | event 109 calculates trough amount steady state passed (ii-lag_time) event 101 applies next steady state dose. Steady state (=2) lagged bolus dose Steady state infusion lag time time | evid | amt | ii | 0 | 10109 | 5 | 24 | 0 | 10108 | -5 | 24 | 0 | 10101 | 5 | | 20 | 10101 | -5 | | case bolus, 10109 event calculates trough concentration ii=24, may (may ) still infusion running. infusion running 10108 event turn infusion appropriate time. infusion completed, 10108 event ignored. next 2 events 10101 represent event times (assuming bioavailability applied).","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-events-classic.html","id":"turning-off-a-compartment-with-classic-rxode-evid","dir":"Articles","previous_headings":"Classic RxODE evid values","what":"Turning off a compartment with classic RxODE EVID","title":"Classic rxode2 Events","text":"Turn first compartment time 12 Event coding rxode2 encoded single event number evid. compartments 100, coded : event 0 observation events. 100*(Compartment Number) + 1 dose captured amt 10000 + 100*(Compartment Number) + 1 infusion rate captured amt column infusion turned subtracting amt evid stop infusion. compartments greater equal 100, 100s place digits transferred 100,000th place digit. doses 99th compartment evid bolus dose 9901 evid infusion 19901. bolus dose 199th compartment evid bolus dose 109901. infusion dosing record 199th compartment 119901.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"Introduction to rxode2","text":"rxode2 R package facilitates simulation ODE models R. designed pharmacometrics models mind, can applied generally ODE model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"description-of-rxode2-illustrated-through-an-example","dir":"Articles","previous_headings":"","what":"Description of rxode2 illustrated through an example","title":"Introduction to rxode2","text":"model equations can specified text string, model file R expression. differential algebraic equations permitted. Differential equations specified d/dt(var_name) =. equation can separated semicolon. load rxode2 package compile model: Model parameters may specified ini({}) model block, initial conditions can specified within model cmt(0)= X, like model eff(0) <- 1. may also specify subject variability initial conditions residual error components just like nlmixr2. allows single interface nlmixr2/rxode2 models. Also note, classic rxode2 interface still works just like past (don’t worry breaking code time). fact, can get classic rxode2 model $simulationModel ui object:","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ # central KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 # peripheral Q=1.05E+01 V3=2.97E+02 # effects Kin=1 Kout=1 EC50=200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 eff(0) <- 1 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } mod1 <- mod1() # create the ui object (can also use `rxode2(mod1)`) mod1 summary(mod1$simulationModel)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"specify-dosing-and-sampling-in-rxode2","dir":"Articles","previous_headings":"Description of rxode2 illustrated through an example","what":"Specify Dosing and sampling in rxode2","title":"Introduction to rxode2","text":"rxode2 provides simple flexible way specify dosing sampling functions generate event table. First, empty event table generated “et()” function. interface similar NONMEM event tables: can see code, can dose compartment named rxode2 model. slight deviation NONMEM can reduce need compartment renumbering. events can also combined expanded (multi-subject events complex regimens) rbind, c, seq, rep. information creating complex dosing regimens using rxode2 see rxode2 events vignette.","code":"ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9,ii=12,cmt=\"depot\") %>% et(time=120, amt=2000, addl=4, ii=14, cmt=\"depot\") %>% et(0:240) # Add sampling"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-intro.html","id":"solving-odes","dir":"Articles","previous_headings":"Description of rxode2 illustrated through an example","what":"Solving ODEs","title":"Introduction to rxode2","text":"ODE can now solved using rxSolve: returns modified data frame. can see compartment values plot : , Note labels automatically labeled units initial event table. rxode2 extracts units label plot (present).","code":"x <- mod1 %>% rxSolve(ev) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ x #> ── Solved rxode2 object ── #> ── Parameters (x$params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions (x$inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows library(ggplot2) plot(x,C2) + ylab(\"Central Concentration\") plot(x,eff) + ylab(\"Effect\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-model-types.html","id":"prediction-only-models","dir":"Articles","previous_headings":"","what":"Prediction only models","title":"rxode2 additional model types","text":"Prediction models simple create. use rxode2 syntax without ODE systems . simple example one-compartment model. Solving rxode2 models saving simple ODE system, faster course.","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` mod <- function(){ model({ ipre <- 10 * exp(-ke * t) }) } et <- et(seq(0,24,length.out=50)) cmt1 <- rxSolve(mod,et,params=c(ke=0.5)) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ cmt1 ## -- Solved rxode2 object -- ## -- Parameters (x$params): -- ## ke ## 0.5 ## -- Initial Conditions (x$inits): -- ## named numeric(0) ## -- First part of data (object): -- ## # A tibble: 50 x 2 ## time ipre ## ## 1 0 10 ## 2 0.490 7.83 ## 3 0.980 6.13 ## 4 1.47 4.80 ## 5 1.96 3.75 ## 6 2.45 2.94 ## # i 44 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-model-types.html","id":"solved-compartment-models","dir":"Articles","previous_headings":"","what":"Solved compartment models","title":"rxode2 additional model types","text":"Solved models also simple create. simply place linCmt() psuedo-function code. linCmt() function figures type model use based parameter names specified. often, pharmacometric models parameterized terms volume clearances. Clearances specified NONMEM-style names CL, Q, Q1, Q2, etc. distributional clearances CLD, CLD2. Volumes specified Central (VC V), Peripheral/Tissue (VP, VT). translations available, example translations : Another popular parameterization terms micro-constants. rxode2 assumes compartment 1 central compartment. elimination constant specified K, Ke Kel. example translations : last parameterization possible using alpha V //B/C. example translations : linCmt() sleuthing complete, 1, 2 3 compartment model solution used value linCmt(). compartments can dose linear solved system depot central linear absorption constant model ka. Without additional ODEs, compartments numbered depot=1 central=2. absorption constant ka missing, may dose central compartment. Without additional ODEs compartment number central=1. compartments take sort events ODE model can take, discussed rxode2 events vignette. acts ODE model; specify dose depot compartment solve system:","code":"mod <- function() { ini({ kel <- 0.5 V <- 1 }) model({ ipre <- linCmt(V, kel) }) } et <- et(amt=10,time=0,cmt=depot) %>% et(seq(0,24,length.out=50)) cmt1 <- rxSolve(mod,et) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ cmt1 ## -- Solved rxode2 object -- ## -- Parameters (x$params): -- ## kel V ## 0.5 1.0 ## -- Initial Conditions (x$inits): -- ## named numeric(0) ## -- First part of data (object): -- ## # A tibble: 50 x 2 ## time ipre ## ## 1 0 10 ## 2 0.490 7.83 ## 3 0.980 6.13 ## 4 1.47 4.80 ## 5 1.96 3.75 ## 6 2.45 2.94 ## # i 44 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-model-types.html","id":"mixing-solved-systems-and-odes","dir":"Articles","previous_headings":"","what":"Mixing Solved Systems and ODEs","title":"rxode2 additional model types","text":"addition pure ODEs, may mix solved systems ODEs. prior 2-compartment indirect response model can simplified linCmt() function: allows indirect response model assign 2-compartment model C2 variable used indirect response model. mixing solved systems ODEs, solved system’s compartment always last compartment. solved system technically isn’t compartment solved. Adding dosing compartment end interfere actual ODE solved. Therefore,two-compartment indirect response model, effect compartment compartment #1 PK dosing compartment depot compartment #2. compartment model requires new event table since compartment number changed: can solved following command: Note solving require specifying effect compartment initial condition 1. Rather, already pre-specified eff(0)=1. can solved different initial conditions easily: rxode2 detective also require specify variables linCmt() function already defined block. Therefore, following function also work solve system. Note specify parameters solving system since built model, can override parameters:","code":"library(rxode2) ## Setup example model mod1 <-function() { model({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) =-KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff }) } ## Seup parameters and initial conditions theta <- c(KA=2.94E-01, CL=1.86E+01, V2=4.02E+01, # central Q=1.05E+01, V3=2.97E+02, # peripheral Kin=1, Kout=1, EC50=200) # effects inits <- c(eff=1) ## Setup dosing event information ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9, ii=12) %>% et(amt=20000, addl=4, time=120, ii=24) %>% add.sampling(0:240) ## Setup a mixed solved/ode system: mod2 <- function() { model({ ## the order of variables do not matter, the type of compartmental ## model is determined by the parameters specified. C2 = linCmt(KA, CL, V2, Q, V3); eff(0) = 1 ## This specifies that the effect compartment starts at 1. d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; }) } ev <- et(amountUnits='mg', timeUnits='hours') %>% et(amt=10000, addl=9, ii=12, cmt=2) %>% et(amt=20000, addl=4, time=120, ii=24, cmt=2) %>% et(0:240) x <- mod2 %>% solve(theta, ev) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 ## -- Initial Conditions ($inits): -- ## eff ## 1 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 1 ## 2 1 121. 1.35 ## 3 2 60.3 1.38 ## 4 3 31.0 1.28 ## 5 4 17.0 1.18 ## 6 5 10.2 1.11 ## # i 235 more rows x <- mod2 %>% solve(theta, ev,c(eff=2)) print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 ## -- Initial Conditions ($inits): -- ## eff ## 2 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 2 ## 2 1 121. 1.93 ## 3 2 60.3 1.67 ## 4 3 31.0 1.41 ## 5 4 17.0 1.23 ## 6 5 10.2 1.13 ## # i 235 more rows mod3 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ # Since the parameters are in the ini block, put them in linCmt so # that the model is detected correctly C2 <- linCmt(KA, CL, V2, Q, V3) eff(0) <- 1 ## This specifies that the effect compartment starts at 1. d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff; }) } x <- mod3 %>% solve(ev) print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 ## -- Initial Conditions ($inits): -- ## eff ## 1 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 1 ## 2 1 121. 1.35 ## 3 2 60.3 1.38 ## 4 3 31.0 1.28 ## 5 4 17.0 1.18 ## 6 5 10.2 1.11 ## # i 235 more rows x <- mod3 %>% solve(c(KA=10),ev) print(x) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## KA CL V2 Q V3 Kin Kout EC50 ## 10.0 18.6 40.2 10.5 297.0 1.0 1.0 200.0 ## -- Initial Conditions ($inits): -- ## eff ## 1 ## -- First part of data (object): -- ## # A tibble: 241 x 3 ## time C2 eff ## [h] ## 1 0 249. 1 ## 2 1 121. 1.35 ## 3 2 60.3 1.38 ## 4 3 31.0 1.28 ## 5 4 17.0 1.18 ## 6 5 10.2 1.11 ## # i 235 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"nesting-in-rxode2","dir":"Articles","previous_headings":"","what":"Nesting in rxode2","title":"Nesting levels in rxode2","text":"one level nesting possible rxode2; example using following uncertainties sources variability:","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"event-table","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Event table","title":"Nesting levels in rxode2","text":"event table contains nesting variables: inv: investigator id id: subject id eye: eye id (left right) occ: occasion","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9,ii=12,cmt=\"depot\") %>% et(time=120, amt=2000, addl=4, ii=14, cmt=\"depot\") %>% et(seq(0, 240, by=4)) %>% # Assumes sampling when there is no dosing information et(seq(0, 240, by=4) + 0.1) %>% ## adds 0.1 for separate eye et(id=1:20) %>% ## Add an occasion per dose mutate(occ=cumsum(!is.na(amt))) %>% mutate(occ=ifelse(occ == 0, 1, occ)) %>% mutate(occ=2- occ %% 2) %>% mutate(eye=ifelse(round(time) == time, 1, 2)) %>% mutate(inv=ifelse(id < 10, 1, 2)) %>% as_tibble -> ev"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"rxode2-model","dir":"Articles","previous_headings":"Nesting in rxode2","what":"rxode2 model","title":"Nesting levels in rxode2","text":"creates rxode2 model multi-level nesting. Note variables inv.Cl, inv.Ka, eta.Cl etc; need one variable level nesting.","code":"mod <- rxode2({ ## Clearance with individuals eff(0) = 1 C2 = centr/V2*(1+prop.sd) C3 = peri/V3 CL = TCl*exp(eta.Cl + eye.Cl + iov.Cl + inv.Cl) KA = TKA * exp(eta.Ka + eye.Ka + iov.Cl + inv.Ka) d/dt(depot) =-KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff ef0 = eff + add.sd }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"uncertainty-in-model-parameters","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Uncertainty in Model parameters","title":"Nesting levels in rxode2","text":"","code":"theta <- c(\"TKA\"=0.294, \"TCl\"=18.6, \"V2\"=40.2, \"Q\"=10.5, \"V3\"=297, \"Kin\"=1, \"Kout\"=1, \"EC50\"=200) ## Creating covariance matrix tmp <- matrix(rnorm(8^2), 8, 8) tMat <- tcrossprod(tmp, tmp) / (8 ^ 2) dimnames(tMat) <- list(names(theta), names(theta)) tMat #> TKA TCl V2 Q V3 #> TKA 0.10524323 0.0195962916 -0.040781262 -0.12273095 -0.010991507 #> TCl 0.01959629 0.0911766794 -0.019584328 -0.07810065 -0.006831950 #> V2 -0.04078126 -0.0195843283 0.040144815 0.05199231 0.002913150 #> Q -0.12273095 -0.0781006450 0.051992306 0.30989598 0.102225734 #> V3 -0.01099151 -0.0068319505 0.002913150 0.10222573 0.141390721 #> Kin 0.01554079 0.0001343313 -0.018775609 -0.06667904 -0.036404209 #> Kout -0.07183484 -0.0531330807 0.028680084 0.11728741 -0.033987922 #> EC50 0.03725729 0.0134040543 -0.003635586 -0.09243313 -0.002517493 #> Kin Kout EC50 #> TKA 0.0155407941 -0.07183484 0.037257286 #> TCl 0.0001343313 -0.05313308 0.013404054 #> V2 -0.0187756094 0.02868008 -0.003635586 #> Q -0.0666790392 0.11728741 -0.092433134 #> V3 -0.0364042091 -0.03398792 -0.002517493 #> Kin 0.0510761277 -0.03593031 0.049433157 #> Kout -0.0359303052 0.24617352 -0.104651320 #> EC50 0.0494331568 -0.10465132 0.134046722"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"nesting-variability","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Nesting Variability","title":"Nesting levels in rxode2","text":"specify multiple levels nesting, can specify nested lotri matrix; using approach use condition operator | specify variable nesting occurs ; Bayesian simulation need specify much information parameter; rxode2 nu parameter. case: - id, nu=100 model came 100 subjects - eye, nu=200 model came 200 eyes - occ, nu=200 model came 200 occasions - inv, nu=10 model came 10 investigators specify lotri can use | var(nu=X), :","code":"omega <- lotri(lotri(eta.Cl ~ 0.1, eta.Ka ~ 0.1) | id(nu=100), lotri(eye.Cl ~ 0.05, eye.Ka ~ 0.05) | eye(nu=200), lotri(iov.Cl ~ 0.01, iov.Ka ~ 0.01) | occ(nu=200), lotri(inv.Cl ~ 0.02, inv.Ka ~ 0.02) | inv(nu=10)) omega #> $id #> eta.Cl eta.Ka #> eta.Cl 0.1 0.0 #> eta.Ka 0.0 0.1 #> #> $eye #> eye.Cl eye.Ka #> eye.Cl 0.05 0.00 #> eye.Ka 0.00 0.05 #> #> $occ #> iov.Cl iov.Ka #> iov.Cl 0.01 0.00 #> iov.Ka 0.00 0.01 #> #> $inv #> inv.Cl inv.Ka #> inv.Cl 0.02 0.00 #> inv.Ka 0.00 0.02 #> #> Properties: nu"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"unexplained-variability","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Unexplained variability","title":"Nesting levels in rxode2","text":"last piece variability specify unexplained variability","code":"sigma <- lotri(prop.sd ~ .25, add.sd~ 0.125)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-nesting.html","id":"solving-the-problem","dir":"Articles","previous_headings":"Nesting in rxode2","what":"Solving the problem","title":"Nesting levels in rxode2","text":"multiple investigators study; investigator number individuals enrolled site. rxode2 automatically determines number investigators simulate effect investigator. output, inv.Cl(inv==1) inv.Cl investigator 1, inv.Cl(inv==2) inv.Cl investigator 2, etc. inv.Cl(inv==1), inv.Cl(inv==2), etc simulated study combined form investigator variability. equation form represent following: look simulated parameters can see inv.Cl(inv==1) inv.Cl(inv==2) s$params; study: eye variability occasion variability individual simulates number variables become eye occasion variability; case eye: look simulation variables (ie eye.Cl(eye==1), eye.Cl(eye==2), etc) change individual combined make eye variability occasion variability can seen pharamcometric models.","code":"s <- rxSolve(mod, theta, ev, thetaMat=tMat, omega=omega, sigma=sigma, sigmaDf=400, nStud=400) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> unhandled error message: EE:[lsoda] 70000 steps taken before reaching tout #> @(lsoda.c:750 #> Warning: some ID(s) could not solve the ODEs correctly; These values are #> replaced with 'NA' print(s) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> # A tibble: 8,000 x 24 #> sim.id id `inv.Cl(inv==1)` `inv.Cl(inv==2)` `inv.Ka(inv==1)` #> #> 1 1 1 -0.0130 0.169 0.00797 #> 2 1 2 -0.0130 0.169 0.00797 #> 3 1 3 -0.0130 0.169 0.00797 #> 4 1 4 -0.0130 0.169 0.00797 #> 5 1 5 -0.0130 0.169 0.00797 #> 6 1 6 -0.0130 0.169 0.00797 #> 7 1 7 -0.0130 0.169 0.00797 #> 8 1 8 -0.0130 0.169 0.00797 #> 9 1 9 -0.0130 0.169 0.00797 #> 10 1 10 -0.0130 0.169 0.00797 #> # i 7,990 more rows #> # i 19 more variables: `inv.Ka(inv==2)` , `eye.Cl(eye==1)` , #> # `eye.Cl(eye==2)` , `eye.Ka(eye==1)` , `eye.Ka(eye==2)` , #> # `iov.Cl(occ==1)` , `iov.Cl(occ==2)` , `iov.Ka(occ==1)` , #> # `iov.Ka(occ==2)` , V2 , V3 , TCl , eta.Cl , #> # TKA , eta.Ka , Q , Kin , Kout , EC50 #> -- Initial Conditions ($inits): -- #> depot centr peri eff #> 0 0 0 1 #> #> Simulation with uncertainty in: #> * parameters ($thetaMat for changes) #> * omega matrix ($omegaList) #> #> -- First part of data (object): -- #> # A tibble: 976,000 x 21 #> sim.id id time inv.Cl inv.Ka eye.Cl eye.Ka iov.Cl iov.Ka C2 C3 #> [h] #> 1 1 1 0 -0.0130 0.00797 -0.364 -0.0797 0.179 0.122 0 0 #> 2 1 1 0.1 -0.0130 0.00797 0.370 -0.365 0.179 0.122 5.97 0.0114 #> 3 1 1 4 -0.0130 0.00797 -0.364 -0.0797 0.179 0.122 38.4 4.13 #> 4 1 1 4.1 -0.0130 0.00797 0.370 -0.365 0.179 0.122 32.6 4.22 #> 5 1 1 8 -0.0130 0.00797 -0.364 -0.0797 0.179 0.122 32.9 6.65 #> 6 1 1 8.1 -0.0130 0.00797 0.370 -0.365 0.179 0.122 11.3 6.68 #> # i 975,994 more rows #> # i 10 more variables: CL , KA , ef0 , depot , centr , #> # peri , eff , occ , eye , inv inv.Cl = (inv == 1) * `inv.Cl(inv==1)` + (inv == 2) * `inv.Cl(inv==2)` print(head(s$params)) #> sim.id id inv.Cl(inv==1) inv.Cl(inv==2) inv.Ka(inv==1) inv.Ka(inv==2) #> 1 1 1 -0.01297846 0.1687315 0.007971401 -0.04895385 #> 2 1 2 -0.01297846 0.1687315 0.007971401 -0.04895385 #> 3 1 3 -0.01297846 0.1687315 0.007971401 -0.04895385 #> 4 1 4 -0.01297846 0.1687315 0.007971401 -0.04895385 #> 5 1 5 -0.01297846 0.1687315 0.007971401 -0.04895385 #> 6 1 6 -0.01297846 0.1687315 0.007971401 -0.04895385 #> eye.Cl(eye==1) eye.Cl(eye==2) eye.Ka(eye==1) eye.Ka(eye==2) iov.Cl(occ==1) #> 1 -0.36434523 0.3704529236 -0.07970633 -0.36508422 0.178666438 #> 2 -0.10723630 -0.1543465784 -0.36039433 0.05790772 -0.001530669 #> 3 -0.05693862 -0.0707329793 0.05983005 -0.04233135 -0.033899194 #> 4 -0.03024253 0.3470127990 -0.26257778 -0.17789013 -0.076572829 #> 5 0.07694592 0.0996393327 -0.07031235 -0.06961614 0.015876306 #> 6 -0.17759027 0.0002101827 0.10656827 0.54980122 -0.042696454 #> iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2) V2 V3 TCl #> 1 -0.05670826 0.121693604 0.021541003 39.94027 296.5209 18.59632 #> 2 -0.01018096 -0.003395944 0.009158207 39.94027 296.5209 18.59632 #> 3 -0.01926255 -0.048021922 -0.188427781 39.94027 296.5209 18.59632 #> 4 -0.17832430 0.048755911 0.084187050 39.94027 296.5209 18.59632 #> 5 0.07169803 -0.084700170 -0.017363741 39.94027 296.5209 18.59632 #> 6 -0.03108922 -0.060459613 -0.072644806 39.94027 296.5209 18.59632 #> eta.Cl TKA eta.Ka Q Kin Kout EC50 #> 1 -0.27253945 0.1845138 0.28787878 10.10728 1.41481 1.08659 200.2634 #> 2 -0.27825150 0.1845138 0.07849200 10.10728 1.41481 1.08659 200.2634 #> 3 -0.19629964 0.1845138 0.12164312 10.10728 1.41481 1.08659 200.2634 #> 4 -0.04954326 0.1845138 0.08188589 10.10728 1.41481 1.08659 200.2634 #> 5 0.01468967 0.1845138 0.02590364 10.10728 1.41481 1.08659 200.2634 #> 6 -0.21743628 0.1845138 0.33722480 10.10728 1.41481 1.08659 200.2634 print(head(s$params %>% filter(sim.id == 2))) #> sim.id id inv.Cl(inv==1) inv.Cl(inv==2) inv.Ka(inv==1) inv.Ka(inv==2) #> 1 2 1 -0.1381834 -0.07625591 -0.1147319 -0.1327589 #> 2 2 2 -0.1381834 -0.07625591 -0.1147319 -0.1327589 #> 3 2 3 -0.1381834 -0.07625591 -0.1147319 -0.1327589 #> 4 2 4 -0.1381834 -0.07625591 -0.1147319 -0.1327589 #> 5 2 5 -0.1381834 -0.07625591 -0.1147319 -0.1327589 #> 6 2 6 -0.1381834 -0.07625591 -0.1147319 -0.1327589 #> eye.Cl(eye==1) eye.Cl(eye==2) eye.Ka(eye==1) eye.Ka(eye==2) iov.Cl(occ==1) #> 1 0.2269129 0.2581869 0.2798932 -0.02681279 -0.22890287 #> 2 -0.2009005 -0.1696096 0.1474433 0.28535219 0.12983576 #> 3 -0.3672459 -0.3987801 0.2564106 -0.07613422 -0.10691395 #> 4 0.1755765 0.1995688 -0.1289375 0.12910869 -0.03148799 #> 5 0.2309972 0.1180215 -0.2515939 -0.20469517 -0.04596325 #> 6 0.1475438 0.1968126 0.2314342 -0.31494432 -0.04242763 #> iov.Cl(occ==2) iov.Ka(occ==1) iov.Ka(occ==2) V2 V3 TCl #> 1 0.03418487 0.09613456 0.16156506 40.41229 297.3253 18.2318 #> 2 -0.07748243 -0.19162629 -0.09772608 40.41229 297.3253 18.2318 #> 3 0.11418462 0.04707450 0.16807478 40.41229 297.3253 18.2318 #> 4 0.12375822 -0.03202817 0.20011273 40.41229 297.3253 18.2318 #> 5 -0.10228126 0.07826439 0.22500170 40.41229 297.3253 18.2318 #> 6 -0.10016671 -0.01462587 0.02336089 40.41229 297.3253 18.2318 #> eta.Cl TKA eta.Ka Q Kin Kout EC50 #> 1 -0.20086952 0.2333199 -0.0414174 10.72069 0.9786748 0.9991689 200.2193 #> 2 0.11308182 0.2333199 -0.3548082 10.72069 0.9786748 0.9991689 200.2193 #> 3 -0.36755955 0.2333199 0.1558984 10.72069 0.9786748 0.9991689 200.2193 #> 4 -0.18393330 0.2333199 0.3091535 10.72069 0.9786748 0.9991689 200.2193 #> 5 -0.02736961 0.2333199 -0.2065517 10.72069 0.9786748 0.9991689 200.2193 #> 6 -0.31209212 0.2333199 -0.3761942 10.72069 0.9786748 0.9991689 200.2193 eye.Cl = (eye == 1) * `eye.Cl(eye==1)` + (eye == 2) * `eye.Cl(eye==2)`"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"setting-up-the-rxode2-model-for-the-pipeline","dir":"Articles","previous_headings":"","what":"Setting up the rxode2 model for the pipeline","title":"rxode2 in a pipeline","text":"example show use rxode2 simple pipeline. can start model can used different simulation workflows rxode2 can handle: tumor growth model described Ribba 2012. case, compiled model R object Ribba2012, though rxode2 simulation pipeline, assign compiled model object, though think makes sense.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` Ribba2012 <- function() { ini({ k = 100 tkde = 0.24 eta.tkde = 0 tkpq = 0.0295 eta.kpq = 0 tkqpp = 0.0031 eta.kqpp = 0 tlambdap = 0.121 eta.lambdap = 0 tgamma = 0.729 eta.gamma = 0 tdeltaqp = 0.00867 eta.deltaqp = 0 prop.sd <- 0 tpt0 = 7.13 eta.pt0 = 0 tq0 = 41.2 eta.q0 = 0 }) model({ kde ~ tkde*exp(eta.tkde) kpq ~ tkpq * exp(eta.kpq) kqpp ~ tkqpp * exp(eta.kqpp) lambdap ~ tlambdap*exp(eta.lambdap) gamma ~ tgamma*exp(eta.gamma) deltaqp ~ tdeltaqp*exp(eta.deltaqp) d/dt(c) = -kde * c d/dt(pt) = lambdap * pt *(1-pstar/k) + kqpp*qp - kpq*pt - gamma*c*kde*pt d/dt(q) = kpq*pt -gamma*c*kde*q d/dt(qp) = gamma*c*kde*q - kqpp*qp - deltaqp*qp ## initial conditions pt0 ~ tpt0*exp(eta.pt0) q0 ~ tq0*exp(eta.q0) pt(0) = pt0 q(0) = q0 pstar <- (pt+q+qp) pstar ~ prop(prop.sd) }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulating-one-event-table","dir":"Articles","previous_headings":"","what":"Simulating one event table","title":"rxode2 in a pipeline","text":"Simulating single event table quite simple: pipe rxode2 simulation object event table object et(). events completely specified, simply solve ODE system rxSolve(). case can pipe output plot() conveniently view results. pt (Proliferative Tissue), q (quiescent tissue) qp (DNA-Damaged quiescent tissue) pstar (total tumor tissue)","code":"Ribba2012 %>% # Use rxode2 et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve() %>% # Solve the simulation plot(pt, q, qp, pstar) # Plot it, plotting the variables of interest #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulating-with-between-subject-variability","dir":"Articles","previous_headings":"Simulating multiple subjects from a single event table","what":"Simulating with between subject variability","title":"rxode2 in a pipeline","text":"next sort simulation may useful simulating multiple patients treatments. case, use omega matrix specified paper: information, easy simulate 3 subjects model-based parameters: Note two different things added simulation: - nSub specify many subjects model - omega specify subject variability.","code":"## Add CVs from paper for individual simulation ## Uses exact formula: lognCv = function(x){log((x/100)^2+1)} library(lotri) ## Now create omega matrix ## I'm using lotri to quickly specify names/diagonals omega <- lotri(eta.pt0 ~ lognCv(94), eta.q0 ~ lognCv(54), eta.lambdap ~ lognCv(72), eta.kqp ~ lognCv(76), eta.kqpp ~ lognCv(97), eta.deltaqp ~ lognCv(115), eta.tkde ~ lognCv(70)) omega #> eta.pt0 eta.q0 eta.lambdap eta.kqp eta.kqpp eta.deltaqp #> eta.pt0 0.6331848 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 #> eta.q0 0.0000000 0.2558818 0.0000000 0.0000000 0.0000000 0.0000000 #> eta.lambdap 0.0000000 0.0000000 0.4176571 0.0000000 0.0000000 0.0000000 #> eta.kqp 0.0000000 0.0000000 0.0000000 0.4559047 0.0000000 0.0000000 #> eta.kqpp 0.0000000 0.0000000 0.0000000 0.0000000 0.6631518 0.0000000 #> eta.deltaqp 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.8426442 #> eta.tkde 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 #> eta.tkde #> eta.pt0 0.0000000 #> eta.q0 0.0000000 #> eta.lambdap 0.0000000 #> eta.kqp 0.0000000 #> eta.kqpp 0.0000000 #> eta.deltaqp 0.0000000 #> eta.tkde 0.3987761 set.seed(1089) rxSetSeed(1089) Ribba2012 %>% # Use rxode2 et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=3, omega=omega) %>% # Solve the simulation plot(pt, q, qp, pstar) # Plot it, plotting the variables of interest #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ℹ omega has too many items, ignored: 'eta.kqp'"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulation-with-unexplained-variability","dir":"Articles","previous_headings":"Simulating multiple subjects from a single event table","what":"Simulation with unexplained variability","title":"rxode2 in a pipeline","text":"can even add unexplained variability quite easily: case added sigma matrix unexplained variability pstar total tumor tissue. can even simulate uncertainty theta omega sigma values wish.","code":"Ribba2012 %>% # Use rxode2 ini(prop.sd=0.05) %>% # change variability et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=3, omega=omega) %>% plot(pt, q, qp, sim) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp' # note that sim is the simulated pstar since this is simulated from the # model with a nlmixr2 endpoint"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulation-with-uncertainty-in-all-the-parameters-by-matrices","dir":"Articles","previous_headings":"Simulating multiple subjects from a single event table","what":"Simulation with uncertainty in all the parameters (by matrices)","title":"rxode2 in a pipeline","text":"assume parameters came 95 subjects 8 observations apiece, degrees freedom omega matrix 95, degrees freedom sigma matrix 95*8=760 95 items informed omega matrix, 760 items informed sigma matrix. Often simulations full covariance matrix fixed effect parameters. case, matrix, specified thetaMat. full covariance matrix, can information diagonal elements covariance matrix model paper. can converted follows: Now thetaMat represent uncertainty theta matrix, well pieces simulation. Typically can put information simulation thetaMat matrix. large variability theta easy sample negative rate constant, make sense. example: correct problems simply need use truncated multivariate normal specify reasonable ranges parameters. theta specified thetaLower thetaUpper. Similar parameters matrices: omegaLower, omegaUpper, sigmaLower sigmaUpper. may named vectors, one numeric value, numeric vector matching number parameters specified thetaMat matrix. case simulation simply modified thetaLower=0 make sure rates positive:","code":"Ribba2012 %>% # Use rxode2 ini(prop.sd = 0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=3, nStud=3, omega=omega, dfSub=760, dfObs=95) %>% # Solve the simulation plot(pt, q, qp, sim) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp' rseVar <- function(est, rse){ return(est*rse/100)^2 } thetaMat <- lotri(tpt0 ~ rseVar(7.13,25), tq0 ~ rseVar(41.2,7), tlambdap ~ rseVar(0.121, 16), tkqpp ~ rseVar(0.0031, 35), tdeltaqp ~ rseVar(0.00867, 21), tgamma ~ rseVar(0.729, 37), tkde ~ rseVar(0.24, 33) ) thetaMat #> tpt0 tq0 tlambdap tkqpp tdeltaqp tgamma tkde #> tpt0 1.7825 0.000 0.00000 0.000000 0.0000000 0.00000 0.0000 #> tq0 0.0000 2.884 0.00000 0.000000 0.0000000 0.00000 0.0000 #> tlambdap 0.0000 0.000 0.01936 0.000000 0.0000000 0.00000 0.0000 #> tkqpp 0.0000 0.000 0.00000 0.001085 0.0000000 0.00000 0.0000 #> tdeltaqp 0.0000 0.000 0.00000 0.000000 0.0018207 0.00000 0.0000 #> tgamma 0.0000 0.000 0.00000 0.000000 0.0000000 0.26973 0.0000 #> tkde 0.0000 0.000 0.00000 0.000000 0.0000000 0.00000 0.0792 Ribba2012 %>% # Use rxode2 ini(prop.sd = 0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=2, nStud=2, omega=omega, thetaMat=thetaMat, dfSub=760, dfObs=95) %>% # Solve the simulation plot(pt, q, qp, pstar) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> unhandled error message: EE:[lsoda] 70000 steps taken before reaching tout #> @(lsoda.c:750 #> Warning message: #> In rxSolve_(object, .ctl, .nms, .xtra, params, events, inits, setupOnly = .setupOnly) : #> Some ID(s) could not solve the ODEs correctly; These values are replaced with NA. Ribba2012 %>% # Use rxode2 ini(prop.sd = 0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=2, nStud=2, omega=omega, thetaMat=thetaMat, thetaLower=0, # Make sure the rates are reasonable dfSub=760, dfObs=95) %>% # Solve the simulation plot(pt, q, qp, sim) # Plot it, plotting the variables of interest #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp'"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"summarizing-the-simulation-output","dir":"Articles","previous_headings":"","what":"Summarizing the simulation output","title":"rxode2 in a pipeline","text":"easy use dplyr data.table perform summary simulations, rxode2 also provides ability confint function.","code":"## This takes a little more time; Most of the time is the summary ## time. sim0 <- Ribba2012 %>% # Use rxode2 ini(prop.sd=0.05) %>% et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(nSub=10, nStud=10, omega=omega, thetaMat=thetaMat, thetaLower=0, # Make sure the rates are reasonable dfSub=760, dfObs=95) %>% # Solve the simulation confint(c(\"pt\",\"q\",\"qp\",\"sim\"),level=0.90); # Create Simulation intervals #> ℹ change initial estimate of `prop.sd` to `0.05` #> ℹ omega has too many items, ignored: 'eta.kqp' #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done sim0 %>% plot() # Plot the simulation intervals"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-pipeline.html","id":"simulating-from-a-data-frame-of-parameters","dir":"Articles","previous_headings":"Summarizing the simulation output","what":"Simulating from a data-frame of parameters","title":"rxode2 in a pipeline","text":"simulation matrices can useful fast way simulate information, sometimes may want simulate complex scenarios. instance, may reason believe tkde needs tlambdap, therefore need simulated carefully. can generate data frame whatever way want. internal method simulating new parameters exported .","code":"library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union Ribba2012 <- Ribba2012() # Convert to classic rxode2 model with ini attached r <- Ribba2012$simulationIniModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ pars <- rxInits(r) pars <- pars[regexpr(\"(prop|eta)\",names(pars)) == -1] print(pars) #> k tkde tkpq tkqpp tlambdap tgamma #> 1.00e+02 2.40e-01 2.95e-02 3.10e-03 1.21e-01 7.29e-01 #> tdeltaqp tpt0 tq0 rxerr.pstar #> 8.67e-03 7.13e+00 4.12e+01 1.00e+00 ## This is the exported method for simulation of Theta/Omega internally in rxode2 df <- rxSimThetaOmega(params=pars, omega=omega,dfSub=760, thetaMat=thetaMat, thetaLower=0, nSub=60,nStud=60) %>% filter(tkde > tlambdap) %>% as_tibble() ## You could also simulate more and bind them together to a data frame. print(df) #> # A tibble: 2,220 × 17 #> k tkde tkpq tkqpp tlambdap tgamma tdeltaqp tpt0 tq0 rxerr.pstar #> #> 1 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 2 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 3 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 4 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 5 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 6 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 7 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 8 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 9 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> 10 100 1.50 0.0295 0.121 0.780 0.850 1.39 8.04 41.2 1 #> # ℹ 2,210 more rows #> # ℹ 7 more variables: eta.pt0 , eta.q0 , eta.lambdap , #> # eta.kqp , eta.kqpp , eta.deltaqp , eta.tkde ## Quick check to make sure that all the parameters are OK. all(df$tkde>df$tlambdap) #> [1] TRUE sim1 <- r %>% # Use rxode2 et(time.units=\"months\") %>% # Pipe to a new event table et(amt=1, time=50, until=58, ii=1.5) %>% # Add dosing every 1.5 months et(0, 250, by=0.5) %>% # Add some sampling times (not required) rxSolve(df) ## Note this information looses information about which ID is in a ## \"study\", so it summarizes the confidence intervals by dividing the ## subjects into sqrt(#subjects) subjects and then summarizes the ## confidence intervals sim2 <- sim1 %>% confint(c(\"pt\",\"q\",\"qp\",\"sim\"),level=0.90); # Create Simulation intervals #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done save(sim2, file = file.path(system.file(package = \"rxode2\"), \"pipeline-sim2.rds\"), version = 2) sim2 %>% plot()"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"setting-up-model-for-plotting-explanation","dir":"Articles","previous_headings":"Plotting in rxode2","what":"Setting up model for plotting explanation","title":"Plotting rxode2 models","text":"first step explain rxode2 model plots setup: rxode2 model event table solved object","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` ## Model from rxode2 tutorial m1 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 }) model({ C2 <- centr / V2 C3 <- peri / V3 d/dt(depot) <- -KA * depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 d/dt(peri) <- Q * C2 - Q * C3 d/dt(eff) <- Kin - Kout * (1 - C2 / (EC50 + C2)) * eff eff(0) <- 1 }) } ev <- et(timeUnits = \"hr\") %>% et(amt = 10000, ii = 12, until = 24) %>% et(seq(0, 24, length.out = 100)) s <- rxSolve(m1, ev)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"default-rxode2-plot","dir":"Articles","previous_headings":"Plotting in rxode2","what":"Default rxode2 plot","title":"Plotting rxode2 models","text":"default plot rxode2 plot time versus state calculated lhs values: Things note: First, plots actually ggplot2 plots can modified standard ggplot2 grammar graphics Also note plot method rxSolve objects can currently use arguments default plot method: log character string contains \"x\" x axis logarithmic, \"y\" y axis logarithmic \"xy\" \"yx\" axes logarithmic. available, use xgxr xgx_scale_x_log10() xgx_scale_y_log10() functions. xlab bit different simply supplying x-label ggplot2, retain unit information originally supplied event table. Also note, available, unit information used used meaningful ticks xgx_scale_x_time_units() ylab supplies y label following currently unsupported: . type b. xlim c. ylim d. main e. sub f. ann g. axes","code":"plot(s)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"subsetting-plots","dir":"Articles","previous_headings":"","what":"Subsetting plots","title":"Plotting rxode2 models","text":"interesting, often useful subset plots based values interested ; example, interesting plot eff C2. , simply specify interesting items plot function. instance:","code":"plot(s, C2, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"semi-log-plots","dir":"Articles","previous_headings":"","what":"Semi-log plots","title":"Plotting rxode2 models","text":"Semi-log plots PK concentrations common; simply need use log=\"y\" uses xgx_scale_y_log10() available clearly show semi-log nature plot.","code":"plot(s, C2, log=\"y\", ylab=\"Concentration\") ## Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"plots-with-multi-subject-plots","dir":"Articles","previous_headings":"","what":"Plots with multi-subject plots","title":"Plotting rxode2 models","text":"multi-subject plots can easily plot applying principles . illustrate plot, lets expand event table include plot 4 subjects lognormal random variability subjects; complete, may plot method: Notice colored individual labeled legend. interested concentration, produces similar plot: Notice plot individual labeled attached id let know individual comes . done ggrepel available, otherwise legend retained.","code":"# Setup the new problem m2 <- function() { ini({ KA <- 2.94E-01 TCL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 ## Added modeled bioavaiblity, duration and rate fdepot <- 1 durDepot <- 8 rateDepot <- 1250 eta.Cl ~ 0.4^2 }) model({ CL <- TCL * exp(eta.Cl) C2 <- centr / V2 C3 <- peri / V3 d/dt(depot) <- -KA * depot f(depot) <- fdepot dur(depot) <- durDepot rate(depot) <- rateDepot d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 d/dt(peri) <- Q * C2 - Q * C3 d/dt(eff) <- Kin - Kout * (1 - C2 / (EC50 + C2)) * eff eff(0) <- 1 }) } # Create the event table ev <- et(timeUnits = \"hr\") %>% et(amt = 10000, until = units::set_units(3, days), ii = 12) %>% # loading doses et(seq(0, 48, length.out = 200)) %>% et(id = 1:4) s <- rxSolve(m2, ev) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ plot(s, C2, eff) plot(s, C2, log=\"y\", ylab=\"Concentration\") ## Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-plot.html","id":"multi-subject-plots-with-large-number-of-subjects","dir":"Articles","previous_headings":"Plots with multi-subject plots","what":"Multi-subject plots with large number of subjects","title":"Plotting rxode2 models","text":"can get bit much many subjects solved (example lets simulate 100) case, individuals put plot transparent grayscale plot pane. allows places subjects present darker. number individuals plots switch legend grayscale controlled changing options rxode2.spaghetti. ie. options(rxode2.spaghetti=7). 7 individuals default value plotting changes individual grayscale spaghetti plots. can also create confidence interval simulations confint: plot plot","code":"ev <- et(timeUnits = \"hr\") %>% et(amt = 10000, until = units::set_units(3, days), ii = 12) %>% # loading doses et(seq(0, 48, length.out = 200)) %>% et(id = 1:100) # 100 subjects s <- rxSolve(m2, ev) plot(s, C2, log=\"y\", ylab=\"Concentration\") ## Warning: Transformation introduced infinite values in continuous y-axis s2 <- confint(s, parm=\"C2\") ## ! in order to put confidence bands around the intervals, you need at least 2500 simulations ## summarizing data...done plot(s2)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-prior-data.html","id":"using-prior-data-for-solving","dir":"Articles","previous_headings":"","what":"Using prior data for solving","title":"Using Prior Data for ODE solving","text":"rxode2 can use single subject multiple subjects single event table solve ODEs. Additionally, rxode2 can use arbitrary data frame individualized events. example using nlmixr, use theo_sd data frame","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` library(nlmixr2data) ## Load data from nlmixr d <- theo_sd ## Create rxode2 model theo <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 }) model({ ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v }) } ## Create parameter dataset library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union parsDf <- tribble( ~ eta.ka, ~ eta.cl, ~ eta.v, 0.105, -0.487, -0.080, 0.221, 0.144, 0.021, 0.368, 0.031, 0.058, -0.277, -0.015, -0.007, -0.046, -0.155, -0.142, -0.382, 0.367, 0.203, -0.791, 0.160, 0.047, -0.181, 0.168, 0.096, 1.420, 0.042, 0.012, -0.738, -0.391, -0.170, 0.790, 0.281, 0.146, -0.527, -0.126, -0.198) %>% mutate(tka = 0.451, tcl = 1.017, tv = 3.449) ## Now solve the dataset solveData <- rxSolve(theo, parsDf, d) #> ℹ parameter labels from comments will be replaced by 'label()' #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ plot(solveData, cp) print(solveData) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 12 × 7 #> id tka tcl tv eta.ka eta.cl eta.v #> #> 1 1 0.451 1.02 3.45 -0.0599 -0.281 -0.0622 #> 2 2 0.451 1.02 3.45 0.469 -1.66 -0.245 #> 3 3 0.451 1.02 3.45 -1.38 0.234 0.103 #> 4 4 0.451 1.02 3.45 0.0553 -0.336 -0.298 #> 5 5 0.451 1.02 3.45 0.849 -0.0873 -0.278 #> 6 6 0.451 1.02 3.45 1.77 -0.378 0.296 #> 7 7 0.451 1.02 3.45 -0.476 -0.218 -0.0439 #> 8 8 0.451 1.02 3.45 1.34 -0.146 -0.498 #> 9 9 0.451 1.02 3.45 -0.447 0.444 -0.0631 #> 10 10 0.451 1.02 3.45 0.337 0.450 -0.195 #> 11 11 0.451 1.02 3.45 -0.304 0.0651 -0.575 #> 12 12 0.451 1.02 3.45 0.131 0.325 -0.258 #> ── Initial Conditions ($inits): ── #> depot center #> 0 0 #> ── First part of data (object): ── #> # A tibble: 132 × 8 #> id time ka cl v cp depot center #> #> 1 1 0 1.48 2.09 29.6 0 320. 0 #> 2 1 0.25 1.48 2.09 29.6 3.31 221. 98.0 #> 3 1 0.57 1.48 2.09 29.6 6.02 138. 178. #> 4 1 1.12 1.48 2.09 29.6 8.33 61.1 246. #> 5 1 2.02 1.48 2.09 29.6 9.28 16.1 274. #> 6 1 3.82 1.48 2.09 29.6 8.64 1.13 255. #> # ℹ 126 more rows ## Of course the fasest way to solve if you don't care about the rxode2 extra parameters is solveData <- rxSolve(theo, parsDf, d, returnType=\"data.frame\") #> ℹ parameter labels from comments will be replaced by 'label()' #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## solved data dplyr::as_tibble(solveData) #> # A tibble: 132 × 8 #> id time ka cl v cp depot center #> #> 1 1 0 0.572 3.82 26.9 0 320. 0 #> 2 1 0.25 0.572 3.82 26.9 1.56 277. 41.9 #> 3 1 0.57 0.572 3.82 26.9 3.17 231. 85.4 #> 4 1 1.12 0.572 3.82 26.9 5.16 169. 139. #> 5 1 2.02 0.572 3.82 26.9 6.90 101. 186. #> 6 1 3.82 0.572 3.82 26.9 7.42 35.9 200. #> 7 1 5.1 0.572 3.82 26.9 6.81 17.3 183. #> 8 1 7.03 0.572 3.82 26.9 5.55 5.72 149. #> 9 1 9.05 0.572 3.82 26.9 4.29 1.80 115. #> 10 1 12.1 0.572 3.82 26.9 2.81 0.311 75.7 #> # ℹ 122 more rows data.table::data.table(solveData) #> id time ka cl v cp depot center #> 1: 1 0.00 0.5724265 3.820799 26.90346 0.000000 3.199920e+02 0.00000 #> 2: 1 0.25 0.5724265 3.820799 26.90346 1.557454 2.773248e+02 41.90091 #> 3: 1 0.57 0.5724265 3.820799 26.90346 3.173836 2.309065e+02 85.38718 #> 4: 1 1.12 0.5724265 3.820799 26.90346 5.160704 1.685409e+02 138.84080 #> 5: 1 2.02 0.5724265 3.820799 26.90346 6.896249 1.006847e+02 185.53296 #> --- #> 128: 12 5.07 3.0179183 2.472543 28.72246 7.427310 7.260196e-05 213.33063 #> 129: 12 7.07 3.0179183 2.472543 28.72246 6.252592 1.738745e-07 179.58985 #> 130: 12 9.03 3.0179183 2.472543 28.72246 5.281827 -2.728387e-09 151.70708 #> 131: 12 12.05 3.0179183 2.472543 28.72246 4.072673 1.594573e-09 116.97721 #> 132: 12 24.15 3.0179183 2.472543 28.72246 1.437184 1.386272e-10 41.27947"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-rxUse.html","id":"using-pre-compiled-models-in-your-packages","dir":"Articles","previous_headings":"","what":"Using Pre-compiled models in your packages","title":"Compiled rxode2 models in Packages","text":"package like include pre-compiled rxode2 models package easy create package. simple make package rxPkg() command. : Add model package; can use package data idr package loads Add right package requirements DESCRIPTION file. want update describe package modify authors, license etc. Create skeleton model documentation files can add package documentation. case file idr-doc.R R directory Create configure configure.win script removes regenerates src directory based whatever version rxode2 compiled . modified plan compiled code, though suggested. can write R code package interacts rxode2 object can distribute shiny apps similar things package context. present can add models package rxUse(). Simply compile rxode2 model package add model rxUse() Now model idr model library. also create model-doc.R R directory can document model. can use devtools methods install/test model","code":"library(rxode2); ## Now Create a model idr <- rxode2({ C2 = centr/V2; C3 = peri/V3; d/dt(depot) =-KA*depot; d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) = Q*C2 - Q*C3; d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; }) ## You can specify as many models as you want to add rxPkg(idr, package=\"myPackage\"); ## Add the idr model to your package rxUse(model) devtools::load_all() # Load all the functions in the package devtools::document() # Create package documentation devtools::install() # Install package devtools::check() # Check the package devtools::build() # build the package so you can submit it to places like CRAN"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-rxUse.html","id":"using-models-in-a-already-present-package","dir":"Articles","previous_headings":"","what":"Using Models in a already present package","title":"Compiled rxode2 models in Packages","text":"illustrate, lets start blank package rxUse() : - Create rxode2 sources move package’s src/ directory. R source package, also finish directory library-init.c registers rxode2 models package use R. - Create stub R documentation models including package. able see R documentation loading package standard ? interface. still need : - Export least one function. function wish export, can add re-export rxode2 using roxygen follows: want use Suggests instead Depends package, way want export rxode2’s normal routines also need instruct R load model library models included model’s dll. done : R package rxode2 models intend add compiled sources (recommended), can add following configure scripts Depending check may need dummy autoconf script, want integrate sources Rcpp C/Fortan based packages, need include rxModels-compiled.h : - Add define macro compiledModelCall list registered .Call functions. - Register C interface allow model solving R_init0_rxModels_rxode2_models() (rxModels replaced package name). complete, can compile/document standard methods: load package new version rxode2, models recompiled used. However, want models recompiled recent version rxode2, simply need call rxUse() project directory followed standard methods install/create package. Note include rxode2 code required generate model regenerate rxode2 c-code src directory. rxode2 objects, summary show one way recreate model. example compiled models package can found rxModels repository.","code":"library(rxode2) library(usethis) pkgPath <- file.path(rxTempDir(),\"MyRxModel\") create_package(pkgPath); use_gpl3_license(\"Matt\") use_package(\"rxode2\", \"LinkingTo\") use_package(\"rxode2\", \"Depends\") ## library(rxode2) on load; Can use imports instead. use_roxygen_md() ##use_readme_md() library(rxode2); ## Now Create a model idr <- rxode2({ C2 = centr/V2; C3 = peri/V3; d/dt(depot) =-KA*depot; d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) = Q*C2 - Q*C3; d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; }); rxUse(idr); ## Add the idr model to your package rxUse(); # Update the compiled rxode2 sources for all of your packages ##' @importFrom rxode2 rxode2 ##' @export rxode2::rxode2 ##' @importFrom rxode2 rxode2 ##' @export rxode2::rxode2 ##' @importFrom rxode2 et ##' @export rxode2::et ##' @importFrom rxode2 etRep ##' @export rxode2::etRep ##' @importFrom rxode2 etSeq ##' @export rxode2::etSeq ##' @importFrom rxode2 as.et ##' @export rxode2::as.et ##' @importFrom rxode2 eventTable ##' @export rxode2::eventTable ##' @importFrom rxode2 add.dosing ##' @export rxode2::add.dosing ##' @importFrom rxode2 add.sampling ##' @export rxode2::add.sampling ##' @importFrom rxode2 rxSolve ##' @export rxode2::rxSolve ##' @importFrom rxode2 rxControl ##' @export rxode2::rxControl ##' @importFrom rxode2 rxClean ##' @export rxode2::rxClean ##' @importFrom rxode2 rxUse ##' @export rxode2::rxUse ##' @importFrom rxode2 rxShiny ##' @export rxode2::rxShiny ##' @importFrom rxode2 genShinyApp.template ##' @export rxode2::genShinyApp.template ##' @importFrom rxode2 cvPost ##' @export rxode2::cvPost # This is actually from `magrittr` but allows less imports ##' @importFrom rxode2 %>% ##' @export rxode2::`%>%` # In this case `rxModels` is the package name ##' @useDynLib rxModels, .registration=TRUE #!/bin/sh # This should be used for both configure and configure.win echo \"unlink('src', recursive=TRUE);rxode2::rxUse()\" > build.R ${R_HOME}/bin/Rscript build.R rm build.R ## dummy autoconf script ## It is saved to configure.ac devtools::load_all() devtools::document() devtools::install() devtools::load_all() devtools::document() devtools::install()"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-shiny.html","id":"facilities-for-generating-r-shiny-applications","dir":"Articles","previous_headings":"","what":"Facilities for generating R shiny applications","title":"rxode2 and Shiny","text":"example creating R shiny application interactively explore responses various complex dosing regimens available http://qsp.engr.uga.edu:3838/rxode2/RegimenSimulator. Shiny applications like one may programmatically created experimental function genShinyApp.template(). application includes widgets varying dose, dosing regimen, dose cycle, number cycles. Click go Shiny App","code":"genShinyApp.template(appDir = \"shinyExample\", verbose=TRUE) library(shiny) runApp(\"shinyExample\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-shiny.html","id":"exploring-parameter-fits-graphically-using-shiny","dir":"Articles","previous_headings":"","what":"Exploring parameter fits graphically using shiny","title":"rxode2 and Shiny","text":"rxode2 object can explored rxShiny(obj). rxShiny() also allow try new models see behave.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-variability-with-rxode2","dir":"Articles","previous_headings":"Population Simulations with rxode2","what":"Simulation of Variability with rxode2","title":"rxode2 Simulation","text":"pharmacometrics nonlinear-mixed effect modeling software (like nlmixr) characterizes -subject variability. subject variability can simulate new subjects. Assuming 2-compartment, indirect response model, can set create rxode2 model describing system :","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"setting-up-the-rxode2-model","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Setting up the rxode2 model","title":"rxode2 Simulation","text":"","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` set.seed(32) rxSetSeed(32) mod <- function() { ini({ KA <- 2.94E-01 TCl <- 1.86E+01 # between subject variability eta.Cl ~ 0.4^2 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ C2 <- centr/V2 C3 <- peri/V3 CL <- TCl*exp(eta.Cl) ## This is coded as a variable in the model d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulating","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Simulating","title":"rxode2 Simulation","text":"next step simulate create dosing regimen overall simulation: wish, can also add sampling times (though rxode2 can fill ): Note et takes similar arguments seq adding sampling times. methods adding sampling times events make complex dosing regimens (See event vignette). includes ways add variability sampling dosing times). complete can simulate using rxSolve routine: quickly look customize simulation use default plot routine. Since rxode2 object, create ggplot2 object can modify wish. extra parameter plot tells rxode2/R piece information interested plotting. case, interested looking derived parameter C2:","code":"ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=\"centr\") ev <- ev %>% et(0,48, length.out=100) sim <- rxSolve(mod, ev, nSub=100) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"checking-the-simulation-with-plot","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Checking the simulation with plot","title":"rxode2 Simulation","text":"course additional parameter also state value, like eff: even look two side--side: stack patchwork","code":"library(ggplot2) ## The plots from rxode2 are ggplots so they can be modified with ## standard ggplot commands. plot(sim, C2, log=\"y\") + ylab(\"Central Compartment\") ## They also takes many of the standard plot arguments; See ?plot plot(sim, eff, ylab=\"Effect\") plot(sim, C2, eff) library(patchwork) plot(sim, C2, log=\"y\") / plot(sim, eff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"processing-the-data-to-create-summary-plots","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Processing the data to create summary plots","title":"rxode2 Simulation","text":"Usually pharmacometric simulations enough simply simulate system. something easier digest, like look central extreme tendencies simulation. Since rxode2 solve object type data frame now straightforward perform calculations generate plots simulated data. can , 5th, 50th, 95th percentiles simulated data plotted. Note can see parameters simulated example","code":"confint(sim, \"C2\", level=0.95) %>% plot(ylab=\"Central Concentration\", log=\"y\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done confint(sim, \"eff\", level=0.95) %>% plot(ylab=\"Effect\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done head(sim$param) #> sim.id KA TCl V2 Q V3 Kin Kout EC50 eta.Cl #> 1 1 0.294 18.6 40.2 10.5 297 1 1 200 -0.3163542 #> 2 2 0.294 18.6 40.2 10.5 297 1 1 200 0.1880698 #> 3 3 0.294 18.6 40.2 10.5 297 1 1 200 0.1536777 #> 4 4 0.294 18.6 40.2 10.5 297 1 1 200 0.6535432 #> 5 5 0.294 18.6 40.2 10.5 297 1 1 200 -0.5758445 #> 6 6 0.294 18.6 40.2 10.5 297 1 1 200 -0.1948311"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-unexplained-variability-sigma","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Simulation of unexplained variability (sigma)","title":"rxode2 Simulation","text":"addition conveniently simulating subject variability, can also easily simulate unexplained variability. One way create rxode2 model endpoints defined. Model piping can keeping model intact: can see dataset defined $multipleEndpoint: see endpoints defined eff C2: allows solve system: Since simulated model residual specification included multiple endpoint model, can summarize endpoint simply taking confidence interval \"sim\": want subset specific endpoint, like eff can create confidence interval endpoint using specification sim.eff, endpoint name separated sim dot:","code":"mod2 <- mod %>% model(eff ~ add(eff.sd), append=TRUE) %>% model(C2 ~ prop(prop.sd), append=TRUE) %>% ini(eff.sd=sqrt(0.1), prop.sd=sqrt(0.1)) #> ℹ add residual parameter `eff.sd` and set estimate to 1 #> ℹ add residual parameter `prop.sd` and set estimate to 1 #> ℹ change initial estimate of `eff.sd` to `0.316227766016838` #> ℹ change initial estimate of `prop.sd` to `0.316227766016838` mod2$multipleEndpoint #> variable cmt dvid* #> 1 eff ~ … cmt='eff' or cmt=4 dvid='eff' or dvid=1 #> 2 C2 ~ … cmt='C2' or cmt=5 dvid='C2' or dvid=2 ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=\"centr\") %>% et(seq(0,48, length.out=100), cmt=\"eff\") %>% et(seq(0,48, length.out=100), cmt=\"C2\") sim <- rxSolve(mod2, ev, nSub=100) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ s <- confint(sim, \"sim\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(s) seff <- confint(sim, \"sim.eff\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(seff)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-individuals","dir":"Articles","previous_headings":"Population Simulations with rxode2 > Simulation of Variability with rxode2","what":"Simulation of Individuals","title":"rxode2 Simulation","text":"Sometimes may want match dosing observations individuals clinical trial. create data.frame using rxode2 event specification well ID column indicate individual. rxode2 event vignette talks datasets created.","code":"library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union ev1 <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, cmt=2) %>% et(0,48,length.out=10) ev2 <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=5000, cmt=2) %>% et(0,48,length.out=8) dat <- rbind(data.frame(ID=1, ev1$get.EventTable()), data.frame(ID=2, ev2$get.EventTable())) ## Note the number of subject is not needed since it is determined by the data sim <- rxSolve(mod, dat) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ sim %>% select(id, time, eff, C2) #> id time eff C2 #> 1 1 0.000000 [h] 1.000000 248.756219 #> 2 1 5.333333 [h] 1.085052 7.937758 #> 3 1 10.666667 [h] 1.018563 3.413740 #> 4 1 16.000000 [h] 1.015185 2.963251 #> 5 1 21.333333 [h] 1.013432 2.624691 #> 6 1 26.666667 [h] 1.011902 2.325724 #> 7 1 32.000000 [h] 1.010546 2.060828 #> 8 1 37.333333 [h] 1.009344 1.826102 #> 9 1 42.666667 [h] 1.008280 1.618112 #> 10 1 48.000000 [h] 1.007337 1.433813 #> 11 2 0.000000 [h] 1.000000 124.378109 #> 12 2 6.857143 [h] 1.051433 6.777712 #> 13 2 13.714286 [h] 1.018211 3.493754 #> 14 2 20.571429 [h] 1.015506 3.045168 #> 15 2 27.428571 [h] 1.013772 2.706558 #> 16 2 34.285714 [h] 1.012247 2.406904 #> 17 2 41.142857 [h] 1.010891 2.140458 #> 18 2 48.000000 [h] 1.009685 1.903509"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-of-clinical-trials","dir":"Articles","previous_headings":"","what":"Simulation of Clinical Trials","title":"rxode2 Simulation","text":"either using simple single event table, data clinical trial described , complete clinical trial simulation can performed. Typically clinical trial simulations want account uncertainty fixed parameter estimates, even uncertainty subject variability well unexplained variability. rxode2 allows account uncertainties simulating multiple virtual “studies,” specified parameter nStud. studies samples realization fixed effect parameters covariance matrices subject variability(omega) unexplained variabilities (sigma). Depending information models, strategies simulating realization omega sigma matrices. first strategy occurs either standard errors standard deviations (related parameters), modeled correlation model simulating . case suggested strategy use inverse Wishart (parameterized scale conjugate prior)/scaled inverse chi distribution. approach uses single parameter inform variability covariance matrix sampled (degrees freedom). second strategy occurs standard errors variance/standard deviation modeled correlations covariance matrix. approach perform separate simulations standard deviations correlation matrix. First simulate variance/standard deviation components thetaMat multivariate normal simulation. simulation transformation standard deviations, correlation matrix simulated using degrees freedom covariance matrix. Combining simulated standard deviation simulated correlation matrix give simulated covariance matrix. smaller dimension covariance matrices (dimension < 10x10) recommended use lkj distribution simulate correlation matrix. higher dimension covariance matrices suggested use inverse wishart distribution (transformed correlation matrix) simulations. covariance/variance prior simulated rxode2s cvPost() function.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulation-from-inverse-wishart-correlations","dir":"Articles","previous_headings":"Simulation of Clinical Trials","what":"Simulation from inverse Wishart correlations","title":"rxode2 Simulation","text":"example simulation : wish can see omega sigma used virtual study accessing solved data object $omega.list $sigma.list: can also see parameter realizations $params data frame.","code":"## Creating covariance matrix tmp <- matrix(rnorm(8^2), 8, 8) tMat <- tcrossprod(tmp, tmp) / (8 ^ 2) dimnames(tMat) <- list(NULL, names(mod2$theta)[1:8]) sim <- rxSolve(mod2, ev, nSub=100, thetaMat=tMat, nStud=10, dfSub=10, dfObs=100) s <-sim %>% confint(\"sim\") #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(s) head(sim$omegaList) #> [[1]] #> eta.Cl #> eta.Cl 0.1676778 #> #> [[2]] #> eta.Cl #> eta.Cl 0.2917085 #> #> [[3]] #> eta.Cl #> eta.Cl 0.1776813 #> #> [[4]] #> eta.Cl #> eta.Cl 0.1578682 #> #> [[5]] #> eta.Cl #> eta.Cl 0.1845614 #> #> [[6]] #> eta.Cl #> eta.Cl 0.3282268 head(sim$sigmaList) #> [[1]] #> rxerr.eff rxerr.C2 #> rxerr.eff 1.12416983 0.04197039 #> rxerr.C2 0.04197039 0.97293971 #> #> [[2]] #> rxerr.eff rxerr.C2 #> rxerr.eff 0.84311199 -0.06277998 #> rxerr.C2 -0.06277998 1.22140938 #> #> [[3]] #> rxerr.eff rxerr.C2 #> rxerr.eff 0.9834771 0.1060251 #> rxerr.C2 0.1060251 1.0024751 #> #> [[4]] #> rxerr.eff rxerr.C2 #> rxerr.eff 1.25556975 0.07690868 #> rxerr.C2 0.07690868 0.90991261 #> #> [[5]] #> rxerr.eff rxerr.C2 #> rxerr.eff 1.116261 -0.184748 #> rxerr.C2 -0.184748 1.320288 #> #> [[6]] #> rxerr.eff rxerr.C2 #> rxerr.eff 0.93539238 0.07270049 #> rxerr.C2 0.07270049 0.98648424"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulate-using-variancestandard-deviation-standard-errors","dir":"Articles","previous_headings":"Simulation of Clinical Trials","what":"Simulate using variance/standard deviation standard errors","title":"rxode2 Simulation","text":"Lets assume wish simulate nonmem run included xpose First setup model; Since taking nonmem like use free-form style classic rxode2 model start classic model: Next input estimated parameters: also covariances; , easiest way create named covariance matrix use lotri():","code":"rx1 <- rxode2({ cl <- tcl*(1+crcl.cl*(CLCR-65)) * exp(eta.cl) v <- tv * WT * exp(eta.v) ka <- tka * exp(eta.ka) ipred <- linCmt() obs <- ipred * (1 + prop.sd) + add.sd }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ theta <- c(tcl=2.63E+01, tv=1.35E+00, tka=4.20E+00, tlag=2.08E-01, prop.sd=2.05E-01, add.sd=1.06E-02, crcl.cl=7.17E-03, ## Note that since we are using the separation strategy the ETA variances are here too eta.cl=7.30E-02, eta.v=3.80E-02, eta.ka=1.91E+00) thetaMat <- lotri( tcl + tv + tka + tlag + prop.sd + add.sd + crcl.cl + eta.cl + eta.v + eta.ka ~ c(7.95E-01, 2.05E-02, 1.92E-03, 7.22E-02, -8.30E-03, 6.55E-01, -3.45E-03, -6.42E-05, 3.22E-03, 2.47E-04, 8.71E-04, 2.53E-04, -4.71E-03, -5.79E-05, 5.04E-04, 6.30E-04, -3.17E-06, -6.52E-04, -1.53E-05, -3.14E-05, 1.34E-05, -3.30E-04, 5.46E-06, -3.15E-04, 2.46E-06, 3.15E-06, -1.58E-06, 2.88E-06, -1.29E-03, -7.97E-05, 1.68E-03, -2.75E-05, -8.26E-05, 1.13E-05, -1.66E-06, 1.58E-04, -1.23E-03, -1.27E-05, -1.33E-03, -1.47E-05, -1.03E-04, 1.02E-05, 1.67E-06, 6.68E-05, 1.56E-04, 7.69E-02, -7.23E-03, 3.74E-01, 1.79E-03, -2.85E-03, 1.18E-05, -2.54E-04, 1.61E-03, -9.03E-04, 3.12E-01)) evw <- et(amount.units=\"mg\", time.units=\"hours\") %>% et(amt=100) %>% ## For this problem we will simulate with sampling windows et(list(c(0, 0.5), c(0.5, 1), c(1, 3), c(3, 6), c(6, 12))) %>% et(id=1:1000) ## From the run we know that: ## total number of observations is: 476 ## Total number of individuals: 74 sim <- rxSolve(rx1, theta, evw, nSub=100, nStud=10, thetaMat=thetaMat, ## Match boundaries of problem thetaLower=0, sigma=c(\"prop.sd\", \"add.sd\"), ## Sigmas are standard deviations sigmaXform=\"identity\", # default sigma xform=\"identity\" omega=c(\"eta.cl\", \"eta.v\", \"eta.ka\"), ## etas are variances omegaXform=\"variance\", # default omega xform=\"variance\" iCov=data.frame(WT=rnorm(1000, 70, 15), CLCR=rnorm(1000, 65, 25)), dfSub=74, dfObs=476); #> ℹ thetaMat has too many items, ignored: 'tlag' print(sim) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 10,000 × 9 #> sim.id id tcl crcl.cl eta.cl tv eta.v tka eta.ka #> #> 1 1 1 26.4 0.383 0.847 1.38 1.39 4.59 -1.13 #> 2 1 2 26.4 0.383 -0.733 1.38 1.01 4.59 -2.28 #> 3 1 3 26.4 0.383 -0.100 1.38 -0.676 4.59 1.72 #> 4 1 4 26.4 0.383 -0.276 1.38 0.484 4.59 2.08 #> 5 1 5 26.4 0.383 0.175 1.38 1.68 4.59 0.197 #> 6 1 6 26.4 0.383 0.215 1.38 0.872 4.59 -0.582 #> 7 1 7 26.4 0.383 -1.64 1.38 -1.45 4.59 0.415 #> 8 1 8 26.4 0.383 0.850 1.38 -0.509 4.59 -1.19 #> 9 1 9 26.4 0.383 0.486 1.38 -0.158 4.59 -0.404 #> 10 1 10 26.4 0.383 -0.705 1.38 -0.878 4.59 -1.64 #> # ℹ 9,990 more rows #> ── Initial Conditions ($inits): ── #> named numeric(0) #> #> Simulation with uncertainty in: #> • parameters ($thetaMat for changes) #> • omega matrix ($omegaList) #> • sigma matrix ($sigmaList) #> #> ── First part of data (object): ── #> # A tibble: 50,000 × 10 #> sim.id id time cl v ka ipred obs WT CLCR #> [h] #> 1 1 1 0.0155 162. 345. 1.49 0.00659 0.460 62.2 69.3 #> 2 1 1 0.749 162. 345. 1.49 0.159 1.57 62.2 69.3 #> 3 1 1 1.02 162. 345. 1.49 0.170 -3.31 62.2 69.3 #> 4 1 1 3.41 162. 345. 1.49 0.0830 -0.702 62.2 69.3 #> 5 1 1 7.81 162. 345. 1.49 0.0109 0.933 62.2 69.3 #> 6 1 2 0.0833 209. 134. 0.470 0.0268 -0.665 35.7 105. #> # ℹ 49,994 more rows ## Notice that the simulation time-points change for the individual ## If you want the same sampling time-points you can do that as well: evw <- et(amount.units=\"mg\", time.units=\"hours\") %>% et(amt=100) %>% et(0, 24, length.out=50) %>% et(id=1:100) sim <- rxSolve(rx1, theta, evw, nSub=100, nStud=10, thetaMat=thetaMat, ## Match boundaries of problem thetaLower=0, sigma=c(\"prop.sd\", \"add.sd\"), ## Sigmas are standard deviations sigmaXform=\"identity\", # default sigma xform=\"identity\" omega=c(\"eta.cl\", \"eta.v\", \"eta.ka\"), ## etas are variances omegaXform=\"variance\", # default omega xform=\"variance\" iCov=data.frame(WT=rnorm(100, 70, 15), CLCR=rnorm(100, 65, 25)), dfSub=74, dfObs=476, resample=TRUE) #> ℹ thetaMat has too many items, ignored: 'tlag' s <-sim %>% confint(c(\"ipred\")) #> summarizing data... #> done plot(s)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-sim-var.html","id":"simulate-without-uncertainty-in-omega-or-sigma-parameters","dir":"Articles","previous_headings":"Simulation of Clinical Trials","what":"Simulate without uncertainty in omega or sigma parameters","title":"rxode2 Simulation","text":"wish sample prior distributions either omega sigma matrices, can turn feature specifying simVariability = FALSE option solving: Note since realizations omega sigma simulated, $omegaList $sigmaList return NULL.","code":"sim <- rxSolve(mod2, ev, nSub=100, thetaMat=tMat, nStud=10, simVariability=FALSE) s <-sim %>% confint(c(\"centr\", \"eff\")) #> ! in order to put confidence bands around the intervals, you need at least 2500 simulations #> summarizing data...done plot(s)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-single-subject.html","id":"single-subject-solving","dir":"Articles","previous_headings":"","what":"Single Subject solving","title":"Single Subject ODE solving -- differences from multiple subject","text":"Originally, rxode2 created solve ODEs one individual. single system without changes individual parameters. course still supported, classic examples found rxode2 intro. article discusses differences multiple subject single subject solving. three differences: Single solving solve ID parallel Single solving lacks id column parameters($params) well actual dataset. Single solving allows parameter exploration easier parameter can modified. multiple subject solves, make sure update individual parameter. first obvious difference speed; multiple subjects can run subject ID parallel. information examples speed gains multiple subject solving see Speeding rxode2 vignette. next difference amount information output final data. Taking 2 compartment indirect response model originally tutorial: Now simple solve better see differences single solve, can solve 2 individuals observing two solves, can see: multiple subject solve contains id column data frame data frame parameters subject. last feature obvious, modifying individual parameters. single subject data, can modify rxode2 data frame changing initial conditions parameter values part data frame, described rxode2 Data Frames. multiple subject solving, feature still works, requires care supplying individual’s parameter value, otherwise may change solve drop parameter key individuals.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 Q=1.05E+01 V3=2.97E+02 Kin=1 Kout=1 EC50=200 }) model({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) =-KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 }) } et <- et(amount.units='mg', time.units='hours') %>% et(dose=10000, addl=9, ii=12) %>% et(amt=20000, nbr.doses=5, start.time=120, dosing.interval=24) %>% et(0:240) # sampling x <- rxSolve(mod1, et) x #> ── Solved rxode2 object ── #> ── Parameters (x$params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions (x$inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows print(x) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions ($inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows plot(x, C2, eff) x2 <- rxSolve(mod1, et %>% et(id=1:2), params=data.frame(CL=c(18.6, 7.6))) print(x2) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 2 × 9 #> id KA CL V2 Q V3 Kin Kout EC50 #> #> 1 1 0.294 18.6 40.2 10.5 297 1 1 200 #> 2 2 0.294 7.6 40.2 10.5 297 1 1 200 #> ── Initial Conditions ($inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 482 × 8 #> id time C2 C3 depot centr peri eff #> [h] #> 1 1 0 0 0 10000 0 0 1 #> 2 1 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 1 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 1 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 1 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 1 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 476 more rows plot(x2, C2, eff)"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"a-note-about-the-speed-of-the-functional-form-for-rxode2","dir":"Articles","previous_headings":"","what":"A note about the speed of the functional form for rxode2","title":"Speeding up rxode2","text":"functional form benefit supported nlmixr2 therefore one interface solving estimating, takes computation time get underlying “classic” simulation code. models form : can also specify end-points simulation/estimation just like nlmixr2: every solve, compile (cached compile) underlying model. wish speed process can use two underlying rxode2 classic models. takes two steps: Parsing/evaluating model Creating simulation model first step can done rxode2(mod1) mod1() (second model ). second step create underlying “classic” rxode2 model, can done two different methods:$simulationModel $simulationIniModel. $simulationModel provide simulation code without initial conditions pre-pended, $simulationIniModel pre-pend values. endpoints specified, simulation code endpoint also output. can see differences : wish speed multiple simualtions rxode2 functions, need pre-calculate care steps : functions can act like normal ui model solved. can convert back UI .rxUi() function .function() needed. increase speed multiple simulations model use lower level simulation model (ie $simulationModel $simulationIniModel depending need)","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ KA <- 0.3 CL <- 7 V2 <- 40 Q <- 10 V3 <- 300 Kin <- 0.2 Kout <- 0.2 EC50 <- 8 }) model({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) = -KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 }) } mod2 <- function() { ini({ TKA <- 0.3 TCL <- 7 TV2 <- 40 TQ <- 10 TV3 <- 300 TKin <- 0.2 TKout <- 0.2 TEC50 <- 8 eta.cl + eta.v ~ c(0.09, 0.08, 0.25) c2.prop.sd <- 0.1 eff.add.sd <- 0.1 }) model({ KA <- TKA CL <- TCL*exp(eta.cl) V2 <- TV2*exp(eta.v) Q <- TQ V3 <- TV3 Kin <- TKin Kout <- TKout EC50 <- TEC50 C2 = centr/V2 C3 = peri/V3 d/dt(depot) = -KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 C2 ~ prop(c2.prop.sd) eff ~ add(eff.add.sd) }) } mod1 <- mod1() mod2 <- rxode2(mod2) summary(mod1$simulationModel) #> rxode2 2.0.14.9000 model named rx_3db52194eb7226d83c8555109940bf90 model (✔ ready). #> DLL: /tmp/RtmpG6A6n6/rxode2/rx_3db52194eb7226d83c8555109940bf90__.rxd/rx_3db52194eb7226d83c8555109940bf90_.so #> NULL #> #> Calculated Variables: #> [1] \"C2\" \"C3\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(KA, CL, V2, Q, V3, Kin, Kout, EC50) #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> }) summary(mod1$simulationIniModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_90dfb781eb7a2b58bc36489c28ba4170 model (✔ ready). #> DLL: /tmp/RtmpG6A6n6/rxode2/rx_90dfb781eb7a2b58bc36489c28ba4170__.rxd/rx_90dfb781eb7a2b58bc36489c28ba4170_.so #> NULL #> #> Calculated Variables: #> [1] \"C2\" \"C3\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(KA, CL, V2, Q, V3, Kin, Kout, EC50) #> KA = 0.3 #> CL = 7 #> V2 = 40 #> Q = 10 #> V3 = 300 #> Kin = 0.2 #> Kout = 0.2 #> EC50 = 8 #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> }) summary(mod2$simulationModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_65a417b472870474db4a0697fcb95aee model (✔ ready). #> DLL: /tmp/RtmpG6A6n6/rxode2/rx_65a417b472870474db4a0697fcb95aee__.rxd/rx_65a417b472870474db4a0697fcb95aee_.so #> NULL #> #> Calculated Variables: #> [1] \"KA\" \"CL\" \"V2\" \"Q\" \"V3\" \"Kin\" #> [7] \"Kout\" \"EC50\" \"C2\" \"C3\" \"ipredSim\" \"sim\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(TKA, TCL, TV2, TQ, TV3, TKin, TKout, TEC50, c2.prop.sd, #> eff.add.sd, eta.cl, eta.v) #> KA = TKA #> CL = TCL * exp(eta.cl) #> V2 = TV2 * exp(eta.v) #> Q = TQ #> V3 = TV3 #> Kin = TKin #> Kout = TKout #> EC50 = TEC50 #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> if (CMT == 5) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ C2 #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (rx_pred_f_ * c2.prop.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.C2, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> if (CMT == 4) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ eff #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (eff.add.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.eff, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> cmt(C2) #> dvid(5, 4) #> }) summary(mod2$simulationIniModel) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_54cbbfad6ad14a3e7e87c2ad66f30d45 model (✔ ready). #> DLL: /tmp/RtmpG6A6n6/rxode2/rx_54cbbfad6ad14a3e7e87c2ad66f30d45__.rxd/rx_54cbbfad6ad14a3e7e87c2ad66f30d45_.so #> NULL #> #> Calculated Variables: #> [1] \"KA\" \"CL\" \"V2\" \"Q\" \"V3\" \"Kin\" #> [7] \"Kout\" \"EC50\" \"C2\" \"C3\" \"ipredSim\" \"sim\" #> ── rxode2 Model Syntax ── #> rxode2({ #> param(TKA, TCL, TV2, TQ, TV3, TKin, TKout, TEC50, c2.prop.sd, #> eff.add.sd, eta.cl, eta.v) #> rxerr.C2 = 1 #> rxerr.eff = 1 #> TKA = 0.3 #> TCL = 7 #> TV2 = 40 #> TQ = 10 #> TV3 = 300 #> TKin = 0.2 #> TKout = 0.2 #> TEC50 = 8 #> c2.prop.sd = 0.1 #> eff.add.sd = 0.1 #> eta.cl = 0 #> eta.v = 0 #> KA = TKA #> CL = TCL * exp(eta.cl) #> V2 = TV2 * exp(eta.v) #> Q = TQ #> V3 = TV3 #> Kin = TKin #> Kout = TKout #> EC50 = TEC50 #> C2 = centr/V2 #> C3 = peri/V3 #> d/dt(depot) = -KA * depot #> d/dt(centr) = KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) = Q * C2 - Q * C3 #> d/dt(eff) = Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) = 1 #> if (CMT == 5) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ C2 #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (rx_pred_f_ * c2.prop.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.C2, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> if (CMT == 4) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ eff #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (eff.add.sd)^2 #> ipredSim = rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim = rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.eff, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> cmt(C2) #> dvid(5, 4) #> }) mod1 <- mod1$simulationModel mod2 <- mod2$simulationModel"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"increasing-rxode2-speed-by-multi-subject-parallel-solving","dir":"Articles","previous_headings":"","what":"Increasing rxode2 speed by multi-subject parallel solving","title":"Speeding up rxode2","text":"Using classic rxode2 model specification (can convert functional/ui model style) continue discussion rxode2 speed enhancements. rxode2 originally developed ODE solver allowed ODE solve single subject. flexibility still supported. original code rxode2 tutorial :","code":"library(rxode2) library(microbenchmark) library(ggplot2) mod1 <- rxode2({ C2 = centr/V2 C3 = peri/V3 d/dt(depot) = -KA*depot d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) = Q*C2 - Q*C3 d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) = 1 }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## Create an event table ev <- et() %>% et(amt=10000, addl=9,ii=12) %>% et(time=120, amt=20000, addl=4, ii=24) %>% et(0:240) ## Add Sampling nsub <- 100 # 100 sub-problems sigma <- matrix(c(0.09,0.08,0.08,0.25),2,2) # IIV covariance matrix mv <- rxRmvn(n=nsub, rep(0,2), sigma) # Sample from covariance matrix CL <- 7*exp(mv[,1]) V2 <- 40*exp(mv[,2]) params.all <- cbind(KA=0.3, CL=CL, V2=V2, Q=10, V3=300, Kin=0.2, Kout=0.2, EC50=8)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"for-loop","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"For Loop","title":"Speeding up rxode2","text":"slowest way code use loop. example enclose function compare timing.","code":"runFor <- function(){ res <- NULL for (i in 1:nsub) { params <- params.all[i,] x <- mod1$solve(params, ev) ##Store results for effect compartment res <- cbind(res, x[, \"eff\"]) } return(res) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"running-with-apply","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Running with apply","title":"Speeding up rxode2","text":"general R, apply types functions perform better loop, tutorial also suggests speed enhancement","code":"runSapply <- function(){ res <- apply(params.all, 1, function(theta) mod1$run(theta, ev)[, \"eff\"]) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"run-using-a-single-threaded-solve","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Run using a single-threaded solve","title":"Speeding up rxode2","text":"can also rxode2 solve subject simultaneously without collecting results R, using single threaded solve. data output slightly different , still gives information:","code":"runSingleThread <- function(){ solve(mod1, params.all, ev, cores=1)[,c(\"sim.id\", \"time\", \"eff\")] }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"run-a-2-threaded-solve","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Run a 2 threaded solve","title":"Speeding up rxode2","text":"rxode2 supports multi-threaded solves, another option 2 threads (called cores solve options, can see options rxControl() rxSolve()).","code":"run2Thread <- function(){ solve(mod1, params.all, ev, cores=2)[,c(\"sim.id\", \"time\", \"eff\")] }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"compare-the-times-between-all-the-methods","dir":"Articles","previous_headings":"Increasing rxode2 speed by multi-subject parallel solving","what":"Compare the times between all the methods","title":"Speeding up rxode2","text":"Now moment truth, timings: clear largest jump performance using solve method providing parameters rxode2 solve without looping subject either sapply. number cores/threads applied solve also plays role solving. can explore number threads following code: can suite spot speed vs number cores. system type (mac, linux, windows /processor), complexity ODE solving number subjects may affect arbitrary number threads. 4 threads good number use without prior knowledge systems days least 4 threads (2 processors 4 threads).","code":"bench <- microbenchmark(runFor(), runSapply(), runSingleThread(),run2Thread()) print(bench) #> Unit: milliseconds #> expr min lq mean median uq max #> runFor() 271.12972 276.67950 289.11109 279.70390 286.03731 446.06617 #> runSapply() 272.23359 277.92463 285.46407 280.02252 282.28206 334.06174 #> runSingleThread() 29.13699 29.36107 30.10626 29.53718 29.83150 47.24153 #> run2Thread() 17.12262 17.47965 19.08089 17.68412 18.22007 29.85472 #> neval #> 100 #> 100 #> 100 #> 100 autoplot(bench) runThread <- function(n){ solve(mod1, params.all, ev, cores=n)[,c(\"sim.id\", \"time\", \"eff\")] } bench <- eval(parse(text=sprintf(\"microbenchmark(%s)\", paste(paste0(\"runThread(\", seq(1, 2 * rxCores()),\")\"), collapse=\",\")))) print(bench) #> Unit: milliseconds #> expr min lq mean median uq max neval #> runThread(1) 29.12487 29.43899 30.58305 30.71440 30.92168 44.55127 100 #> runThread(2) 17.20634 17.49846 19.80544 18.10535 18.60669 31.77304 100 #> runThread(3) 18.93741 20.09896 20.76630 20.24559 20.99026 26.60115 100 #> runThread(4) 16.59801 17.00669 19.51821 17.49137 17.87127 39.42654 100 autoplot(bench)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"a-real-life-example","dir":"Articles","previous_headings":"","what":"A real life example","title":"Speeding up rxode2","text":"parallel solving implemented, fastest way run rxode2 lapply. Rik Schoemaker created data-set nlmixr comparisons, reduced run faster automatic building pkgdown website. applying new parallel solving concepts can simply run simulation less code faster: can see striking time difference two methods; things keep mind: rxode2 use thread-safe sitmo threefry routines simulation eta values. Therefore results expected different (also random samples taken different order different) prior simulation run R 3.5, different random number generator results simulation different actual nlmixr comparison using slower simulation. speed comparison used data.table. rxode2 uses data.table internally (available) try speed sorting, different installations data.table installed. can force rxode2 use order() sorting using forderForceBase(TRUE). case little difference two, though examples data.table’s presence leads speed increase (less likely lead slowdown).","code":"library(rxode2) library(data.table) #Define the rxode2 model ode1 <- \" d/dt(abs) = -KA*abs; d/dt(centr) = KA*abs-(CL/V)*centr; C2=centr/V; \" #Create the rxode2 simulation object mod1 <- rxode2(model = ode1) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #Population parameter values on log-scale paramsl <- c(CL = log(4), V = log(70), KA = log(1)) #make 10,000 subjects to sample from: nsubg <- 300 # subjects per dose doses <- c(10, 30, 60, 120) nsub <- nsubg * length(doses) #IIV of 30% for each parameter omega <- diag(c(0.09, 0.09, 0.09))# IIV covariance matrix sigma <- 0.2 #Sample from the multivariate normal set.seed(98176247) rxSetSeed(98176247) library(MASS) mv <- mvrnorm(nsub, rep(0, dim(omega)[1]), omega) # Sample from covariance matrix #Combine population parameters with IIV params.all <- data.table( \"ID\" = seq(1:nsub), \"CL\" = exp(paramsl['CL'] + mv[, 1]), \"V\" = exp(paramsl['V'] + mv[, 2]), \"KA\" = exp(paramsl['KA'] + mv[, 3]) ) #set the doses (looping through the 4 doses) params.all[, AMT := rep(100 * doses,nsubg)] Startlapply <- Sys.time() #Run the simulations using lapply for speed s = lapply(1:nsub, function(i) { #selects the parameters associated with the subject to be simulated params <- params.all[i] #creates an eventTable with 7 doses every 24 hours ev <- eventTable() ev$add.dosing( dose = params$AMT, nbr.doses = 1, dosing.to = 1, rate = NULL, start.time = 0 ) #generates 4 random samples in a 24 hour period ev$add.sampling(c(0, sort(round(sample(runif(600, 0, 1440), 4) / 60, 2)))) #runs the rxode2 simulation x <- as.data.table(mod1$run(params, ev)) #merges the parameters and ID number to the simulation output x[, names(params) := params] }) #runs the entire sequence of 100 subjects and binds the results to the object res res = as.data.table(do.call(\"rbind\", s)) Stoplapply <- Sys.time() print(Stoplapply - Startlapply) #> Time difference of 13.26343 secs rx <- rxode2({ CL = log(4) V = log(70) KA = log(1) CL = exp(CL + eta.CL) V = exp(V + eta.V) KA = exp(KA + eta.KA) d/dt(abs) = -KA*abs; d/dt(centr) = KA*abs-(CL/V)*centr; C2=centr/V; }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ omega <- lotri(eta.CL ~ 0.09, eta.V ~ 0.09, eta.KA ~ 0.09) doses <- c(10, 30, 60, 120) startParallel <- Sys.time() ev <- do.call(\"rbind\", lapply(seq_along(doses), function(i){ et() %>% et(amt=doses[i]) %>% # Add single dose et(0) %>% # Add 0 observation ## Generate 4 samples in 24 hour period et(lapply(1:4, function(...){c(0, 24)})) %>% et(id=seq(1, nsubg) + (i - 1) * nsubg) %>% ## Convert to data frame to skip sorting the data ## When binding the data together as.data.frame })) ## To better compare, use the same output, that is data.table res <- rxSolve(rx, ev, omega=omega, returnType=\"data.table\") endParallel <- Sys.time() print(endParallel - startParallel) #> Time difference of 0.1396136 secs"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"want-more-ways-to-run-multi-subject-simulations","dir":"Articles","previous_headings":"A real life example","what":"Want more ways to run multi-subject simulations","title":"Speeding up rxode2","text":"version since tutorial even ways run multi-subject simulations, including adding variability sampling dosing times et() (see rxode2 events information), ability supply omega sigma matrix well adding thetaMat R simulate uncertainty omega, sigma theta matrices; see rxode2 simulation vignette.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-speed.html","id":"session-information","dir":"Articles","previous_headings":"A real life example","what":"Session Information","title":"Speeding up rxode2","text":"session information:","code":"sessionInfo() #> R version 4.3.2 (2023-10-31) #> Platform: x86_64-pc-linux-gnu (64-bit) #> Running under: Ubuntu 22.04.3 LTS #> #> Matrix products: default #> BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 #> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so; LAPACK version 3.10.0 #> #> locale: #> [1] LC_CTYPE=C.UTF-8 LC_NUMERIC=C LC_TIME=C.UTF-8 #> [4] LC_COLLATE=C.UTF-8 LC_MONETARY=C.UTF-8 LC_MESSAGES=C.UTF-8 #> [7] LC_PAPER=C.UTF-8 LC_NAME=C LC_ADDRESS=C #> [10] LC_TELEPHONE=C LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C #> #> time zone: UTC #> tzcode source: system (glibc) #> #> attached base packages: #> [1] stats graphics grDevices utils datasets methods base #> #> other attached packages: #> [1] MASS_7.3-60 data.table_1.14.8 ggplot2_3.4.4 #> [4] microbenchmark_1.4.10 rxode2_2.0.14.9000 #> #> loaded via a namespace (and not attached): #> [1] gtable_0.3.4 xfun_0.41 bslib_0.6.1 #> [4] RApiSerialize_0.1.2 lattice_0.21-9 vctrs_0.6.4 #> [7] tools_4.3.2 generics_0.1.3 tibble_3.2.1 #> [10] symengine_0.2.2 fansi_1.0.5 highr_0.10 #> [13] pkgconfig_2.0.3 checkmate_2.3.0 desc_1.4.2 #> [16] RcppParallel_5.1.7 lifecycle_1.0.4 compiler_4.3.2 #> [19] farver_2.1.1 stringr_1.5.1 textshaping_0.3.7 #> [22] munsell_0.5.0 qs_0.25.6 htmltools_0.5.7 #> [25] sys_3.4.2 sass_0.4.7 yaml_2.3.7 #> [28] lazyeval_0.2.2 pillar_1.9.0 pkgdown_2.0.7 #> [31] crayon_1.5.2 jquerylib_0.1.4 cachem_1.0.8 #> [34] nlme_3.1-163 tidyselect_1.2.0 digest_0.6.33 #> [37] lotri_0.4.4 stringi_1.8.2 dplyr_1.1.4 #> [40] purrr_1.0.2 rxode2ll_2.0.11.9000 rprojroot_2.0.4 #> [43] fastmap_1.1.1 grid_4.3.2 colorspace_2.1-0 #> [46] rxode2parse_2.0.17 cli_3.6.1 dparser_1.3.1-11 #> [49] magrittr_2.0.3 utf8_1.2.4 withr_2.5.2 #> [52] scales_1.3.0 backports_1.4.1 rmarkdown_2.25 #> [55] ragg_1.2.6 stringfish_0.16.0 memoise_2.0.1 #> [58] evaluate_0.23 knitr_1.45 rex_1.2.1 #> [61] rxode2et_2.0.11 rxode2random_2.0.12 PreciseSums_0.6 #> [64] rlang_1.1.2 Rcpp_1.0.11 glue_1.6.2 #> [67] jsonlite_1.8.7 R6_2.5.1 systemfonts_1.0.5 #> [70] fs_1.6.3 units_0.8-5"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-stiff.html","id":"stiff-odes-with-jacobian-specification","dir":"Articles","previous_headings":"","what":"Stiff ODEs with Jacobian Specification","title":"rxode2 Jacobian specification and Stiff Systems","text":"Occasionally, may come across stiff differential equation, differential equation numerically unstable small variations parameters cause different solutions ODEs. One way tackle choose stiff-solver, hybrid stiff solver (like default LSODA). Typically enough. However exact Jacobian solutions may increase stability ODE. (Note Jacobian derivative ODE specification respect variable). rxode2 can specify Jacobian df(state)/dy(variable)= statement. classic ODE stiff properties various conditions Van der Pol differential equations. rxode2 can specified following: stiff mu=1, mu=1000 stiff system easy enough , bit tedious. rxode2 setup appropriately, can use computer algebra system sympy calculate Jacobian automatically. done rxode2 option calcJac option:","code":"library(rxode2) ## rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) ## no cache: create with `rxCreateCache()` Vtpol2 <- function() { ini({ mu <- 1 ## nonstiff; 10 moderately stiff; 1000 stiff }) model({ d/dt(y) <- dy d/dt(dy) <- mu*(1-y^2)*dy - y ## Jacobian df(y)/dy(dy) <- 1 df(dy)/dy(y) <- -2*dy*mu*y - 1 df(dy)/dy(dy) <- mu*(1-y^2) ## Initial conditions y(0) <- 2 dy(0) <- 0 }) } et <- et(0, 10, length.out=200) %>% et(amt=0) s1 <- Vtpol2 %>% solve(et, method=\"lsoda\") ## i parameter labels from comments will be replaced by 'label()' ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(s1) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## mu ## 1 ## -- Initial Conditions ($inits): -- ## y dy ## 2 0 ## -- First part of data (object): -- ## # A tibble: 200 x 3 ## time y dy ## ## 1 0 2 0 ## 2 0.0503 2.00 -0.0933 ## 3 0.101 1.99 -0.173 ## 4 0.151 1.98 -0.242 ## 5 0.201 1.97 -0.302 ## 6 0.251 1.95 -0.353 ## # i 194 more rows s2 <- Vtpol2 %>% solve(c(mu=1000), et) ## i parameter labels from comments will be replaced by 'label()' ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(s2) ## -- Solved rxode2 object -- ## -- Parameters ($params): -- ## mu ## 1000 ## -- Initial Conditions ($inits): -- ## y dy ## 2 0 ## -- First part of data (object): -- ## # A tibble: 200 x 3 ## time y dy ## ## 1 0 2 0 ## 2 0.0503 2.00 -0.000667 ## 3 0.101 2.00 -0.000667 ## 4 0.151 2.00 -0.000667 ## 5 0.201 2.00 -0.000667 ## 6 0.251 2.00 -0.000667 ## # i 194 more rows Vtpol <- function() { ini({ mu <- 1 ## nonstiff; 10 moderately stiff; 1000 stiff }) model({ d/dt(y) <- dy d/dt(dy) <- mu*(1-y^2)*dy - y y(0) <- 2 dy(0) <- 0 }) } Vtpol <- Vtpol() # you can also use $symengineModelPrune if there is if/else blocks # that need to be converted: Vtpol <- rxode2(Vtpol$symengineModelNoPrune, calcJac=TRUE) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## > pruning branches (`if`/`else`)... ## v done ## > loading into symengine environment... ## v done ## > calculate jacobian ## [====|====|====|====|====|====|====|====|====|====] 0:00:00 ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ summary(Vtpol) ## rxode2 2.0.14.9000 model named rx_c05195f423e3220f71a614f5fab50a25 model (ready). ## DLL: /tmp/RtmpG6A6n6/rxode2/rx_c05195f423e3220f71a614f5fab50a25__.rxd/rx_c05195f423e3220f71a614f5fab50a25_.so ## NULL ## -- rxode2 Model Syntax -- ## rxode2({ ## cmt(y) ## cmt(dy) ## d/dt(y) = dy ## d/dt(dy) = -y + mu * dy * (1 - Rx_pow_di(y, 2)) ## y(0) = 2 ## dy(0) = 0 ## df(y)/dy(y) = 0 ## df(dy)/dy(y) = -1 - 2 * y * mu * dy ## df(y)/dy(dy) = 1 ## df(dy)/dy(dy) = mu * (1 - Rx_pow_di(y, 2)) ## df(y)/dy(mu) = 0 ## df(dy)/dy(mu) = dy * (1 - Rx_pow_di(y, 2)) ## })"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"rxode2 ODE solving syntax","text":"briefly describes syntax used define models rxode2 translate R-callable compiled code. also describes communication variables R rxode2 modeling specification.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"creating-rxode2-models","dir":"Articles","previous_headings":"","what":"Creating rxode2 models","title":"rxode2 ODE solving syntax","text":"ODE-based model specification may coded inside four places: Inside rxode2({}) block statements: Inside rxode2(\"\") string statement: file name loaded rxode2: model function can parsed rxode2: block statement, character string text file internal rxode2 compilation manager translates ODE system C, compiles loads R session. call rxode2 produces object class rxode2 consists list-like structure (environment) various member functions. last type model (model function), call rxode2 creates parsed rxode2 ui can translated rxode2 compilation model. type function required nlmixr2 estimation can extended modified model piping. reason focused documentation.","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod <- rxode2({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ mod <- rxode2(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \") #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ writeLines(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \", \"modelFile.rxode2\") mod <- rxode2(filename='modelFile.rxode2') unlink(\"modelFile.rxode2\") mod <- function() { model({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) } mod <- rxode2(mod) # or simply mod() if the model is at the end of the function # These model functions often have residual components and initial # (`ini({})`) conditions attached as well. For example the # theophylline model can be written as: one.compartment <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } # after parsing the model mod <- one.compartment() mod$simulationModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_1eb11bdbc53aabad075c1318619d9fe3 model (✔ ready). #> x$state: depot, center #> x$stateExtra: cp #> x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp #> x$lhs: ka, cl, v, cp, ipredSim, sim # or mod$simulationIniModel #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_9fe88e4b34f46ef88e20ceb6ae68fc17 model (✔ ready). #> x$state: depot, center #> x$stateExtra: cp #> x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp #> x$lhs: ka, cl, v, cp, ipredSim, sim"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"syntax","dir":"Articles","previous_headings":"","what":"Syntax","title":"rxode2 ODE solving syntax","text":"basic model specification consists one statements optionally terminated semi-colons ; optional comments (comments delimited # end--line). block statements set statements delimited curly braces, { ... }. Statements can either assignments, conditional /else /else, loops (can exited break), special statements, printing statements (debugging/testing). Assignment statements can : simple assignments, left hand identifier (.e., variable) special time-derivative assignments, left hand specifies change amount corresponding state variable (compartment) respect time e.g., d/dt(depot): special initial-condition assignments left hand specifies compartment initial condition specified, e.g. depot(0) = 0 special model event changes including bioavailability (f(depot)=1), lag time (alag(depot)=0), modeled rate (rate(depot)=2) modeled duration (dur(depot)=2). example model features event specification modeled infusions rxode2 data specification found rxode2 events vignette. special change point syntax, model times. model times specified mtime(var)=time special Jacobian-derivative assignments, left hand specifies change compartment ode respect variable. example, d/dt(y) = dy, Jacobian compartment can specified df(y)/dy(dy) = 1. may advantage obtaining solution specifying Jacobian stiff ODE systems. However, stiff systems tried LSODA, actually slightly slowed solving. Note assignment can done =, <- ~. assigning ~ operator, simple assignments time-derivative assignments output. Note rxode2 model functions assignment ~ can also overloaded residual distribution specification. Special statements can : Compartment declaration statements, can change default dosing compartment assumed compartment number(s) well add extra compartment names end (useful multiple-endpoint nlmixr models); specified cmt(compartmentName) Parameter declaration statements, can make sure input parameters certain order instead ordering parameters order parsed. useful keeping parameter order using 2 different ODE models. specified param(par1, par2,...) example model shown : Expressions assignment statements can numeric logical. Numeric expressions can include following numeric operators +, -, *, /, ^ mathematical functions defined C R math libraries (e.g., fabs, exp, log, sin, abs). may also access R’s functions R math libraries, like lgammafn log gamma function. rxode2 syntax case-sensitive, .e., ABC different abc, Abc, ABc, etc.","code":"# simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3;"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"identifiers","dir":"Articles","previous_headings":"Syntax","what":"Identifiers","title":"rxode2 ODE solving syntax","text":"Like R, Identifiers (variable names) may consist one alphanumeric, underscore _ period . characters, first character digit underscore _. Identifiers model specification can refer : State variables dynamic system (e.g., compartments pharmacokinetics model). Implied input variable, t (time), tlast (last time point), podo (oral dose, undocumented case absorption transit models). Special constants like pi R’s predefined constants. Model parameters (e.g., ka rate absorption, CL clearance, etc.) Others, created assignments part model specification; referred LHS (left-hand side) variable. Currently, rxode2 modeling language recognizes system state variables “parameters”, thus, values need passed R ODE model (e.g., age) either passed params argument integrator function rxSolve() supplied event data-set. certain variable names rxode2 event tables. avoid confusion, following event table-related items assigned, used state can accessed rxode2 code: cmt dvid addl ss rate id However following variables used model specification: evid ii Sometimes rxode2 generates variables fed back rxode2. Similarly, nlmixr2 generates variables used nlmixr estimation simulation. variables start either rx nlmixr prefixes. avoid problems, suggested use variables starting either rx nlmixr prefixes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"logical-operators","dir":"Articles","previous_headings":"","what":"Logical Operators","title":"rxode2 ODE solving syntax","text":"Logical operators support standard R operators ==, != >= <= > <. Like R can () () statements, ifelse() expressions. Additionally can standard assignment. instance, following valid: Notice can also use character expressions comparisons. convenience comes cost since character comparisons slower numeric expressions. Unlike R, .numeric .integer logical statements needed, cause syntax error try use function.","code":"cov1 = covm*(sexf == \"female\") + covm*(sexf != \"female\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"supported-functions","dir":"Articles","previous_headings":"","what":"Supported functions","title":"rxode2 ODE solving syntax","text":"supported functions rxode2 can seen rxSupportedFuns(). brief description built-functions following table: Note lag(cmt) = equivalent alag(cmt) = = lag(wt)","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"reserved-keywords","dir":"Articles","previous_headings":"","what":"Reserved keywords","title":"rxode2 ODE solving syntax","text":"reserved keywords rxode2 model. following table: Note rxFlag always output 11 calc_lhs since final variables calculated, though can tweak test certain parts rxode2 using flag.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"residual-functions-when-using-rxode2-functions","dir":"Articles","previous_headings":"","what":"Residual functions when using rxode2 functions","title":"rxode2 ODE solving syntax","text":"addition ~ hiding output certain types output, also used specify residual output endpoint input rxode2 model function (includes residual model({}) block). specifications form: Indicating variable var variable represents individual central tendencies model also represents compartment specification data-set. can also change compartment name using | syntax, : case var represents central tendency cmt represents compartment dvid specification.","code":"var ~ add(add.sd) var ~ add(add.sd) | cmt"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"transformations","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Transformations","title":"rxode2 ODE solving syntax","text":"normal related distributions, can apply transformation sides using keywords/functions apply transformations. default likelihood transformations calculated untransformed scale. bounded variables like logit-normal probit-normal low high values defaulted 0 1 missing. models wish proportional model one transformation can replace standard deviation NA allow transformations, lnorm(), probitNorm() logitNorm() can combined variance stabilizing yeoJohnson() transformation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"normal-and-t-related-distributions","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Normal and t-related distributions","title":"rxode2 ODE solving syntax","text":"normal t-related distributions, wanted keep ability use skewed distributions additive proportional t/cauchy-space, distributions specified differently comparison supported distributions within nlmixr2: Note normal t-related distributions nlmixr2 calculate cwres npde normal assumption help assess goodness fit model. Also note +dnorm() mostly testing purposes slow estimation procedure nlmixr2. suggest adding (except explicit testing). multiple endpoint models mix non-normal normal distributions, whole problem shifted log-likelihood method estimation nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"notes-on-additive-proportional-models","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Notes on additive + proportional models","title":"rxode2 ODE solving syntax","text":"two different ways specify additive proportional models, call combined1 combined2, way Monolix calls two distributions (avoid software differences naming). first, combined1, assumes additive proportional differences standard deviation scale, : y=f+(+b* f^c)*err second, combined2, assumes additive proportional differences combined variance scale: y=f+\\[sqrt(^2+b^2 *f^(2c))\\]*err default nlmixr2/rxode2 otherwise specified combined2 since mirrors adding 2 normal distributions statistics add variances (standard deviations). However, combined1 can describe data possibly even better combined2 possible options rxode2/nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"distributions-of-known-likelihoods","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Distributions of known likelihoods","title":"rxode2 ODE solving syntax","text":"residuals related normal, t-distribution cauchy, often residual specification form: compartment specification left handed side specification. generalized likelihood can specify:","code":"cmt ~ dbeta(alpha, beta) ll(cmt) ~ llik specification"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"ordinal-likelihoods","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"Ordinal likelihoods","title":"rxode2 ODE solving syntax","text":"Finally, ordinal likelihoods/simulations can specified 2 ways. first : err represents compartment p0 probability specific category: model ensure sum p values less 1. Additionally can write arbitrary number categories ordinal model described . seems little p0 probability category 1 sometimes scores non-whole numbers. can modeled follows: numeric categories specified explicitly, probabilities remain :","code":"err ~ c(p0, p1, p2) err ~ c(p0=0, p1=1, p2=2, 3)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"general-table-of-supported-residual-distributions","dir":"Articles","previous_headings":"Residual functions when using rxode2 functions","what":"General table of supported residual distributions","title":"rxode2 ODE solving syntax","text":"general supported following table (available rxode2::rxResidualError)","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"bugs-andor-deficiencies","dir":"Articles","previous_headings":"","what":"Bugs and/or deficiencies","title":"rxode2 ODE solving syntax","text":"modulo operator %% currently unsupported.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"note","dir":"Articles","previous_headings":"","what":"Note","title":"rxode2 ODE solving syntax","text":"ODE specification mini-language parsed help open source tool , Plevyak (2015).","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"example-model","dir":"Articles","previous_headings":"","what":"Example model","title":"rxode2 ODE solving syntax","text":"commented example quickly show capabilities rxode2 syntax.","code":""},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"example","dir":"Articles","previous_headings":"","what":"Example","title":"rxode2 ODE solving syntax","text":"","code":"f <- function() { ini({ }) model({ # An rxode2 model specification (this line is a comment). if(comed==0) { # concomitant medication (con-med)? F <- 1.0 # full bioavailability w.o. con-med } else { F <- 0.80 # 20% reduced bioavailability } C2 <- centr/V2 # concentration in the central compartment C3 <- peri/V3 # concentration in the peripheral compartment # ODE describing the PK and PD d/dt(depot) <- -KA*depot d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff eff(0) <- 1 }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-syntax.html","id":"interface-and-data-handling-between-r-and-the-generated-c-code","dir":"Articles","previous_headings":"","what":"Interface and data handling between R and the generated C code","title":"rxode2 ODE solving syntax","text":"Users specify variables dynamic system’s state variables via d/dt(identifier) operator part model specification, model parameters via params= argument rxode2 solve() method: values variables pre-specified time points saved model fitting/integration returned part fitted values (see function et(), define set time points capture values variables) returned part modeling output. ODE specification mini-language parsed help open source tool DParser, Plevyak (2015).","code":"m1 <- rxode2(model = ode, modName = \"m1\") # model parameters -- a named vector is required theta <- c(KA=0.29, CL=18.6, V2=40.2, Q=10.5, V3=297, Kin=1, Kout=1, EC50=200) # state variables and their amounts at time 0 (the use of names is # encouraged, but not required) inits <- c(depot=0, centr=0, peri=0, eff=1) # qd1 is an eventTable specification with a set of dosing and sampling # records (code not shown here) solve(theta, event = qd1, inits = inits)"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-tutorials.html","id":"interactive-tutorials","dir":"Articles","previous_headings":"","what":"Interactive tutorials","title":"Interactive Tutorials","text":"rxode2 comes interactive tutorials can run R session; built Rstudio 1.3 can run R session :","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` ## rxode2 Syntax learnr::run_tutorial(\"rxode2-00-syntax\", \"rxode2\") ## rxode2 event tables learnr::run_tutorial(\"rxode2-00-events\", \"rxode2\")"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"creating-a-2-compartment-model-in-rxode2","dir":"Articles","previous_headings":"","what":"Creating a 2-compartment model in rxode2","title":"Weight Based Dosing in rxode2","text":"","code":"library(rxode2) #> rxode2 2.0.14.9000 using 2 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` ## Note the time covariate is not included in the simulation m1 <- function() { model({ CL ~ (1-0.2*SEX)*(0.807+0.00514*(CRCL-91.2))*exp(eta.cl) V1 ~ 4.8*exp(eta.v1) Q ~ (3.46+0.0593*(WT-75.1))*exp(eta.q); V2 ~ 1.93*(3.13+0.0458*(WT-75.1))*exp(eta.v2) A1 ~ centr; A2 ~ peri; d/dt(centr) <- - A1*(CL/V1 + Q/V1) + A2*Q/V2; d/dt(peri) <- A1*Q/V1 - A2*Q/V2; DV = centr / V1 * (1 + prop.err) }) }"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"simulating-covariates","dir":"Articles","previous_headings":"","what":"Simulating Covariates","title":"Weight Based Dosing in rxode2","text":"simulation correlates age, sex, weight. Since using weight based dosing, needs simulated first","code":"set.seed(42) rxSetSeed(42) library(dplyr) #> #> Attaching package: 'dplyr' #> The following objects are masked from 'package:stats': #> #> filter, lag #> The following objects are masked from 'package:base': #> #> intersect, setdiff, setequal, union nsub=30 # Simulate Weight based on age and gender AGE<-round(runif(nsub,min=18,max=70)) SEX<-round(runif(nsub,min=0,max=1)) HTm<-round(rnorm(nsub,176.3,0.17*sqrt(4482)),digits=1) HTf<-round(rnorm(nsub,162.2,0.16*sqrt(4857)),digits=1) WTm<-round(exp(3.28+1.92*log(HTm/100))*exp(rnorm(nsub,0,0.14)),digits=1) WTf<-round(exp(3.49+1.45*log(HTf/100))*exp(rnorm(nsub,0,0.17)),digits=1) WT<-ifelse(SEX==1,WTf,WTm) CRCL<-round(runif(nsub,30,140)) ## id is in lower case to match the event table cov.df <- tibble(id=seq_along(AGE), AGE=AGE, SEX=SEX, WT=WT, CRCL=CRCL) print(cov.df) #> # A tibble: 30 x 5 #> id AGE SEX WT CRCL #> #> 1 1 66 1 49.4 83 #> 2 2 67 1 52.5 79 #> 3 3 33 0 97.9 37 #> 4 4 61 1 63.8 66 #> 5 5 51 0 71.8 127 #> 6 6 45 1 69.6 132 #> 7 7 56 0 61 73 #> 8 8 25 0 57.7 47 #> 9 9 52 1 58.7 65 #> 10 10 55 1 73.1 64 #> # i 20 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"creating-weight-based-event-table","dir":"Articles","previous_headings":"","what":"Creating weight based event table","title":"Weight Based Dosing in rxode2","text":"","code":"s<-c(0,0.25,0.5,0.75,1,1.5,seq(2,24,by=1)) s <- lapply(s, function(x){.x <- 0.1 * x; c(x - .x, x + .x)}) e <- et() %>% ## Specify the id and weight based dosing from covariate data.frame ## This requires rxode2 XXX et(id=cov.df$id, amt=6*cov.df$WT, rate=6 * cov.df$WT) %>% ## Sampling is added for each ID et(s) %>% as.data.frame %>% ## Merge the event table with the covarite information merge(cov.df, by=\"id\") %>% as_tibble e #> # A tibble: 900 x 12 #> id low time high cmt amt rate evid AGE SEX WT CRCL #> #> 1 1 0 0 0 (obs) NA NA 0 66 1 49.4 83 #> 2 1 NA 0 NA (default) 296. 296. 1 66 1 49.4 83 #> 3 1 0.225 0.246 0.275 (obs) NA NA 0 66 1 49.4 83 #> 4 1 0.45 0.516 0.55 (obs) NA NA 0 66 1 49.4 83 #> 5 1 0.675 0.729 0.825 (obs) NA NA 0 66 1 49.4 83 #> 6 1 0.9 0.921 1.1 (obs) NA NA 0 66 1 49.4 83 #> 7 1 1.35 1.42 1.65 (obs) NA NA 0 66 1 49.4 83 #> 8 1 1.8 1.82 2.2 (obs) NA NA 0 66 1 49.4 83 #> 9 1 2.7 2.97 3.3 (obs) NA NA 0 66 1 49.4 83 #> 10 1 3.6 3.87 4.4 (obs) NA NA 0 66 1 49.4 83 #> # i 890 more rows"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"solving-daptomycin-simulation","dir":"Articles","previous_headings":"","what":"Solving Daptomycin simulation","title":"Weight Based Dosing in rxode2","text":"","code":"data <- rxSolve(m1, e, ## Lotri uses lower-triangular matrix rep. for named matrix omega=lotri(eta.cl ~ .306, eta.q ~0.0652, eta.v1 ~.567, eta.v2 ~ .191), sigma=lotri(prop.err ~ 0.15), addDosing = TRUE, addCov = TRUE) #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ print(data) #> -- Solved rxode2 object -- #> -- Parameters ($params): -- #> # A tibble: 30 x 5 #> id eta.cl eta.v1 eta.q eta.v2 #> #> 1 1 0.300 0.555 0.252 -0.356 #> 2 2 -0.730 -0.436 -0.0118 0.529 #> 3 3 -0.385 0.183 -0.0798 0.562 #> 4 4 0.936 1.47 -0.189 0.684 #> 5 5 -0.526 -0.711 -0.0836 0.148 #> 6 6 0.0258 0.759 0.108 -0.0149 #> 7 7 0.158 -0.646 -0.164 -0.285 #> 8 8 -0.840 0.348 0.146 -0.377 #> 9 9 -0.0904 0.379 -0.00389 -0.251 #> 10 10 -0.426 -0.354 0.167 0.132 #> # i 20 more rows #> -- Initial Conditions ($inits): -- #> centr peri #> 0 0 #> -- First part of data (object): -- #> # A tibble: 900 x 12 #> id evid cmt amt rate time DV centr peri SEX WT CRCL #> #> 1 1 1 1 296. 296. 0 0 0 0 1 49.4 83 #> 2 1 0 NA NA NA 0 0 0 0 1 49.4 83 #> 3 1 0 NA NA NA 0.246 6.36 69.7 2.40 1 49.4 83 #> 4 1 0 NA NA NA 0.516 30.7 140. 9.43 1 49.4 83 #> 5 1 0 NA NA NA 0.729 20.2 192. 17.3 1 49.4 83 #> 6 1 0 NA NA NA 0.921 25.0 236. 25.7 1 49.4 83 #> # i 894 more rows plot(data, log=\"y\") #> Warning in self$trans$transform(x): NaNs produced #> Warning: Transformation introduced infinite values in continuous y-axis"},{"path":"https://nlmixr2.github.io/rxode2/articles/rxode2-wt.html","id":"daptomycin-reference","dir":"Articles","previous_headings":"","what":"Daptomycin Reference","title":"Weight Based Dosing in rxode2","text":"weight-based simulation adapted Daptomycin article : Dvorchik B, Arbeit RD, Chung J, Liu S, Knebel W, Kastrissios H. Population pharmacokinetics daptomycin. Antimicrob Agents Che mother 2004; 48: 2799-2807. doi:(10.1128/AAC.48.8.2799-2807.2004)[https://dx.doi.org/10.1128%2FAAC.48.8.2799-2807.2004] simulation example made available work Sherwin Sy modifications Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors","text":"Matthew L. Fidler (core team/developer/manual) Melissa Hallow (tutorial writer) Wenping Wang (core team/developer)","code":""},{"path":"https://nlmixr2.github.io/rxode2/authors.html","id":"contributors","dir":"","previous_headings":"","what":"Contributors","title":"Authors","text":"Zufar Mulyukov – Wrote initial version rxShiny() modifications Matthew Fidler Alan Hindmarsh – Lsoda author Awad H. Al-Mohy – Al-Mohy matrix exponential author Ernst Hairer – dop853 author Gerhard Wanner – dop853 author Goro Fuji – Timsort author Hadley Wickham – Author original findLhs RxODE, also original author .s3register (used permission anyone, changed Matthew Fidler) Jack Dongarra – LApack author Linda Petzold – LSODA Martin Maechler – expm author, used routines inductive linearization Morwenn – Timsort author Nicholas J. Higham – Author Al-mohy matrix exponential Roger B. Sidje – expokit matrix exponential author Simon Frost – thread safe C implementation liblsoda Kevin Ushey – Original author fast factor, modified Matthew Filder Yu Feng – thread safe liblsoda Cleve Moler – LApack author David Cooley – Author fast_factor modified now used RxODE quickly create factors IDs without sorting like R Drew Schmidt – Drew Schmidt author edits exponential matrix utility taken R package expm Matt Dowle & Arun Srinivasan – data.table authors openMp framework based upon","code":""},{"path":"https://nlmixr2.github.io/rxode2/authors.html","id":"rxode-acknowledgments","dir":"","previous_headings":"","what":"RxODE acknowledgments:","title":"Authors","text":"Sherwin Sy – Weight based dosing example Justin Wilkins – Documentation updates, logo testing Emma Schwager – R IJK distribution author J Coligne – dop853 fortran author Bill Denney – Documentation updates, manual minor bug fixes Tim Waterhouse – Fixed one bug mac working directories Richard Upton – Helped solving ADVAN linCmt() solutions Dirk Eddelbuettel – Made fixes Rcpp changes require R strict headers Ross Ihaka – R author Robert Gentleman – R author R core team – R authors","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"overview","dir":"","previous_headings":"","what":"Overview","title":"Facilities for Simulating from ODE-Based Models","text":"rxode2 R package solving simulating ode-based models. models convert rxode2 mini-language C create compiled dll fast solving. ODE solving using rxode2 key parts: rxode2() creates C code fast ODE solving based simple syntax related Leibnitz notation. NONMEM deSolve compatible data frame, created et() eventTable() easy simulation events data frame can augmented adding time-varying adding individual covariates (iCov= needed) multiple subject data, may parallelized. single subject output data frame adaptive Covariances metrics uncertanty can used simulate solving","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Facilities for Simulating from ODE-Based Models","text":"can install released version rxode2 CRAN : fastest way install development version rxode2 use r-universe service. service compiles binaries development version MacOS Windows don’t wait package compilation: doesn’t work install development version rxode2 build models rxode2, need working c compiler. use parallel threaded solving rxode2, c compiler needs support open-mp. can check see R working c compiler can check : toolchain, can set described platform information :","code":"install.packages(\"rxode2\") install.packages(c(\"dparser\", \"rxode2ll\", \"rxode2parse\", \"rxode2random\", \"rxode2et\", \"rxode2\"), repos=c(nlmixr2=\"https://nlmixr2.r-universe.dev\", CRAN=\"https://cloud.r-project.org\")) devtools::install_github(\"nlmixr2/rxode2parse\") devtools::install_github(\"nlmixr2/rxode2random\") devtools::install_github(\"nlmixr2/rxode2et\") devtools::install_github(\"nlmixr2/rxode2ll\") devtools::install_github(\"nlmixr2/rxode2\") ## install.packages(\"pkgbuild\") pkgbuild::has_build_tools(debug = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"windows","dir":"","previous_headings":"Installation","what":"Windows","title":"Facilities for Simulating from ODE-Based Models","text":"windows may simply use installr install rtools: Alternatively can download install rtools directly.","code":"install.packages(\"installr\") library(installr) install.rtools()"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"mac-osx","dir":"","previous_headings":"Installation","what":"Mac OSX","title":"Facilities for Simulating from ODE-Based Models","text":"get speed need OpenMP enabled compile rxode2 compiler. various options date discussion likely data.table installation FAQ MacOS. last thing keep mind rxode2 uses code similar original lsoda requires gfortran compiler setup well OpenMP compilers. going using rxode2 nlmixr together older mac computer, suggest trying following: crashes R session binary work Mac machine. able run nlmixr, need compile package manually. proceed assuming homebrew installed system. system terminal need install dependencies compile symengine: installing dependencies, need re-install symengine:","code":"library(symengine) brew install cmake gmp mpfr libmpc install.packages(\"symengine\", type=\"source\") library(symengine)"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"linux","dir":"","previous_headings":"Installation","what":"Linux","title":"Facilities for Simulating from ODE-Based Models","text":"install linux make sure install gcc (openmp support) gfortran using distribution’s package manager.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"r-versions-40-and-41","dir":"","previous_headings":"Installation","what":"R versions 4.0 and 4.1","title":"Facilities for Simulating from ODE-Based Models","text":"installation R versions 4.0.x 4.1.x, please see instructions install symengine nlmixr2 installation instructions: https://github.com/nlmixr2/nlmixr2#r-package-installation","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"development-version","dir":"","previous_headings":"","what":"Development version","title":"Facilities for Simulating from ODE-Based Models","text":"Since development version rxode2 uses StanHeaders, need make sure compiler setup support C++14, described rstan setup page. R 4.0, believe requires modifying windows toolchain longer (much easier setup). C++ toolchain setup appropriately, can install development version GitHub :","code":"# install.packages(\"devtools\") devtools::install_github(\"nlmixr2/rxode2parse\") devtools::install_github(\"nlmixr2/rxode2random\") devtools::install_github(\"nlmixr2/rxode2et\") devtools::install_github(\"nlmixr2/rxode2ll\") devtools::install_github(\"nlmixr2/rxode2\")"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"illustrated-example","dir":"","previous_headings":"","what":"Illustrated Example","title":"Facilities for Simulating from ODE-Based Models","text":"model equations can specified text string, model file R expression. differential algebraic equations permitted. Differential equations specified d/dt(var_name) =. equation can separated semicolon. load rxode2 package compile model: Model parameters may specified ini({}) model block, initial conditions can specified within model cmt(0)= X, like model eff(0) <- 1. may also specify subject variability initial conditions residual error components just like nlmixr2. allows single interface nlmixr2/rxode2 models. Also note, classic rxode2 interface still works just like past (don’t worry breaking code time). fact, can get classic rxode2 model $simulationModel ui object:","code":"library(rxode2) #> rxode2 2.0.13.9000 using 8 threads (see ?getRxThreads) #> no cache: create with `rxCreateCache()` mod1 <- function() { ini({ # central KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 # peripheral Q=1.05E+01 V3=2.97E+02 # effects Kin=1 Kout=1 EC50=200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 eff(0) <- 1 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } mod1 <- mod1() # create the ui object (can also use `rxode2(mod1)`) mod1 summary(mod1$simulationModel)"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"specify-dosing-and-sampling-in-rxode2","dir":"","previous_headings":"","what":"Specify Dosing and sampling in rxode2","title":"Facilities for Simulating from ODE-Based Models","text":"rxode2 provides simple flexible way specify dosing sampling functions generate event table. First, empty event table generated “et()” function. interface similar NONMEM event tables: can see code, can dose compartment named rxode2 model. slight deviation NONMEM can reduce need compartment renumbering. events can also combined expanded (multi-subject events complex regimens) rbind, c, seq, rep. information creating complex dosing regimens using rxode2 see rxode2 events vignette.","code":"ev <- et(amountUnits=\"mg\", timeUnits=\"hours\") %>% et(amt=10000, addl=9,ii=12,cmt=\"depot\") %>% et(time=120, amt=2000, addl=4, ii=14, cmt=\"depot\") %>% et(0:240) # Add sampling"},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"solving-odes","dir":"","previous_headings":"","what":"Solving ODEs","title":"Facilities for Simulating from ODE-Based Models","text":"ODE can now solved using rxSolve: returns modified data frame. can see compartment values plot : , Note labels automatically labeled units initial event table. rxode2 extracts units label plot (present).","code":"x <- mod1 %>% rxSolve(ev) x #> ── Solved rxode2 object ── #> ── Parameters (x$params): ── #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> ── Initial Conditions (x$inits): ── #> depot centr peri eff #> 0 0 0 1 #> ── First part of data (object): ── #> # A tibble: 241 × 7 #> time C2 C3 depot centr peri eff #> [h] #> 1 0 0 0 10000 0 0 1 #> 2 1 44.4 0.920 7453. 1784. 273. 1.08 #> 3 2 54.9 2.67 5554. 2206. 794. 1.18 #> 4 3 51.9 4.46 4140. 2087. 1324. 1.23 #> 5 4 44.5 5.98 3085. 1789. 1776. 1.23 #> 6 5 36.5 7.18 2299. 1467. 2132. 1.21 #> # ℹ 235 more rows library(ggplot2) plot(x,C2) + ylab(\"Central Concentration\") plot(x,eff) + ylab(\"Effect\")"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"ode-solving","dir":"","previous_headings":"","what":"ODE solving","title":"Facilities for Simulating from ODE-Based Models","text":"brief comparison pharmacometric ODE solving R packages rxode2. several R packages differential equations. popular deSolve. However pharmacometrics-specific ODE solving, 2 packages rxode2 released CRAN. uses compiled code faster ODE solving. mrgsolve, uses C++ lsoda solver solve ODE systems. user required write hybrid R/C++ code create mrgsolve model translated C++ solving. contrast, rxode2 R-like mini-language parsed C code solves ODE system. Unlike rxode2, mrgsolve currently support symbolic manipulation ODE systems, like automatic Jacobian calculation forward sensitivity calculation (rxode2 currently supports basis nlmixr2’s FOCEi algorithm) dMod, uses unique syntax create “reactions”. reactions create underlying ODEs created c code compiled deSolve model. contrast rxode2 defines ODE systems lower level. rxode2’s parsing mini-language comes C, whereas dMod’s parsing comes R. Like rxode2, dMod supports symbolic manipulation ODE systems calculates forward sensitivities adjoint sensitivities systems. Unlike rxode2, dMod thread-safe since deSolve yet thread-safe. PKPDsim defines models R-like syntax converts system compiled code. Like mrgsolve, PKPDsim currently support symbolic manipulation ODE systems. PKPDsim thread-safe. open pharmacometrics open source community fairly friendly, rxode2 maintainers positive interactions ODE-solving pharmacometric projects listed.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"pk-solved-systems","dir":"","previous_headings":"","what":"PK Solved systems","title":"Facilities for Simulating from ODE-Based Models","text":"rxode2 supports 1-3 compartment models gradients (using stan math’s auto-differentiation). currently uses equations PKADVAN allow time-varying covariates. rxode2 can mix ODEs solved systems.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"the-following-packages-for-solved-pk-systems-are-on-cran","dir":"","previous_headings":"PK Solved systems","what":"The following packages for solved PK systems are on CRAN","title":"Facilities for Simulating from ODE-Based Models","text":"mrgsolve currently 1-2 compartment (poly-exponential models) models built-. solved systems ODEs currently mixed. pmxTools currently 1-3 compartment (super-positioning) models built-. R-implementation. PKPDsim uses 1-3 “ADVAN” solutions using non-superpositioning. PKPDmodels one-compartment model gradients.","code":""},{"path":"https://nlmixr2.github.io/rxode2/index.html","id":"non-cran-libraries","dir":"","previous_headings":"PK Solved systems","what":"Non-CRAN libraries:","title":"Facilities for Simulating from ODE-Based Models","text":"PKADVAN Provides 1-3 compartment models using non-superpositioning. allows time-varying covariates.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":null,"dir":"Reference","previous_headings":"","what":"Turn into an ini block for initialization — as.ini","title":"Turn into an ini block for initialization — as.ini","text":"Turn ini block initialization","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Turn into an ini block for initialization — as.ini","text":"","code":"as.ini(x) # S3 method for character as.ini(x) # S3 method for data.frame as.ini(x) # S3 method for call as.ini(x) # S3 method for lotriFix as.ini(x) # S3 method for matrix as.ini(x) # S3 method for default as.ini(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Turn into an ini block for initialization — as.ini","text":"x Item convert rxode2/nlmixr2 ui ini expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Turn into an ini block for initialization — as.ini","text":"rxode2 ini expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Turn into an ini block for initialization — as.ini","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.ini.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Turn into an ini block for initialization — as.ini","text":"","code":"ini <- quote(ini({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 add.sd <- 0.7 })) as.ini(ini) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) l <- quote(lotri({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 add.sd <- 0.7 })) as.ini(l) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) m <- lotri({ eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 }) as.ini(m) #> ini({ #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) one.compartment <- function() { ini({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } as.ini(one.compartment) #> #> #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ui <- one.compartment() as.ini(ui) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ui$iniDf #> ntheta neta1 neta2 name lower est upper fix label backTransform #> 1 1 NA NA tka -Inf 0.4510756 Inf FALSE #> 2 2 NA NA tcl -Inf 1.0006319 Inf FALSE #> 3 3 NA NA tv -Inf 3.4499875 Inf FALSE #> 4 4 NA NA add.sd 0 0.7000000 Inf FALSE #> 5 NA 1 1 eta.ka -Inf 0.6000000 Inf FALSE #> 6 NA 2 2 eta.cl -Inf 0.3000000 Inf FALSE #> 7 NA 3 3 eta.v -Inf 0.1000000 Inf FALSE #> condition err #> 1 #> 2 #> 3 #> 4 cp add #> 5 id #> 6 id #> 7 id as.ini(ui$iniDf) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ini <- c(\"ini({\", \"tka <- log(1.57)\", \"tcl <- log(2.72)\", \"tv <- log(31.5)\", \"eta.ka ~ 0.6\", \"eta.cl ~ 0.3\", \"eta.v ~ 0.1\", \"add.sd <- 0.7\", \"})\") as.ini(ini) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) ini <- paste(ini, collapse=\"\\n\") as.ini(ini) #> ini({ #> tka <- 0.451075619360217 #> tcl <- 1.00063188030791 #> tv <- 3.44998754583159 #> add.sd <- 0.7 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> })"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":null,"dir":"Reference","previous_headings":"","what":"Turn into a model expression — as.model","title":"Turn into a model expression — as.model","text":"Turn model expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Turn into a model expression — as.model","text":"","code":"as.model(x) # S3 method for character as.model(x) # S3 method for call as.model(x) # S3 method for list as.model(x) # S3 method for default as.model(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Turn into a model expression — as.model","text":"x item convert model({}) expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Turn into a model expression — as.model","text":"model expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Turn into a model expression — as.model","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.model.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Turn into a model expression — as.model","text":"","code":"model <- quote(model({ ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) })) as.model(model) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) one.compartment <- function() { ini({ tka <- log(1.57) tcl <- log(2.72) tv <- log(31.5) 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } as.model(one.compartment) #> #> #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) ui <- one.compartment() as.model(ui) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) model <- c(\"model({\", \"ka <- exp(tka + eta.ka)\", \"cl <- exp(tcl + eta.cl)\", \"v <- exp(tv + eta.v)\", \"d/dt(depot) = -ka * depot\", \"d/dt(center) = ka * depot - cl / v * center\", \"cp = center / v\", \"cp ~ add(add.sd)\", \"})\") as.model(model) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) model <- paste(model, collapse=\"\\n\") as.model(model) #> model({ #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> })"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":null,"dir":"Reference","previous_headings":"","what":"As rxode2 ui — as.rxUi","title":"As rxode2 ui — as.rxUi","text":"rxode2 ui","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"As rxode2 ui — as.rxUi","text":"","code":"as.rxUi(x) # S3 method for rxode2 as.rxUi(x) # S3 method for rxode2tos as.rxUi(x) # S3 method for rxModelVars as.rxUi(x) # S3 method for `function` as.rxUi(x) # S3 method for rxUi as.rxUi(x) # S3 method for default as.rxUi(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"As rxode2 ui — as.rxUi","text":"x Object convert rxUi object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"As rxode2 ui — as.rxUi","text":"rxUi object (error converted)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"As rxode2 ui — as.rxUi","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/as.rxUi.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"As rxode2 ui — as.rxUi","text":"","code":"mod1 <- function() { ini({ # central KA=2.94E-01 CL=1.86E+01 V2=4.02E+01 # peripheral Q=1.05E+01 V3=2.97E+02 # effects Kin=1 Kout=1 EC50=200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 eff(0) <- 1 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } as.rxUi(mod1) #> #> #> ── rxode2-based free-form 4-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 centr #> 3 3 peri #> 4 4 eff #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> KA <- 0.294 #> CL <- 18.6 #> V2 <- 40.2 #> Q <- 10.5 #> V3 <- 297 #> Kin <- 1 #> Kout <- 1 #> EC50 <- 200 #> }) #> model({ #> C2 <- centr/V2 #> C3 <- peri/V3 #> d/dt(depot) <- -KA * depot #> d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) <- Q * C2 - Q * C3 #> eff(0) <- 1 #> d/dt(eff) <- Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":null,"dir":"Reference","previous_headings":"","what":"Assert properties of the rxUi models — assertRxUi","title":"Assert properties of the rxUi models — assertRxUi","text":"Assert properties rxUi models","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assert properties of the rxUi models — assertRxUi","text":"","code":"assertRxUi(model, extra = \"\", .var.name = .vname(model)) assertRxUiPrediction(model, extra = \"\", .var.name = .vname(model)) assertRxUiSingleEndpoint(model, extra = \"\", .var.name = .vname(model)) assertRxUiTransformNormal(model, extra = \"\", .var.name = .vname(model)) assertRxUiNormal(model, extra = \"\", .var.name = .vname(model)) assertRxUiMuRefOnly(model, extra = \"\", .var.name = .vname(model)) assertRxUiEstimatedResiduals(model, extra = \"\", .var.name = .vname(model)) assertRxUiPopulationOnly(model, extra = \"\", .var.name = .vname(model)) assertRxUiMixedOnly(model, extra = \"\", .var.name = .vname(model)) assertRxUiRandomOnIdOnly(model, extra = \"\", .var.name = .vname(model))"},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assert properties of the rxUi models — assertRxUi","text":"model Model check extra Extra text append error message (like \"focei\") .var.name [character(1)] Name checked object print assertions. Defaults heuristic implemented vname.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assert properties of the rxUi models — assertRxUi","text":"rxUi model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Assert properties of the rxUi models — assertRxUi","text":"functions different types assertions assertRxUi -- Make sure proper rxode2 model (throw error) assertRxUiSingleEndpoint -- Make sure rxode2 model single endpoint model (throw error) assertRxUiTransformNormal -- Make sure model residual distribution normal transformably normal assertRxUiNormal -- Make sure model residual distribution normal assertRxUiEstimatedResiduals -- Make sure residual error parameters estimated (modeled). assertRxUiPopulationOnly -- Make sure model population model (mixed effects) assertRxUiMixedOnly -- Make sure model mixed effect model (population effect, ) assertRxUiPrediction -- Make sure model predictions assertRxUiMuRefOnly -- Make sure parameters mu-referenced assertRxUiRandomOnIdOnly -- Make sure random effects ID level","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assert properties of the rxUi models — assertRxUi","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/assertRxUi.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Assert properties of the rxUi models — assertRxUi","text":"","code":"# \\donttest{ one.cmt <- function() { ini({ tka <- 0.45; label(\"Ka\") tcl <- log(c(0, 2.7, 100)); label(\"Cl\") tv <- 3.45; label(\"V\") 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) }) } assertRxUi(one.cmt) #> #> # assertRxUi(rnorm) # will fail assertRxUiSingleEndpoint(one.cmt) #> #> # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"meant perform way quantile() can drop replacement code using quantile() using distributional assumptions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"","code":"binomProbs(x, ...) # S3 method for default binomProbs( x, probs = c(0.025, 0.05, 0.5, 0.95, 0.975), na.rm = FALSE, names = TRUE, onlyProbs = TRUE, n = 0L, m = 0L, pred = FALSE, piMethod = c(\"lim\"), M = 5e+05, tol = .Machine$double.eps^0.25, ciMethod = c(\"wilson\", \"wilsonCorrect\", \"agrestiCoull\", \"wald\", \"wc\", \"ac\"), ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"x numeric vector whose mean probability based confidence values wanted, NA NaN values allowed numeric vectors unless na.rm TRUE. ... Arguments passed default method, allows many different methods applied. probs numeric vector probabilities values interval 0 1, inclusive. 0, represents maximum observed, 1, represents maximum observed. 0.5 represents expected probability (mean). na.rm logical; true, NA NaN's removed x quantiles computed. names logical; true, result names attribute. onlyProbs logical; true, return probability based confidence interval/prediction interval estimates, otherwise return extra statistics. n integer/integerish; n used calculate prediction confidence interval. n=0 (default) use number non-NA observations. calculating prediction interval, represents number observations used input (\"true\") distribution. m integer. using prediction interval represents number samples observed future prediction interval. pred Use prediction interval instead confidence interval. default FALSE. piMethod gives prediction interval method (currently lim) Lu 2020 M number simulations run LIM PI. tol tolerance root finding LIM prediction interval ciMethod gives method calculating confidence interval. Can : \"argestiCoull\" \"ac\" -- Agresti-Coull method. 95\\ interval, method use concept \"adding 2 successes 2 failures,\" rather uses formulas explicitly described following link: https://en.wikipedia.org/wiki/Binomial_proportion_confidence_interval#Agresti-Coull_Interval. \"wilson\" -- Wilson Method \"wilsonCorrect\" \"wc\" -- Wilson method continuity correction \"wald\" -- Wald confidence interval standard z approximation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"default return probabilities names (named) points expected distribution located given sampling mean standard deviation. onlyProbs=FALSE prepend mean, variance, standard deviation, minimum, maximum number non-NA observations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"used confidence intervals rxode2 solved objects using confint(mean=\"binom\")","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"Newcombe, R. G. (1998). \"Two-sided confidence intervals single proportion: comparison seven methods\". Statistics Medicine. 17 (8): 857–872. doi:10.1002/(SICI)1097-0258(19980430)17:8<857::AID-SIM777>3.0.CO;2-E. PMID 9595616. Hezhi Lu, Hua Jin, new prediction interval binomial random variable based inferential models, Journal Statistical Planning Inference, Volume 205, 2020, Pages 156-174, ISSN 0378-3758, https://doi.org/10.1016/j.jspi.2019.07.001.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/binomProbs.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate expected confidence bands with binomial sampling distribution — binomProbs","text":"","code":"x<- rbinom(7001, p=0.375, size=1) binomProbs(x) #> 2.5% 5% 50% 95% 97.5% #> 0.3483595 0.3501427 0.3595201 0.3690059 0.3708347 # you can also use the prediction interval # \\donttest{ binomProbs(x, pred=TRUE) #> 2.5% 5% 50% 95% 97.5% #> 0.3438080 0.3462363 0.3595201 0.3729467 0.3755178 # } # Can get some extra statistics if you request onlyProbs=FALSE binomProbs(x, onlyProbs=FALSE) #> mean var sd n 2.5% 5% #> 0.3595201 0.2302654 0.4798598 7001.0000000 0.3483595 0.3501427 #> 50% 95% 97.5% #> 0.3595201 0.3690059 0.3708347 x[2] <- NA_real_ binomProbs(x, onlyProbs=FALSE) #> mean var sd n 2.5% 5% 50% 95% 97.5% #> NA NA NA NA NA NA NA NA NA binomProbs(x, na.rm=TRUE) #> 2.5% 5% 50% 95% 97.5% #> 0.3484097 0.3501931 0.3595714 0.3690582 0.3708872"},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the rxode2 coefficients — coef.rxode2","title":"Return the rxode2 coefficients — coef.rxode2","text":"returns parameters , state variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the rxode2 coefficients — coef.rxode2","text":"","code":"# S3 method for rxode2 coef(object, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the rxode2 coefficients — coef.rxode2","text":"object rxode2 object ... ignored arguments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the rxode2 coefficients — coef.rxode2","text":"rxCoef object following params list strings parameters rxode2 object state list strings names state rxode2 object. ini model specified default values parameters. rxode2 referring rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/coef.rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the rxode2 coefficients — coef.rxode2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":null,"dir":"Reference","previous_headings":"","what":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"returns new expression, old expression, new variable old variable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"","code":".assertRenameErrorModelLine(line, vars)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"line quoted call information line vars Variables contained within mdel","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"list(new, old, newChar, oldChar)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-assertRenameErrorModelLine.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This function asserts the requested rename makes sense — .assertRenameErrorModelLine","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":null,"dir":"Reference","previous_headings":"","what":"This copies the rxode2 UI object so it can be modified — .copyUi","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"copies rxode2 UI object can modified","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"","code":".copyUi(ui)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"ui Original UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"Copied UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-copyUi.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This copies the rxode2 UI object so it can be modified — .copyUi","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":null,"dir":"Reference","previous_headings":"","what":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"Handle single error normal t distributions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"","code":".handleSingleErrTypeNormOrTFoceiBase( env, pred1, errNum = 1L, rxPredLlik = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"env Environment parsed model pred1 data.frame current error errNum number error specification nlmixr2 model rxPredLlik boolean indicating log likelihood calculated non-normal distributions. default TRUE.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"list lines added. lines contain rx_yj_ integer corresponds transformation type. rx_lambda_ transformation lambda rx_low_ lower boundary transformation rx_hi_ upper boundary transformation rx_pred_f_ prediction function rx_pred_ transformed prediction function rx_r_ transformed variance","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-handleSingleErrTypeNormOrTFoceiBase.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Handle the single error for normal or t distributions — .handleSingleErrTypeNormOrTFoceiBase","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":null,"dir":"Reference","previous_headings":"","what":"Reorder rows in iniDf — .iniHandleAppend","title":"Reorder rows in iniDf — .iniHandleAppend","text":"Reorder rows iniDf","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Reorder rows in iniDf — .iniHandleAppend","text":"","code":".iniHandleAppend(expr, rxui, envir, append)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Reorder rows in iniDf — .iniHandleAppend","text":"expr Expression parsing rxui User interface function envir Environment parsing append Reorder theta parameters. NULL means change parameter order. parameter name (character string) means put new parameter named parameter. number less equal zero means put parameter beginning list. number greater last parameter number means put parameter end list.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleAppend.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Reorder rows in iniDf — .iniHandleAppend","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":null,"dir":"Reference","previous_headings":"","what":"Update the iniDf of a model — .iniHandleLine","title":"Update the iniDf of a model — .iniHandleLine","text":"Update iniDf model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Update the iniDf of a model — .iniHandleLine","text":"","code":".iniHandleLine(expr, rxui, envir = parent.frame(), append = NULL) .iniHandleFixOrUnfix(expr, rxui, envir = parent.frame(), append = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Update the iniDf of a model — .iniHandleLine","text":"expr Expression parsing rxui User interface function envir Environment parsing append Reorder theta parameters. NULL means change parameter order. parameter name (character string) means put new parameter named parameter. number less equal zero means put parameter beginning list. number greater last parameter number means put parameter end list.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Update the iniDf of a model — .iniHandleLine","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-iniHandleLine.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Update the iniDf of a model — .iniHandleLine","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":null,"dir":"Reference","previous_headings":"","what":"Check if a language object matches a template language object — .matchesLangTemplate","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"template == str2lang(\".\"), match anything. template == str2lang(\".name\"), match name. template == str2lang(\".call()\"), match call.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"","code":".matchesLangTemplate(x, template)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"x object check template template object match","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"TRUE matches, FALSE, otherwise","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-matchesLangTemplate.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Check if a language object matches a template language object — .matchesLangTemplate","text":"","code":".matchesLangTemplate(str2lang(\"d/dt(foo)\"), str2lang(\"d/dt(.name)\")) #> [1] TRUE .matchesLangTemplate(str2lang(\"d/dt(foo)\"), str2lang(\"d/foo(.name)\")) #> [1] FALSE .matchesLangTemplate(str2lang(\"d/dt(foo)\"), str2lang(\"d/.\")) #> [1] TRUE"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal messaging statements — .minfo","title":"Internal messaging statements — .minfo","text":"Internal messaging statements","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal messaging statements — .minfo","text":"","code":".minfo(text, ..., .envir = parent.frame()) .malert(text, ..., .envir = parent.frame()) .mwarn(text, ..., .envir = parent.frame()) .msuccess(text, ..., .envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal messaging statements — .minfo","text":"text Text ... arguments .envir Environment evaluate ","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal messaging statements — .minfo","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-minfo.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal messaging statements — .minfo","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":null,"dir":"Reference","previous_headings":"","what":"Handle model lines — .modelHandleModelLines","title":"Handle model lines — .modelHandleModelLines","text":"Handle model lines","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Handle model lines — .modelHandleModelLines","text":"","code":".modelHandleModelLines( modelLines, rxui, modifyIni = FALSE, append = FALSE, auto = TRUE, cov = NULL, envir )"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Handle model lines — .modelHandleModelLines","text":"modelLines model lines considered rxui rxode2 UI object modifyIni ini() considered append boolean determine lines appended piping. possible values : TRUE lines appended model instead replaced FALSE lines replaced model (default) NA lines pre-pended model instead replaced lhs expression, append lines last observed line expression lhs auto boolean tells piping automatically selects parameters characterized population parameter, subject variability, covariate. TRUE automatic selection occurs. FALSE automatic selection turned everything added covariate (can promoted parameter ini statement). default TRUE, can changed options(rxode2.autoVarPiping=FALSE). cov character vector variables assumed covariates. override automatic promotion population parameter estimate (eta) envir Environment evaluation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Handle model lines — .modelHandleModelLines","text":"New UI","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-modelHandleModelLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Handle model lines — .modelHandleModelLines","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":null,"dir":"Reference","previous_headings":"","what":"Returns quoted call information — .quoteCallInfoLines","title":"Returns quoted call information — .quoteCallInfoLines","text":"Returns quoted call information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Returns quoted call information — .quoteCallInfoLines","text":"","code":".quoteCallInfoLines(callInfo, envir = parent.frame(), iniDf = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Returns quoted call information — .quoteCallInfoLines","text":"callInfo Call information envir Environment evaluation (needed) iniDf parent model iniDf piping ini block (NULL otherwise)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Returns quoted call information — .quoteCallInfoLines","text":"Quote call information. name=expression, change name<-expression quoted call list. expressions within brackets ie {}, unlist brackets called one single sequence.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-quoteCallInfoLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Returns quoted call information — .quoteCallInfoLines","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":null,"dir":"Reference","previous_headings":"","what":"Print out a table in the documentation — .rxDocTable","title":"Print out a table in the documentation — .rxDocTable","text":"Print table documentation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print out a table in the documentation — .rxDocTable","text":"","code":".rxDocTable(table, caption = \"none\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print out a table in the documentation — .rxDocTable","text":"table data frame caption character vector representing caption latex table","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print out a table in the documentation — .rxDocTable","text":"based knitr context: output kableExtra::kbl latex output output DT::datatable html output otherwise output knitr::kable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print out a table in the documentation — .rxDocTable","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxDocTable.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Print out a table in the documentation — .rxDocTable","text":"","code":".rxDocTable(rxReservedKeywords) #> #> #> |Reserved Name |Meaning |Alias | #> |:--------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------| #> |time |solver time |t | #> |podo |In Transit compartment models, last dose amount | | #> |tlast |Time of Last dose | | #> |M_E |Exp(1) | | #> |M_LOG2E |log2(e) | | #> |M_LOG10E |log10(e) | | #> |M_LN2 |log(2) | | #> |M_LN10 |log(10) | | #> |M_PI |pi | | #> |M_PI_2 |pi/2 | | #> |M_PI_4 |pi/4 | | #> |M_1_PI |1/pi | | #> |M_2_PI |2/pi | | #> |M_2_SQRTPI |2/sqrt(pi) | | #> |M_SQRT2 |sqrt(2) | | #> |M_SQRT1_2 |1/sqrt(2) | | #> |M_SQRT_3 |sqrt(3) | | #> |M_SQRT_32 |sqrt(32) | | #> |M_LOG10_2 |Log10(2) | | #> |M_2PI |2*pi | | #> |M_SQRT_PI |sqrt(pi) | | #> |M_1_SQRT_2PI |1/(sqrt(2*pi)) | | #> |M_LN_SQRT_PI |log(sqrt(pi)) | | #> |M_LN_SQRT_2PI |log(sqrt(2*pi)) | | #> |M_LN_SQRT_PId2 |log(sqrt(pi/2)) | | #> |pi |pi | | #> |NA |R's NA value | | #> |NaN |Not a Number Value | | #> |Inf |Infinite Value | | #> |newind |1: First record of individual; 2: Subsequent record of individual |NEWIND | #> |rxFlag |Flag for what part of the rxode2 model is being run; 1: ddt; 2: jac; 3: ini; 4: F; 5: lag; 6: rate; 7: dur; 8: mtime; 9: matrix exponential; 10: inductive linearization; 11: lhs | |"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"Get upper boundary condition transformation ","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"","code":".rxGetHiBoundaryPred1AndIni(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"env Environment parsed model pred1 data.frame current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"Upper Boundary","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetHiBoundaryPred1AndIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the upper boundary condition when the transformation it — .rxGetHiBoundaryPred1AndIni","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"Get lambda value based pred information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"","code":".rxGetLambdaFromPred1AndIni(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"env Environment environment pred1 Single error data frame","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"Lambda expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLambdaFromPred1AndIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the lambda value based on the pred information — .rxGetLambdaFromPred1AndIni","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"Get lower boundary condition transformation requires ","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"","code":".rxGetLowBoundaryPred1AndIni(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"env Environment parsed model pred1 data.frame current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"Lower Boundary","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetLowBoundaryPred1AndIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the lower boundary condition when the transformation requires it — .rxGetLowBoundaryPred1AndIni","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the Observation transformation — .rxGetPredictionDVTransform","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"Get Observation transformation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"","code":".rxGetPredictionDVTransform(env, pred1, yj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"env Environment parsed model pred1 data.frame current error yj transformation number current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"transformation expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionDVTransform.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the Observation transformation — .rxGetPredictionDVTransform","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the prediction name — .rxGetPredictionF","title":"Get the prediction name — .rxGetPredictionF","text":"Get prediction name","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the prediction name — .rxGetPredictionF","text":"","code":".rxGetPredictionF(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the prediction name — .rxGetPredictionF","text":"env Environment parsed model pred1 data.frame current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the prediction name — .rxGetPredictionF","text":"prediction symbol","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionF.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the prediction name — .rxGetPredictionF","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the prediction transformation — .rxGetPredictionFTransform","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"Get prediction transformation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"","code":".rxGetPredictionFTransform(env, pred1, yj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"env Environment parsed model pred1 data.frame current error yj transformation number current error","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"transformation expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetPredictionFTransform.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the prediction transformation — .rxGetPredictionFTransform","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":null,"dir":"Reference","previous_headings":"","what":"Get Variance for error type — .rxGetVarianceForErrorType","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"Get Variance error type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"","code":".rxGetVarianceForErrorType(env, pred1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"env Environment pred1 Pred one end-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"Variance error type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxGetVarianceForErrorType.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get Variance for error type — .rxGetVarianceForErrorType","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"Internal function tell linCmt() model variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"","code":".rxIsLinCmt()"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"0 1","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxIsLinCmt.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal function to tell if the linCmt() is the model variables — .rxIsLinCmt","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function for calculating the Jacobian — .rxJacobian","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"Internal function calculating Jacobian","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"","code":".rxJacobian(model, vars = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"model symengine environment vars Variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"Jacobian information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxJacobian.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal function for calculating the Jacobian — .rxJacobian","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"Internal function generate model variables linCmt() model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"","code":".rxLinCmtGen(lenState, vars)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"lenState Length state vars Variables model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"Model variables expanded linCmt model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxLinCmtGen.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal function to generate the model variables for a linCmt() model — .rxLinCmtGen","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal Pruning function — .rxPrune","title":"Internal Pruning function — .rxPrune","text":"Internal Pruning function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal Pruning function — .rxPrune","text":"","code":".rxPrune(x, envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Internal Pruning function — .rxPrune","text":"x List quoted lines envir Environment information stored","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal Pruning function — .rxPrune","text":"Pruned model code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxPrune.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Internal Pruning function — .rxPrune","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":null,"dir":"Reference","previous_headings":"","what":"Sensitivity for model — .rxSens","title":"Sensitivity for model — .rxSens","text":"Sensitivity model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Sensitivity for model — .rxSens","text":"","code":".rxSens(model, vars, vars2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Sensitivity for model — .rxSens","text":"model symengine model environment vars Variables single sensitivity vars2 present, 2 parameter sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Sensitivity for model — .rxSens","text":"Sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxSens.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Sensitivity for model — .rxSens","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":null,"dir":"Reference","previous_headings":"","what":"Temporarily set options then restore them while running code — .rxWithOptions","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"Temporarily set options restore running code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"","code":".rxWithOptions(ops, code)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"ops list options temporarily set code code code run sink","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"value code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithOptions.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Temporarily set options then restore them while running code — .rxWithOptions","text":"","code":".rxWithOptions(list(digits = 21), { print(pi) }) #> [1] 3.141592653589793116 print(pi) #> [1] 3.141593"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":null,"dir":"Reference","previous_headings":"","what":"With one sink, then release — .rxWithSink","title":"With one sink, then release — .rxWithSink","text":"one sink, release","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"With one sink, then release — .rxWithSink","text":"","code":".rxWithSink(file, code) .rxWithSinkBoth(file, code)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"With one sink, then release — .rxWithSink","text":"file path file sink running code code code run sink","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"With one sink, then release — .rxWithSink","text":"return results code section","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"With one sink, then release — .rxWithSink","text":".rxWithSink captures output cat .rxWithSinkBoth captures output cat message","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"With one sink, then release — .rxWithSink","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithSink.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"With one sink, then release — .rxWithSink","text":"","code":"t <- tempfile() .rxWithSink(t, cat(\"message\\n\")) cat(\"cat2\\n\") # now you can see the cat2 #> cat2 lines <- readLines(t) unlink(t)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":null,"dir":"Reference","previous_headings":"","what":"Temporarily set options then restore them while running code — .rxWithWd","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"Temporarily set options restore running code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"","code":".rxWithWd(wd, code)"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"wd working directory temporarily set system evaluating code code code run sink","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"value code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-rxWithWd.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Temporarily set options then restore them while running code — .rxWithWd","text":"","code":".rxWithWd(tempdir(), { getwd() }) #> [1] \"/tmp/RtmpG6A6n6\" getwd() #> [1] \"/home/runner/work/rxode2/rxode2/docs/reference\""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-useUtf.html","id":null,"dir":"Reference","previous_headings":"","what":"Internal function to figure out if this session supports Unicode — .useUtf","title":"Internal function to figure out if this session supports Unicode — .useUtf","text":"Internal function figure session supports Unicode","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-useUtf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Internal function to figure out if this session supports Unicode — .useUtf","text":"","code":".useUtf()"},{"path":"https://nlmixr2.github.io/rxode2/reference/dot-useUtf.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Internal function to figure out if this session supports Unicode — .useUtf","text":"boolean indicating session supports Unicode","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":null,"dir":"Reference","previous_headings":"","what":"Error function — erf","title":"Error function — erf","text":"Error function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Error function — erf","text":"","code":"erf(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Error function — erf","text":"x vector real values","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Error function — erf","text":"erf x","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Error function — erf","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/erf.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Error function — erf","text":"","code":"erf(1.0) #> [1] 0.8427008"},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":null,"dir":"Reference","previous_headings":"","what":"Event translation for rxode2 — etTrans","title":"Event translation for rxode2 — etTrans","text":"Event translation rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Event translation for rxode2 — etTrans","text":"","code":"etTrans( inData, obj, addCmt = FALSE, dropUnits = FALSE, allTimeVar = FALSE, keepDosingOnly = FALSE, combineDvid = NULL, keep = character(0), addlKeepsCov = FALSE, addlDropSs = TRUE, ssAtDoseTime = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Event translation for rxode2 — etTrans","text":"inData Data frame translate obj Model translate data addCmt Add compartment data frame (default FALSE). dropUnits Boolean drop units (default FALSE). allTimeVar Treat covariates time-varying keepDosingOnly keep individuals dosing records trailing dosing records last observation. combineDvid boolean indicating rxode2 use DVID observation records change cmt value; Useful multiple-endpoint nlmixr models. default determined option(\"rxode2.combine.dvid\") option set, TRUE. typically affect rxode2 simulations. keep named vector items want keep final rxode2 dataset. added rxode2 event records (seen), last observation carried forward used. addlKeepsCov determines additional dosing items repeats dose (FALSE) keeps covariates record dose (TRUE) addlDropSs steady state doses addl specification steady state flag dropped repeated doses (TRUE) retained (FALSE) ssAtDoseTime Boolean TRUE back calculates steady concentration actual time dose, otherwise FALSE doses shifted","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/etTrans.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Event translation for rxode2 — etTrans","text":"Object solving rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":null,"dir":"Reference","previous_headings":"","what":"Find the assignments in R expression — findLhs","title":"Find the assignments in R expression — findLhs","text":"Find assignments R expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Find the assignments in R expression — findLhs","text":"","code":"findLhs(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Find the assignments in R expression — findLhs","text":"x R expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Find the assignments in R expression — findLhs","text":"list assigned parameters","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/findLhs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Find the assignments in R expression — findLhs","text":"Hadley Wickham Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":null,"dir":"Reference","previous_headings":"","what":"Gammap: normalized lower incomplete gamma function — gammap","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"gamma_p boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"","code":"gammap(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"numeric '' parameter normalized lower incomplete gamma z numeric 'z' parameter normalized lower incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"gammap results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"gamma p function given : gammap = lowergamma(, z)/gamma()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammap.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Gammap: normalized lower incomplete gamma function — gammap","text":"","code":"gammap(1, 3) #> [1] 0.9502129 gammap(1:3, 3) #> [1] 0.9502129 0.8008517 0.5768099 gammap(1, 1:3) #> [1] 0.6321206 0.8646647 0.9502129"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":null,"dir":"Reference","previous_headings":"","what":"gammapDer: derivative of gammap — gammapDer","title":"gammapDer: derivative of gammap — gammapDer","text":"gamma_p_derivative boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"gammapDer: derivative of gammap — gammapDer","text":"","code":"gammapDer(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"gammapDer: derivative of gammap — gammapDer","text":"numeric '' parameter upper incomplete gamma z numeric 'z' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"gammapDer: derivative of gammap — gammapDer","text":"lowergamma results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"gammapDer: derivative of gammap — gammapDer","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapDer.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"gammapDer: derivative of gammap — gammapDer","text":"","code":"gammapDer(1:3, 3) #> [1] 0.04978707 0.14936121 0.22404181 gammapDer(1, 1:3) #> [1] 0.36787944 0.13533528 0.04978707"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":null,"dir":"Reference","previous_headings":"","what":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"gammapInv gammapInva: Inverses normalized gammap function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"","code":"gammapInv(a, p) gammapInva(x, p)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"numeric '' parameter upper incomplete gamma p numeric 'p' parameter upper incomplete gamma x numeric 'x' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"inverse gammap results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"equation: p = gammap(, x) 'gammapInv' function returns value 'x' satisfies equation 'gammapInva' function returns value 'q' satisfies equation NOTE: gammapInva slow","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammapInv.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"gammapInv and gammapInva: Inverses of normalized gammap function — gammapInv","text":"","code":"gammapInv(1:3, 0.5) #> [1] 0.6931472 1.6783470 2.6740603 gammapInv(1, 1:3 / 3.1) #> [1] 0.3894648 1.0360919 3.4339872 gammapInv(1:3, 1:3 / 3.1) #> [1] 0.3894648 2.1988984 6.8872929 gammapInva(1:3, 1:3 / 3.1) #> [1] 0.3894648 2.1988984 6.8872929"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":null,"dir":"Reference","previous_headings":"","what":"Gammaq: normalized upper incomplete gamma function — gammaq","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"gamma_q boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"","code":"gammaq(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"numeric '' parameter normalized upper incomplete gamma z numeric 'z' parameter normalized upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"gammaq results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"gamma q function given : gammaq = uppergamma(, z)/gamma()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaq.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Gammaq: normalized upper incomplete gamma function — gammaq","text":"","code":"gammaq(1, 3) #> [1] 0.04978707 gammaq(1:3, 3) #> [1] 0.04978707 0.19914827 0.42319008 gammaq(1, 1:3) #> [1] 0.36787944 0.13533528 0.04978707"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":null,"dir":"Reference","previous_headings":"","what":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"gammaqInv gammaqInva: Inverses normalized gammaq function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"","code":"gammaqInv(a, q) gammaqInva(x, q)"},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"numeric '' parameter upper incomplete gamma q numeric 'q' parameter upper incomplete gamma x numeric 'x' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"inverse gammaq results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"equation: q = gammaq(, x) 'gammaqInv' function returns value 'x' satisfies equation 'gammaqInva' function returns value '' satisfies equation NOTE: gammaqInva slow","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/gammaqInv.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"gammaqInv and gammaqInva: Inverses of normalized gammaq function — gammaqInv","text":"","code":"gammaqInv(1:3, 0.5) #> [1] 0.6931472 1.6783470 2.6740603 gammaqInv(1, 1:3 / 3) #> [1] 1.0986123 0.4054651 0.0000000 gammaqInv(1:3, 1:3 / 3.1) #> [1] 1.131402 1.248533 0.684289 gammaqInva(1:3, 1:3 / 3.1) #> [1] 1.131402 1.248533 0.684289"},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":null,"dir":"Reference","previous_headings":"","what":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"Create complete shiny application exploring dosing regimens given (hardcoded) PK/PD model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"","code":"genShinyApp.template( appDir = \"shinyExample\", verbose = TRUE, ODE.config = list(ode = \"model\", params = c(KA = 0.294), inits = c(eff = 1), method = \"lsoda\", atol = 1e-08, rtol = 1e-06) ) write.template.server(appDir) write.template.ui(appDir, statevars)"},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"appDir string directory store shiny app, default \"shinyExample\". directory appDir created exist. verbose logical specifying whether write messages shiny app generated. Defaults TRUE. ODE.config model name compiled list parameters sent rxSolve(). statevars List statevars passed write.template.ui() function. usually called directly. PK/PD model defined using rxode2(), set parameters initial values defined. appropriate R scripts shiny's user interface ui.R server logic server.R created directory appDir. function evaluates following PK/PD model default: can changed ODE.config parameter. launch shiny app, simply issue runApp(appDir) R command.","code":"C2 = centr/V2; C3 = peri/V3; d/dt(depot) =-KA*depot; d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) = Q*C2 - Q*C3; d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff;"},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"None, functions used side effects.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"functions create simple, working example dosing regimen simulation web application. Users may want modify code experiment creating shiny applications specific rxode2 models.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/genShinyApp.template.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Generate an example (template) of a dosing regimen shiny app — genShinyApp.template","text":"","code":"# \\donttest{ # remove myapp when the example is complete on.exit(unlink(\"myapp\", recursive = TRUE, force = TRUE)) # create the shiny app example (template) genShinyApp.template(appDir = \"myapp\") #> #> Generating an example (template) for a dosing regimen shiny app #> #> Using the following PK/PD model: #> C2 = centr/V2; #> C3 = peri/V3; #> d/dt(depot) =-KA*depot; #> d/dt(centr) = KA*depot - CL*C2 - Q*C2 + Q*C3; #> d/dt(peri) = Q*C2 - Q*C3; #> d/dt(eff) = Kin - Kout*(1-C2/(EC50+C2))*eff; #> #> Translating the PK/PD ODE model into C, compiling, etc. #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> #> Parameters and their values: #> KA CL V2 Q V3 Kin Kout EC50 #> 0.294 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> #> Initial values in each compartment: #> depot centr pari eff #> 0 0 0 1 #> #> Warning: 2 arguments not used by format ' #> # #> # Dosing regimen template generated by rxode2::genShinyApp.template() #> # #> #> debug = TRUE #> #wd = sprintf(\"%%s/../\", getwd()) #> #setwd(wd) #> #> # Server inputs: Dose, dosing regimen, dosing frequency, #> # dosing cycle definition, number of dosing cycles #> #> library(shiny) #> library(rxode2) #> #> # read objects from \"rx_shiny_data.rda\" in the AppDir folder, #> # objects include, mod1, params, inits, method, atol, rtol.] #> #> load(\"./rx_shiny_data.rda\") #> if (!rxDynLoad(mod1)) mod1 <- rxode2(mod1, modName=\"mod1\") #> # Define server logic #> shinyServer(function(input, output) { #> #> get.cp <- reactive({ #> ds <- input$Dose #> reg <- switch(input$regimen, \"QD\"=1, \"BID\"=2) #> cyc <- switch(input$cycle, #> \"continous\"=c(7,0), #> \"1wkon 1wkoff\"=c(7,7), #> \"2wkon 1wkoff\"=c(14,7), #> \"3wkon 1wkoff\"=c(21,7) #> ) #> cyc <- [... truncated] #> Shiny files (ui.R, server.R) plus R data saved. #> #> To launch the Shiny app, type the following two R commands: #> #> \tlibrary(shiny) #> \trunApp(\"myapp\") #> # run the shiny app if (requireNamespace(\"shiny\", quietly=TRUE)) { library(shiny) # runApp(\"myapp\") # Won't launch in environments without browsers } # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"Get base simulation model simulation inis underlying rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"","code":"getBaseIniSimModel(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"obj Fit Object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"Simulation object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseIniSimModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the base simulation model for simulation with inis in the\nunderlying rxode2 model — getBaseIniSimModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the base simulation model for simulation — getBaseSimModel","title":"Get the base simulation model for simulation — getBaseSimModel","text":"Get base simulation model simulation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the base simulation model for simulation — getBaseSimModel","text":"","code":"getBaseSimModel(obj) # S3 method for default getBaseSimModel(obj) # S3 method for default getBaseIniSimModel(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the base simulation model for simulation — getBaseSimModel","text":"obj Fit Object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the base simulation model for simulation — getBaseSimModel","text":"Simulation object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSimModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the base simulation model for simulation — getBaseSimModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"Get symengine loading symengine rxS()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"","code":"getBaseSymengineModel(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"obj Object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"Simulation model ready load symeng","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getBaseSymengineModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the symengine for loading into symengine with rxS() — getBaseSymengineModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":null,"dir":"Reference","previous_headings":"","what":"Get/Set the number of threads that rxode2 uses — getRxThreads","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"Get/Set number threads rxode2 uses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"","code":"getRxThreads(verbose = FALSE) setRxThreads(threads = NULL, percent = NULL, throttle = NULL) rxCores(verbose = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"verbose Display value relevant OpenMP settings threads NULL (default) rereads environment variables. 0 means use logical CPUs available. Otherwise number >= 1 percent provided number 2 100; percentage logical CPUs use. default startup, 50 percent. throttle 2 (default) means , roughly speaking, single thread used number subjects solved <=2, 2 threads number points <=4, etc. throttle speed small data tasks (especially repeated many times) incurring overhead managing multiple threads. throttle also suppress sorting ID solved first (nsubject solved)*throttle <= nthreads. rxode2 sorting occurs minimize time waiting another thread finish. last item solved long solving time, solving wait last costly solving occur. items likely take time solved first, wait less likely impact overall solving time. rxode2 IDs sorted individual number solving points (largest first). also C interface allows IDs resorted total time spent solving equation. allows packages like nlmixr sort solving time needed. Overall number threads throttled (restricted) small tasks sorting IDs suppressed.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/getRxThreads.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get/Set the number of threads that rxode2 uses — getRxThreads","text":"number threads rxode2 uses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":null,"dir":"Reference","previous_headings":"","what":"Empty Guide — guide_none","title":"Empty Guide — guide_none","text":"empty guide draws nothing; included rxode2 compatibility ggplot 3.2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Empty Guide — guide_none","text":"","code":"guide_none(title = waiver(), position = waiver())"},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Empty Guide — guide_none","text":"title character string expression indicating title guide. NULL, title shown. default (waiver()), name scale object name specified labs() used title. position guide drawn: one top, bottom, left, right.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/guide_none.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Empty Guide — guide_none","text":"nothing, simply included compatible ggplot 3.2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign the ini block in the rxode2 related object — ini<-","title":"Assign the ini block in the rxode2 related object — ini<-","text":"Assign ini block rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign the ini block in the rxode2 related object — ini<-","text":"","code":"ini(x, envir = environment(x)) <- value"},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign the ini block in the rxode2 related object — ini<-","text":"x rxode2 related object envir Environment assignment occurs value Value object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign the ini block in the rxode2 related object — ini<-","text":"rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini-set.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign the ini block in the rxode2 related object — ini<-","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":null,"dir":"Reference","previous_headings":"","what":"Ini block for rxode2/nlmixr models — ini.rxUi","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"ini block controls initial conditions 'theta' (fixed effects), 'omega' (random effects), 'sigma' (residual error) elements model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"","code":"# S3 method for rxUi ini(x, ..., envir = parent.frame(), append = NULL) # S3 method for default ini(x, ..., envir = parent.frame(), append = NULL) ini(x, ..., envir = parent.frame(), append = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"x expression ... expressions ini() function envir environment unevaluated model expressions evaluated. May also NULL, list, data frame, pairlist integer specified sys.call. append Reorder theta parameters. NULL means change parameter order. parameter name (character string) means put new parameter named parameter. number less equal zero means put parameter beginning list. number greater last parameter number means put parameter end list.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"ini block","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"ini() function used two different ways. main way used set initial conditions associated attributes (described ) model. way used updating initial conditions model, often using pipe operator. 'theta' 'sigma' can set using either <- = tvCL <- 1 equivalently tvCL = 1. 'omega' can set ~ etaCL ~ 0.1. Parameters can named unnamed (though named parameters preferred). named parameter set using name left assignment unnamed parameters set without assignment operator. tvCL <- 1 set named parameter tvCL 1. Unnamed parameters set using just value, 1. estimation methods, lower upper bounds can set 'theta' 'sigma' values. set lower /upper bound, use vector values. vector c(lower, estimate, upper). vector may given just estimate (estimate), lower bound estimate (c(lower, estimate)), three (c(lower, estimate, upper)). set estimate upper bound without lower bound, set lower bound -Inf, c(-Inf, estimate, upper). estimation method support bounds, bounds ignored warning. 'omega' values can set single value values lower-triangular matrix. values may set either variance-covariance matrix (default) correlation matrix -diagonals standard deviations diagonals. Names may set left side ~. set variance-covariance matrix variance values 2 3 covariance -2.5 use ~c(2, 2.5, 3). set matrix names iivKa iivCL, use iivKa + iivCL~c(2, 2.5, 3). set correlation matrix standard deviations diagonal, use cor() like iivKa + iivCL~cor(2, -0.5, 3). Values may fixed (therefore estimated) using either name fixed end assignment calling fixed() function value fix. 'theta' 'sigma', either estimate full definition (including lower upper bounds) may included fixed setting. example, following effectively equivalent set 'theta' 'sigma' fixed value (lower upper bounds ignored fixed value): tvCL <- fixed(1), tvCL <- fixed(0, 1), tvCL <- fixed(0, 1, 2), tvCL <- c(0, fixed(1), 2), tvCL <- c(0, 1, fixed). 'omega' assignment, full block none block must set fixed. Examples setting 'omega' value fixed : iivKa~fixed(1), iivKa + iivCL~fixed(1, 2, 3), iivKa + iivCL~c(1, 2, 3, fixed). Anywhere fixed used, FIX, FIXED, fix may used equivalently. value, standard mathematical operators functions may used define value. example, log(2) 24*30 may used define value anywhere number can used (e.g. lower bound, estimate, upper bound, variance, etc.). Values may labeled using label() function assignment. Labels used make reporting easier giving human-readable description parameter, labels effect estimation. typical way set label parameter tvCL label \"Typical Value Clearance (L/hr)\" tvCL <- 1; label(\"Typical Value Clearance (L/hr)\"). rxode2/nlmixr2 attempt determine back-transformations user. example, CL <- exp(tvCL) detect tvCL must back-transformed exp() easier interpretation. want control back-transformation, can specify back-transformation using backTransform() assignment. example, set back-transformation exp(), can use tvCL <- 1; backTransform(exp()).","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/ini.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Ini block for rxode2/nlmixr models — ini.rxUi","text":"","code":"# Set the ini() block in a model one.compartment <- function() { ini({ tka <- log(1.57); label(\"Ka\") tcl <- log(2.72); label(\"Cl\") tv <- log(31.5); label(\"V\") 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } # Use piping to update initial conditions one.compartment %>% ini(tka <- log(2)) #> #> #> ℹ change initial estimate of `tka` to `0.693147180559945` #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.6931472 1.0006319 3.4499875 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.693147180559945 #> label(\"Ka\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> } one.compartment %>% ini(tka <- label(\"Absorption rate, Ka (1/hr)\")) #> #> #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.4510756 1.0006319 3.4499875 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.451075619360217 #> label(\"Absorption rate, Ka (1/hr)\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> } # Move the tka parameter to be just below the tv parameter (affects parameter # summary table, only) one.compartment %>% ini(tka <- label(\"Absorption rate, Ka (1/hr)\"), append = \"tv\") #> #> #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tcl tv tka add.sd #> 1.0006319 3.4499875 0.4510756 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> tka <- 0.451075619360217 #> label(\"Absorption rate, Ka (1/hr)\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> } # When programming with rxode2/nlmixr2, it may be easier to pass strings in # to modify the ini one.compartment %>% ini(\"tka <- log(2)\") #> #> #> ℹ change initial estimate of `tka` to `0.693147180559945` #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.6931472 1.0006319 3.4499875 0.7000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.693147180559945 #> label(\"Ka\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- c(0, 0.7) #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Check to see if this is an rxSolve object. — is.rxSolve","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"Check see rxSolve object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"","code":"is.rxSolve(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"x object check see rxSolve rxSolve object expired strip rxSolve information.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"boolean indicating rxSolve object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/is.rxSolve.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Check to see if this is an rxSolve object. — is.rxSolve","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"Calculate log likelihood binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"","code":"llikBeta(x, shape1, shape2, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"x Observation shape1, shape2 non-negative parameters Beta distribution. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"data frame fx log pdf value dShape1 dShape2 derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"rxode2() model, can use llikBeta() use arguments. can also get derivative shape1 shape2 llikBetaDshape1() llikBetaDshape2().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBeta.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBeta","text":"","code":"# \\donttest{ x <- seq(1e-4, 1 - 1e-4, length.out = 21) llikBeta(x, 0.5, 0.5) #> fx dShape1 dShape2 #> 1 3.46049030 -7.82404601 1.38619436 #> 2 0.37793108 -1.60763953 1.33490633 #> 3 0.05888752 -0.91549105 1.28084495 #> 4 -0.11510253 -0.51035907 1.22369308 #> 5 -0.22855163 -0.22284360 1.16307581 #> 6 -0.30780832 0.00019998 1.09854562 #> 7 -0.36444410 0.18245488 1.02956227 #> 8 -0.40444714 0.33655795 0.95546529 #> 9 -0.43118004 0.47005363 0.87543540 #> 10 -0.44655956 0.58780889 0.78843918 #> 11 -0.45158271 0.69314718 0.69314718 #> 12 -0.44655956 0.78843918 0.58780889 #> 13 -0.43118004 0.87543540 0.47005363 #> 14 -0.40444714 0.95546529 0.33655795 #> 15 -0.36444410 1.02956227 0.18245488 #> 16 -0.30780832 1.09854562 0.00019998 #> 17 -0.22855163 1.16307581 -0.22284360 #> 18 -0.11510253 1.22369308 -0.51035907 #> 19 0.05888752 1.28084495 -0.91549105 #> 20 0.37793108 1.33490633 -1.60763953 #> 21 3.46049030 1.38619436 -7.82404601 llikBeta(x, 1, 3, TRUE) #> x shape1 shape2 fx dShape1 dShape2 #> 1 0.00010 1 3 1.09841228 -7.37700704 0.33323333 #> 2 0.05009 1 3 0.99583622 -1.16060056 0.28194530 #> 3 0.10008 1 3 0.88771347 -0.46845208 0.22788392 #> 4 0.15007 1 3 0.77340972 -0.06332009 0.17073205 #> 5 0.20006 1 3 0.65217518 0.22419538 0.11011478 #> 6 0.25005 1 3 0.52311481 0.44723895 0.04558459 #> 7 0.30004 1 3 0.38514811 0.62949385 -0.02339876 #> 8 0.35003 1 3 0.23695415 0.78359692 -0.09749574 #> 9 0.40002 1 3 0.07689437 0.91709260 -0.17752562 #> 10 0.45001 1 3 -0.09709808 1.03484786 -0.26452185 #> 11 0.50000 1 3 -0.28768207 1.14018615 -0.35981385 #> 12 0.54999 1 3 -0.49835866 1.23547815 -0.46515214 #> 13 0.59998 1 3 -0.73386918 1.32247438 -0.58290740 #> 14 0.64997 1 3 -1.00086054 1.40250426 -0.71640308 #> 15 0.69996 1 3 -1.30906667 1.47660124 -0.87050615 #> 16 0.74995 1 3 -1.67357647 1.54558459 -1.05276105 #> 17 0.79994 1 3 -2.11966363 1.61011478 -1.27580462 #> 18 0.84993 1 3 -2.69469457 1.67073205 -1.56332009 #> 19 0.89992 1 3 -3.50495854 1.72788392 -1.96845208 #> 20 0.94991 1 3 -4.88925549 1.78194530 -2.66060056 #> 21 0.99990 1 3 -17.32206846 1.83323333 -8.87700704 et <- et(seq(1e-4, 1-1e-4, length.out=21)) et$shape1 <- 0.5 et$shape2 <- 1.5 model <- function() { model({ fx <- llikBeta(time, shape1, shape2) dShape1 <- llikBetaDshape1(time, shape1, shape2) dShape2 <- llikBetaDshape2(time, shape1, shape2) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 21 × 6 #> time fx dShape1 dShape2 shape1 shape2 #> #> 1 0.0001 4.15 -6.82 0.386 0.5 1.5 #> 2 0.0501 1.02 -0.608 0.335 0.5 1.5 #> 3 0.100 0.647 0.0845 0.281 0.5 1.5 #> 4 0.150 0.415 0.490 0.224 0.5 1.5 #> 5 0.200 0.241 0.777 0.163 0.5 1.5 #> 6 0.250 0.0976 1.00 0.0985 0.5 1.5 #> # ℹ 15 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"Calculate log likelihood binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"","code":"llikBinom(x, size, prob, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"x Number successes size Size trial prob probability success full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"data frame fx pdf value dProb derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"rxode2() model, can use llikBinom() use arguments. can also get derivative prob llikBinomDprob()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikBinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the binomial function (and its derivatives) — llikBinom","text":"","code":"# \\donttest{ llikBinom(46:54, 100, 0.5) #> fx dProb #> 1 -2.848030 -16 #> 2 -2.709193 -12 #> 3 -2.610102 -8 #> 4 -2.550679 -4 #> 5 -2.530876 0 #> 6 -2.550679 4 #> 7 -2.610102 8 #> 8 -2.709193 12 #> 9 -2.848030 16 llikBinom(46:54, 100, 0.5, TRUE) #> x size prob fx dProb #> 1 46 100 0.5 -2.848030 -16 #> 2 47 100 0.5 -2.709193 -12 #> 3 48 100 0.5 -2.610102 -8 #> 4 49 100 0.5 -2.550679 -4 #> 5 50 100 0.5 -2.530876 0 #> 6 51 100 0.5 -2.550679 4 #> 7 52 100 0.5 -2.610102 8 #> 8 53 100 0.5 -2.709193 12 #> 9 54 100 0.5 -2.848030 16 # In rxode2 you can use: et <- et(46:54) et$size <- 100 et$prob <-0.5 model <- function() { model({ fx <- llikBinom(time, size, prob) dProb <- llikBinomDprob(time, size, prob) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 9 × 5 #> time fx dProb size prob #> #> 1 46 -2.85 -16 100 0.5 #> 2 47 -2.71 -12 100 0.5 #> 3 48 -2.61 -8 100 0.5 #> 4 49 -2.55 -4 100 0.5 #> 5 50 -2.53 0 100 0.5 #> 6 51 -2.55 4 100 0.5 #> # ℹ 3 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"log likelihood Cauchy distribution derivatives (stan)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"","code":"llikCauchy(x, location = 0, scale = 1, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"x Observation location, scale location scale parameters. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"data frame fx log pdf value dLocation dScale derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"rxode2() model, can use llikCauchy() use arguments. can also get derivative location scale llikCauchyDlocation() llikCauchyDscale().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikCauchy.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood of Cauchy distribution and it's derivatives (from stan) — llikCauchy","text":"","code":"# \\donttest{ x <- seq(-3, 3, length.out = 21) llikCauchy(x, 0, 1) #> fx dLocation dScale #> 1 -3.447315 -0.6000000 0.8000000 #> 2 -3.259780 -0.6513872 0.7587455 #> 3 -3.055753 -0.7100592 0.7041420 #> 4 -2.832979 -0.7763401 0.6303142 #> 5 -2.589293 -0.8490566 0.5283019 #> 6 -2.323385 -0.9230769 0.3846154 #> 7 -2.036728 -0.9836066 0.1803279 #> 8 -1.738057 -0.9944751 -0.1049724 #> 9 -1.452215 -0.8823529 -0.4705882 #> 10 -1.230908 -0.5504587 -0.8348624 #> 11 -1.144730 0.0000000 -1.0000000 #> 12 -1.230908 0.5504587 -0.8348624 #> 13 -1.452215 0.8823529 -0.4705882 #> 14 -1.738057 0.9944751 -0.1049724 #> 15 -2.036728 0.9836066 0.1803279 #> 16 -2.323385 0.9230769 0.3846154 #> 17 -2.589293 0.8490566 0.5283019 #> 18 -2.832979 0.7763401 0.6303142 #> 19 -3.055753 0.7100592 0.7041420 #> 20 -3.259780 0.6513872 0.7587455 #> 21 -3.447315 0.6000000 0.8000000 llikCauchy(x, 3, 1, full=TRUE) #> x location scale fx dLocation dScale #> 1 -3.0 3 1 -4.755648 -0.3243243 0.9459459 #> 2 -2.7 3 1 -4.655977 -0.3404001 0.9402807 #> 3 -2.4 3 1 -4.551246 -0.3580902 0.9336870 #> 4 -2.1 3 1 -4.440937 -0.3776379 0.9259534 #> 5 -1.8 3 1 -4.324449 -0.3993344 0.9168053 #> 6 -1.5 3 1 -4.201087 -0.4235294 0.9058824 #> 7 -1.2 3 1 -4.070040 -0.4506438 0.8927039 #> 8 -0.9 3 1 -3.930358 -0.4811845 0.8766194 #> 9 -0.6 3 1 -3.780926 -0.5157593 0.8567335 #> 10 -0.3 3 1 -3.620428 -0.5550883 0.8317914 #> 11 0.0 3 1 -3.447315 -0.6000000 0.8000000 #> 12 0.3 3 1 -3.259780 -0.6513872 0.7587455 #> 13 0.6 3 1 -3.055753 -0.7100592 0.7041420 #> 14 0.9 3 1 -2.832979 -0.7763401 0.6303142 #> 15 1.2 3 1 -2.589293 -0.8490566 0.5283019 #> 16 1.5 3 1 -2.323385 -0.9230769 0.3846154 #> 17 1.8 3 1 -2.036728 -0.9836066 0.1803279 #> 18 2.1 3 1 -1.738057 -0.9944751 -0.1049724 #> 19 2.4 3 1 -1.452215 -0.8823529 -0.4705882 #> 20 2.7 3 1 -1.230908 -0.5504587 -0.8348624 #> 21 3.0 3 1 -1.144730 0.0000000 -1.0000000 et <- et(-3, 3, length.out=10) et$location <- 0 et$scale <- 1 model <- function() { model({ fx <- llikCauchy(time, location, scale) dLocation <- llikCauchyDlocation(time, location, scale) dScale <- llikCauchyDscale(time, location, scale) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> Warning: #> with negative times, compartments initialize at first negative observed time #> with positive times, compartments initialize at time zero #> use 'rxSetIni0(FALSE)' to initialize at first observed time #> this warning is displayed once per session #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dLocation dScale location scale #> #> 1 -3 -3.45 -0.6 0.8 0 1 #> 2 -2.33 -3.01 -0.724 0.690 0 1 #> 3 -1.67 -2.47 -0.882 0.471 0 1 #> 4 -1 -1.84 -1 0 0 1 #> 5 -0.333 -1.25 -0.6 -0.8 0 1 #> 6 0.333 -1.25 0.600 -0.8 0 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for chi-squared distribution — llikChisq","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"log likelihood derivatives chi-squared distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"","code":"llikChisq(x, df, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"x variable distributed chi-squared distribution df degrees freedom (non-negative, can non-integer). full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"data frame fx log pdf value dDf derivatives respect df parameter observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"rxode2() model, can use llikChisq() use x df arguments. can also get derivative df llikChisqDdf().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikChisq.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for chi-squared distribution — llikChisq","text":"","code":"# \\donttest{ llikChisq(1, df = 1:3, full=TRUE) #> x df fx dDf #> 1 1 1 -1.418939 0.63518142 #> 2 1 2 -1.193147 -0.05796576 #> 3 1 3 -1.418939 -0.36481858 llikChisq(1, df = 6:9) #> fx dDf #> 1 -3.272589 -0.8079658 #> 2 -4.126989 -0.8981519 #> 3 -5.064348 -0.9746324 #> 4 -6.072899 -1.0410091 et <- et(1:3) et$x <- 1 model <- function() { model({ fx <- llikChisq(x, time) dDf <- llikChisqDdf(x, time) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 3 × 4 #> time fx dDf x #> #> 1 1 -1.42 0.635 1 #> 2 2 -1.19 -0.0580 1 #> 3 3 -1.42 -0.365 1 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for exponential distribution — llikExp","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"log likelihood derivatives exponential distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"","code":"llikExp(x, rate, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"x variable distributed exponential distribution rate vector rates. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"data frame fx log pdf value dRate derivatives respect rate parameter observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"rxode2() model, can use llikExp() use x rate arguments. can also get derivative rate llikExpDrate().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikExp.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for exponential distribution — llikExp","text":"","code":"# \\donttest{ llikExp(1, 1:3) #> fx dRate #> 1 -1.000000 0.0000000 #> 2 -1.306853 -0.5000000 #> 3 -1.901388 -0.6666667 llikExp(1, 1:3, full=TRUE) #> x rate fx dRate #> 1 1 1 -1.000000 0.0000000 #> 2 1 2 -1.306853 -0.5000000 #> 3 1 3 -1.901388 -0.6666667 # You can use rxode2 for these too: et <- et(1:3) et$x <- 1 model <- function() { model({ fx <- llikExp(x, time) dRate <- llikExpDrate(x, time) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 3 × 4 #> time fx dRate x #> #> 1 1 -1 0 1 #> 2 2 -1.31 -0.5 1 #> 3 3 -1.90 -0.667 1 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for F distribution — llikF","title":"log likelihood and derivatives for F distribution — llikF","text":"log likelihood derivatives F distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for F distribution — llikF","text":"","code":"llikF(x, df1, df2, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for F distribution — llikF","text":"x variable distributed f distribution df1, df2 degrees freedom. Inf allowed. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for F distribution — llikF","text":"data frame fx log pdf value dDf1 dDf2 derivatives respect df1/df2 parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for F distribution — llikF","text":"rxode2() model, can use llikF() use x rate arguments. can also get derivative df1 df2 llikFDdf1() llikFDdf2().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for F distribution — llikF","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikF.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for F distribution — llikF","text":"","code":"# \\donttest{ x <- seq(0.001, 5, length.out = 100) llikF(x^2, 1, 5) #> fx dDf1 dDf2 #> 1 5.939135090 -5.769327755 0.0098138672 #> 2 1.996061339 -1.829698617 0.0098667834 #> 3 1.308027230 -1.151720596 0.0100203751 #> 4 0.898151814 -0.758467992 0.0102713542 #> 5 0.601410048 -0.484842238 0.0106143384 #> 6 0.365567397 -0.278507461 0.0110419510 #> 7 0.167275143 -0.115987118 0.0115449567 #> 8 -0.005928407 0.015333168 0.0121124287 #> 9 -0.161467803 0.123053577 0.0127319420 #> 10 -0.304110944 0.212138450 0.0133897879 #> 11 -0.437089645 0.286034532 0.0140712037 #> 12 -0.562684604 0.347253504 0.0147606108 #> 13 -0.682555520 0.397699568 0.0154418570 #> 14 -0.797939098 0.438864917 0.0160984557 #> 15 -0.909773848 0.471951996 0.0167138175 #> 16 -1.018782007 0.497952966 0.0172714700 #> 17 -1.125525217 0.517703019 0.0177552614 #> 18 -1.230443500 0.531917117 0.0181495454 #> 19 -1.333883243 0.541215913 0.0184393449 #> 20 -1.436117763 0.546144408 0.0186104926 #> 21 -1.537362702 0.547185650 0.0186497493 #> 22 -1.637787764 0.544770962 0.0185448973 #> 23 -1.737525805 0.539287723 0.0182848126 #> 24 -1.836679954 0.531085385 0.0178595139 #> 25 -1.935329266 0.520480216 0.0172601925 #> 26 -2.033533263 0.507759100 0.0164792220 #> 27 -2.131335592 0.493182655 0.0155101530 #> 28 -2.228767013 0.476987816 0.0143476919 #> 29 -2.325847849 0.459390036 0.0129876676 #> 30 -2.422589998 0.440585182 0.0114269877 #> 31 -2.518998603 0.420751193 0.0096635860 #> 32 -2.615073425 0.400049565 0.0076963639 #> 33 -2.710810000 0.378626673 0.0055251263 #> 34 -2.806200581 0.356614982 0.0031505147 #> 35 -2.901234940 0.334134152 0.0005739382 #> 36 -2.995901017 0.311292055 -0.0022024960 #> 37 -3.090185467 0.288185720 -0.0051760516 #> 38 -3.184074111 0.264902202 -0.0083434311 #> 39 -3.277552304 0.241519400 -0.0117008417 #> 40 -3.370605236 0.218106810 -0.0152440579 #> 41 -3.463218177 0.194726229 -0.0189684823 #> 42 -3.555376677 0.171432411 -0.0228692014 #> 43 -3.647066718 0.148273673 -0.0269410395 #> 44 -3.738274839 0.125292465 -0.0311786073 #> 45 -3.828988227 0.102525891 -0.0355763478 #> 46 -3.919194789 0.080006197 -0.0401285781 #> 47 -4.008883199 0.057761220 -0.0448295271 #> 48 -4.098042931 0.035814802 -0.0496733702 #> 49 -4.186664276 0.014187176 -0.0546542601 #> 50 -4.274738350 -0.007104684 -0.0597663547 #> 51 -4.362257091 -0.028046739 -0.0650038410 #> 52 -4.449213248 -0.048627585 -0.0703609577 #> 53 -4.535600366 -0.068838184 -0.0758320130 #> 54 -4.621412763 -0.088671614 -0.0814114015 #> 55 -4.706645505 -0.108122840 -0.0870936184 #> 56 -4.791294380 -0.127188508 -0.0928732707 #> 57 -4.875355868 -0.145866755 -0.0987450876 #> 58 -4.958827105 -0.164157039 -0.1047039284 #> 59 -5.041705859 -0.182059980 -0.1107447891 #> 60 -5.123990491 -0.199577223 -0.1168628074 #> 61 -5.205679923 -0.216711307 -0.1230532668 #> 62 -5.286773611 -0.233465550 -0.1293115988 #> 63 -5.367271506 -0.249843943 -0.1356333846 #> 64 -5.447174028 -0.265851061 -0.1420143563 #> 65 -5.526482033 -0.281491973 -0.1484503963 #> 66 -5.605196787 -0.296772169 -0.1549375368 #> 67 -5.683319932 -0.311697491 -0.1614719584 #> 68 -5.760853464 -0.326274073 -0.1680499885 #> 69 -5.837799706 -0.340508283 -0.1746680988 #> 70 -5.914161282 -0.354406680 -0.1813229026 #> 71 -5.989941093 -0.367975967 -0.1880111521 #> 72 -6.065142296 -0.381222952 -0.1947297352 #> 73 -6.139768282 -0.394154517 -0.2014756717 #> 74 -6.213822655 -0.406777586 -0.2082461105 #> 75 -6.287309215 -0.419099097 -0.2150383254 #> 76 -6.360231938 -0.431125983 -0.2218497115 #> 77 -6.432594959 -0.442865149 -0.2286777813 #> 78 -6.504402560 -0.454323453 -0.2355201612 #> 79 -6.575659147 -0.465507693 -0.2423745875 #> 80 -6.646369247 -0.476424593 -0.2492389023 #> 81 -6.716537483 -0.487080791 -0.2561110501 #> 82 -6.786168572 -0.497482830 -0.2629890742 #> 83 -6.855267306 -0.507637151 -0.2698711122 #> 84 -6.923838547 -0.517550083 -0.2767553934 #> 85 -6.991887212 -0.527227840 -0.2836402345 #> 86 -7.059418267 -0.536676516 -0.2905240366 #> 87 -7.126436719 -0.545902081 -0.2974052813 #> 88 -7.192947604 -0.554910380 -0.3042825282 #> 89 -7.258955983 -0.563707126 -0.3111544109 #> 90 -7.324466935 -0.572297907 -0.3180196342 #> 91 -7.389485548 -0.580688177 -0.3248769714 #> 92 -7.454016916 -0.588883261 -0.3317252608 #> 93 -7.518066132 -0.596888352 -0.3385634034 #> 94 -7.581638284 -0.604708517 -0.3453903600 #> 95 -7.644738447 -0.612348689 -0.3522051484 #> 96 -7.707371685 -0.619813679 -0.3590068413 #> 97 -7.769543041 -0.627108167 -0.3657945633 #> 98 -7.831257537 -0.634236713 -0.3725674892 #> 99 -7.892520171 -0.641203751 -0.3793248413 #> 100 -7.953335909 -0.648013598 -0.3860658874 model <- function(){ model({ fx <- llikF(time, df1, df2) dMean <- llikFDdf1(time, df1, df2) dSd <- llikFDdf2(time, df1, df2) }) } et <- et(x) et$df1 <- 1 et$df2 <- 5 rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 100 × 6 #> time fx dMean dSd df1 df2 #> #> 1 0.001 2.48 -2.32 0.00983 1 5 #> 2 0.0515 0.484 -0.380 0.0108 1 5 #> 3 0.102 0.112 -0.0731 0.0117 1 5 #> 4 0.152 -0.118 0.0943 0.0125 1 5 #> 5 0.203 -0.291 0.204 0.0133 1 5 #> 6 0.253 -0.431 0.283 0.0140 1 5 #> # ℹ 94 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Gamma distribution — llikGamma","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"log likelihood derivatives Gamma distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"","code":"llikGamma(x, shape, rate, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"x variable distributed gamma distribution shape distribution's shape parameter. Must positive. rate distribution's rate parameters. Must positive. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"rxode2() model, can use llikGamma() use x rate arguments. can also get derivative shape rate llikGammaDshape() llikGammaDrate().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Gamma distribution — llikGamma","text":"","code":"# \\donttest{ llikGamma(1, 1, 10) #> fx dShape dRate #> 1 -7.697415 2.879801 -0.9 # You can use this in `rxode2` too: et <- et(seq(0.001, 1, length.out=10)) et$shape <- 1 et$rate <- 10 model <- function() { model({ fx <- llikGamma(time, shape, rate) dShape<- llikGammaDshape(time, shape, rate) dRate <- llikGammaDrate(time, shape, rate) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dShape dRate rate shape #> #> 1 0.001 2.29 -4.03 0.099 10 1 #> 2 0.112 1.18 0.691 -0.012 10 1 #> 3 0.223 0.0726 1.38 -0.123 10 1 #> 4 0.334 -1.04 1.78 -0.234 10 1 #> 5 0.445 -2.15 2.07 -0.345 10 1 #> 6 0.556 -3.26 2.29 -0.456 10 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Geom distribution — llikGeom","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"log likelihood derivatives Geom distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"","code":"llikGeom(x, prob, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"x variable distributed geom distribution prob probability success trial. 0 < prob <= 1. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"rxode2() model, can use llikGeom() use x rate arguments. can also get derivative prob llikGeomDprob().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikGeom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Geom distribution — llikGeom","text":"","code":"# \\donttest{ llikGeom(1:10, 0.2) #> fx dProb #> 1 -1.832581 3.75 #> 2 -2.055725 2.50 #> 3 -2.278869 1.25 #> 4 -2.502012 0.00 #> 5 -2.725156 -1.25 #> 6 -2.948299 -2.50 #> 7 -3.171443 -3.75 #> 8 -3.394586 -5.00 #> 9 -3.617730 -6.25 #> 10 -3.840873 -7.50 et <- et(1:10) et$prob <- 0.2 model <- function() { model({ fx <- llikGeom(time, prob) dProb <- llikGeomDprob(time, prob) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time fx dProb prob #> #> 1 1 -1.83 3.75 0.2 #> 2 2 -2.06 2.5 0.2 #> 3 3 -2.28 1.25 0.2 #> 4 4 -2.50 0 0.2 #> 5 5 -2.73 -1.25 0.2 #> 6 6 -2.95 -2.5 0.2 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"Calculate log likelihood negative binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"","code":"llikNbinom(x, size, prob, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"x Number successes size Size trial prob probability success full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"data frame fx pdf value dProb derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"rxode2() model, can use llikNbinom() use arguments. can also get derivative prob llikNbinomDprob()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinom","text":"","code":"# \\donttest{ llikNbinom(46:54, 100, 0.5) #> fx dProb #> 1 -13.25200 108 #> 2 -12.81168 106 #> 3 -12.38560 104 #> 4 -11.97335 102 #> 5 -11.57458 100 #> 6 -11.18892 98 #> 7 -10.81603 96 #> 8 -10.45559 94 #> 9 -10.10728 92 llikNbinom(46:54, 100, 0.5, TRUE) #> x size prob fx dProb #> 1 46 100 0.5 -13.25200 108 #> 2 47 100 0.5 -12.81168 106 #> 3 48 100 0.5 -12.38560 104 #> 4 49 100 0.5 -11.97335 102 #> 5 50 100 0.5 -11.57458 100 #> 6 51 100 0.5 -11.18892 98 #> 7 52 100 0.5 -10.81603 96 #> 8 53 100 0.5 -10.45559 94 #> 9 54 100 0.5 -10.10728 92 # In rxode2 you can use: et <- et(46:54) et$size <- 100 et$prob <-0.5 model <- function() { model({ fx <- llikNbinom(time, size, prob) dProb <- llikNbinomDprob(time, size, prob) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 9 × 5 #> time fx dProb size prob #> #> 1 46 -13.3 108 100 0.5 #> 2 47 -12.8 106 100 0.5 #> 3 48 -12.4 104 100 0.5 #> 4 49 -12.0 102 100 0.5 #> 5 50 -11.6 100 100 0.5 #> 6 51 -11.2 98 100 0.5 #> # ℹ 3 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"Calculate log likelihood negative binomial function (derivatives)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"","code":"llikNbinomMu(x, size, mu, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"x Number successes size Size trial mu mu parameter negative binomial full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"data frame fx pdf value dProb derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"rxode2() model, can use llikNbinomMu() use arguments. can also get derivative mu llikNbinomMuDmu()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNbinomMu.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate the log likelihood of the negative binomial function (and its derivatives) — llikNbinomMu","text":"","code":"# \\donttest{ llikNbinomMu(46:54, 100, 40) #> fx dMu #> 1 -3.326828 0.1071429 #> 2 -3.446132 0.1250000 #> 3 -3.579663 0.1428571 #> 4 -3.727034 0.1607143 #> 5 -3.887874 0.1785714 #> 6 -4.061827 0.1964286 #> 7 -4.248554 0.2142857 #> 8 -4.447728 0.2321429 #> 9 -4.659037 0.2500000 llikNbinomMu(46:54, 100, 40, TRUE) #> x size mu fx dMu #> 1 46 100 40 -3.326828 0.1071429 #> 2 47 100 40 -3.446132 0.1250000 #> 3 48 100 40 -3.579663 0.1428571 #> 4 49 100 40 -3.727034 0.1607143 #> 5 50 100 40 -3.887874 0.1785714 #> 6 51 100 40 -4.061827 0.1964286 #> 7 52 100 40 -4.248554 0.2142857 #> 8 53 100 40 -4.447728 0.2321429 #> 9 54 100 40 -4.659037 0.2500000 et <- et(46:54) et$size <- 100 et$mu <- 40 model <- function() { model({ fx <- llikNbinomMu(time, size, mu) dProb <- llikNbinomMuDmu(time, size, mu) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 9 × 5 #> time fx dProb size mu #> #> 1 46 -3.33 0.107 100 40 #> 2 47 -3.45 0.125 100 40 #> 3 48 -3.58 0.143 100 40 #> 4 49 -3.73 0.161 100 40 #> 5 50 -3.89 0.179 100 40 #> 6 51 -4.06 0.196 100 40 #> # ℹ 3 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":null,"dir":"Reference","previous_headings":"","what":"Log likelihood for normal distribution — llikNorm","title":"Log likelihood for normal distribution — llikNorm","text":"Log likelihood normal distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Log likelihood for normal distribution — llikNorm","text":"","code":"llikNorm(x, mean = 0, sd = 1, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Log likelihood for normal distribution — llikNorm","text":"x Observation mean Mean likelihood sd Standard deviation likelihood full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Log likelihood for normal distribution — llikNorm","text":"data frame fx pdf value dMean dSd derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Log likelihood for normal distribution — llikNorm","text":"rxode2() model, can use llikNorm() use arguments. can also get derivatives llikNormDmean() llikNormDsd()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Log likelihood for normal distribution — llikNorm","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikNorm.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Log likelihood for normal distribution — llikNorm","text":"","code":"# \\donttest{ llikNorm(0) #> fx dMean dSd #> 1 -0.9189385 0 -1 llikNorm(seq(-2,2,length.out=10), full=TRUE) #> x mean sd fx dMean dSd #> 1 -2.0000000 0 1 -2.9189385 -2.0000000 3.0000000 #> 2 -1.5555556 0 1 -2.1288151 -1.5555556 1.4197531 #> 3 -1.1111111 0 1 -1.5362225 -1.1111111 0.2345679 #> 4 -0.6666667 0 1 -1.1411608 -0.6666667 -0.5555556 #> 5 -0.2222222 0 1 -0.9436299 -0.2222222 -0.9506173 #> 6 0.2222222 0 1 -0.9436299 0.2222222 -0.9506173 #> 7 0.6666667 0 1 -1.1411608 0.6666667 -0.5555556 #> 8 1.1111111 0 1 -1.5362225 1.1111111 0.2345679 #> 9 1.5555556 0 1 -2.1288151 1.5555556 1.4197531 #> 10 2.0000000 0 1 -2.9189385 2.0000000 3.0000000 # With rxode2 you can use: et <- et(-3, 3, length.out=10) et$mu <- 0 et$sigma <- 1 model <- function(){ model({ fx <- llikNorm(time, mu, sigma) dMean <- llikNormDmean(time, mu, sigma) dSd <- llikNormDsd(time, mu, sigma) }) } ret <- rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ret #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dMean dSd mu sigma #> #> 1 -3 -5.42 -3 8 0 1 #> 2 -2.33 -3.64 -2.33 4.44 0 1 #> 3 -1.67 -2.31 -1.67 1.78 0 1 #> 4 -1 -1.42 -1 0 0 1 #> 5 -0.333 -0.974 -0.333 -0.889 0 1 #> 6 0.333 -0.974 0.333 -0.889 0 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":null,"dir":"Reference","previous_headings":"","what":"log-likelihood for the Poisson distribution — llikPois","title":"log-likelihood for the Poisson distribution — llikPois","text":"log-likelihood Poisson distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log-likelihood for the Poisson distribution — llikPois","text":"","code":"llikPois(x, lambda, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log-likelihood for the Poisson distribution — llikPois","text":"x non negative integers lambda non-negative means full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log-likelihood for the Poisson distribution — llikPois","text":"data frame fx pdf value dLambda derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log-likelihood for the Poisson distribution — llikPois","text":"rxode2() model, can use llikPois() use arguments. can also get derivatives llikPoisDlambda()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log-likelihood for the Poisson distribution — llikPois","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikPois.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log-likelihood for the Poisson distribution — llikPois","text":"","code":"# \\donttest{ llikPois(0:7, lambda = 1) #> fx dLambda #> 1 -1.000000 -1 #> 2 -1.000000 0 #> 3 -1.693147 1 #> 4 -2.791759 2 #> 5 -4.178054 3 #> 6 -5.787492 4 #> 7 -7.579251 5 #> 8 -9.525161 6 llikPois(0:7, lambda = 4, full=TRUE) #> x lambda fx dLambda #> 1 0 4 -4.000000 -1.00 #> 2 1 4 -2.613706 -0.75 #> 3 2 4 -1.920558 -0.50 #> 4 3 4 -1.632876 -0.25 #> 5 4 4 -1.632876 0.00 #> 6 5 4 -1.856020 0.25 #> 7 6 4 -2.261485 0.50 #> 8 7 4 -2.821101 0.75 # In rxode2 you can use: et <- et(0:10) et$lambda <- 0.5 model <- function() { model({ fx <- llikPois(time, lambda) dLambda <- llikPoisDlambda(time, lambda) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 11 × 4 #> time fx dLambda lambda #> #> 1 0 -0.5 -1 0.5 #> 2 1 -1.19 1 0.5 #> 3 2 -2.58 3 0.5 #> 4 3 -4.37 5 0.5 #> 5 4 -6.45 7 0.5 #> 6 5 -8.75 9 0.5 #> # ℹ 5 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":null,"dir":"Reference","previous_headings":"","what":"Log likelihood of T and it's derivatives (from stan) — llikT","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"Log likelihood T derivatives (stan)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"","code":"llikT(x, df, mean = 0, sd = 1, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"x Observation df degrees freedom (\\(> 0\\), maybe non-integer). df = Inf allowed. mean Mean likelihood sd Standard deviation likelihood full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"data frame fx log pdf value dDf dMean dSd derivatives respect parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"rxode2() model, can use llikT() use arguments. can also get derivative df, mean sd llikTDdf(), llikTDmean() llikTDsd().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikT.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Log likelihood of T and it's derivatives (from stan) — llikT","text":"","code":"# \\donttest{ x <- seq(-3, 3, length.out = 21) llikT(x, 7, 0, 1) #> fx dDf dMean dSd #> 1 -4.2612484 -0.086858773 -1.5000000 3.5000000 #> 2 -3.8091335 -0.060260433 -1.5115465 3.0811756 #> 3 -3.3561547 -0.037201674 -1.5047022 2.6112853 #> 4 -2.9088542 -0.018379169 -1.4723926 2.0920245 #> 5 -2.4761000 -0.004340221 -1.4062500 1.5312500 #> 6 -2.0693878 0.004691380 -1.2972973 0.9459459 #> 7 -1.7028228 0.009010785 -1.1374408 0.3649289 #> 8 -1.3925134 0.009569214 -0.9218950 -0.1702945 #> 9 -1.1551333 0.007927361 -0.6521739 -0.6086957 #> 10 -1.0056349 0.005918024 -0.3385049 -0.8984485 #> 11 -0.9545342 0.005051942 0.0000000 -1.0000000 #> 12 -1.0056349 0.005918024 0.3385049 -0.8984485 #> 13 -1.1551333 0.007927361 0.6521739 -0.6086957 #> 14 -1.3925134 0.009569214 0.9218950 -0.1702945 #> 15 -1.7028228 0.009010785 1.1374408 0.3649289 #> 16 -2.0693878 0.004691380 1.2972973 0.9459459 #> 17 -2.4761000 -0.004340221 1.4062500 1.5312500 #> 18 -2.9088542 -0.018379169 1.4723926 2.0920245 #> 19 -3.3561547 -0.037201674 1.5047022 2.6112853 #> 20 -3.8091335 -0.060260433 1.5115465 3.0811756 #> 21 -4.2612484 -0.086858773 1.5000000 3.5000000 llikT(x, 15, 0, 1, full=TRUE) #> fx dDf dMean dSd #> 1 -4.6956220 -0.0338931511 -2.0000000 5.0000000 #> 2 -4.1042965 -0.0225073150 -1.9380888 4.2328398 #> 3 -3.5354158 -0.0134033865 -1.8497110 3.4393064 #> 4 -2.9974985 -0.0065857823 -1.7310665 2.6352396 #> 5 -2.5001272 -0.0019378861 -1.5789474 1.8421053 #> 6 -2.0536885 0.0007929097 -1.3913043 1.0869565 #> 7 -1.6689304 0.0019903977 -1.1678832 0.4014599 #> 8 -1.3563325 0.0021369166 -0.9108159 -0.1802657 #> 9 -1.1253251 0.0017504002 -0.6250000 -0.6250000 #> 10 -0.9834495 0.0012985422 -0.3180915 -0.9045726 #> 11 -0.9355929 0.0011086635 0.0000000 -1.0000000 #> 12 -0.9834495 0.0012985422 0.3180915 -0.9045726 #> 13 -1.1253251 0.0017504002 0.6250000 -0.6250000 #> 14 -1.3563325 0.0021369166 0.9108159 -0.1802657 #> 15 -1.6689304 0.0019903977 1.1678832 0.4014599 #> 16 -2.0536885 0.0007929097 1.3913043 1.0869565 #> 17 -2.5001272 -0.0019378861 1.5789474 1.8421053 #> 18 -2.9974985 -0.0065857823 1.7310665 2.6352396 #> 19 -3.5354158 -0.0134033865 1.8497110 3.4393064 #> 20 -4.1042965 -0.0225073150 1.9380888 4.2328398 #> 21 -4.6956220 -0.0338931511 2.0000000 5.0000000 et <- et(-3, 3, length.out=10) et$nu <- 7 et$mean <- 0 et$sd <- 1 model <- function() { model({ fx <- llikT(time, nu, mean, sd) dDf <- llikTDdf(time, nu, mean, sd) dMean <- llikTDmean(time, nu, mean, sd) dSd <- llikTDsd(time, nu, mean, sd) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 8 #> time fx dDf dMean dSd nu mean sd #> #> 1 -3 -4.26 -0.0869 -1.5 3.5 7 0 1 #> 2 -2.33 -3.26 -0.0326 -1.5 2.5 7 0 1 #> 3 -1.67 -2.29 0.000289 -1.36 1.27 7 0 1 #> 4 -1 -1.49 0.00971 -1 0 7 0 1 #> 5 -0.333 -1.02 0.00611 -0.375 -0.875 7 0 1 #> 6 0.333 -1.02 0.00611 0.375 -0.875 7 0 1 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Unif distribution — llikUnif","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"log likelihood derivatives Unif distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"","code":"llikUnif(x, alpha, beta, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"x variable distributed uniform distribution alpha lower limit uniform distribution beta upper limit distribution full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"rxode2() model, can use llikUnif() use x rate arguments. can also get derivative alpha beta llikUnifDalpha() llikUnifDbeta().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikUnif.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Unif distribution — llikUnif","text":"","code":"# \\donttest{ llikUnif(1, -2, 2) #> fx dAlpha dBeta #> 1 -1.386294 0.25 -0.25 et <- et(seq(1,1, length.out=4)) et$alpha <- -2 et$beta <- 2 model <- function() { model({ fx <- llikUnif(time, alpha, beta) dAlpha<- llikUnifDalpha(time, alpha, beta) dBeta <- llikUnifDbeta(time, alpha, beta) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 4 × 6 #> time fx dAlpha dBeta alpha beta #> #> 1 1 -1.39 0.25 -0.25 -2 2 #> 2 1 -1.39 0.25 -0.25 -2 2 #> 3 1 -1.39 0.25 -0.25 -2 2 #> 4 1 -1.39 0.25 -0.25 -2 2 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":null,"dir":"Reference","previous_headings":"","what":"log likelihood and derivatives for Weibull distribution — llikWeibull","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"log likelihood derivatives Weibull distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"","code":"llikWeibull(x, shape, scale, full = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"x variable distributed Weibull distribution shape, scale shape scale parameters, latter defaulting 1. full Add data frame showing x, mean, sd well fx derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"data frame fx log pdf value dProb derivatives respect prob parameters observation time-point","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"rxode2() model, can use llikWeibull() use x rate arguments. can also get derivative shape scale llikWeibullDshape() llikWeibullDscale().","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/llikWeibull.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log likelihood and derivatives for Weibull distribution — llikWeibull","text":"","code":"# \\donttest{ llikWeibull(1, 1, 10) #> fx dShape dScale #> 1 -2.402585 -1.072327 -0.09 # rxode2 can use this too: et <- et(seq(0.001, 1, length.out=10)) et$shape <- 1 et$scale <- 10 model <- function() { model({ fx <- llikWeibull(time, shape, scale) dShape<- llikWeibullDshape(time, shape, scale) dScale <- llikWeibullDscale(time, shape, scale) }) } rxSolve(model, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 6 #> time fx dShape dScale shape scale #> #> 1 0.001 -2.30 -8.21 -0.100 1 10 #> 2 0.112 -2.31 -3.44 -0.0989 1 10 #> 3 0.223 -2.32 -2.72 -0.0978 1 10 #> 4 0.334 -2.34 -2.29 -0.0967 1 10 #> 5 0.445 -2.35 -1.97 -0.0956 1 10 #> 6 0.556 -2.36 -1.73 -0.0944 1 10 #> # ℹ 4 more rows # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":null,"dir":"Reference","previous_headings":"","what":"logit and inverse logit (expit) functions — logit","title":"logit and inverse logit (expit) functions — logit","text":"logit inverse logit (expit) functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"logit and inverse logit (expit) functions — logit","text":"","code":"logit(x, low = 0, high = 1) expit(alpha, low = 0, high = 1) logitNormInfo(mean = 0, sd = 1, low = 0, high = 1, abs.tol = 1e-06, ...) probitNormInfo(mean = 0, sd = 1, low = 0, high = 1, abs.tol = 1e-06, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"logit and inverse logit (expit) functions — logit","text":"x Input value(s) range [low,high] translate -Inf Inf low Lowest value range high Highest value range alpha Infinite value(s) translate range [low, high] mean logit-scale mean sd logit-scale standard deviation abs.tol absolute accuracy requested. ... parameters passed integrate()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"logit and inverse logit (expit) functions — logit","text":"values logit expit","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"logit and inverse logit (expit) functions — logit","text":"logit given : logit(p) = -log(1/p-1) : p = x-low/high-low expit given : expit(p, low, high) = (high-low)/(1+exp(-alpha)) + low logitNormInfo() gives mean, variance coefficient variability untransformed scale.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/logit.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"logit and inverse logit (expit) functions — logit","text":"","code":"logit(0.25) #> [1] -1.098612 expit(-1.09) #> [1] 0.2516183 logitNormInfo(logit(0.25), sd = 0.1) #> mean var cv #> 0.2504672899 0.0003515538 0.0748591440 logitNormInfo(logit(1, 0, 10), sd = 1, low = 0, high = 10) #> mean var cv #> 1.3386966 1.2662276 0.8405697"},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":null,"dir":"Reference","previous_headings":"","what":"lowergamma: upper incomplete gamma function — lowergamma","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"tgamma_lower boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"","code":"lowergamma(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"numeric '' parameter upper incomplete gamma z numeric 'z' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"lowergamma results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"lowergamma function given : $$lowergamma(, z) = \\int_{0}^{z}t^{-1}\\cdot e^{-t} dt$$","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/lowergamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"lowergamma: upper incomplete gamma function — lowergamma","text":"","code":"lowergamma(1, 3) #> [1] 0.9502129 lowergamma(1:3, 3) #> [1] 0.9502129 0.8008517 1.1536198 lowergamma(1, 1:3) #> [1] 0.6321206 0.8646647 0.9502129"},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"generic function meanProbs produces expected confidence bands either t distribution normal sampling distribution. uses qnorm() qt() mean standard deviation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"","code":"meanProbs(x, ...) # S3 method for default meanProbs( x, probs = seq(0, 1, 0.25), na.rm = FALSE, names = TRUE, useT = TRUE, onlyProbs = TRUE, pred = FALSE, n = 0L, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"x numeric vector whose mean probability based confidence values wanted, NA NaN values allowed numeric vectors unless ‘na.rm’ ‘TRUE’. ... Arguments passed default method, allows many different methods applied. probs numeric vector probabilities values interval 0 1 . na.rm logical; true, NA NaN's removed x quantiles computed. names logical; true, result names attribute. useT logical; true, use t-distribution calculate confidence-based estimates. false use normal distribution calculate confidence based estimates. onlyProbs logical; true, return probability based confidence interval estimates, otherwise return pred logical; true use prediction interval instead confidence interval n integer/integerish; n used calculate prediction confidence interval. n=0 (default) use number non-NA observations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"default return probabilities names (named) points expected distribution located given sampling mean standard deviation. onlyProbs=FALSE prepend mean, variance, standard deviation, minimum, maximum number non-NA observations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"single probability, p, uses either: mean + qt(p, df=n)*sd/sqrt(n) mean + qnorm(p)*sd/sqrt(n) smallest observation corresponds probability 0 largest probability 1 mean corresponds 0.5. mean standard deviation sample calculated based Welford's method single pass. meant perform way quantile() can drop replacement code using quantile() using distributional assumptions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/meanProbs.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate expected confidence bands or prediction intreval with normal or t sampling distribution — meanProbs","text":"","code":"quantile(x<- rnorm(1001)) #> 0% 25% 50% 75% 100% #> -2.97323949 -0.73533239 -0.01129805 0.72491996 3.27777284 meanProbs(x) #> 0% 25% 50% 75% 100% #> -2.9732394937 -0.0449769963 -0.0226253316 -0.0002736669 3.2777728424 # Can get some extra statistics if you request onlyProbs=FALSE meanProbs(x, onlyProbs=FALSE) #> mean var sd min max #> -2.262533e-02 1.098467e+00 1.048078e+00 -2.973239e+00 3.277773e+00 #> n 0% 25% 50% 75% #> 1.001000e+03 -2.973239e+00 -4.497700e-02 -2.262533e-02 -2.736669e-04 #> 100% #> 3.277773e+00 x[2] <- NA_real_ meanProbs(x, onlyProbs=FALSE) #> mean var sd min max n 0% 25% 50% 75% 100% #> NA NA NA NA NA NA NA NA NA NA NA quantile(x<- rnorm(42)) #> 0% 25% 50% 75% 100% #> -2.4618924 -0.4784656 0.1486266 0.7796569 2.0551184 meanProbs(x) #> 0% 25% 50% 75% 100% #> -2.461892403 -0.008671441 0.095665292 0.200002026 2.055118383 meanProbs(x, useT=FALSE) #> 0% 25% 50% 75% 100% #> -2.461892403 -0.007746777 0.095665292 0.199077362 2.055118383"},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign the model block in the rxode2 related object — model<-","title":"Assign the model block in the rxode2 related object — model<-","text":"Assign model block rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign the model block in the rxode2 related object — model<-","text":"","code":"model(x, envir = environment(x)) <- value"},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign the model block in the rxode2 related object — model<-","text":"x rxode2 related object envir Environment assignment occurs value Value object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign the model block in the rxode2 related object — model<-","text":"rxode2 related object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model-set.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign the model block in the rxode2 related object — model<-","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":null,"dir":"Reference","previous_headings":"","what":"Model block for rxode2/nlmixr models — model.function","title":"Model block for rxode2/nlmixr models — model.function","text":"Model block rxode2/nlmixr models","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Model block for rxode2/nlmixr models — model.function","text":"","code":"# S3 method for `function` model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) # S3 method for rxUi model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) # S3 method for rxode2 model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) # S3 method for rxModelVars model(x, ..., append = FALSE, auto = TRUE, cov = NULL, envir = parent.frame()) model( x, ..., append = FALSE, auto = getOption(\"rxode2.autoVarPiping\", TRUE), cov = NULL, envir = parent.frame() ) # S3 method for default model(x, ..., append = FALSE, cov = NULL, envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Model block for rxode2/nlmixr models — model.function","text":"x model expression ... arguments append boolean determine lines appended piping. possible values : TRUE lines appended model instead replaced FALSE lines replaced model (default) NA lines pre-pended model instead replaced lhs expression, append lines last observed line expression lhs auto boolean tells piping automatically selects parameters characterized population parameter, subject variability, covariate. TRUE automatic selection occurs. FALSE automatic selection turned everything added covariate (can promoted parameter ini statement). default TRUE, can changed options(rxode2.autoVarPiping=FALSE). cov character vector variables assumed covariates. override automatic promotion population parameter estimate (eta) envir environment unevaluated model expressions evaluated. May also NULL, list, data frame, pairlist integer specified sys.call.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Model block for rxode2/nlmixr models — model.function","text":"Model block ini information included. ini must called model block","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/model.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Model block for rxode2/nlmixr models — model.function","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract model lines from a rxui model — modelExtract","title":"Extract model lines from a rxui model — modelExtract","text":"Extract model lines rxui model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract model lines from a rxui model — modelExtract","text":"","code":"modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for `function` modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for rxUi modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for rxode2 modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for rxModelVars modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() ) # S3 method for default modelExtract( x, ..., expression = FALSE, endpoint = FALSE, lines = FALSE, envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract model lines from a rxui model — modelExtract","text":"x model extract lines ... variables extract. missing, extract entire model (conditioned endpoint option ) expression return expressions (TRUE) strings (FALSE) endpoint include endpoint. can : NA -- Missing means include endpoint non-endpoint lines TRUE -- include endpoint lines FALSE -- include non-endpoint lines lines boolean. TRUE add lines attribute output value ie attr(, \"lines\") envir Environment evaluating variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract model lines from a rxui model — modelExtract","text":"expressions strings extracted lines. Note duplicated lhs expression line, return lines","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Extract model lines from a rxui model — modelExtract","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/modelExtract.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Extract model lines from a rxui model — modelExtract","text":"","code":"one.compartment <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V 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) d/dt(depot) <- -ka * depot d/dt(center) <- ka * depot - cl / v * center cp <- center / v cp ~ add(add.sd) }) } f <- one.compartment() modelExtract(f, cp) #> [1] \"cp <- center/v\" modelExtract(one.compartment, d/dt(depot)) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> [1] \"d/dt(depot) <- -ka * depot\" # from variable var <- \"d/dt(depot)\" modelExtract(one.compartment, var) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> [1] \"d/dt(depot) <- -ka * depot\" modelExtract(f, endpoint=NA, lines=TRUE, expression=TRUE) #> [[1]] #> ka <- exp(tka + eta.ka) #> #> [[2]] #> cl <- exp(tcl + eta.cl) #> #> [[3]] #> v <- exp(tv + eta.v) #> #> [[4]] #> d/dt(depot) <- -ka * depot #> #> [[5]] #> d/dt(center) <- ka * depot - cl/v * center #> #> [[6]] #> cp <- center/v #> #> [[7]] #> cp ~ add(add.sd) #> #> attr(,\"lines\") #> [1] 1 2 3 4 5 6 7"},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":null,"dir":"Reference","previous_headings":"","what":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"NULL given method, choices returned named vector.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"","code":"odeMethodToInt(method = c(\"liblsoda\", \"lsoda\", \"dop853\", \"indLin\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"method method solving ODEs. Currently supports: \"liblsoda\" thread safe lsoda. supports parallel thread-based solving, ignores user Jacobian specification. \"lsoda\" -- LSODA solver. support parallel thread-based solving, allows user Jacobian specification. \"dop853\" -- DOP853 solver. support parallel thread-based solving user Jacobian specification \"indLin\" -- Solving inductive linearization. rxode2 dll must setup specially use solving routine.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/odeMethodToInt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Conversion between character and integer ODE integration methods for rxode2 — odeMethodToInt","text":"integer method (unless input NULL, case, see details)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot rxode2 objects — plot.rxSolve","title":"Plot rxode2 objects — plot.rxSolve","text":"Plot rxode2 objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot rxode2 objects — plot.rxSolve","text":"","code":"# S3 method for rxSolve plot(x, y, ..., log = \"\", xlab = \"Time\", ylab = \"\") # S3 method for rxSolveConfint1 plot(x, y, ..., xlab = \"Time\", ylab = \"\", log = \"\") # S3 method for rxSolveConfint2 plot(x, y, ..., xlab = \"Time\", ylab = \"\", log = \"\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot rxode2 objects — plot.rxSolve","text":"x rxode2 object plot y Compartments left-hand-side values plot either bare name character vector ... Ignored log \"\" (neither x y), \"x\", \"y\", \"xy\" (\"yx\") log-scale? xlab, ylab x y axis labels","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plot.rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot rxode2 objects — plot.rxSolve","text":"ggplot2 object","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Update Solved object with '+' — +.rxSolve","title":"Update Solved object with '+' — +.rxSolve","text":"Update Solved object '+'","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Update Solved object with '+' — +.rxSolve","text":"","code":"# S3 method for rxSolve +(solved, new)"},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Update Solved object with '+' — +.rxSolve","text":"solved Solved object new New information added table.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Update Solved object with '+' — +.rxSolve","text":"new solved object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/plus-.rxSolve.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Update Solved object with '+' — +.rxSolve","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":null,"dir":"Reference","previous_headings":"","what":"Print the rxCoef object — print.rxCoef","title":"Print the rxCoef object — print.rxCoef","text":"prints user supplied arguments rxCoef object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print the rxCoef object — print.rxCoef","text":"","code":"# S3 method for rxCoef print(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print the rxCoef object — print.rxCoef","text":"x rxCoef object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print the rxCoef object — print.rxCoef","text":"original object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxCoef.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print the rxCoef object — print.rxCoef","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":null,"dir":"Reference","previous_headings":"","what":"Print rxDll object — print.rxDll","title":"Print rxDll object — print.rxDll","text":"tells rxDll loaded, ready /deleted.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print rxDll object — print.rxDll","text":"","code":"# S3 method for rxDll print(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print rxDll object — print.rxDll","text":"original object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxDll.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print rxDll object — print.rxDll","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Print information about the rxode2 object. — print.rxode2","title":"Print information about the rxode2 object. — print.rxode2","text":"prints model name status able solved","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print information about the rxode2 object. — print.rxode2","text":"","code":"# S3 method for rxode2 print(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print information about the rxode2 object. — print.rxode2","text":"x rxode2 object ... Ignored parameters","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print information about the rxode2 object. — print.rxode2","text":"original object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/print.rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print information about the rxode2 object. — print.rxode2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":null,"dir":"Reference","previous_headings":"","what":"probit and inverse probit functions — probit","title":"probit and inverse probit functions — probit","text":"probit inverse probit functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"probit and inverse probit functions — probit","text":"","code":"probit(x, low = 0, high = 1) probitInv(x, low = 0, high = 1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"probit and inverse probit functions — probit","text":"x Input value(s) range [low,high] translate -Inf Inf low Lowest value range high Highest value range","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"probit and inverse probit functions — probit","text":"values probit, probitInv probitNormInfo","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/probit.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"probit and inverse probit functions — probit","text":"","code":"probit(0.25) #> [1] -0.6744898 probitInv(-0.674) #> [1] 0.2501557 probitNormInfo(probit(0.25), sd = 0.1) #> mean var cv #> 0.25106491 0.00100658 0.12636827 probitNormInfo(probit(1, 0, 10), sd = 1, low = 0, high = 10) #> mean var cv #> 1.824166 4.307824 1.137796"},{"path":"https://nlmixr2.github.io/rxode2/reference/reexports.html","id":null,"dir":"Reference","previous_headings":"","what":"Objects exported from other packages — reexports","title":"Objects exported from other packages — reexports","text":"objects imported packages. Follow links see documentation. ggplot2 aes, expand_limits, facet_wrap, geom_line, ggplot, label_both, label_context, label_context, label_value, label_wrap_gen, scale_type, scale_x_continuous, scale_x_date, scale_x_discrete, scale_y_continuous, scale_y_date, scale_y_discrete, waiver, xlab, ylab lotri lotri magrittr %>% rxode2et .clearPipe, .collectWarnings, .s3register, add.dosing, add.sampling, .et, .rxEvid, .rxRateDur, et, etExpand, etRbind, etRep, etSeq, eventTable, rxCbindStudyIndividual, rxEtDispatchSolve, rxEvid, rxRateDur, rxReq, rxStack rxode2parse .getLastIdLvl, forderForceBase, rxDerived, rxSetIni0 rxode2random .cbindOme, .expandPars, .vecDf, cvPost, invWR1d, phi, rinvchisq, rLKJ1, rxGetSeed, rxGetSeed, rxRmvn, rxSeedEng, rxSetSeed, rxSetSeed, rxSetSeed, rxWithPreserveSeed, rxWithSeed, rxWithSeed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/reexports.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Objects exported from other packages — reexports","text":"Inherited parent routine","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":null,"dir":"Reference","previous_headings":"","what":"Allow unloading of dlls — rxAllowUnload","title":"Allow unloading of dlls — rxAllowUnload","text":"Allow unloading dlls","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Allow unloading of dlls — rxAllowUnload","text":"","code":"rxAllowUnload(allow)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Allow unloading of dlls — rxAllowUnload","text":"allow boolean indicating garbage collection unload rxode2 dlls.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Allow unloading of dlls — rxAllowUnload","text":"Boolean allow; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Allow unloading of dlls — rxAllowUnload","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAllowUnload.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Allow unloading of dlls — rxAllowUnload","text":"","code":"# Garbage collection will not unload un-used rxode2 dlls rxAllowUnload(FALSE); #> [1] FALSE # Garbage collection will unload unused rxode2 dlls rxAllowUnload(TRUE); #> [1] TRUE"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Append two rxui models together — rxAppendModel","title":"Append two rxui models together — rxAppendModel","text":"Append two rxui models together","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Append two rxui models together — rxAppendModel","text":"","code":"rxAppendModel(model1, model2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Append two rxui models together — rxAppendModel","text":"model1 rxUi model 1 model2 rxUi model 2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Append two rxui models together — rxAppendModel","text":"New model models appended together","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Append two rxui models together — rxAppendModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAppendModel.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Append two rxui models together — rxAppendModel","text":"","code":"# \\donttest{ ocmt <- function() { ini({ tka <- exp(0.45) # Ka tcl <- exp(1) # Cl tv <- exp(3.45); # log V ## the label(\"Label name\") works with all models add.sd <- 0.7 }) model({ ka <- tka cl <- tcl v <- tv d/dt(depot) <- -ka * depot d/dt(center) <- ka * depot - cl / v * center cp <- center / v cp ~ add(add.sd) }) } idr <- function() { ini({ tkin <- log(1) tkout <- log(1) tic50 <- log(10) gamma <- fix(1) idr.sd <- 1 }) model({ kin <- exp(tkin) kout <- exp(tkout) ic50 <- exp(tic50) d/dt(eff) <- kin - kout*(1-ceff^gamma/(ic50^gamma+ceff^gamma)) eff ~ add(idr.sd) }) } rxAppendModel(ocmt %>% model(ceff=cp,append=TRUE), idr) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> #> #> ── rxode2-based free-form 3-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd tkin tkout tic50 gamma #> 1.568312 2.718282 31.500392 0.700000 0.000000 0.000000 2.302585 1.000000 #> idr.sd #> 1.000000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> 3 3 eff #> ── Multiple Endpoint Model ($multipleEndpoint): ── #> variable cmt dvid* #> 1 cp ~ … cmt='cp' or cmt=4 dvid='cp' or dvid=1 #> 2 eff ~ … cmt='eff' or cmt=3 dvid='eff' or dvid=2 #> * If dvids are outside this range, all dvids are re-numered sequentially, ie 1,7, 10 becomes 1,2,3 etc #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 1.56831218549017 #> label(\"Ka\") #> tcl <- 2.71828182845905 #> label(\"Cl\") #> tv <- 31.5003923087479 #> label(\"log V\") #> add.sd <- c(0, 0.7) #> tkin <- 0 #> tkout <- 0 #> tic50 <- 2.30258509299405 #> gamma <- fix(1) #> idr.sd <- c(0, 1) #> }) #> model({ #> ka <- tka #> cl <- tcl #> v <- tv #> d/dt(depot) <- -ka * depot #> d/dt(center) <- ka * depot - cl/v * center #> cp <- center/v #> cp ~ add(add.sd) #> ceff <- cp #> kin <- exp(tkin) #> kout <- exp(tkout) #> ic50 <- exp(tic50) #> d/dt(eff) <- kin - kout * (1 - ceff^gamma/(ic50^gamma + #> ceff^gamma)) #> eff ~ add(idr.sd) #> }) #> } # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign Control Variable — rxAssignControlValue","title":"Assign Control Variable — rxAssignControlValue","text":"Assign Control Variable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign Control Variable — rxAssignControlValue","text":"","code":"rxAssignControlValue(ui, option, value)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign Control Variable — rxAssignControlValue","text":"ui rxode2 ui function option Option name control modify value Value control modify","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign Control Variable — rxAssignControlValue","text":"Nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignControlValue.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign Control Variable — rxAssignControlValue","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign pointer based on model variables — rxAssignPtr","title":"Assign pointer based on model variables — rxAssignPtr","text":"Assign pointer based model variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign pointer based on model variables — rxAssignPtr","text":"","code":"rxAssignPtr(object = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign pointer based on model variables — rxAssignPtr","text":"object rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxAssignPtr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign pointer based on model variables — rxAssignPtr","text":"nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":null,"dir":"Reference","previous_headings":"","what":"Creates a logical matrix for block matrixes. — rxBlockZeros","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"Creates logical matrix block matrixes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"","code":"rxBlockZeros(mat, i)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"mat Matrix Row/column block matrix setup.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxBlockZeros.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Creates a logical matrix for block matrixes. — rxBlockZeros","text":"logical matrix returning elements zero.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the C file associated with the rxode2 object — rxC","title":"Return the C file associated with the rxode2 object — rxC","text":"return C code generating rxode2 DLL.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the C file associated with the rxode2 object — rxC","text":"","code":"rxC(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the C file associated with the rxode2 object — rxC","text":"obj rxode2 family objects character string model specification location file model specification.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the C file associated with the rxode2 object — rxC","text":"path library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxC.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the C file associated with the rxode2 object — rxC","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":null,"dir":"Reference","previous_headings":"","what":"Use cat when rxode2.verbose is TRUE — rxCat","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"Use cat rxode2.verbose TRUE","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"","code":"rxCat(a, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"... Parameters sent cat","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCat.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Use cat when rxode2.verbose is TRUE — rxCat","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":null,"dir":"Reference","previous_headings":"","what":"rxChain Chain or add item to solved system of equations — rxChain","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"Add item solved system equations","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"","code":"rxChain(obj1, obj2) # S3 method for solveRxDll +(obj1, obj2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"obj1 Solved object. obj2 New object added/piped/chained solved object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"newObject event table, return new solved object new event table.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxChain Chain or add item to solved system of equations — rxChain","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":null,"dir":"Reference","previous_headings":"","what":"Second command in chaining commands — rxChain2","title":"Second command in chaining commands — rxChain2","text":"s3 method called internally + \\%>\\% operators.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Second command in chaining commands — rxChain2","text":"","code":"rxChain2(obj, solvedObject) # S3 method for default rxChain2(obj, solvedObject) # S3 method for EventTable rxChain2(obj, solvedObject)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Second command in chaining commands — rxChain2","text":"obj object added/chained/piped solved object solvedObject solved object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Second command in chaining commands — rxChain2","text":"chained operation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxChain2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Second command in chaining commands — rxChain2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":null,"dir":"Reference","previous_headings":"","what":"Cleanup anonymous DLLs by unloading them — rxClean","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"cleans rxode2 loaded DLLs","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"","code":"rxClean(wd)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"wd directory cleaned; (DEPRECIATED), longer anything. unloads rxode2 anonymous dlls.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"TRUE successful","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxClean.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Cleanup anonymous DLLs by unloading them — rxClean","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":null,"dir":"Reference","previous_headings":"","what":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"Combine Error Lines create rxode2 expression","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"","code":"rxCombineErrorLines( uiModel, errLines = NULL, prefixLines = NULL, paramsLine = NULL, modelVars = FALSE, cmtLines = TRUE, dvidLine = TRUE, lstExpr = NULL, useIf = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"uiModel UI model errLines Error lines; missing, get error lines rxGetDistributionSimulationLines() prefixLines Prefix lines, param statement paramsLine Params line, present. modelVars Return model vars instead rxode2 statement cmtLines Include trailing cmt lines dvidLine Include trailing dvid() specification lstExpr list expressions model, NULL. NULL defaults model expressions accessible uiModel$lstExpr. useIf Use (CMT == X) endpoints","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"quoted expression can evaluated compiled rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"exported allow functions mangle error lines make types estimation methods (needed)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCombineErrorLines.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Combine Error Lines and create rxode2 expression — rxCombineErrorLines","text":"","code":"# \\donttest{ one.cmt <- function() { ini({ ## You may label each parameter with a comment tka <- 0.45 # Log Ka tcl <- log(c(0, 2.7, 100)) # Log Cl ## This works with interactive models ## You may also label the preceding line with label(\"label text\") tv <- 3.45; label(\"log V\") ## the label(\"Label name\") works with all models 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) }) } f <- rxode2(one.cmt) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' # You can get the simulation model easily by rxCombineErrorLines(f) #> rxode2({ #> params(tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v) #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ linCmt() #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (add.sd)^2 #> ipredSim <- rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim <- rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.rxLinCmt, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> cmt(rxLinCmt) #> dvid(1) #> }) # You can then get the compiled model by simply evaluting the model: r <- eval(rxCombineErrorLines(f)) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # This also works with multile endpoint models: pk.turnover.emax <- function() { ini({ tktr <- log(1) tka <- log(1) tcl <- log(0.1) tv <- log(10) ## eta.ktr ~ 1 eta.ka ~ 1 eta.cl ~ 2 eta.v ~ 1 prop.err <- 0.1 pkadd.err <- 0.1 ## temax <- logit(0.8) tec50 <- log(0.5) tkout <- log(0.05) te0 <- log(100) ## eta.emax ~ .5 eta.ec50 ~ .5 eta.kout ~ .5 eta.e0 ~ .5 ## pdadd.err <- 10 }) model({ ktr <- exp(tktr + eta.ktr) ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) ## emax=expit(temax+eta.emax) ec50 = exp(tec50 + eta.ec50) kout = exp(tkout + eta.kout) e0 = exp(te0 + eta.e0) ## DCP = center/v PD=1-emax*DCP/(ec50+DCP) ## effect(0) = e0 kin = e0*kout ## d/dt(depot) = -ktr * depot d/dt(gut) = ktr * depot -ka * gut d/dt(center) = ka * gut - cl / v * center d/dt(effect) = kin*PD -kout*effect ## cp = center / v cp ~ prop(prop.err) + add(pkadd.err) effect ~ add(pdadd.err) }) } f <- rxode2(pk.turnover.emax) #> #> rxCombineErrorLines(f) #> rxode2({ #> params(tktr, tka, tcl, tv, prop.err, pkadd.err, temax, tec50, #> tkout, te0, pdadd.err, eta.ktr, eta.ka, eta.cl, eta.v, #> eta.emax, eta.ec50, eta.kout, eta.e0) #> ktr <- exp(tktr + eta.ktr) #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> emax = expit(temax + eta.emax) #> ec50 = exp(tec50 + eta.ec50) #> kout = exp(tkout + eta.kout) #> e0 = exp(te0 + eta.e0) #> DCP = center/v #> PD = 1 - emax * DCP/(ec50 + DCP) #> effect(0) = e0 #> kin = e0 * kout #> d/dt(depot) = -ktr * depot #> d/dt(gut) = ktr * depot - ka * gut #> d/dt(center) = ka * gut - cl/v * center #> d/dt(effect) = kin * PD - kout * effect #> cp = center/v #> if (CMT == 5) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ cp #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (pkadd.err)^2 + (rx_pred_f_)^2 * (prop.err)^2 #> ipredSim <- rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim <- rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.cp, rx_lambda_, #> rx_yj_, rx_low_, rx_hi_) #> } #> if (CMT == 4) { #> rx_yj_ ~ 2 #> rx_lambda_ ~ 1 #> rx_low_ ~ 0 #> rx_hi_ ~ 1 #> rx_pred_f_ ~ effect #> rx_pred_ ~ rx_pred_f_ #> rx_r_ ~ (pdadd.err)^2 #> ipredSim <- rxTBSi(rx_pred_, rx_lambda_, rx_yj_, rx_low_, #> rx_hi_) #> sim <- rxTBSi(rx_pred_ + sqrt(rx_r_) * rxerr.effect, #> rx_lambda_, rx_yj_, rx_low_, rx_hi_) #> } #> cmt(cp) #> dvid(5, 4) #> }) # Note that in the parsed form, you can also get the compiled rxode2 # model with $simulationModel f$simulationModel #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> rxode2 2.0.14.9000 model named rx_a9af130766b47d61301e298427b02165 model (✔ ready). #> $state: depot, gut, center, effect #> $stateExtra: cp #> $params: tktr, tka, tcl, tv, prop.err, pkadd.err, temax, tec50, tkout, te0, pdadd.err, eta.ktr, eta.ka, eta.cl, eta.v, eta.emax, eta.ec50, eta.kout, eta.e0, CMT, rxerr.cp, rxerr.effect #> $lhs: ktr, ka, cl, v, emax, ec50, kout, e0, DCP, PD, kin, cp, ipredSim, sim # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":null,"dir":"Reference","previous_headings":"","what":"Compile a model if needed — rxCompile","title":"Compile a model if needed — rxCompile","text":"compilation workhorse creating rxode2 model DLL files.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compile a model if needed — rxCompile","text":"","code":"rxCompile( model, dir, prefix, force = FALSE, modName = NULL, package = NULL, ... ) # S3 method for rxModelVars rxCompile( model, dir = NULL, prefix = NULL, force = FALSE, modName = NULL, package = NULL, ... ) # S3 method for character rxCompile( model, dir = NULL, prefix = NULL, force = FALSE, modName = NULL, package = NULL, ... ) # S3 method for rxDll rxCompile(model, ...) # S3 method for rxode2 rxCompile(model, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compile a model if needed — rxCompile","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . dir model directory C file stored compiling. prefix string indicating prefix use C based functions. missing, calculated based file name, md5 parsed model. force boolean stating (re)compile forced rxode2 detects models already generated. modName string used model name. string used naming various aspects computations, including generating C symbol names, dynamic libraries, etc. Therefore, necessary modName consists simple ASCII alphanumeric characters starting letter. package Package name pre-compiled binaries. ... arguments sent rxTrans() function.","code":"If unspecified, the C code is stored in a temporary directory, then the model is compiled and moved to the current directory. Afterwards the C code is removed. If specified, the C code is stored in the specified directory and then compiled in that directory. The C code is not removed after the DLL is created in the same directory. This can be useful to debug the c-code outputs."},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compile a model if needed — rxCompile","text":"rxDll object following components dllDLL path modelmodel specification .cA function call C code correct context DLL using .C() function. .callA function call C code correct context DLL using .Call() function. argsA list arguments used create rxDll object.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCompile.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Compile a model if needed — rxCompile","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":null,"dir":"Reference","previous_headings":"","what":"Current Condition for rxode2 object — rxCondition","title":"Current Condition for rxode2 object — rxCondition","text":"Current Condition rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Current Condition for rxode2 object — rxCondition","text":"","code":"rxCondition(obj, condition = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Current Condition for rxode2 object — rxCondition","text":"obj rxode2 object condition specified one conditions rxode2 object (determined rxExpandIfElse()), assign rxode2 current condition parameter. condition one known condition, condition set NULL, implying conditioning currently used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Current Condition for rxode2 object — rxCondition","text":"Current condition rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCondition.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Current Condition for rxode2 object — rxCondition","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":null,"dir":"Reference","previous_headings":"","what":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"assumes normal ODE equations first equations ODE expanded forward sensitivities type sensitivity (like adjoint)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"","code":"rxControlUpdateSens(rxControl, sensCmt = NULL, ncmt = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"rxControl Input list rxControl type list sensCmt Number sensitivity compartments ncmt Number compartments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"Updated rxControl $atol, $rtol, $ssAtol $ssRtol updated different sensitivities normal ODEs (first) different sensitivity larger compartments (sensitivities).","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxControlUpdateSens.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"This updates the tolerances based on the sensitivity equations — rxControlUpdateSens","text":"","code":"tmp <- rxControl() tmp2 <- rxControlUpdateSens(tmp, 3, 6) tmp2$atol #> [1] 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 tmp2$rtol #> [1] 1e-06 1e-06 1e-06 1e-06 1e-06 1e-06 tmp2$ssAtol #> [1] 1e-08 1e-08 1e-08 1e-08 1e-08 1e-08 tmp2$ssRtol #> [1] 1e-06 1e-06 1e-06 1e-06 1e-06 1e-06"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":null,"dir":"Reference","previous_headings":"","what":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"run, R_user_dir rxode2's cache present, create cache","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"","code":"rxCreateCache()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxCreateCache.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This will create the cache directory for rxode2 to save between sessions — rxCreateCache","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":null,"dir":"Reference","previous_headings":"","what":"Add to rxode2's derivative tables — rxD","title":"Add to rxode2's derivative tables — rxD","text":"Add rxode2's derivative tables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add to rxode2's derivative tables — rxD","text":"","code":"rxD(name, derivatives)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add to rxode2's derivative tables — rxD","text":"name Function Name derivatives list functions. function takes number arguments original function. first function construct derivative respect first argument; second function construct derivitive respect second argument, .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Add to rxode2's derivative tables — rxD","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Add to rxode2's derivative tables — rxD","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxD.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add to rxode2's derivative tables — rxD","text":"","code":"## Add an arbitrary list of derivative functions ## In this case the fun(x,y) is assumed to be 0.5*x^2+0.5*y^2 rxD(\"fun\", list( function(x, y) { return(x) }, function(x, y) { return(y) } ))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":null,"dir":"Reference","previous_headings":"","what":"Delete the DLL for the model — rxDelete","title":"Delete the DLL for the model — rxDelete","text":"function deletes DLL, delete model information object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Delete the DLL for the model — rxDelete","text":"","code":"rxDelete(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Delete the DLL for the model — rxDelete","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Delete the DLL for the model — rxDelete","text":"boolean stating operation successful.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDelete.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Delete the DLL for the model — rxDelete","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":null,"dir":"Reference","previous_headings":"","what":"Demote the error type — rxDemoteAddErr","title":"Demote the error type — rxDemoteAddErr","text":"Demote error type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Demote the error type — rxDemoteAddErr","text":"","code":"rxDemoteAddErr(errType)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Demote the error type — rxDemoteAddErr","text":"errType Error type factor","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Demote the error type — rxDemoteAddErr","text":"Demoted Error Type","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Demote the error type — rxDemoteAddErr","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDemoteAddErr.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Demote the error type — rxDemoteAddErr","text":"","code":"rxErrTypeCombine(\"add\") %>% rxErrTypeCombine(\"prop\") #> $transform #> [1] untransformed #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] add + prop #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] untransformed #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\" # This removes the internal additive error rxErrTypeCombine(\"add\") %>% rxErrTypeCombine(\"prop\") %>% rxDemoteAddErr() #> $transform #> [1] untransformed #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] prop #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] untransformed #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\" # This is used for logitNorm(NA), the additive portion is stripped"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":null,"dir":"Reference","previous_headings":"","what":"Jacobian and parameter derivatives — rxDfdy","title":"Jacobian and parameter derivatives — rxDfdy","text":"Return Jacobain parameter derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Jacobian and parameter derivatives — rxDfdy","text":"","code":"rxDfdy(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Jacobian and parameter derivatives — rxDfdy","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Jacobian and parameter derivatives — rxDfdy","text":"list jacobian parameters defined rxode2 object.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDfdy.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Jacobian and parameter derivatives — rxDfdy","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the DLL associated with the rxode2 object — rxDll","title":"Return the DLL associated with the rxode2 object — rxDll","text":"return dynamic load library shared object used run C code rxode2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the DLL associated with the rxode2 object — rxDll","text":"","code":"rxDll(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the DLL associated with the rxode2 object — rxDll","text":"obj rxode2 family objects character string model specification location file model specification.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the DLL associated with the rxode2 object — rxDll","text":"path library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDll.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the DLL associated with the rxode2 object — rxDll","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":null,"dir":"Reference","previous_headings":"","what":"Load rxode2 object — rxDynLoad","title":"Load rxode2 object — rxDynLoad","text":"Load rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Load rxode2 object — rxDynLoad","text":"","code":"rxDynLoad(obj) rxLoad(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Load rxode2 object — rxDynLoad","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Load rxode2 object — rxDynLoad","text":"Boolean returning rxode2 library loaded.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynLoad.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Load rxode2 object — rxDynLoad","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":null,"dir":"Reference","previous_headings":"","what":"Unload rxode2 object — rxDynUnload","title":"Unload rxode2 object — rxDynUnload","text":"Unload rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Unload rxode2 object — rxDynUnload","text":"","code":"rxDynUnload(obj) rxUnload(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Unload rxode2 object — rxDynUnload","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Unload rxode2 object — rxDynUnload","text":"Boolean returning rxode2 library loaded.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxDynUnload.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Unload rxode2 object — rxDynUnload","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":null,"dir":"Reference","previous_headings":"","what":"Combine transformations and error structures — rxErrTypeCombine","title":"Combine transformations and error structures — rxErrTypeCombine","text":"Combine error information figure transformation applied current endpoint","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Combine transformations and error structures — rxErrTypeCombine","text":"","code":"rxErrTypeCombine(oldErrType, newErrType)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Combine transformations and error structures — rxErrTypeCombine","text":"oldErrType old transformation, default zero representing prior transformation. parameter first allow piping. parameter addTransform missing oldErrType character value, functions swaps oldErrType addTransform assigns oldErrType zero assuming prior distribution. newErrType new distribution \"added\" current transformation. assumes inputs preferred distribution name, determined rxPreferredDistributionName()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Combine transformations and error structures — rxErrTypeCombine","text":"new transformation factor","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Combine transformations and error structures — rxErrTypeCombine","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxErrTypeCombine.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Combine transformations and error structures — rxErrTypeCombine","text":"","code":"rxErrTypeCombine(\"probitNorm\") #> $transform #> [1] probit #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] add #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] none #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\" rxErrTypeCombine(\"probitNorm\") %>% rxErrTypeCombine(\"boxCox\") #> $transform #> [1] probit + boxCox #> 10 Levels: boxCox yeoJohnson untransformed lnorm logit ... probit + boxCox #> #> $errType #> [1] add #> Levels: add prop pow add + prop add + pow none #> #> $errTypeF #> [1] none #> Levels: untransformed transformed f none #> #> $addProp #> [1] default #> Levels: combined1 combined2 default #> #> attr(,\"class\") #> [1] \"rxCombinedErrorList\""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand d(f)/d(eta) — rxExpandFEta_","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"Expand d(f)/d(eta)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"","code":"rxExpandFEta_(state, neta, pred, isTheta = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"state state expand neta number etas pred type prediction isTheta logical, expansion actually thetas instead etas","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandFEta_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand d(f)/d(eta) — rxExpandFEta_","text":"String symengine expressions evaluate calculate df/deta","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":null,"dir":"Reference","previous_headings":"","what":"Faster expand.grid — rxExpandGrid","title":"Faster expand.grid — rxExpandGrid","text":"support x y characters right now","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Faster expand.grid — rxExpandGrid","text":"","code":"rxExpandGrid(x, y, type = 0L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Faster expand.grid — rxExpandGrid","text":"x first element (must character) y second element (must character) type Internal type=0L traditional expand grid type=1L Jacobian expand grid (adds symbols)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Faster expand.grid — rxExpandGrid","text":"Expand grid","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Faster expand.grid — rxExpandGrid","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Faster expand.grid — rxExpandGrid","text":"","code":"## rxExpandGrid(letters, letters) #> Var1 Var2 #> 1 a a #> 2 b a #> 3 c a #> 4 d a #> 5 e a #> 6 f a #> 7 g a #> 8 h a #> 9 i a #> 10 j a #> 11 k a #> 12 l a #> 13 m a #> 14 n a #> 15 o a #> 16 p a #> 17 q a #> 18 r a #> 19 s a #> 20 t a #> 21 u a #> 22 v a #> 23 w a #> 24 x a #> 25 y a #> 26 z a #> 27 a b #> 28 b b #> 29 c b #> 30 d b #> 31 e b #> 32 f b #> 33 g b #> 34 h b #> 35 i b #> 36 j b #> 37 k b #> 38 l b #> 39 m b #> 40 n b #> 41 o b #> 42 p b #> 43 q b #> 44 r b #> 45 s b #> 46 t b #> 47 u b #> 48 v b #> 49 w b #> 50 x b #> 51 y b #> 52 z b #> 53 a c #> 54 b c #> 55 c c #> 56 d c #> 57 e c #> 58 f c #> 59 g c #> 60 h c #> 61 i c #> 62 j c #> 63 k c #> 64 l c #> 65 m c #> 66 n c #> 67 o c #> 68 p c #> 69 q c #> 70 r c #> 71 s c #> 72 t c #> 73 u c #> 74 v c #> 75 w c #> 76 x c #> 77 y c #> 78 z c #> 79 a d #> 80 b d #> 81 c d #> 82 d d #> 83 e d #> 84 f d #> 85 g d #> 86 h d #> 87 i d #> 88 j d #> 89 k d #> 90 l d #> 91 m d #> 92 n d #> 93 o d #> 94 p d #> 95 q d #> 96 r d #> 97 s d #> 98 t d #> 99 u d #> 100 v d #> 101 w d #> 102 x d #> 103 y d #> 104 z d #> 105 a e #> 106 b e #> 107 c e #> 108 d e #> 109 e e #> 110 f e #> 111 g e #> 112 h e #> 113 i e #> 114 j e #> 115 k e #> 116 l e #> 117 m e #> 118 n e #> 119 o e #> 120 p e #> 121 q e #> 122 r e #> 123 s e #> 124 t e #> 125 u e #> 126 v e #> 127 w e #> 128 x e #> 129 y e #> 130 z e #> 131 a f #> 132 b f #> 133 c f #> 134 d f #> 135 e f #> 136 f f #> 137 g f #> 138 h f #> 139 i f #> 140 j f #> 141 k f #> 142 l f #> 143 m f #> 144 n f #> 145 o f #> 146 p f #> 147 q f #> 148 r f #> 149 s f #> 150 t f #> 151 u f #> 152 v f #> 153 w f #> 154 x f #> 155 y f #> 156 z f #> 157 a g #> 158 b g #> 159 c g #> 160 d g #> 161 e g #> 162 f g #> 163 g g #> 164 h g #> 165 i g #> 166 j g #> 167 k g #> 168 l g #> 169 m g #> 170 n g #> 171 o g #> 172 p g #> 173 q g #> 174 r g #> 175 s g #> 176 t g #> 177 u g #> 178 v g #> 179 w g #> 180 x g #> 181 y g #> 182 z g #> 183 a h #> 184 b h #> 185 c h #> 186 d h #> 187 e h #> 188 f h #> 189 g h #> 190 h h #> 191 i h #> 192 j h #> 193 k h #> 194 l h #> 195 m h #> 196 n h #> 197 o h #> 198 p h #> 199 q h #> 200 r h #> 201 s h #> 202 t h #> 203 u h #> 204 v h #> 205 w h #> 206 x h #> 207 y h #> 208 z h #> 209 a i #> 210 b i #> 211 c i #> 212 d i #> 213 e i #> 214 f i #> 215 g i #> 216 h i #> 217 i i #> 218 j i #> 219 k i #> 220 l i #> 221 m i #> 222 n i #> 223 o i #> 224 p i #> 225 q i #> 226 r i #> 227 s i #> 228 t i #> 229 u i #> 230 v i #> 231 w i #> 232 x i #> 233 y i #> 234 z i #> 235 a j #> 236 b j #> 237 c j #> 238 d j #> 239 e j #> 240 f j #> 241 g j #> 242 h j #> 243 i j #> 244 j j #> 245 k j #> 246 l j #> 247 m j #> 248 n j #> 249 o j #> 250 p j #> 251 q j #> 252 r j #> 253 s j #> 254 t j #> 255 u j #> 256 v j #> 257 w j #> 258 x j #> 259 y j #> 260 z j #> 261 a k #> 262 b k #> 263 c k #> 264 d k #> 265 e k #> 266 f k #> 267 g k #> 268 h k #> 269 i k #> 270 j k #> 271 k k #> 272 l k #> 273 m k #> 274 n k #> 275 o k #> 276 p k #> 277 q k #> 278 r k #> 279 s k #> 280 t k #> 281 u k #> 282 v k #> 283 w k #> 284 x k #> 285 y k #> 286 z k #> 287 a l #> 288 b l #> 289 c l #> 290 d l #> 291 e l #> 292 f l #> 293 g l #> 294 h l #> 295 i l #> 296 j l #> 297 k l #> 298 l l #> 299 m l #> 300 n l #> 301 o l #> 302 p l #> 303 q l #> 304 r l #> 305 s l #> 306 t l #> 307 u l #> 308 v l #> 309 w l #> 310 x l #> 311 y l #> 312 z l #> 313 a m #> 314 b m #> 315 c m #> 316 d m #> 317 e m #> 318 f m #> 319 g m #> 320 h m #> 321 i m #> 322 j m #> 323 k m #> 324 l m #> 325 m m #> 326 n m #> 327 o m #> 328 p m #> 329 q m #> 330 r m #> 331 s m #> 332 t m #> 333 u m #> 334 v m #> 335 w m #> 336 x m #> 337 y m #> 338 z m #> 339 a n #> 340 b n #> 341 c n #> 342 d n #> 343 e n #> 344 f n #> 345 g n #> 346 h n #> 347 i n #> 348 j n #> 349 k n #> 350 l n #> 351 m n #> 352 n n #> 353 o n #> 354 p n #> 355 q n #> 356 r n #> 357 s n #> 358 t n #> 359 u n #> 360 v n #> 361 w n #> 362 x n #> 363 y n #> 364 z n #> 365 a o #> 366 b o #> 367 c o #> 368 d o #> 369 e o #> 370 f o #> 371 g o #> 372 h o #> 373 i o #> 374 j o #> 375 k o #> 376 l o #> 377 m o #> 378 n o #> 379 o o #> 380 p o #> 381 q o #> 382 r o #> 383 s o #> 384 t o #> 385 u o #> 386 v o #> 387 w o #> 388 x o #> 389 y o #> 390 z o #> 391 a p #> 392 b p #> 393 c p #> 394 d p #> 395 e p #> 396 f p #> 397 g p #> 398 h p #> 399 i p #> 400 j p #> 401 k p #> 402 l p #> 403 m p #> 404 n p #> 405 o p #> 406 p p #> 407 q p #> 408 r p #> 409 s p #> 410 t p #> 411 u p #> 412 v p #> 413 w p #> 414 x p #> 415 y p #> 416 z p #> 417 a q #> 418 b q #> 419 c q #> 420 d q #> 421 e q #> 422 f q #> 423 g q #> 424 h q #> 425 i q #> 426 j q #> 427 k q #> 428 l q #> 429 m q #> 430 n q #> 431 o q #> 432 p q #> 433 q q #> 434 r q #> 435 s q #> 436 t q #> 437 u q #> 438 v q #> 439 w q #> 440 x q #> 441 y q #> 442 z q #> 443 a r #> 444 b r #> 445 c r #> 446 d r #> 447 e r #> 448 f r #> 449 g r #> 450 h r #> 451 i r #> 452 j r #> 453 k r #> 454 l r #> 455 m r #> 456 n r #> 457 o r #> 458 p r #> 459 q r #> 460 r r #> 461 s r #> 462 t r #> 463 u r #> 464 v r #> 465 w r #> 466 x r #> 467 y r #> 468 z r #> 469 a s #> 470 b s #> 471 c s #> 472 d s #> 473 e s #> 474 f s #> 475 g s #> 476 h s #> 477 i s #> 478 j s #> 479 k s #> 480 l s #> 481 m s #> 482 n s #> 483 o s #> 484 p s #> 485 q s #> 486 r s #> 487 s s #> 488 t s #> 489 u s #> 490 v s #> 491 w s #> 492 x s #> 493 y s #> 494 z s #> 495 a t #> 496 b t #> 497 c t #> 498 d t #> 499 e t #> 500 f t #> 501 g t #> 502 h t #> 503 i t #> 504 j t #> 505 k t #> 506 l t #> 507 m t #> 508 n t #> 509 o t #> 510 p t #> 511 q t #> 512 r t #> 513 s t #> 514 t t #> 515 u t #> 516 v t #> 517 w t #> 518 x t #> 519 y t #> 520 z t #> 521 a u #> 522 b u #> 523 c u #> 524 d u #> 525 e u #> 526 f u #> 527 g u #> 528 h u #> 529 i u #> 530 j u #> 531 k u #> 532 l u #> 533 m u #> 534 n u #> 535 o u #> 536 p u #> 537 q u #> 538 r u #> 539 s u #> 540 t u #> 541 u u #> 542 v u #> 543 w u #> 544 x u #> 545 y u #> 546 z u #> 547 a v #> 548 b v #> 549 c v #> 550 d v #> 551 e v #> 552 f v #> 553 g v #> 554 h v #> 555 i v #> 556 j v #> 557 k v #> 558 l v #> 559 m v #> 560 n v #> 561 o v #> 562 p v #> 563 q v #> 564 r v #> 565 s v #> 566 t v #> 567 u v #> 568 v v #> 569 w v #> 570 x v #> 571 y v #> 572 z v #> 573 a w #> 574 b w #> 575 c w #> 576 d w #> 577 e w #> 578 f w #> 579 g w #> 580 h w #> 581 i w #> 582 j w #> 583 k w #> 584 l w #> 585 m w #> 586 n w #> 587 o w #> 588 p w #> 589 q w #> 590 r w #> 591 s w #> 592 t w #> 593 u w #> 594 v w #> 595 w w #> 596 x w #> 597 y w #> 598 z w #> 599 a x #> 600 b x #> 601 c x #> 602 d x #> 603 e x #> 604 f x #> 605 g x #> 606 h x #> 607 i x #> 608 j x #> 609 k x #> 610 l x #> 611 m x #> 612 n x #> 613 o x #> 614 p x #> 615 q x #> 616 r x #> 617 s x #> 618 t x #> 619 u x #> 620 v x #> 621 w x #> 622 x x #> 623 y x #> 624 z x #> 625 a y #> 626 b y #> 627 c y #> 628 d y #> 629 e y #> 630 f y #> 631 g y #> 632 h y #> 633 i y #> 634 j y #> 635 k y #> 636 l y #> 637 m y #> 638 n y #> 639 o y #> 640 p y #> 641 q y #> 642 r y #> 643 s y #> 644 t y #> 645 u y #> 646 v y #> 647 w y #> 648 x y #> 649 y y #> 650 z y #> 651 a z #> 652 b z #> 653 c z #> 654 d z #> 655 e z #> 656 f z #> 657 g z #> 658 h z #> 659 i z #> 660 j z #> 661 k z #> 662 l z #> 663 m z #> 664 n z #> 665 o z #> 666 p z #> 667 q z #> 668 r z #> 669 s z #> 670 t z #> 671 u z #> 672 v z #> 673 w z #> 674 x z #> 675 y z #> 676 z z ## Another fast method; See ## https://stackoverflow.com/questions/10405637/use-outer-instead-of-expand-grid expand.grid.jc <- function(seq1, seq2) { cbind( Var1 = rep.int(seq1, length(seq2)), Var2 = rep.int(seq2, rep.int(length(seq1), length(seq2))) ) } # \\donttest{ microbenchmark::microbenchmark(rxExpandGrid(letters, letters), expand.grid.jc(letters, letters)) #> Unit: microseconds #> expr min lq mean median uq #> rxExpandGrid(letters, letters) 11.592 12.784 13.76299 13.405 14.006 #> expand.grid.jc(letters, letters) 15.239 17.092 131.56091 18.008 19.136 #> max neval #> 36.718 100 #> 5461.767 100 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand grid internal function — rxExpandGrid_","title":"Expand grid internal function — rxExpandGrid_","text":"Expand grid internal function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand grid internal function — rxExpandGrid_","text":"","code":"rxExpandGrid_(c1, c2, type)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand grid internal function — rxExpandGrid_","text":"c1 character vector items expanded c2 second character vector items expanded type 0 typical data frame, 1 symengine sensitivity expansion","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandGrid_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand grid internal function — rxExpandGrid_","text":"data frame (type = 0) symengine string (type=1)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"Expand /else clauses multiple different types lines.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"","code":"rxExpandIfElse(model, removeInis = TRUE, removePrint = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"model Model can character, rxode2 model. needs normalized syntax, (...){} line. else statement must line closing bracket statement previous line. else statment must also contain opening bracket, like code else {} removeInis boolean indicating parameter initializations removed model. removePrint boolean indicating printing statements removed model.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"named character vector. names vector logical conditions, values lines satisfy logical conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandIfElse.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Expand if/else clauses into multiple different types of lines. — rxExpandIfElse","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand second order sensitivity — rxExpandSens2_","title":"Expand second order sensitivity — rxExpandSens2_","text":"Expand second order sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand second order sensitivity — rxExpandSens2_","text":"","code":"rxExpandSens2_(state, s1, s2)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand second order sensitivity — rxExpandSens2_","text":"state state expand s1 variables calculate sensitivity s2 variables calculate second order sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens2_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand second order sensitivity — rxExpandSens2_","text":"string symengine second order sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":null,"dir":"Reference","previous_headings":"","what":"Expand sensitivity — rxExpandSens_","title":"Expand sensitivity — rxExpandSens_","text":"Expand sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Expand sensitivity — rxExpandSens_","text":"","code":"rxExpandSens_(state, calcSens)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Expand sensitivity — rxExpandSens_","text":"state state expand calcSens variables calculate sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxExpandSens_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Expand sensitivity — rxExpandSens_","text":"symengine string expanded sensitivity","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":null,"dir":"Reference","previous_headings":"","what":"Clear memoise cache for rxode2 — rxForget","title":"Clear memoise cache for rxode2 — rxForget","text":"Clear memoise cache rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Clear memoise cache for rxode2 — rxForget","text":"","code":"rxForget()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Clear memoise cache for rxode2 — rxForget","text":"nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxForget.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Clear memoise cache for rxode2 — rxForget","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":null,"dir":"Reference","previous_headings":"","what":"Add/Create C functions for use in rxode2 — rxFun","title":"Add/Create C functions for use in rxode2 — rxFun","text":"Add/Create C functions use rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add/Create C functions for use in rxode2 — rxFun","text":"","code":"rxFun(name, args, cCode) rxRmFun(name)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add/Create C functions for use in rxode2 — rxFun","text":"name can either give name user function simple R function wish convert C. rxode2 convert R function C, name function match function name provided number arguments match R function provided. Hence, providing R function conversion C, rest arguments implied. args gives arguments user function cCode C-code new function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxFun.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add/Create C functions for use in rxode2 — rxFun","text":"","code":"# \\donttest{ ## Right now rxode2 is not aware of the function fun ## Therefore it cannot translate it to symengine or ## Compile a model with it. try(rxode2(\"a=fun(a,b,c)\")) #> #> #> Error : syntax errors (see above) ## Note for this approach to work, it cannot interfere with C ## function names or reserved rxode2 special terms. Therefore ## f(x) would not work since f is an alias for bioavailability. fun <- \" double fun(double a, double b, double c) { return a*a+b*a+c; } \" ## C-code for function rxFun(\"fun\", c(\"a\", \"b\", \"c\"), fun) ## Added function ## Now rxode2 knows how to translate this function to symengine rxToSE(\"fun(a,b,c)\") #> [1] \"fun(a,b,c)\" ## And will take a central difference when calculating derivatives rxFromSE(\"Derivative(fun(a,b,c),a)\") #> [1] \"(fun((a)+6.05545445239334e-06,b,c)-fun(a,b,c))/6.05545445239334e-06\" ## Of course, you could specify the derivative table manually rxD(\"fun\", list( function(a, b, c) { paste0(\"2*\", a, \"+\", b) }, function(a, b, c) { return(a) }, function(a, b, c) { return(\"0.0\") } )) rxFromSE(\"Derivative(fun(a,b,c),a)\") #> [1] \"2*a+b\" # You can also remove the functions by `rxRmFun` rxRmFun(\"fun\") # you can also use R functions directly in rxode2 gg <- function(x, y) { x + y } f <- rxode2({ z = gg(x, y) }) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ e <- et(1:10) |> as.data.frame() e$x <- 1:10 e$y <- 21:30 rxSolve(f, e) #> Warning: not thread safe method, using 1 core #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time z x y #> #> 1 1 22 1 21 #> 2 2 24 2 22 #> 3 3 26 3 23 #> 4 4 28 4 24 #> 5 5 30 5 25 #> 6 6 32 6 26 #> # ℹ 4 more rows # Note that since it touches R, it can only run single-threaded. # There are also requirements for the function: # # 1. It accepts one value per argument (numeric) # # 2. It returns one numeric value # If it is a simple function (like gg) you can also convert it to C # using rxFun and load it into rxode2 rxFun(gg) #> → finding duplicate expressions in d(gg)/d(x)... #> → finding duplicate expressions in d(gg)/d(y)... #> converted R function 'gg' to C (will now use in rxode2) #> converted R function 'rx_gg_d_x' to C (will now use in rxode2) #> converted R function 'rx_gg_d_y' to C (will now use in rxode2) #> Added derivative table for 'gg' rxSolve(f, e) #> compiled with R user function 'gg'; now there is a clashing C user function #> triggered a recompile to use the C user function (they are always preferred) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time z x y #> #> 1 1 22 1 21 #> 2 2 24 2 22 #> 3 3 26 3 23 #> 4 4 28 4 24 #> 5 5 30 5 25 #> 6 6 32 6 26 #> # ℹ 4 more rows # to stop the recompile simply reassign the function f <- rxode2(f) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ rxSolve(f, e) #> ── Solved rxode2 object ── #> ── Parameters ($params): ── #> # A tibble: 1 × 0 #> ── Initial Conditions ($inits): ── #> named numeric(0) #> ── First part of data (object): ── #> # A tibble: 10 × 4 #> time z x y #> #> 1 1 22 1 21 #> 2 2 24 2 22 #> 3 3 26 3 23 #> 4 4 28 4 24 #> 5 5 30 5 25 #> 6 6 32 6 26 #> # ℹ 4 more rows rxRmFun(\"gg\") rm(gg) rm(f) # You can also automatically convert a R function to R code (and # calculate first derivatives) fun <- function(a, b, c) { a^2+b*a+c } rxFun(fun) #> → finding duplicate expressions in d(fun)/d(a)... #> → finding duplicate expressions in d(fun)/d(b)... #> → finding duplicate expressions in d(fun)/d(c)... #> converted R function 'fun' to C (will now use in rxode2) #> converted R function 'rx_fun_d_a' to C (will now use in rxode2) #> converted R function 'rx_fun_d_b' to C (will now use in rxode2) #> converted R function 'rx_fun_d_c' to C (will now use in rxode2) #> Added derivative table for 'fun' # You can see the R code if you want with rxC message(rxC(\"fun\")) #> double fun(double a, double b, double c) { #> double _lastValue=NA_REAL; #> _lastValue = R_pow_di(a,2)+b*a+c; #> return _lastValue; #> } # you can also remove both the function and the # derivatives with rxRmFun(\"fun\") rxRmFun(\"fun\") # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":null,"dir":"Reference","previous_headings":"","what":"rxGetControl option from ui — rxGetControl","title":"rxGetControl option from ui — rxGetControl","text":"rxGetControl option ui","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxGetControl option from ui — rxGetControl","text":"","code":"rxGetControl(ui, option, default)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxGetControl option from ui — rxGetControl","text":"ui rxode2 ui object option Option get default Default value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxGetControl option from ui — rxGetControl","text":"Option (present) default value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetControl.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxGetControl option from ui — rxGetControl","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":null,"dir":"Reference","previous_headings":"","what":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"S3 method getting distribution lines rxode2 simulation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"","code":"rxGetDistributionSimulationLines(line) # S3 method for norm rxGetDistributionSimulationLines(line) # S3 method for dnorm rxGetDistributionSimulationLines(line) # S3 method for t rxGetDistributionSimulationLines(line) # S3 method for cauchy rxGetDistributionSimulationLines(line) # S3 method for ordinal rxGetDistributionSimulationLines(line) # S3 method for default rxGetDistributionSimulationLines(line) # S3 method for rxUi rxGetDistributionSimulationLines(line)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"line Parsed rxode2 model environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"Lines simulation ipred dv. based idea focei parameters defined","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetDistributionSimulationLines.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This is a S3 method for getting the distribution lines for a rxode2 simulation — rxGetDistributionSimulationLines","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the linear compartment model true function — rxGetLin","title":"Get the linear compartment model true function — rxGetLin","text":"Get linear compartment model true function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the linear compartment model true function — rxGetLin","text":"","code":"rxGetLin( model, linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), verbose = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the linear compartment model true function — rxGetLin","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . linCmtSens method calculate linCmt() solutions verbose TRUE verbose linear compartmental model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the linear compartment model true function — rxGetLin","text":"model linCmt() replaced linCmtA()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetLin.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the linear compartment model true function — rxGetLin","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Get model properties without compiling it. — rxGetModel","title":"Get model properties without compiling it. — rxGetModel","text":"Get model properties without compiling .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get model properties without compiling it. — rxGetModel","text":"","code":"rxGetModel( model, calcSens = NULL, calcJac = NULL, collapseModel = NULL, indLin = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get model properties without compiling it. — rxGetModel","text":"model rxode2 specification calcSens boolean indicating rxode2 calculate sensitivities according specified ODEs. calcJac boolean indicating rxode2 calculate Jacobain according specified ODEs. collapseModel boolean indicating rxode2 remove LHS variables calculating sensitivities. indLin Calculate inductive linearization matrices compile inductive linearization support.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get model properties without compiling it. — rxGetModel","text":"rxode2 trans list","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get model properties without compiling it. — rxGetModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Get rxode2 model from object — rxGetrxode2","title":"Get rxode2 model from object — rxGetrxode2","text":"Get rxode2 model object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get rxode2 model from object — rxGetrxode2","text":"","code":"rxGetrxode2(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get rxode2 model from object — rxGetrxode2","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxGetrxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get rxode2 model from object — rxGetrxode2","text":"rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":null,"dir":"Reference","previous_headings":"","what":"Format rxSolve and related objects as html. — rxHtml","title":"Format rxSolve and related objects as html. — rxHtml","text":"Format rxSolve related objects html.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Format rxSolve and related objects as html. — rxHtml","text":"","code":"rxHtml(x, ...) # S3 method for rxSolve rxHtml(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Format rxSolve and related objects as html. — rxHtml","text":"x rxode2 object ... Extra arguments sent kable","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Format rxSolve and related objects as html. — rxHtml","text":"html code rxSolve object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxHtml.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Format rxSolve and related objects as html. — rxHtml","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":null,"dir":"Reference","previous_headings":"","what":"Set the preferred factoring by state — rxIndLinState","title":"Set the preferred factoring by state — rxIndLinState","text":"Set preferred factoring state","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set the preferred factoring by state — rxIndLinState","text":"","code":"rxIndLinState(preferred = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set the preferred factoring by state — rxIndLinState","text":"preferred list state's preferred factorization","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set the preferred factoring by state — rxIndLinState","text":"Nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinState.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set the preferred factoring by state — rxIndLinState","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":null,"dir":"Reference","previous_headings":"","what":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"one state ODE separated specifies incorporated matrix exponential.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"","code":"rxIndLinStrategy(strategy = c(\"curState\", \"split\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"strategy strategy inductive linearization matrix building curState Prefer parameterizing terms current state, followed first state observed term. split Split parameterization states term dividing number states term adding matrix term state.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"Nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLinStrategy.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This sets the inductive linearization strategy for matrix building — rxIndLinStrategy","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLin_.html","id":null,"dir":"Reference","previous_headings":"","what":"Inductive linearization solver — rxIndLin_","title":"Inductive linearization solver — rxIndLin_","text":"Inductive linearization solver","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLin_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Inductive linearization solver — rxIndLin_","text":"cSub = Current subject number op rxode2 solving options tp Prior time point/time zero yp Prior state; vector size = neq; Final state updated tf Final Time InfusionRate = Rates compartment; vector size = neq Indicator compartment \"\" cache 0 = Cache doIndLin == 0, cache > 0 = nInf-1 rxode2 matrix exponential function IndF rxode2 Inductive Linearization function F","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIndLin_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Inductive linearization solver — rxIndLin_","text":"Returns status solving 1 = Successful solve -1 = Maximum number iterations reached inductive linearization","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":null,"dir":"Reference","previous_headings":"","what":"Initial Values and State values for a rxode2 object — rxInits","title":"Initial Values and State values for a rxode2 object — rxInits","text":"Returns initial values rxDll object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Initial Values and State values for a rxode2 object — rxInits","text":"","code":"rxInits( obj, vec = NULL, req = NULL, defaultValue = 0, noerror = FALSE, noini = FALSE, rxLines = FALSE ) rxInit( obj, vec = NULL, req = NULL, defaultValue = 0, noerror = FALSE, noini = FALSE, rxLines = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Initial Values and State values for a rxode2 object — rxInits","text":"obj rxDll, rxode2, named vector representing default initial arguments vec supplied, named vector model. req Required names, required order ODE solver defaultValue number NA representing default value parameters missing vec, required req. noerror boolean specifying error thrown missing parameter values default = NA","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Initial Values and State values for a rxode2 object — rxInits","text":"Initial values rxDll object","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInits.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Initial Values and State values for a rxode2 object — rxInits","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":null,"dir":"Reference","previous_headings":"","what":"Invert matrix using RcppArmadillo. — rxInv","title":"Invert matrix using RcppArmadillo. — rxInv","text":"Invert matrix using RcppArmadillo.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Invert matrix using RcppArmadillo. — rxInv","text":"","code":"rxInv(matrix)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Invert matrix using RcppArmadillo. — rxInv","text":"matrix matrix inverted.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxInv.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Invert matrix using RcppArmadillo. — rxInv","text":"inverse pseudo inverse matrix.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":null,"dir":"Reference","previous_headings":"","what":"Check the type of an object using Rcpp — rxIs","title":"Check the type of an object using Rcpp — rxIs","text":"Check type object using Rcpp","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check the type of an object using Rcpp — rxIs","text":"","code":"rxIs(obj, cls)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check the type of an object using Rcpp — rxIs","text":"obj Object check cls Type class. s3 classes lists/environments primitive classes checked. matrix types distinguished numeric.matrix, integer.matrix, logical.matrix, character.matrix well traditional matrix class. Additionally checks event.data.frame data.frame object time, evid amt. (UPPER, lower Title cases accepted)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check the type of an object using Rcpp — rxIs","text":"boolean indicating object member class.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Check the type of an object using Rcpp — rxIs","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":null,"dir":"Reference","previous_headings":"","what":"Checks if the rxode2 object was built with the current build — rxIsCurrent","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"Checks rxode2 object built current build","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"","code":"rxIsCurrent(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsCurrent.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Checks if the rxode2 object was built with the current build — rxIsCurrent","text":"boolean indicating built current rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":null,"dir":"Reference","previous_headings":"","what":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"Determine DLL associated rxode2 object loaded","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"","code":"rxIsLoaded(obj) rxDllLoaded(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"Boolean returning rxode2 library loaded.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxIsLoaded.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Determine if the DLL associated with the rxode2 object is loaded — rxIsLoaded","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":null,"dir":"Reference","previous_headings":"","what":"Left handed Variables — rxLhs","title":"Left handed Variables — rxLhs","text":"returns model calculated variables","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Left handed Variables — rxLhs","text":"","code":"rxLhs(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Left handed Variables — rxLhs","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Left handed Variables — rxLhs","text":"character vector listing calculated parameters","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLhs.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Left handed Variables — rxLhs","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":null,"dir":"Reference","previous_headings":"","what":"Lock/unlocking of rxode2 dll file — rxLock","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"Lock/unlocking rxode2 dll file","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"","code":"rxLock(obj) rxUnlock(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxLock.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Lock/unlocking of rxode2 dll file — rxLock","text":"nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the md5 of an rxode2 object or file — rxMd5","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"md5 based model possibly extra c code supplied model. addition md5 based syntax options, compiled rxode2 library md5, rxode2 version/repository.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"","code":"rxMd5(model, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . ... ignored arguments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"rxode2 object, return named list: file_md5 model's file's md5 parsed_md5 parsed model's file's md5. Otherwise return md5 based arguments provided","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxMd5.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Return the md5 of an rxode2 object or file — rxMd5","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":null,"dir":"Reference","previous_headings":"","what":"All model variables for a rxode2 object — rxModelVars","title":"All model variables for a rxode2 object — rxModelVars","text":"Return known model variables specified rxode2 object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"All model variables for a rxode2 object — rxModelVars","text":"","code":"rxModelVars(obj) rxModelVarsS3(obj) # S3 method for rxUi rxModelVarsS3(obj) # S3 method for default rxModelVarsS3(obj)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"All model variables for a rxode2 object — rxModelVars","text":"obj rxode2 family objects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"All model variables for a rxode2 object — rxModelVars","text":"list rxode2 model properties including: params character vector names model parameters lhs character vector names model calculated parameters state character vector compartments rxode2 object trans named vector translated model properties including type jacobian specified, C function prefixes, well C functions names called compiled model. md5a named vector gives digest model (file_md5) parsed model (parsed_md5) model named vector giving input model (model), normalized model (comments standard syntax parsing, normModel), interim code used generate final C file parseModel","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"All model variables for a rxode2 object — rxModelVars","text":"items calculated compilation; built-rxode2 compiled DLL. allow extension, s3 hook added function rxModelVarsS3.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModelVars.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"All model variables for a rxode2 object — rxModelVars","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the rxModels information — rxModels_","title":"Get the rxModels information — rxModels_","text":"Get rxModels information","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the rxModels information — rxModels_","text":"","code":"rxModels_(env = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the rxModels information — rxModels_","text":"env boolean returns environment models stored (TRUE), currently assigned rxode2 model variables (FALSE).","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxModels_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the rxModels information — rxModels_","text":"internal rxModels information environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the normalized model — rxNorm","title":"Get the normalized model — rxNorm","text":"get syntax preferred model processing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the normalized model — rxNorm","text":"","code":"rxNorm(obj, condition = NULL, removeInis, removeJac, removeSens)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get the normalized model — rxNorm","text":"obj rxode2 family objects condition Character string logical condition use subsetting normalized model. missing, condition set via rxCondition, return whole code conditional settings intact. condition set rxCondition, use condition. removeInis boolean indicating parameter initialization removed model removeJac boolean indicating Jacobians removed. removeSens boolean indicating sensitivities removed.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the normalized model — rxNorm","text":"Normalized Normal syntax (comments)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxNorm.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get the normalized model — rxNorm","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":null,"dir":"Reference","previous_headings":"","what":"Optimize rxode2 for computer evaluation — rxOptExpr","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"optimizes rxode2 code computer evaluation calculating redundant expressions .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"","code":"rxOptExpr(x, msg = \"model\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"x rxode2 model can accessed rxNorm msg name type object rxode2 optimizing message optimizing. example \"model\" produce following message optimizing model: finding duplicate expressions model...","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"Optimized rxode2 model text. order type lhs state variables maintained evaluation sped . parameters names maintained, order may modified.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxOptExpr.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Optimize rxode2 for computer evaluation — rxOptExpr","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":null,"dir":"Reference","previous_headings":"","what":"Parameters specified by the model — rxParams","title":"Parameters specified by the model — rxParams","text":"returns model's parameters required solve ODE system, can used pipe parameters rxode2 solve","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Parameters specified by the model — rxParams","text":"","code":"rxParams(obj, ...) # S3 method for rxode2 rxParams( obj, constants = TRUE, ..., params = NULL, inits = NULL, iCov = NULL, keep = NULL, thetaMat = NULL, omega = NULL, dfSub = NULL, sigma = NULL, dfObs = NULL, nSub = NULL, nStud = NULL ) # S3 method for rxSolve rxParams( obj, constants = TRUE, ..., params = NULL, inits = NULL, iCov = NULL, keep = NULL, thetaMat = NULL, omega = NULL, dfSub = NULL, sigma = NULL, dfObs = NULL, nSub = NULL, nStud = NULL ) # S3 method for rxEt rxParams( obj, ..., params = NULL, inits = NULL, iCov = NULL, keep = NULL, thetaMat = NULL, omega = NULL, dfSub = NULL, sigma = NULL, dfObs = NULL, nSub = NULL, nStud = NULL ) rxParam(obj, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Parameters specified by the model — rxParams","text":"obj rxode2 family objects ... arguments including scaling factors compartment. includes S# = numeric scale compartment # dividing compartment amount scale factor, like NONMEM. constants boolean indicting constants included list parameters. Currently rxode2 parses constants variables case wish change without recompiling rxode2 model. params numeric named vector values every parameter ODE system; names must correspond parameter identifiers used ODE specification; inits vector initial values state variables (e.g., amounts compartment), order vector must state variables (e.g., PK/PD compartments); iCov data frame individual non-time varying covariates combine events dataset merge. keep Columns keep either input dataset iCov dataset. iCov dataset, column kept per line. input dataset, records added data LOCF (Last Observation Carried forward) imputation performed. thetaMat Named theta matrix. omega Estimate Covariance matrix. omega list, assume block matrix convert full matrix simulations. omega NA using rxode2 ui model, subject variability described omega matrix set zero. dfSub Degrees freedom sample subject variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. sigma Named sigma covariance Cholesky decomposition covariance matrix. names columns indicate parameters simulated. simulated every observation solved system. sigma NA using rxode2 ui model, unexplained variability described sigma matrix set zero. dfObs Degrees freedom sample unexplained variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. nSub Number subject variabilities (ETAs) simulated every realization parameters. nStud Number virtual studies characterize uncertainty estimated parameters.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Parameters specified by the model — rxParams","text":"extracting parameters rxode2 model, character vector listing parameters model.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParams.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Parameters specified by the model — rxParams","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":null,"dir":"Reference","previous_headings":"","what":"Prepare Error function for inclusion in rxode2 — rxParseErr","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"Prepare Error function inclusion rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"","code":"rxParseErr( x, baseTheta, ret = \"rx_r_\", init = NULL, addProp = c(\"combined2\", \"combined1\") )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"x error function baseTheta Base theta start numbering add(.) prop(.) . ret Internal return type. changed user... init Initialization vector","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"rxode2 transformed text","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParseErr.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prepare Error function for inclusion in rxode2 — rxParseErr","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":null,"dir":"Reference","previous_headings":"","what":"Parse PK function for inclusion in rxode2 — rxParsePk","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"Parse PK function inclusion rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"","code":"rxParsePk(x, init = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"x PK function init Initialization vector","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"rxode2 transformed text.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePk.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Parse PK function for inclusion in rxode2 — rxParsePk","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":null,"dir":"Reference","previous_headings":"","what":"Prepare Pred function for inclusion in rxode2 — rxParsePred","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"Prepare Pred function inclusion rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"","code":"rxParsePred(x, init = NULL, err = NULL, addProp = c(\"combined2\", \"combined1\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"x pred function init Initialization vector","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"rxode2 transformed text.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxParsePred.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prepare Pred function for inclusion in rxode2 — rxParsePred","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":null,"dir":"Reference","previous_headings":"","what":"Creates a package from compiled rxode2 models — rxPkg","title":"Creates a package from compiled rxode2 models — rxPkg","text":"Creates package compiled rxode2 models","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Creates a package from compiled rxode2 models — rxPkg","text":"","code":"rxPkg( ..., package, wd = getwd(), action = c(\"install\", \"build\", \"binary\", \"create\"), license = c(\"gpl3\", \"lgpl\", \"mit\", \"agpl3\"), name = \"Firstname Lastname\", fields = list() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Creates a package from compiled rxode2 models — rxPkg","text":"... Models build package package String package name create wd character string working directory create subdirectory according modName. specified, subdirectory named “modName.d” created populated C file, dynamic loading library, plus various working files. missing, files created (removed) temporary directory, rxode2 DLL model created current directory named rx_????_platform, example rx_129f8f97fb94a87ca49ca8dafe691e1e_i386.dll action Type action take package created license type license package. name Full name author fields named list fields add DESCRIPTION, potentially overriding default values. See use_description() can set personalized defaults using package options.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Creates a package from compiled rxode2 models — rxPkg","text":"function returns nothing used side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPkg.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Creates a package from compiled rxode2 models — rxPkg","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate a from a Poisson process — rxPp","title":"Simulate a from a Poisson process — rxPp","text":"Simulate Poisson process","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate a from a Poisson process — rxPp","text":"","code":"rxPp( n, lambda, gamma = 1, prob = NULL, t0 = 0, tmax = Inf, randomOrder = FALSE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate a from a Poisson process — rxPp","text":"n Number time points simulate Poisson process lambda Rate Poisson process gamma Asymmetry rate Poisson process. gamma=1.0, simulates homogenous Poisson process. gamma<1.0, Poisson process events early, gamma > 1.0, Poisson process events late process. gamma non-zero, tmax infinite indicate end Poisson process simulated. pharamcometric cases, end study. Internally uses rate : l(t) = lambdagamma(t/tmax)^(gamma-1) prob specified, probability function one argument, time, gives probability Poisson time t accepted rejection time. t0 starting time Poisson process tmax maximum time Poisson process randomOrder TRUE randomize order Poisson events. default (FALSE) returns Poisson process order events occurred.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate a from a Poisson process — rxPp","text":"returns vector Poisson process times; dropout >= tmax, rest times = tmax indicate dropout equal tmax.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simulate a from a Poisson process — rxPp","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPp.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate a from a Poisson process — rxPp","text":"","code":"## Sample homogenous Poisson process of rate 1/10 rxPp(10, 1 / 10) #> [1] 11.91444 17.83410 35.86940 43.33875 52.17679 58.01848 61.61956 67.58865 #> [9] 75.75432 80.50742 ## Sample inhomogenous Poisson rate of 1/10 rxPp(10, 1 / 10, gamma = 2, tmax = 100) #> [1] 27.11790 29.33779 47.21930 81.03344 90.81621 94.61763 100.00000 #> [8] 100.00000 100.00000 100.00000 ## Typically the Poisson process times are in a sequential order, ## using randomOrder gives the Poisson process in random order rxPp(10, 1 / 10, gamma = 2, tmax = 10, randomOrder = TRUE) #> [1] 10 10 10 10 10 10 10 10 10 10 ## This uses an arbitrary function to sample a non-homogenous Poisson process rxPp(10, 1 / 10, prob = function(x) { 1/(1+abs(x)) }) #> [1] 41.60962 138.35684 188.08757 211.56756 309.76428 470.17650 488.34307 #> [8] 575.85332 600.88539 610.34441"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":null,"dir":"Reference","previous_headings":"","what":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"determined internal preferred condition name list .errIdenticalDists","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"","code":"rxPreferredDistributionName(dist)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"dist input distribution","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"Preferred distribution term","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPreferredDistributionName.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Change distribution name to the preferred distribution name term — rxPreferredDistributionName","text":"","code":"rxPreferredDistributionName(\"dt\") #> [1] \"t\" rxPreferredDistributionName(\"add\") #> [1] \"add\" # can be vectorized rxPreferredDistributionName(c(\"add\",\"dt\")) #> add dt #> \"add\" \"t\""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":null,"dir":"Reference","previous_headings":"","what":"rxode2 progress bar functions — rxProgress","title":"rxode2 progress bar functions — rxProgress","text":"rxProgress sets progress bar","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxode2 progress bar functions — rxProgress","text":"","code":"rxProgress(num, core = 0L) rxTick() rxProgressStop(clear = TRUE) rxProgressAbort(error = \"Aborted calculation\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxode2 progress bar functions — rxProgress","text":"num Tot number operations track core Number cores show. 1, show number cores clear Boolean telling clear progress bar completion (displayed). default TRUE error rxProgressAbort error displayed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxode2 progress bar functions — rxProgress","text":"return NULL invisibly.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"rxode2 progress bar functions — rxProgress","text":"rxTick progress bar tick rxProgressStop stop progress bar rxProgressAbort shows abort rxProgressStop called.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxode2 progress bar functions — rxProgress","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxProgress.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"rxode2 progress bar functions — rxProgress","text":"","code":"f <- function() { on.exit({ rxProgressAbort() }) rxProgress(100) for (i in 1:100) { rxTick() Sys.sleep(1 / 100) } rxProgressStop() } # \\donttest{ f() # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":null,"dir":"Reference","previous_headings":"","what":"Prune branches (ie if/else) from rxode2 — rxPrune","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"prunes branches (ie /else) rxode2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"","code":"rxPrune(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"x rxode2 model can accessed rxNorm","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"Pruned rxode2 model text.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxPrune.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prune branches (ie if/else) from rxode2 — rxPrune","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":null,"dir":"Reference","previous_headings":"","what":"Reload rxode2 DLL — rxReload","title":"Reload rxode2 DLL — rxReload","text":"Can useful debugging","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Reload rxode2 DLL — rxReload","text":"","code":"rxReload()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Reload rxode2 DLL — rxReload","text":"boolean object reloaded","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReload.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Reload rxode2 DLL — rxReload","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":null,"dir":"Reference","previous_headings":"","what":"rxRemoveControl options for UI object — rxRemoveControl","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"rxRemoveControl options UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"","code":"rxRemoveControl(ui)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"ui rxode2 ui object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRemoveControl.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxRemoveControl options for UI object — rxRemoveControl","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":null,"dir":"Reference","previous_headings":"","what":"Rename items inside of a rxode2 ui model — rxRename","title":"Rename items inside of a rxode2 ui model — rxRename","text":"rxRename() changes names individual variables, lhs, ode states using new_name = old_name syntax","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rename items inside of a rxode2 ui model — rxRename","text":"","code":"rxRename(.data, ..., envir = parent.frame()) .rxRename(.data, ..., envir = parent.frame()) rename.rxUi(.data, ...) rename.function(.data, ...) # S3 method for rxUi rxRename(.data, ...) # S3 method for `function` rxRename(.data, ...) # S3 method for default rxRename(.data, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rename items inside of a rxode2 ui model — rxRename","text":".data rxode2 ui function, named data consistent dplyr::rename() ... rename items envir Environment evaluation","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rename items inside of a rxode2 ui model — rxRename","text":"New model items renamed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Rename items inside of a rxode2 ui model — rxRename","text":"similar dplyr's rename() function. dplyr loaded, s3 methods work ui objects. Note .rxRename() internal function called renaming likely need call unless writing extension function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Rename items inside of a rxode2 ui model — rxRename","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRename.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Rename items inside of a rxode2 ui model — rxRename","text":"","code":"ocmt <- function() { ini({ tka <- exp(0.45) # Ka tcl <- exp(1) # Cl ## This works with interactive models ## You may also label the preceding line with label(\"label text\") tv <- exp(3.45) # log V ## the label(\"Label name\") works with all models add.sd <- 0.7 }) model({ ka <- tka cl <- tcl v <- tv d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } ocmt %>% rxRename(cpParent=cp) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 1.568312 2.718282 31.500392 0.700000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 1.56831218549017 #> label(\"Ka\") #> tcl <- 2.71828182845905 #> label(\"Cl\") #> tv <- 31.5003923087479 #> label(\"log V\") #> add.sd <- c(0, 0.7) #> }) #> model({ #> ka <- tka #> cl <- tcl #> v <- tv #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cpParent = center/v #> cpParent ~ add(add.sd) #> }) #> }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":null,"dir":"Reference","previous_headings":"","what":"Rep R0 for foce — rxRepR0_","title":"Rep R0 for foce — rxRepR0_","text":"Rep R0 foce","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rep R0 for foce — rxRepR0_","text":"","code":"rxRepR0_(neta)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rep R0 for foce — rxRepR0_","text":"neta ETA substitute","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxRepR0_.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rep R0 for foce — rxRepR0_","text":"Returns string R code substitute rx_r expression symengine environment .s","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReservedKeywords.html","id":null,"dir":"Reference","previous_headings":"","what":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","title":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","text":"list description rxode2 supported reserved keywords","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReservedKeywords.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","text":"","code":"rxReservedKeywords"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxReservedKeywords.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"A list and description of rxode2 supported reserved keywords — rxReservedKeywords","text":"data frame 3 columns 31 rows Reserved Name Reserved Keyword Name Meaning Reserved Keyword Meaning Alias Keyword Alias","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxResidualError.html","id":null,"dir":"Reference","previous_headings":"","what":"A description of Rode2 supported residual errors — rxResidualError","title":"A description of Rode2 supported residual errors — rxResidualError","text":"description Rode2 supported residual errors","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxResidualError.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A description of Rode2 supported residual errors — rxResidualError","text":"","code":"rxResidualError"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxResidualError.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"A description of Rode2 supported residual errors — rxResidualError","text":"data frame 6 columns 181 rows Error model description type residual error Functional Form additive proportional functional form used Transformation type transformation done DV prediction code Example code residual error type addProp type add+prop residual error default equivalent lhs left handed side specification represents, either response variable, compartment specification","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":null,"dir":"Reference","previous_headings":"","what":"Load a model into a symengine environment — rxS","title":"Load a model into a symengine environment — rxS","text":"Load model symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Load a model into a symengine environment — rxS","text":"","code":"rxS(x, doConst = TRUE, promoteLinSens = FALSE, envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Load a model into a symengine environment — rxS","text":"x rxode2 object doConst Load constants environment well. promoteLinSens Promote solved linear compartment systems sensitivity-based solutions. envir default NULL; Environment put symengine variables .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Load a model into a symengine environment — rxS","text":"rxode2/symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxS.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Load a model into a symengine environment — rxS","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":null,"dir":"Reference","previous_headings":"","what":"rxSetControl options for UI object — rxSetControl","title":"rxSetControl options for UI object — rxSetControl","text":"rxSetControl options UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxSetControl options for UI object — rxSetControl","text":"","code":"rxSetControl(ui, control)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxSetControl options for UI object — rxSetControl","text":"ui rxode2 ui object control Default value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxSetControl options for UI object — rxSetControl","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetControl.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxSetControl options for UI object — rxSetControl","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":null,"dir":"Reference","previous_headings":"","what":"Assign covariates for piping — rxSetCovariateNamesForPiping","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"Assign covariates piping","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"","code":"rxSetCovariateNamesForPiping(covariates = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"covariates NULL (covariates), list covariates. nlmixr uses function set covariates pipe nlmixr fit.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetCovariateNamesForPiping.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Assign covariates for piping — rxSetCovariateNamesForPiping","text":"","code":"# First set the name of known covariates # Note this is case sensitive rxSetCovariateNamesForPiping(c(\"WT\",\"HT\", \"TC\")) one.compartment <- function() { ini({ tka <- 0.45 ; label(\"Log Ka\") tcl <- 1 ; label(\"Log Cl\") tv <- 3.45 ; label(\"Log V\") eta.ka ~ 0.6 eta.cl ~ 0.3 eta.v ~ 0.1 add.err <- 0.7 }) model({ ka <- exp(tka + eta.ka) cl <- exp(tcl + eta.cl) v <- exp(tv + eta.v) d / dt(depot) <- -ka * depot d/dt(depot) <- -ka * depot d / dt(center) <- ka * depot - cl / v * center cp <- center / v cp ~ add(add.err) }) } # now TC is detected as a covariate instead of a population parameter one.compartment %>% model({ka <- exp(tka + eta.ka + TC * cov_C)}) #> #> #> ℹ add covariate `TC` (known covariate) #> ℹ add population parameter `cov_C` and set estimate to 1 #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.err cov_C #> 0.45 1.00 3.45 0.70 1.00 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level covariates #> 1 tka eta.ka id TC*cov_C #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.45 #> label(\"Log Ka\") #> tcl <- 1 #> label(\"Log Cl\") #> tv <- 3.45 #> label(\"Log V\") #> add.err <- c(0, 0.7) #> cov_C <- 1 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka + TC * cov_C) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) <- -ka * depot #> d/dt(depot) <- -ka * depot #> d/dt(center) <- ka * depot - cl/v * center #> cp <- center/v #> cp ~ add(add.err) #> }) #> } # You can turn it off by simply adding it back rxSetCovariateNamesForPiping() one.compartment %>% model({ka <- exp(tka + eta.ka + TC * cov_C)}) #> #> #> ℹ add population parameter `TC` and set estimate to 1 #> ℹ add population parameter `cov_C` and set estimate to 1 #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.err TC cov_C #> 0.45 1.00 3.45 0.70 1.00 1.00 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0.6 0.0 0.0 #> eta.cl 0.0 0.3 0.0 #> eta.v 0.0 0.0 0.1 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.45 #> label(\"Log Ka\") #> tcl <- 1 #> label(\"Log Cl\") #> tv <- 3.45 #> label(\"Log V\") #> add.err <- c(0, 0.7) #> TC <- 1 #> cov_C <- 1 #> eta.ka ~ 0.6 #> eta.cl ~ 0.3 #> eta.v ~ 0.1 #> }) #> model({ #> ka <- exp(tka + eta.ka + TC * cov_C) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) <- -ka * depot #> d/dt(depot) <- -ka * depot #> d/dt(center) <- ka * depot - cl/v * center #> cp <- center/v #> cp ~ add(add.err) #> }) #> } # The covariates you set with `rxSetCovariateNamesForPiping()` # are turned off every time you solve (or fit in nlmixr)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":null,"dir":"Reference","previous_headings":"","what":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"Set variables model piping automatic covarite selection","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"","code":"rxSetPipingAuto( thetamodelVars = rex::rex(or(\"tv\", \"t\", \"pop\", \"POP\", \"Pop\", \"TV\", \"T\", \"cov\", \"err\", \"eff\")), covariateExceptions = rex::rex(start, or(\"wt\", \"sex\", \"crcl\"), end), etaParts = c(\"eta\", \"ETA\", \"Eta\", \"ppv\", \"PPV\", \"Ppv\", \"iiv\", \"Iiv\", \"bsv\", \"Bsv\", \"BSV\", \"bpv\", \"Bpv\", \"BPV\", \"psv\", \"PSV\", \"Psv\") )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"thetamodelVars prefixes theta model variables regular expression covariateExceptions regular expression covariates always covariates etaParts list eta prefixes/post-fixes identify variable subject variability","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"Nothing, called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"called startup set defaults, though can change wish piping can work differently individual setup","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetPipingAuto.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set the variables for the model piping automatic covarite selection — rxSetPipingAuto","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":null,"dir":"Reference","previous_headings":"","what":"Defunct setting of product — rxSetProd","title":"Defunct setting of product — rxSetProd","text":"Defunct setting product","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Defunct setting of product — rxSetProd","text":"","code":"rxSetProd(type = c(\"long double\", \"double\", \"logify\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Defunct setting of product — rxSetProd","text":"type used type product","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProd.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Defunct setting of product — rxSetProd","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":null,"dir":"Reference","previous_headings":"","what":"Set timing for progress bar — rxSetProgressBar","title":"Set timing for progress bar — rxSetProgressBar","text":"Set timing progress bar","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set timing for progress bar — rxSetProgressBar","text":"","code":"rxSetProgressBar(seconds = 1)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set timing for progress bar — rxSetProgressBar","text":"seconds sets number seconds need elapse drawing next segment progress bar. zero turns progress bar.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set timing for progress bar — rxSetProgressBar","text":"nothing, used side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetProgressBar.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set timing for progress bar — rxSetProgressBar","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":null,"dir":"Reference","previous_headings":"","what":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"Silence rxode2's C/C++ messages","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"","code":"rxSetSilentErr(silent)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"silent can 0L \"noisy\" 1L \"silent\"","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSilentErr.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Silence some of rxode2's C/C++ messages — rxSetSilentErr","text":"TRUE; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":null,"dir":"Reference","previous_headings":"","what":"Defunct setting of sum — rxSetSum","title":"Defunct setting of sum — rxSetSum","text":"Defunct setting sum","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Defunct setting of sum — rxSetSum","text":"","code":"rxSetSum(type = c(\"pairwise\", \"fsum\", \"kahan\", \"neumaier\", \"c\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Defunct setting of sum — rxSetSum","text":"type used type product","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetSum.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Defunct setting of sum — rxSetSum","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":null,"dir":"Reference","previous_headings":"","what":"Setup the initial conditions. — rxSetupIni","title":"Setup the initial conditions. — rxSetupIni","text":"Setup initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Setup the initial conditions. — rxSetupIni","text":"","code":"rxSetupIni(obj, inits = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Setup the initial conditions. — rxSetupIni","text":"obj rxode2 object inits numeric vector initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Setup the initial conditions. — rxSetupIni","text":"initial conditions setup","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupIni.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Setup the initial conditions. — rxSetupIni","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":null,"dir":"Reference","previous_headings":"","what":"Setup the initial conditions. — rxSetupScale","title":"Setup the initial conditions. — rxSetupScale","text":"Setup initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Setup the initial conditions. — rxSetupScale","text":"","code":"rxSetupScale(obj, scale = NULL, extraArgs = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Setup the initial conditions. — rxSetupScale","text":"obj rxode2 object scale numeric vector scales extraArgs list extra args parse initial conditions.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Setup the initial conditions. — rxSetupScale","text":"setup scale changing compartment values","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSetupScale.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Setup the initial conditions. — rxSetupScale","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":null,"dir":"Reference","previous_headings":"","what":"Use Shiny to help develop an rxode2 model — rxShiny","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"Use Shiny help develop rxode2 model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"","code":"rxShiny( object, params = NULL, events = NULL, inits = NULL, ..., data = data.frame() ) # S3 method for rxSolve rxShiny( object, params = NULL, events = NULL, inits = NULL, ..., data = data.frame() ) # S3 method for default rxShiny( object = NULL, params = NULL, events = NULL, inits = NULL, ..., data = data.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"object rxode2 family objects. supplied 2-compartment indirect effect model used. supplied, use model associated rxode2 object model exploration. params Initial parameters model events Event information (currently ignored) inits Initial estimates model ... arguments passed rxShiny. Currently anything. data data like plot. data time variable well compartment calculated variable matches rxode2 model, data added plot specific compartment calculated variable.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"Nothing; Starts shiny server","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxShiny.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Use Shiny to help develop an rxode2 model — rxShiny","text":"Zufar Mulyukov Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"Simulate Parameters Theta/Omega specification","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"","code":"rxSimThetaOmega( params = NULL, omega = NULL, omegaDf = NULL, omegaLower = as.numeric(c(R_NegInf)), omegaUpper = as.numeric(c(R_PosInf)), omegaIsChol = FALSE, omegaSeparation = \"auto\", omegaXform = 1L, nSub = 1L, thetaMat = NULL, thetaLower = as.numeric(c(R_NegInf)), thetaUpper = as.numeric(c(R_PosInf)), thetaDf = NULL, thetaIsChol = FALSE, nStud = 1L, sigma = NULL, sigmaLower = as.numeric(c(R_NegInf)), sigmaUpper = as.numeric(c(R_PosInf)), sigmaDf = NULL, sigmaIsChol = FALSE, sigmaSeparation = \"auto\", sigmaXform = 1L, nCoresRV = 1L, nObs = 1L, dfSub = 0, dfObs = 0, simSubjects = TRUE, simVariability = as.logical(c(NA_LOGICAL)) )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"params Named Vector rxode2 model parameters omega Estimate Covariance matrix. omega list, assume block matrix convert full matrix simulations. omega NA using rxode2 ui model, subject variability described omega matrix set zero. omegaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. omegaLower Lower bounds simulated ETAs (default -Inf) omegaUpper Upper bounds simulated ETAs (default Inf) omegaIsChol Indicates omega supplied Cholesky decomposed matrix instead traditional symmetric matrix. omegaSeparation Omega separation strategy Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. omegaXform taking omega values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. nSub Number subject variabilities (ETAs) simulated every realization parameters. thetaMat Named theta matrix. thetaLower Lower bounds simulated population parameter variability (default -Inf) thetaUpper Upper bounds simulated population unexplained variability (default Inf) thetaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. thetaIsChol Indicates theta supplied Cholesky decomposed matrix instead traditional symmetric matrix. nStud Number virtual studies characterize uncertainty estimated parameters. sigma Named sigma covariance Cholesky decomposition covariance matrix. names columns indicate parameters simulated. simulated every observation solved system. sigma NA using rxode2 ui model, unexplained variability described sigma matrix set zero. sigmaLower Lower bounds simulated unexplained variability (default -Inf) sigmaUpper Upper bounds simulated unexplained variability (default Inf) sigmaDf Degrees freedom sigma t-distribution. default equivalent Inf, normal distribution. sigmaIsChol Boolean indicating sigma Cholesky decomposition instead symmetric covariance sigmaSeparation separation strategy sigma; Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. sigmaXform taking sigma values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. nCoresRV Number cores used simulation sigma variables. default 1. reproduce results need run platform number cores. reason set one, regardless number cores used threaded ODE solving. nObs Number observations simulate (sigma matrix) dfSub Degrees freedom sample subject variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. dfObs Degrees freedom sample unexplained variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. simSubjects boolean indicated rxode2 simulate subjects studies (TRUE, default) studies (FALSE) simVariability determines variability simulated. NA (default) determined solver.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"data frame simulated subjects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSimThetaOmega.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simulate Parameters from a Theta/Omega specification — rxSimThetaOmega","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":null,"dir":"Reference","previous_headings":"","what":"Options, Solving & Simulation of an ODE/solved system — rxSolve","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"uses rxode2 family objects, file, model specification solve ODE system. many options solved rxode2 model, first required object, events -times optional params inits.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"","code":"rxSolve( object, params = NULL, events = NULL, inits = NULL, scale = NULL, method = c(\"liblsoda\", \"lsoda\", \"dop853\", \"indLin\"), sigdig = NULL, atol = 1e-08, rtol = 1e-06, maxsteps = 70000L, hmin = 0, hmax = NA_real_, hmaxSd = 0, hini = 0, maxordn = 12L, maxords = 5L, ..., cores, covsInterpolation = c(\"locf\", \"linear\", \"nocb\", \"midpoint\"), addCov = TRUE, sigma = NULL, sigmaDf = NULL, sigmaLower = -Inf, sigmaUpper = Inf, nCoresRV = 1L, sigmaIsChol = FALSE, sigmaSeparation = c(\"auto\", \"lkj\", \"separation\"), sigmaXform = c(\"identity\", \"variance\", \"log\", \"nlmixrSqrt\", \"nlmixrLog\", \"nlmixrIdentity\"), nDisplayProgress = 10000L, amountUnits = NA_character_, timeUnits = \"hours\", theta = NULL, thetaLower = -Inf, thetaUpper = Inf, eta = NULL, addDosing = FALSE, stateTrim = Inf, updateObject = FALSE, omega = NULL, omegaDf = NULL, omegaIsChol = FALSE, omegaSeparation = c(\"auto\", \"lkj\", \"separation\"), omegaXform = c(\"variance\", \"identity\", \"log\", \"nlmixrSqrt\", \"nlmixrLog\", \"nlmixrIdentity\"), omegaLower = -Inf, omegaUpper = Inf, nSub = 1L, thetaMat = NULL, thetaDf = NULL, thetaIsChol = FALSE, nStud = 1L, dfSub = 0, dfObs = 0, returnType = c(\"rxSolve\", \"matrix\", \"data.frame\", \"data.frame.TBS\", \"data.table\", \"tbl\", \"tibble\"), seed = NULL, nsim = NULL, minSS = 10L, maxSS = 1000L, infSSstep = 12, strictSS = TRUE, istateReset = TRUE, subsetNonmem = TRUE, maxAtolRtolFactor = 0.1, from = NULL, to = NULL, by = NULL, length.out = NULL, iCov = NULL, keep = NULL, indLinPhiTol = 1e-07, indLinPhiM = 0L, indLinMatExpType = c(\"expokit\", \"Al-Mohy\", \"arma\"), indLinMatExpOrder = 6L, drop = NULL, idFactor = TRUE, mxhnil = 0, hmxi = 0, warnIdSort = TRUE, warnDrop = TRUE, ssAtol = 1e-08, ssRtol = 1e-06, safeZero = TRUE, sumType = c(\"pairwise\", \"fsum\", \"kahan\", \"neumaier\", \"c\"), prodType = c(\"long double\", \"double\", \"logify\"), sensType = c(\"advan\", \"autodiff\", \"forward\", \"central\"), linDiff = c(tlag = 1.5e-05, f = 1.5e-05, rate = 1.5e-05, dur = 1.5e-05, tlag2 = 1.5e-05, f2 = 1.5e-05, rate2 = 1.5e-05, dur2 = 1.5e-05), linDiffCentral = c(tlag = TRUE, f = TRUE, rate = TRUE, dur = TRUE, tlag2 = TRUE, f2 = TRUE, rate2 = TRUE, dur2 = TRUE), resample = NULL, resampleID = TRUE, maxwhile = 1e+05, atolSens = 1e-08, rtolSens = 1e-06, ssAtolSens = 1e-08, ssRtolSens = 1e-06, simVariability = NA, nLlikAlloc = NULL, useStdPow = FALSE, naTimeHandle = c(\"ignore\", \"warn\", \"error\"), addlKeepsCov = FALSE, addlDropSs = TRUE, ssAtDoseTime = TRUE, ss2cancelAllPending = FALSE, envir = parent.frame() ) # S3 method for `function` rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for rxUi rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for rxode2tos rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for nlmixr2FitData rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for nlmixr2FitCore rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for default rxSolve( object, params = NULL, events = NULL, inits = NULL, ..., theta = NULL, eta = NULL, envir = parent.frame() ) # S3 method for rxSolve update(object, ...) # S3 method for rxode2 predict(object, ...) # S3 method for `function` predict(object, ...) # S3 method for rxUi predict(object, ...) # S3 method for rxSolve predict(object, ...) # S3 method for rxEt predict(object, ...) # S3 method for rxParams predict(object, ...) # S3 method for rxode2 simulate(object, nsim = 1L, seed = NULL, ...) # S3 method for rxSolve simulate(object, nsim = 1L, seed = NULL, ...) # S3 method for rxParams simulate(object, nsim = 1L, seed = NULL, ...) # S3 method for rxSolve solve(a, b, ...) # S3 method for rxUi solve(a, b, ...) # S3 method for `function` solve(a, b, ...) # S3 method for rxode2 solve(a, b, ...) # S3 method for rxParams solve(a, b, ...) # S3 method for rxEt solve(a, b, ...) rxControl( ..., params = NULL, events = NULL, inits = NULL, envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"object either rxode2 family objects, file-name rxode2 model specification, string rxode2 model specification. params numeric named vector values every parameter ODE system; names must correspond parameter identifiers used ODE specification; events eventTable object describing input (e.g., doses) dynamic system observation sampling time points (see eventTable()); inits vector initial values state variables (e.g., amounts compartment), order vector must state variables (e.g., PK/PD compartments); scale numeric named vector scaling ode parameters system. names must correspond parameter identifiers ODE specification. ODE variables divided scaling factor. example scale=c(center=2) divide center ODE variable 2. method method solving ODEs. Currently supports: \"liblsoda\" thread safe lsoda. supports parallel thread-based solving, ignores user Jacobian specification. \"lsoda\" -- LSODA solver. support parallel thread-based solving, allows user Jacobian specification. \"dop853\" -- DOP853 solver. support parallel thread-based solving user Jacobian specification \"indLin\" -- Solving inductive linearization. rxode2 dll must setup specially use solving routine. sigdig Specifies \"significant digits\" ode solving requests. specified controls relative absolute tolerances ODE solvers. default tolerance 0.5*10^(-sigdig-2) regular ODEs. sensitivity equations default 0.5*10\\^(-sigdig-1.5) (sensitivity changes applicable liblsoda). also controls atol/rtol steady state solutions. ssAtol/ssRtol 0.5*10\\^(-sigdig) sensitivities 0.5*10\\^(-sigdig+0.625). default unspecified (NULL) uses standard atol/rtol. atol numeric absolute tolerance (1e-8 default) used ODE solver determine good solution achieved; also used solved linear model check prior doses add anything solution. rtol numeric relative tolerance (1e-6 default) used ODE solver determine good solution achieved. also used solved linear model check prior doses add anything solution. maxsteps maximum number (internally defined) steps allowed one call solver. (5000 default) hmin minimum absolute step size allowed. default value 0. hmax maximum absolute step size allowed. hmax=NA (default), uses average difference + hmaxSd*sd times sampling events. hmaxSd user specified parameter defaults zero. hmax=NULL rxode2 uses maximum difference times sampling events. value 0 equivalent infinite maximum absolute step size. hmaxSd number standard deviations time difference add hmax. default 0 hini step size attempted first step. default value determined solver (hini = 0) maxordn maximum order allowed nonstiff (Adams) method. default 12. can 1 12. maxords maximum order allowed stiff (BDF) method. default value 5. can 1 5. ... arguments including scaling factors compartment. includes S# = numeric scale compartment # dividing compartment amount scale factor, like NONMEM. cores Number cores used parallel ODE solving. equivalent calling setRxThreads() covsInterpolation specifies interpolation method time-varying covariates. solving ODEs often samples times outside sampling time specified events. happens, time varying covariates interpolated. Currently can : \"linear\" interpolation, interpolates covariate solving line observed covariates extrapolating new covariate value. \"constant\" -- Last observation carried forward (default). \"NOCB\" -- Next Observation Carried Backward. method NONMEM uses. \"midpoint\" Last observation carried forward midpoint; Next observation carried backward midpoint. addCov boolean indicating covariates added output matrix data frame. default disabled. sigma Named sigma covariance Cholesky decomposition covariance matrix. names columns indicate parameters simulated. simulated every observation solved system. sigma NA using rxode2 ui model, unexplained variability described sigma matrix set zero. sigmaDf Degrees freedom sigma t-distribution. default equivalent Inf, normal distribution. sigmaLower Lower bounds simulated unexplained variability (default -Inf) sigmaUpper Upper bounds simulated unexplained variability (default Inf) nCoresRV Number cores used simulation sigma variables. default 1. reproduce results need run platform number cores. reason set one, regardless number cores used threaded ODE solving. sigmaIsChol Boolean indicating sigma Cholesky decomposition instead symmetric covariance sigmaSeparation separation strategy sigma; Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. sigmaXform taking sigma values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. nDisplayProgress integer indicating minimum number c-based solves progress bar shown. default 10,000. amountUnits supplies dose units data frame supplied instead event table. importing data rxode2 event table. timeUnits supplies time units data frame supplied instead event table. importing data rxode2 event table. theta vector parameters named THETA\\[#\\] added parameters thetaLower Lower bounds simulated population parameter variability (default -Inf) thetaUpper Upper bounds simulated population unexplained variability (default Inf) eta vector parameters named ETA\\[#\\] added parameters addDosing Boolean indicating solve add rxode2 EVID related columns. also include dosing information estimates doses. default, rxode2 includes estimates observations. (default FALSE). addDosing NULL, include EVID=0 solve exclude model-times EVID=2. addDosing NA classic rxode2 EVID events returned. addDosing TRUE add event information NONMEM-style format; subsetNonmem=FALSE rxode2 also include extra event types (EVID) ending infusion modeled times: EVID=-1 modeled rate infusions turned (matches rate=-1) EVID=-2 modeled duration infusions turned (matches rate=-2) EVID=-10 specified rate infusions turned (matches rate>0) EVID=-20 specified dur infusions turned (matches dur>0) EVID=101,102,103,... Modeled time 101 first model time, 102 second etc. stateTrim amounts/concentrations one states value, trim value. default Inf. Also trims -stateTrim large negative amounts/concentrations. want trim range say c(0, 2000000) may specify 2 values lower upper range make sure state values reasonable range. updateObject internally used flag update rxode2 solved object (supplying rxode2 solved object) well returning new object. probably modify FALSE default unless willing unexpected results. omega Estimate Covariance matrix. omega list, assume block matrix convert full matrix simulations. omega NA using rxode2 ui model, subject variability described omega matrix set zero. omegaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. omegaIsChol Indicates omega supplied Cholesky decomposed matrix instead traditional symmetric matrix. omegaSeparation Omega separation strategy Tells type separation strategy simulating covariance parameter uncertainty standard deviations modeled thetaMat matrix. \"lkj\" simulates correlation matrix rLKJ1 matrix distribution parameter eta equal degrees freedom nu (nu-1)/2 \"separation\" simulates identity inverse Wishart covariance matrix nu degrees freedom. converted covariance matrix augmented modeled standard deviations. computationally complex \"lkj\" prior, performs better covariance matrix size greater equal 10 \"auto\" chooses \"lkj\" dimension matrix less 10 \"separation\" greater equal 10. omegaXform taking omega values thetaMat simulations (using separation strategy covariance simulation), thetaMat values turned int standard deviation values: identity standard deviation values directly modeled params thetaMat matrix variance params thetaMat simulates variance directly modeled thetaMat matrix log params thetaMat simulates log(sd) nlmixrSqrt params thetaMat simulates inverse cholesky decomposed matrix x\\^2 modeled along diagonal. works diagonal matrix. nlmixrLog params thetaMat simulates inverse cholesky decomposed matrix exp(x\\^2) along diagonal. works diagonal matrix. nlmixrIdentity params thetaMat simulates inverse cholesky decomposed matrix. works diagonal matrix. omegaLower Lower bounds simulated ETAs (default -Inf) omegaUpper Upper bounds simulated ETAs (default Inf) nSub Number subject variabilities (ETAs) simulated every realization parameters. thetaMat Named theta matrix. thetaDf degrees freedom t-distribution simulation. default NULL equivalent Inf degrees, simulate normal distribution instead t-distribution. thetaIsChol Indicates theta supplied Cholesky decomposed matrix instead traditional symmetric matrix. nStud Number virtual studies characterize uncertainty estimated parameters. dfSub Degrees freedom sample subject variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. dfObs Degrees freedom sample unexplained variability matrix inverse Wishart distribution (scaled) scaled inverse chi squared distribution. returnType tells type object returned. currently supported types : \"rxSolve\" (default) return reactive data frame can change easily change different pieces solve update data frame. currently standard solving method rxode2, used rxSolve(object, ...), solve(object,...), \"data.frame\" -- returns plain, non-reactive data frame; Currently slightly faster returnType=\"matrix\" \"matrix\" -- returns plain matrix column names attached solved object. used object$run well object$solve \"data.table\" -- returns data.table; data.table created reference (ie setDt()), fast. \"tbl\" \"tibble\" returns tibble format. seed object specifying random number generator initialized nsim represents number simulations. rxode2, supply single subject event tables (created [eventTable()]) minSS Minimum number iterations steady-state dose maxSS Maximum number iterations steady-state dose infSSstep Step size determining constant infusion reached steady state. default large value, 12. strictSS Boolean indicating strict steady-state required. strict steady-state (TRUE) required least minSS doses administered total number steady states doses continue maxSS reached, atol rtol every compartment reached. However, ODE solving problems occur minSS reached whole subject considered invalid solve. strictSS FALSE long minSS reached last good solve ODE solving problems occur considered steady state, even though either atol, rtol maxSS achieved. istateReset TRUE, reset ISTATE variable 1 lsoda liblsoda doses, like deSolve; FALSE, reset ISTATE variable doses. subsetNonmem subset NONMEM compatible EVIDs . default TRUE. maxAtolRtolFactor maximum atol/rtol FOCEi routines may adjust . default 0.1 observations event table, start observations value. default zero. observations event table, end observations value. default 24 + maximum dose time. observations event table, amount increment observations . length.number observations create observations event table. default 200. iCov data frame individual non-time varying covariates combine events dataset merge. keep Columns keep either input dataset iCov dataset. iCov dataset, column kept per line. input dataset, records added data LOCF (Last Observation Carried forward) imputation performed. indLinPhiTol requested accuracy tolerance exponential matrix. indLinPhiM maximum size Krylov basis indLinMatExpType matrix exponential type use rxode2. Currently following supported: Al-Mohy Uses exponential matrix method Al-Mohy Higham (2009) arma Use exponential matrix RcppArmadillo expokit Use exponential matrix Roger B. Sidje (1998) indLinMatExpOrder integer, order approximation used, Al-Mohy expokit values. best value depends machine precision (slightly matrix). use 6 default. drop Columns drop output idFactor boolean indicates original ID values maintained. changes default sequentially ordered ID factor original ID values original dataset. default enabled. mxhnil maximum number messages printed (per problem) warning T + H = T step (H = step size). must positive result non-default value. default value 0 (infinite). hmxi inverse maximum absolute value H used. hmxi = 0.0 allowed corresponds infinite hmax1 (default). hminandhmximay changed time, take effect next change ofHis considered. option considered withmethod=\"liblsoda\"`. warnIdSort Warn ID present rxode2 assumes order parameters/iCov order parameters input dataset. warnDrop Warn column(s) supposed dropped, present. ssAtol Steady state atol convergence factor. Can vector based state. ssRtol Steady state rtol convergence factor. Can vector based state. safeZero Use safe zero divide log routines. default turned may turn wish. sumType Sum type use sum() rxode2 code blocks. pairwise uses pairwise sum (fast, default) fsum uses PreciseSum package's fsum function (accurate) kahan uses Kahan correction neumaier uses Neumaier correction c uses correction: default/native summing prodType Product use prod() rxode2 blocks long double converts long double, performs multiplication converts back. double uses standard double scale multiplication. sensType Sensitivity type linCmt() model: advan Use direct advan solutions autodiff Use autodiff advan solutions forward Use forward difference solutions central Use central differences linDiff gives linear difference amount types linear compartment model parameters sensitivities calculated. named components numeric vector : \"lag\" Central compartment lag \"f\" Central compartment bioavailability \"rate\" Central compartment modeled rate \"dur\" Central compartment modeled duration \"lag2\" Depot compartment lag \"f2\" Depot compartment bioavailability \"rate2\" Depot compartment modeled rate \"dur2\" Depot compartment modeled duration linDiffCentral gives parameters use central differences linear compartment model parameters. components linDiff resample character vector model variables resample input dataset; sampling done replacement. NULL FALSE resampling done. TRUE resampling done covariates input dataset resampleID boolean representing resampling done individual basis TRUE (ie. whole patient selected) covariate resampled independent subject identifier FALSE. resampleID=TRUE correlations parameters retained, resampleID=FALSE ignores patient covariate correaltions. Hence default resampleID=TRUE. maxwhile represents maximum times loop evaluated exiting. default 100000 atolSens Sensitivity atol, can different atol liblsoda. allows less accurate solve gradients (desired) rtolSens Sensitivity rtol, can different rtol liblsoda. allows less accurate solve gradients (desired) ssAtolSens Sensitivity absolute tolerance (atol) calculating steady state achieved sensitivity compartments. ssRtolSens Sensitivity relative tolerance (rtol) calculating steady state achieved sensitivity compartments. simVariability determines variability simulated. NA (default) determined solver. nLlikAlloc number log likelihood endpoints used model. allows independent log likelihood per endpoint focei nlmixr2. likely set, though hurt anything (just may take memory larger allocations). useStdPow uses C's pow exponentiation instead R's R_pow R_pow_di. default FALSE naTimeHandle Determines time handling happens time becomes NA: current options : ignore ignores NA time input passes . warn (default) produce warning end solve, continues solving passing NA time error stop solve parallel solved ODE (otherwise stopping can crash R) addlKeepsCov determines additional dosing items repeats dose (FALSE) keeps covariates record dose (TRUE) addlDropSs steady state doses addl specification steady state flag dropped repeated doses (TRUE) retained (FALSE) ssAtDoseTime Boolean TRUE back calculates steady concentration actual time dose, otherwise FALSE doses shifted ss2cancelAllPending TRUE SS=2 event type cancels pending doses like SS=1. FALSE pending doses canceled SS=2 (infusions started SS=2 occurred canceled, though). envir environment look R user functions (defaults parent environment) using solve(), equivalent object argument. specify object later argument list overwrites parameter. b using solve(), equivalent params argument. specify params named argument, overwrites output","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"“rxSolve” solve object stores solved value special data.frame type determined returnType. default many rows sampled time points many columns system variables (defined ODEs additional assignments rxode2 model code). also stores information call allow dynamic updating solved object. operations object similar data-frame, expand $ [[\"\"]] access operators assignment operators resolve based different parameter values, initial conditions, solver parameters, events (updating time variable). can call eventTable() methods solved object update event table resolve system equations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"rest document focus different ODE solving methods, followed core solving method's options, rxode2 event handling options, rxode2's numerical stability options, rxode2's output options, finally internal rxode2 options compatibility options.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"\"New Scaling Squaring Algorithm Matrix Exponential\", Awad H. Al-Mohy Nicholas J. Higham, August 2009 Roger B. Sidje (1998). EXPOKIT: Software package computing matrix exponentials. ACM - Transactions Mathematical Software 24(1), 130-156. Hindmarsh, . C. ODEPACK, Systematized Collection ODE Solvers. Scientific Computing, R. S. Stepleman et al. (Eds.), North-Holland, Amsterdam, 1983, pp. 55-64. Petzold, L. R. Automatic Selection Methods Solving Stiff Nonstiff Systems Ordinary Differential Equations. Siam J. Sci. Stat. Comput. 4 (1983), pp. 136-148. Hairer, E., Norsett, S. P., Wanner, G. Solving ordinary differential equations , nonstiff problems. 2nd edition, Springer Series Computational Mathematics, Springer-Verlag (1993).","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolve.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Options, Solving & Simulation of an ODE/solved system — rxSolve","text":"Matthew Fidler, Melissa Hallow Wenping Wang","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolveFree.html","id":null,"dir":"Reference","previous_headings":"","what":"Free the C solving/parsing information. — rxSolveFree","title":"Free the C solving/parsing information. — rxSolveFree","text":"Take ODE C system free .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolveFree.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Free the C solving/parsing information. — rxSolveFree","text":"","code":"rxSolveFree()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSolveFree.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Free the C solving/parsing information. — rxSolveFree","text":"logical indicating memory successfully freed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":null,"dir":"Reference","previous_headings":"","what":"This function splits a function based on + or - terms — rxSplitPlusQ","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"uses parser disturb terms within functions. example:","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"","code":"rxSplitPlusQ(x, level = 0, mult = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"x Quoted R expression splitting level Internal level parsing mult boolean split based * / expressions instead. default turned .","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"character vector split expressions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"aexp(b+c)+dlog(e-f)-g*f return c(\"* exp(b + c)\", \"d * log(e - f)\", \"- g * f\")","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSplitPlusQ.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"This function splits a function based on + or - terms — rxSplitPlusQ","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":null,"dir":"Reference","previous_headings":"","what":"State variables — rxState","title":"State variables — rxState","text":"returns model's compartments states.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"State variables — rxState","text":"","code":"rxState(obj = NULL, state = NULL)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"State variables — rxState","text":"obj rxode2 family objects state string indicating state compartment like lookup.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"State variables — rxState","text":"state missing, return character vector states. state string, return compartment number named state.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxState.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"State variables — rxState","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":null,"dir":"Reference","previous_headings":"","what":"Recast model in terms of sum/prod — rxSumProdModel","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"Recast model terms sum/prod","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"","code":"rxSumProdModel(model, expand = FALSE, sum = TRUE, prod = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"model rxode2 model expand Boolean indicating expression expanded. sum Use sum(...) prod Use prod(...)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"model string prod(.) sum(.) operations.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSumProdModel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Recast model in terms of sum/prod — rxSumProdModel","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":null,"dir":"Reference","previous_headings":"","what":"Get list of supported functions — rxSupportedFuns","title":"Get list of supported functions — rxSupportedFuns","text":"Get list supported functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get list of supported functions — rxSupportedFuns","text":"","code":"rxSupportedFuns()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get list of supported functions — rxSupportedFuns","text":"list supported functions rxode2","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSupportedFuns.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Get list of supported functions — rxSupportedFuns","text":"","code":"rxSupportedFuns() #> [1] \"gammafn\" \"lgammafn\" \"lgamma\" #> [4] \"loggamma\" \"digamma\" \"trigamma\" #> [7] \"tetragamma\" \"pentagamma\" \"cospi\" #> [10] \"sinpi\" \"tanpi\" \"log1p\" #> [13] \"expm1\" \"factorial\" \"lfactorial\" #> [16] \"lgamma1p\" \"log10\" \"log2\" #> [19] \"log1pexp\" \"phi\" \"pnorm\" #> [22] \"normcdf\" \"qnorm\" \"fabs\" #> [25] \"pow\" \"R_pow\" \"R_pow_di\" #> [28] \"Rx_pow_di\" \"Rx_pow\" \"lbeta\" #> [31] \"abs\" \"acos\" \"acosh\" #> [34] \"asin\" \"asinh\" \"atan\" #> [37] \"atan2\" \"atanh\" \"beta\" #> [40] \"cos\" \"cosh\" \"erf\" #> [43] \"erfc\" \"exp\" \"gamma\" #> [46] \"linCmtA\" \"linCmtC\" \"linCmtB\" #> [49] \"log\" \"polygamma\" \"rxTBS\" #> [52] \"rxTBSi\" \"rxTBSd\" \"rxTBSd2\" #> [55] \"sin\" \"sinh\" \"sqrt\" #> [58] \"tan\" \"tanh\" \"gammap\" #> [61] \"floor\" \"round\" \"ceil\" #> [64] \"trunc\" \"bessel_i\" \"bessel_j\" #> [67] \"bessel_k\" \"bessel_y\" \"logspace_add\" #> [70] \"logspace_sub\" \"fmax2\" \"fmin2\" #> [73] \"sign\" \"fsign\" \"fprec\" #> [76] \"fround\" \"ftrunc\" \"transit\" #> [79] \"gammaq\" \"gammapDer\" \"gammapInv\" #> [82] \"gammapInva\" \"gammaqInv\" \"gammaqInva\" #> [85] \"lowergamma\" \"uppergamma\" \"max\" #> [88] \"min\" \"logit\" \"expit\" #> [91] \"probit\" \"probitInv\" \"tlast\" #> [94] \"tfirst\" \"lag\" \"lead\" #> [97] \"dose\" \"podo\" \"dabs\" #> [100] \"dabs2\" \"abs1\" \"dabs1\" #> [103] \"erfinv\" \"abs0\" \"dosenum\" #> [106] \"first\" \"last\" \"diff\" #> [109] \"is.nan\" \"is.na\" \"is.finite\" #> [112] \"is.infinite\" \"llikPois\" \"llikPoisDlambda\" #> [115] \"llikBinom\" \"llikBinomDprob\" \"llikNbinom\" #> [118] \"llikNbinomDprob\" \"llikNbinomMu\" \"llikNbinomMuDmu\" #> [121] \"llikBeta\" \"llikBetaDshape1\" \"llikBetaDshape2\" #> [124] \"llikT\" \"llikTDdf\" \"llikTDmean\" #> [127] \"llikTDsd\" \"llikChisq\" \"llikChisqDdf\" #> [130] \"llikExp\" \"llikExpDrate\" \"llikF\" #> [133] \"llikFDdf1\" \"llikFDdf2\" \"llikGeom\" #> [136] \"llikGeomDprob\" \"llikUnif\" \"llikUnifDalpha\" #> [139] \"llikUnifDbeta\" \"llikWeibull\" \"llikWeibullDshape\" #> [142] \"llikWeibullDscale\" \"llikGamma\" \"llikGammaDshape\" #> [145] \"llikGammaDrate\" \"llikCauchy\" \"llikCauchyDlocation\" #> [148] \"llikCauchyDscale\" \"llikNorm\" \"llikNormDmean\" #> [151] \"llikNormDsd\" \"llikXPois\" \"llikXPoisDlambda\" #> [154] \"llikXBinom\" \"llikXBinomDprob\" \"llikXNbinomMu\" #> [157] \"llikXNbinomMuDmu\" \"llikXNbinom\" \"llikXNbinomDprob\" #> [160] \"llikXBeta\" \"llikXBetaDshape1\" \"llikXBetaDshape2\" #> [163] \"llikXT\" \"llikXTDdf\" \"llikXTDmean\" #> [166] \"llikXTDsd\" \"llikXChisq\" \"llikXChisqDdf\" #> [169] \"llikXExp\" \"llikXExpDrate\" \"llikXF\" #> [172] \"llikXFDdf1\" \"llikXFDdf2\" \"llikXGeom\" #> [175] \"llikXGeomDprob\" \"llikXUnif\" \"llikXUnifDalpha\" #> [178] \"llikXUnifDbeta\" \"llikXWeibull\" \"llikXWeibullDshape\" #> [181] \"llikXWeibullDscale\" \"llikXGamma\" \"llikXGammaDshape\" #> [184] \"llikXGammaDrate\" \"llikXCauchy\" \"llikXCauchyDlocation\" #> [187] \"llikXCauchyDscale\" \"llikXNorm\" \"llikXNormDmean\" #> [190] \"llikXNormDsd\" \"linCmt\" \"rnorm\" #> [193] \"rxnorm\" \"rxbinom\" \"rbinom\" #> [196] \"rxcauchy\" \"rcauchy\" \"rchisq\" #> [199] \"rxchisq\" \"rexp\" \"rxexp\" #> [202] \"rbeta\" \"rxbeta\" \"rgeom\" #> [205] \"rxgeom\" \"rxpois\" \"rpois\" #> [208] \"rxt\" \"rt\""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":null,"dir":"Reference","previous_headings":"","what":"Respect suppress messages — rxSuppressMsg","title":"Respect suppress messages — rxSuppressMsg","text":"turns silent REprintf C suppressMessages() turned . makes REprintf act like messages R, can suppressed suppressMessages()","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Respect suppress messages — rxSuppressMsg","text":"","code":"rxSuppressMsg()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Respect suppress messages — rxSuppressMsg","text":"Nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Respect suppress messages — rxSuppressMsg","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSuppressMsg.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Respect suppress messages — rxSuppressMsg","text":"","code":"# rxSupressMsg() is called with rxode2() # Note the errors are output to the console try(rxode2(\"d/dt(matt)=/3\"), silent = TRUE) #> #> # When using suppressMessages, the output is suppressed suppressMessages(try(rxode2(\"d/dt(matt)=/3\"), silent = TRUE)) # In rxode2, we use REprintf so that interrupted threads do not crash R # if there is a user interrupt. This isn't captured by R's messages, but # This interface allows the `suppressMessages()` to suppress the C printing # as well # If you want to suppress messages from rxode2 in other packages, you can use # this function"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":null,"dir":"Reference","previous_headings":"","what":"Get Omega^-1 and derivatives — rxSymInvChol","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"Get Omega^-1 derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"","code":"rxSymInvChol( invObjOrMatrix, theta = NULL, type = \"cholOmegaInv\", thetaNumber = 0L )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"invObjOrMatrix Object inverse-type calculations. matrix, setup object inversion rxSymInvCholCreate() default arguments return reactive s3 object. Otherwise, use inversion object calculate requested derivative/inverse. theta Thetas used calculation. missing (NULL), special s3 class created returned access Omega^1 objects needed cache based theta used. type type object. Currently following types supported: cholOmegaInv gives Cholesky decomposition Omega Inverse matrix. omegaInv gives Omega Inverse matrix. d(omegaInv) gives d(Omega^-1) withe respect theta parameter specified thetaNumber. d(D) gives d(diagonal(Omega^-1)) respect theta parameter specified thetaNumber parameter thetaNumber types d(omegaInv) d(D), theta number derivative taken . must positive 1 number thetas defining Omega matrix.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"Matrix based parameters environment matrixes calculated variables omega, omegaInv, dOmega, dOmegaInv.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvChol.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Get Omega^-1 and derivatives — rxSymInvChol","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":null,"dir":"Reference","previous_headings":"","what":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"Creates object calculating Omega/Omega^-1 derivatives","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"","code":"rxSymInvCholCreate( mat, diag.xform = c(\"sqrt\", \"log\", \"identity\"), create.env = TRUE, envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"mat Initial Omega matrix diag.xform transformation diagonal elements OMEGA. chol(Omega^-1) create.env -- Create environment calculate inverses. (default TRUE) envir -- Environment evaluate function, bu default parent frame.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"rxSymInv object rxSymInv environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholCreate.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Creates an object for calculating Omega/Omega^-1 and derivatives — rxSymInvCholCreate","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholN.html","id":null,"dir":"Reference","previous_headings":"","what":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","title":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","text":"Return dimension built-derivatives/inverses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholN.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","text":"","code":"rxSymInvCholN()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSymInvCholN.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Return the dimension of the built-in derivatives/inverses — rxSymInvCholN","text":"dimension built-derivatives/inverses","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":null,"dir":"Reference","previous_headings":"","what":"Sync options with rxode2 variables — rxSyncOptions","title":"Sync options with rxode2 variables — rxSyncOptions","text":"Accessing rxode2 options via getOption slows solving. allows options synced variables.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Sync options with rxode2 variables — rxSyncOptions","text":"","code":"rxSyncOptions(setDefaults = c(\"none\", \"permissive\", \"strict\"))"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Sync options with rxode2 variables — rxSyncOptions","text":"setDefaults setup rxode2's default solving options following options: \"none\" leave options alone \"permissive\" permissive option set similar R language specifications. \"strict\" strict option set similar original rxode2(). requires semicolons end lines equals assignment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Sync options with rxode2 variables — rxSyncOptions","text":"nothing; called side effects","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyncOptions.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Sync options with rxode2 variables — rxSyncOptions","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyntaxFunctions.html","id":null,"dir":"Reference","previous_headings":"","what":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","title":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","text":"list description Rode supported syntax functions","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyntaxFunctions.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","text":"","code":"rxSyntaxFunctions"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxSyntaxFunctions.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"A list and description of Rode supported syntax functions — rxSyntaxFunctions","text":"data frame 3 columns 98 rows Function Reserved function Name Description Description function Aliases Function Aliases","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTempDir.html","id":null,"dir":"Reference","previous_headings":"","what":"Get the rxode2 temporary directory — rxTempDir","title":"Get the rxode2 temporary directory — rxTempDir","text":"Get rxode2 temporary directory","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTempDir.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get the rxode2 temporary directory — rxTempDir","text":"","code":"rxTempDir()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTempDir.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get the rxode2 temporary directory — rxTempDir","text":"rxode2 temporary directory.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":null,"dir":"Reference","previous_headings":"","what":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"rxTheme ggplot2 theme rxode2 plots","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"","code":"rxTheme( base_size = 11, base_family = \"\", base_line_size = base_size/22, base_rect_size = base_size/22, grid = TRUE )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"base_size base font size, given pts. base_family base font family base_line_size base size line elements base_rect_size base size rect elements grid Boolean indicating grid (TRUE) (FALSE). also character indicating x y.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTheme.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxTheme is the ggplot2 theme for rxode2 plots — rxTheme","text":"ggplot2 theme used rxode2","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":null,"dir":"Reference","previous_headings":"","what":"rxode2 to symengine environment — rxToSE","title":"rxode2 to symengine environment — rxToSE","text":"rxode2 symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"rxode2 to symengine environment — rxToSE","text":"","code":"rxToSE( x, envir = NULL, progress = FALSE, promoteLinSens = TRUE, parent = parent.frame() ) .rxToSE(x, envir = NULL, progress = FALSE) rxFromSE( x, unknownDerivatives = c(\"forward\", \"central\", \"error\"), parent = parent.frame() ) .rxFromSE(x)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"rxode2 to symengine environment — rxToSE","text":"x expression envir default NULL; Environment put symengine variables . progress shows progress bar true. promoteLinSens Promote solved linear compartment systems sensitivity-based solutions. parent parent environment look R-based user functions unknownDerivatives handling derivatives unknown functions, translator translate different types numeric derivatives. currently supported methods :","code":"- `forward` for forward differences - `central` for central differences - `error` for throwing an error for unknown derivatives"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"rxode2 to symengine environment — rxToSE","text":"rxode2 symengine environment","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxToSE.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"rxode2 to symengine environment — rxToSE","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":null,"dir":"Reference","previous_headings":"","what":"Translate the model to C code if needed — rxTrans","title":"Translate the model to C code if needed — rxTrans","text":"function translates model C code, needed","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Translate the model to C code if needed — rxTrans","text":"","code":"rxTrans( model, modelPrefix = \"\", md5 = \"\", modName = NULL, modVars = FALSE, ... ) # S3 method for default rxTrans( model, modelPrefix = \"\", md5 = \"\", modName = NULL, modVars = FALSE, ... ) # S3 method for character rxTrans( model, modelPrefix = \"\", md5 = \"\", modName = NULL, modVars = FALSE, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Translate the model to C code if needed — rxTrans","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . modelPrefix Prefix model functions compiled make sure multiple rxode2 objects can coexist R session. md5 md5 model parsing, used embed md5 DLL, provide functions like rxModelVars(). modName string used model name. string used naming various aspects computations, including generating C symbol names, dynamic libraries, etc. Therefore, necessary modName consists simple ASCII alphanumeric characters starting letter. modVars returns model variables instead named vector translated properties. ... Ignored parameters.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Translate the model to C code if needed — rxTrans","text":"named vector translated model properties including type jacobian specified, C function prefixes, well C functions names called compiled model.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxTrans.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Translate the model to C code if needed — rxTrans","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":null,"dir":"Reference","previous_headings":"","what":"Compress/Decompress rxode2 ui — rxUiDecompress","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"Compress/Decompress rxode2 ui","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"","code":"rxUiDecompress(ui) rxUiCompress(ui)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"ui rxode2 ui object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"compressed decompressed rxui object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiDecompress.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Compress/Decompress rxode2 ui — rxUiDecompress","text":"","code":"one.cmt <- function() { ini({ ## You may label each parameter with a comment tka <- 0.45 # Log Ka tcl <- log(c(0, 2.7, 100)) # Log Cl ## This works with interactive models ## You may also label the preceding line with label(\"label text\") tv <- 3.45; label(\"log V\") ## the label(\"Label name\") works with all models 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) | tmp }) } f <- rxode2(one.cmt) #> #> #> ℹ parameter labels from comments will be replaced by 'label()' print(class(f)) #> [1] \"rxUi\" \"raw\" print(is.environment(f)) #> [1] FALSE f <- rxUiDecompress(f) print(class(f)) #> [1] \"rxUi\" print(is.environment(f)) #> [1] TRUE f <- rxUiCompress(f) print(class(f)) #> [1] \"rxUi\" \"raw\" print(is.environment(f)) #> [1] FALSE"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":null,"dir":"Reference","previous_headings":"","what":"S3 for getting information from UI model — rxUiGet.cmtLines","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"S3 getting information UI model","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"","code":"# S3 method for cmtLines rxUiGet(x, ...) # S3 method for dvidLine rxUiGet(x, ...) # S3 method for paramsLine rxUiGet(x, ...) # S3 method for simulationSigma rxUiGet(x, ...) # S3 method for simulationModel rxUiGet(x, ...) # S3 method for symengineModelNoPrune rxUiGet(x, ...) # S3 method for symengineModelPrune rxUiGet(x, ...) # S3 method for simulationIniModel rxUiGet(x, ...) rxUiGet(x, ...) # S3 method for theta rxUiGet(x, ...) # S3 method for lstChr rxUiGet(x, ...) # S3 method for omega rxUiGet(x, ...) # S3 method for funTxt rxUiGet(x, ...) # S3 method for allCovs rxUiGet(x, ...) # S3 method for muRefTable rxUiGet(x, ...) # S3 method for multipleEndpoint rxUiGet(x, ...) # S3 method for funPrint rxUiGet(x, ...) # S3 method for fun rxUiGet(x, ...) # S3 method for md5 rxUiGet(x, ...) # S3 method for ini rxUiGet(x, ...) # S3 method for iniFun rxUiGet(x, ...) # S3 method for modelFun rxUiGet(x, ...) # S3 method for model rxUiGet(x, ...) # S3 method for modelDesc rxUiGet(x, ...) # S3 method for thetaLower rxUiGet(x, ...) # S3 method for thetaUpper rxUiGet(x, ...) # S3 method for lhsVar rxUiGet(x, ...) # S3 method for varLhs rxUiGet(x, ...) # S3 method for lhsEta rxUiGet(x, ...) # S3 method for lhsTheta rxUiGet(x, ...) # S3 method for lhsCov rxUiGet(x, ...) # S3 method for etaLhs rxUiGet(x, ...) # S3 method for thetaLhs rxUiGet(x, ...) # S3 method for covLhs rxUiGet(x, ...) # S3 method for default rxUiGet(x, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"x list (UIenvironment, exact). UI environment parsed function rxode2. exact boolean says exact match required. ... arguments","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"value requested UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUiGet.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"S3 for getting information from UI model — rxUiGet.cmtLines","text":"Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":null,"dir":"Reference","previous_headings":"","what":"Unloads all rxode2 compiled DLLs — rxUnloadAll","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"Unloads rxode2 compiled DLLs","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"","code":"rxUnloadAll()"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"List rxode2 dlls still loaded boolean rxode2 dlls unloaded","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUnloadAll.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Unloads all rxode2 compiled DLLs — rxUnloadAll","text":"","code":"print(rxUnloadAll()) #> NULL"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":null,"dir":"Reference","previous_headings":"","what":"Use model object in your package — rxUse","title":"Use model object in your package — rxUse","text":"Use model object package","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Use model object in your package — rxUse","text":"","code":"rxUse(obj, overwrite = TRUE, compress = \"bzip2\", internal = FALSE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Use model object in your package — rxUse","text":"obj model save. overwrite default, use_data() overwrite existing files. really want , set TRUE. compress Choose type compression used save(). one \"gzip\", \"bzip2\", \"xz\". internal run internally. default FALSE","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxUse.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Use model object in your package — rxUse","text":"Nothing; used side effects called user","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":null,"dir":"Reference","previous_headings":"","what":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"Validate rxode2 allows easy validation/qualification nlmixr running testing suite system.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"","code":"rxValidate(type = NULL, skipOnCran = TRUE) rxTest(type = NULL, skipOnCran = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"type Type test filter test type, expression, evaluate contents, respecting skipOnCran skipOnCran TRUE skip test CRAN.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"nothing","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxValidate.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Validate rxode2\nThis allows easy validation/qualification of nlmixr by running the\ntesting suite on your system. — rxValidate","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":null,"dir":"Reference","previous_headings":"","what":"Version and repository for this dparser package. — rxVersion","title":"Version and repository for this dparser package. — rxVersion","text":"Version repository dparser package.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Version and repository for this dparser package. — rxVersion","text":"","code":"rxVersion( extra = \"\", echo = FALSE, version = sessionInfo()$otherPkgs$rxode2$Version )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Version and repository for this dparser package. — rxVersion","text":"extra extra text display logo echo Boolean echo text logo, default FALSE version Version display/return","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Version and repository for this dparser package. — rxVersion","text":"character vector version repository.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxVersion.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Version and repository for this dparser package. — rxVersion","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate beta variable from threefry generator — rxbeta","title":"Simulate beta variable from threefry generator — rxbeta","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate beta variable from threefry generator — rxbeta","text":"","code":"rxbeta(shape1, shape2, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate beta variable from threefry generator — rxbeta","text":"shape1, shape2 non-negative parameters Beta distribution. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate beta variable from threefry generator — rxbeta","text":"beta random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate beta variable from threefry generator — rxbeta","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbeta.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate beta variable from threefry generator — rxbeta","text":"","code":"# \\donttest{ ## Use threefry engine rxbeta(0.5, 0.5, n = 10) # with rxbeta you have to explicitly state n #> [1] 5.591830e-01 4.868212e-03 9.995130e-01 9.985880e-01 9.291060e-01 #> [6] 8.426211e-01 1.165973e-01 7.428044e-05 9.956387e-01 6.817689e-01 rxbeta(5, 1, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0.9409791 0.9315947 0.8864859 0.8386523 0.9615350 0.7927235 0.6812861 #> [8] 0.9940315 0.8680601 0.8626314 rxbeta(1, 3) #> [1] 0.002379934 ## This example uses `rxbeta` directly in the model rx <- function() { model({ a <- rxbeta(2, 2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Binomial variable from threefry generator — rxbinom","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"","code":"rxbinom(size, prob, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"size number trials (zero ). prob probability success trial. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"binomial random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxbinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Binomial variable from threefry generator — rxbinom","text":"","code":"# \\donttest{ ## Use threefry engine rxbinom(10, 0.9, n = 10) # with rxbinom you have to explicitly state n #> [1] 9 9 9 10 9 10 9 9 8 9 rxbinom(3, 0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 1 1 2 0 2 1 2 1 2 1 rxbinom(4, 0.7) #> [1] 3 ## This example uses `rxbinom` directly in the model rx <- function() { model({ a <- rxbinom(1, 0.5) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Cauchy variable from threefry generator — rxcauchy","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"","code":"rxcauchy(location = 0, scale = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"location, scale location scale parameters. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"Cauchy random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxcauchy.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Cauchy variable from threefry generator — rxcauchy","text":"","code":"# \\donttest{ ## Use threefry engine rxcauchy(0, 1, n = 10) # with rxcauchy you have to explicitly state n #> [1] 11.49708304 -0.82917497 -1.53457682 -6.21448497 3.05235974 -1.35567914 #> [7] 0.05761105 0.21461109 2.41906944 -1.46577517 rxcauchy(0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] -2.2272938 -0.2600073 5.2749144 0.9171462 -0.6923980 -1.3334247 #> [7] -2.2215751 -3.3419174 2.1211203 0.4281829 rxcauchy(3) #> [1] 3.995927 ## This example uses `rxcauchy` directly in the model rx <- function() { model({ a <- rxcauchy(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate chi-squared variable from threefry generator — rxchisq","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"","code":"rxchisq(df, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"df degrees freedom (non-negative, can non-integer). n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"chi squared random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxchisq.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate chi-squared variable from threefry generator — rxchisq","text":"","code":"# \\donttest{ ## Use threefry engine rxchisq(0.5, n = 10) # with rxchisq you have to explicitly state n #> [1] 0.4725313581 0.5858219441 2.5450318247 0.6201574148 0.1108254407 #> [6] 0.0003121371 0.1412857288 0.0005926910 0.0001486205 0.7807205510 rxchisq(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 6.7002547 4.4378396 8.4462820 5.2311437 3.4165878 3.7146978 4.0384042 #> [8] 2.3655919 0.6162545 3.7656382 rxchisq(1) #> [1] 2.110831 ## This example uses `rxchisq` directly in the model rx <- function() { model({ a <- rxchisq(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate exponential variable from threefry generator — rxexp","title":"Simulate exponential variable from threefry generator — rxexp","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate exponential variable from threefry generator — rxexp","text":"","code":"rxexp(rate, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate exponential variable from threefry generator — rxexp","text":"rate vector rates. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate exponential variable from threefry generator — rxexp","text":"exponential random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate exponential variable from threefry generator — rxexp","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxexp.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate exponential variable from threefry generator — rxexp","text":"","code":"# \\donttest{ ## Use threefry engine rxexp(0.5, n = 10) # with rxexp you have to explicitly state n #> [1] 3.90375500 0.20341689 1.03389635 1.65821571 1.70895409 2.34710259 #> [7] 6.67258989 0.20443300 5.44360213 0.08059518 rxexp(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0.55788381 0.45884374 0.01223079 0.21913010 0.02697616 0.03894835 #> [7] 0.55539622 0.08209171 0.01295835 0.05832526 rxexp(1) #> [1] 0.4843352 ## This example uses `rxexp` directly in the model rx <- function() { model({ a <- rxexp(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate F variable from threefry generator — rxf","title":"Simulate F variable from threefry generator — rxf","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate F variable from threefry generator — rxf","text":"","code":"rxf(df1, df2, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate F variable from threefry generator — rxf","text":"df1, df2 degrees freedom. Inf allowed. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate F variable from threefry generator — rxf","text":"f random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate F variable from threefry generator — rxf","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxf.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate F variable from threefry generator — rxf","text":"","code":"# \\donttest{ ## Use threefry engine rxf(0.5, 0.5, n = 10) # with rxf you have to explicitly state n #> [1] 3.085812e-01 4.665029e-02 1.595344e-01 5.043059e-01 5.118621e+00 #> [6] 1.007383e+02 7.441232e-02 5.434823e-08 6.077869e-01 1.408393e+02 rxf(5, 1, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 1.747357e+00 9.946858e+01 9.341176e-01 3.363339e+03 1.532547e+02 #> [6] 1.126046e-01 4.677118e-01 3.911594e-02 2.131388e+00 3.907136e-01 rxf(1, 3) #> [1] 0.3027674 ## This example uses `rxf` directly in the model rx <- function() { model({ a <- rxf(2, 2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate gamma variable from threefry generator — rxgamma","title":"Simulate gamma variable from threefry generator — rxgamma","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate gamma variable from threefry generator — rxgamma","text":"","code":"rxgamma(shape, rate = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate gamma variable from threefry generator — rxgamma","text":"shape shape gamma random variable rate alternative way specify scale. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate gamma variable from threefry generator — rxgamma","text":"gamma random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate gamma variable from threefry generator — rxgamma","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate gamma variable from threefry generator — rxgamma","text":"","code":"# \\donttest{ ## Use threefry engine rxgamma(0.5, n = 10) # with rxgamma you have to explicitly state n #> [1] 0.021157084 0.585976250 0.001334389 0.365373277 0.029210689 0.768189952 #> [7] 1.919537608 0.612601840 0.737600624 0.061693657 rxgamma(5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 5.349880 4.885171 4.206598 3.836714 4.470326 1.469406 5.477942 2.543065 #> [9] 4.941607 5.578842 rxgamma(1) #> [1] 1.032915 ## This example uses `rxbeta` directly in the model rx <- function() { model({ a <- rxgamma(2) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate geometric variable from threefry generator — rxgeom","title":"Simulate geometric variable from threefry generator — rxgeom","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate geometric variable from threefry generator — rxgeom","text":"","code":"rxgeom(prob, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate geometric variable from threefry generator — rxgeom","text":"prob probability success trial. 0 < prob <= 1. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate geometric variable from threefry generator — rxgeom","text":"geometric random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate geometric variable from threefry generator — rxgeom","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxgeom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate geometric variable from threefry generator — rxgeom","text":"","code":"# \\donttest{ ## Use threefry engine rxgeom(0.5, n = 10) # with rxgeom you have to explicitly state n #> [1] 0 0 0 2 0 5 2 0 0 0 rxgeom(0.25, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 1 0 1 2 2 4 2 6 3 1 rxgeom(0.75) #> [1] 2 ## This example uses `rxgeom` directly in the model rx <- function() { model({ a <- rxgeom(0.24) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Binomial variable from threefry generator — rxnbinom","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"","code":"rxnbinom(size, prob, n = 1L, ncores = 1L) rxnbinomMu(size, mu, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"size target number successful trials, dispersion parameter (shape parameter gamma mixing distribution). Must strictly positive, need integer. prob probability success trial. 0 < prob <= 1. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks mu alternative parametrization via mean: see ‘Details’.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"negative binomial random deviates. Note rxbinom2 uses mu parameterization rxbinom uses prob parameterization (mu=size/(prob+size))","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnbinom.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Binomial variable from threefry generator — rxnbinom","text":"","code":"# \\donttest{ ## Use threefry engine rxnbinom(10, 0.9, n = 10) # with rxbinom you have to explicitly state n #> [1] 10 9 9 9 10 9 10 10 10 10 rxnbinom(3, 0.5, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 2 3 3 3 2 3 2 3 3 2 rxnbinom(4, 0.7) #> [1] 3 # use mu parameter rxnbinomMu(40, 40, n=10) #> [1] 20 21 17 25 20 24 24 20 25 16 ## This example uses `rxbinom` directly in the model rx <- function() { model({ a <- rxnbinom(10, 0.5) }) } et <- et(1, id = 1:100) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ rx <- function() { model({ a <- rxnbinomMu(10, 40) }) } s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate random normal variable from threefry generator — rxnormV","title":"Simulate random normal variable from threefry generator — rxnormV","text":"Simulate random normal variable threefry generator","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate random normal variable from threefry generator — rxnormV","text":"","code":"rxnormV(mean = 0, sd = 1, n = 1L, ncores = 1L) rxnorm(mean = 0, sd = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate random normal variable from threefry generator — rxnormV","text":"mean vector means. sd vector standard deviations. n number observations ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate random normal variable from threefry generator — rxnormV","text":"normal random number deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxnormV.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate random normal variable from threefry generator — rxnormV","text":"","code":"# \\donttest{ ## Use threefry engine rxnorm(n = 10) # with rxnorm you have to explicitly state n #> [1] 0.06666291 -1.16684824 0.07385358 1.78573232 -0.53886395 2.29064016 #> [7] 1.36888507 -0.56869894 -0.67454259 -0.50189339 rxnorm(n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] -1.05752531 -0.94395324 -0.24915962 -0.20590743 0.26190633 0.03631823 #> [7] -0.57420807 -0.64141604 2.43573622 0.72575404 rxnorm(2, 3) ## The first 2 arguments are the mean and standard deviation #> [1] 1.65928 ## This example uses `rxnorm` directly in the model rx <- function() { model({ a <- rxnorm() }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":null,"dir":"Reference","previous_headings":"","what":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"Set function body rxUi object retaining object information (like data)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"","code":"rxode2(x, envir = environment(x)) <- value # S3 method for `function` rxode2(x, envir = environment(x)) <- value # S3 method for default rxode2(x, envir = environment(x)) <- value rxode(x, envir = environment(x)) <- value RxODE(x, envir = environment(x)) <- value"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"x rxUi object envir environment assignment ocurs value value assigned","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"rxode2 ui/function","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2-set.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Set the function body of an rxUi object while retaining other object\ninformation (like data) — rxode2<-","text":"","code":"one.compartment <- function() { ini({ tka <- log(1.57); label(\"Ka\") tcl <- log(2.72); label(\"Cl\") tv <- log(31.5); label(\"V\") 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } two.compartment <- function() { ini({ lka <- 0.45 ; label(\"Absorption rate (Ka)\") lcl <- 1 ; label(\"Clearance (CL)\") lvc <- 3 ; label(\"Central volume of distribution (V)\") lvp <- 5 ; label(\"Peripheral volume of distribution (Vp)\") lq <- 0.1 ; label(\"Intercompartmental clearance (Q)\") propSd <- 0.5 ; label(\"Proportional residual error (fraction)\") }) model({ ka <- exp(lka) cl <- exp(lcl) vc <- exp(lvc) vp <- exp(lvp) q <- exp(lq) kel <- cl/vc k12 <- q/vc k21 <- q/vp d/dt(depot) <- -ka*depot d/dt(central) <- ka*depot - kel*central - k12*central + k21*peripheral1 d/dt(peripheral1) <- k12*central - k21*peripheral1 cp <- central / vc cp ~ prop(propSd) }) } ui <- rxode2(one.compartment) #> #> rxode2(ui) <- two.compartment"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Create an ODE-based model specification — rxode2","title":"Create an ODE-based model specification — rxode2","text":"Create dynamic ODE-based model object suitably translation fast C code","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create an ODE-based model specification — rxode2","text":"","code":"rxode2( model, modName = basename(wd), wd = getwd(), filename = NULL, extraC = NULL, debug = FALSE, calcJac = NULL, calcSens = NULL, collapseModel = FALSE, package = NULL, ..., linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), indLin = FALSE, verbose = FALSE, fullPrint = getOption(\"rxode2.fullPrint\", FALSE), envir = parent.frame() ) RxODE( model, modName = basename(wd), wd = getwd(), filename = NULL, extraC = NULL, debug = FALSE, calcJac = NULL, calcSens = NULL, collapseModel = FALSE, package = NULL, ..., linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), indLin = FALSE, verbose = FALSE, fullPrint = getOption(\"rxode2.fullPrint\", FALSE), envir = parent.frame() ) rxode( model, modName = basename(wd), wd = getwd(), filename = NULL, extraC = NULL, debug = FALSE, calcJac = NULL, calcSens = NULL, collapseModel = FALSE, package = NULL, ..., linCmtSens = c(\"linCmtA\", \"linCmtB\", \"linCmtC\"), indLin = FALSE, verbose = FALSE, fullPrint = getOption(\"rxode2.fullPrint\", FALSE), envir = parent.frame() )"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create an ODE-based model specification — rxode2","text":"model ODE model specification. can : string containing set ordinary differential equations (ODE) expressions defining changes dynamic system. file name ODE system equation contained ODE expression enclosed \\{\\} (see also filename argument). details, see sections “Details” rxode2 Syntax . modName string used model name. string used naming various aspects computations, including generating C symbol names, dynamic libraries, etc. Therefore, necessary modName consists simple ASCII alphanumeric characters starting letter. wd character string working directory create subdirectory according modName. specified, subdirectory named “modName.d” created populated C file, dynamic loading library, plus various working files. missing, files created (removed) temporary directory, rxode2 DLL model created current directory named rx_????_platform, example rx_129f8f97fb94a87ca49ca8dafe691e1e_i386.dll filename file name connection object ODE-based model specification resides. one model filename may specified. extraC Extra c code include model. can useful specify functions model. C functions usually take double precision arguments, return double precision values. debug boolean indicating executable compiled verbose debugging information turned . calcJac boolean indicating rxode2 calculate Jacobain according specified ODEs. calcSens boolean indicating rxode2 calculate sensitivities according specified ODEs. collapseModel boolean indicating rxode2 remove LHS variables calculating sensitivities. package Package name pre-compiled binaries. ... ignored arguments. linCmtSens method calculate linCmt() solutions indLin Calculate inductive linearization matrices compile inductive linearization support. verbose TRUE verbose linear compartmental model fullPrint using printf within model, TRUE print every step (except /indLin), otherwise FALSE print calculating d/dt envir environment look R user functions (defaults parent environment)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create an ODE-based model specification — rxode2","text":"object (environment) class rxode2 (see Chambers Temple Lang (2001)) consisting following list strings functions:","code":"* `model` a character string holding the source model specification. * `get.modelVars`a function that returns a list with 3 character vectors, `params`, `state`, and `lhs` of variable names used in the model specification. These will be output when the model is computed (i.e., the ODE solved by integration). * `solve`{this function solves (integrates) the ODE. This is done by passing the code to [rxSolve()]. This is as if you called `rxSolve(rxode2object, ...)`, but returns a matrix instead of a rxSolve object. `params`: a numeric named vector with values for every parameter in the ODE system; the names must correspond to the parameter identifiers used in the ODE specification; `events`: an `eventTable` object describing the input (e.g., doses) to the dynamic system and observation sampling time points (see [eventTable()]); `inits`: a vector of initial values of the state variables (e.g., amounts in each compartment), and the order in this vector must be the same as the state variables (e.g., PK/PD compartments); `stiff`: a logical (`TRUE` by default) indicating whether the ODE system is stiff or not. For stiff ODE systems (`stiff = TRUE`), `rxode2` uses the LSODA (Livermore Solver for Ordinary Differential Equations) Fortran package, which implements an automatic method switching for stiff and non-stiff problems along the integration interval, authored by Hindmarsh and Petzold (2003). For non-stiff systems (`stiff = FALSE`), `rxode2` uses `DOP853`, an explicit Runge-Kutta method of order 8(5, 3) of Dormand and Prince as implemented in C by Hairer and Wanner (1993). `trans_abs`: a logical (`FALSE` by default) indicating whether to fit a transit absorption term (TODO: need further documentation and example); `atol`: a numeric absolute tolerance (1e-08 by default); `rtol`: a numeric relative tolerance (1e-06 by default). The output of \\dQuote{solve} is a matrix with as many rows as there are sampled time points and as many columns as system variables (as defined by the ODEs and additional assignments in the rxode2 model code).} * `isValid` a function that (naively) checks for model validity, namely that the C object code reflects the latest model specification. * `version` a string with the version of the `rxode2` object (not the package). * `dynLoad` a function with one `force = FALSE` argument that dynamically loads the object code if needed. * `dynUnload` a function with no argument that unloads the model object code. * `delete` removes all created model files, including C and DLL files. The model object is no longer valid and should be removed, e.g., `rm(m1)`. * `run` deprecated, use `solve`. * `get.index` deprecated. * `getObj` internal (not user callable) function."},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Create an ODE-based model specification — rxode2","text":"Rx name rxode2 meant suggest abbreviation Rx medical prescription, thus suggest package emphasis pharmacometrics modeling, including pharmacokinetics (PK), pharmacodynamics (PD), disease progression, drug-disease modeling, etc. ODE-based model specification may coded inside four places: Inside rxode2({}) block statements: Inside rxode2(\"\") string statement: file name loaded rxode2: model function can parsed rxode2: block statement, character string text file internal rxode2 compilation manager translates ODE system C, compiles loads R session. call rxode2 produces object class rxode2 consists list-like structure (environment) various member functions. last type model (model function), call rxode2 creates parsed rxode2 ui can translated rxode2 compilation model. type function required nlmixr2 estimation can extended modified model piping. reason focused documentation. basic model specification consists one statements optionally terminated semi-colons ; optional comments (comments delimited # end--line). block statements set statements delimited curly braces, { ... }. Statements can either assignments, conditional /else /else, loops (can exited break), special statements, printing statements (debugging/testing). Assignment statements can : simple assignments, left hand identifier (.e., variable) special time-derivative assignments, left hand specifies change amount corresponding state variable (compartment) respect time e.g., d/dt(depot): special initial-condition assignments left hand specifies compartment initial condition specified, e.g. depot(0) = 0 special model event changes including bioavailability (f(depot)=1), lag time (alag(depot)=0), modeled rate (rate(depot)=2) modeled duration (dur(depot)=2). example model features event specification modeled infusions rxode2 data specification found rxode2 events vignette. special change point syntax, model times. model times specified mtime(var)=time special Jacobian-derivative assignments, left hand specifies change compartment ode respect variable. example, d/dt(y) = dy, Jacobian compartment can specified df(y)/dy(dy) = 1. may advantage obtaining solution specifying Jacobian stiff ODE systems. However, stiff systems tried LSODA, actually slightly slowed solving. Note assignment can done =, <- ~. assigning ~ operator, simple assignments time-derivative assignments output. Note rxode2 model functions assignment ~ can also overloaded residual distribution specification. Special statements can : Compartment declaration statements, can change default dosing compartment assumed compartment number(s) well add extra compartment names end (useful multiple-endpoint nlmixr models); specified cmt(compartmentName) Parameter declaration statements, can make sure input parameters certain order instead ordering parameters order parsed. useful keeping parameter order using 2 different ODE models. specified param(par1, par2,...) example model shown : Expressions assignment statements can numeric logical. Numeric expressions can include following numeric operators +, -, *, /, ^ mathematical functions defined C R math libraries (e.g., fabs, exp, log, sin, abs). may also access R’s functions R math libraries, like lgammafn log gamma function. rxode2 syntax case-sensitive, .e., ABC different abc, Abc, ABc, etc.","code":"library(rxode2) mod <- rxode2({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ mod <- rxode2(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \") ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ writeLines(\" # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; \", \"modelFile.rxode2\") mod <- rxode2(filename='modelFile.rxode2') unlink(\"modelFile.rxode2\") mod <- function() { model({ # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3; }) } mod <- rxode2(mod) # or simply mod() if the model is at the end of the function # These model functions often have residual components and initial # (`ini({})`) conditions attached as well. For example the # theophylline model can be written as: one.compartment <- function() { ini({ tka <- 0.45 # Log Ka tcl <- 1 # Log Cl tv <- 3.45 # Log V 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } # after parsing the model mod <- one.compartment() mod$simulationModel ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## rxode2 2.0.14.9000 model named rx_f8a38012c74774242195a2bca079f175 model (ready). ## x$state: depot, center ## x$stateExtra: cp ## x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp ## x$lhs: ka, cl, v, cp, ipredSim, sim # or mod$simulationIniModel ## using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ## rxode2 2.0.14.9000 model named rx_8367e8f5e6c5a00454c7193fc896bf87 model (ready). ## x$state: depot, center ## x$stateExtra: cp ## x$params: tka, tcl, tv, add.sd, eta.ka, eta.cl, eta.v, rxerr.cp ## x$lhs: ka, cl, v, cp, ipredSim, sim # simple assignment C2 <- centr/V2 # time-derivative assignment d/dt(centr) <- F*KA*depot - CL*C2 - Q*C2 + Q*C3;"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"identifiers","dir":"Reference","previous_headings":"","what":"Identifiers","title":"Create an ODE-based model specification — rxode2","text":"Like R, Identifiers (variable names) may consist one alphanumeric, underscore _ period . characters, first character digit underscore _. Identifiers model specification can refer : State variables dynamic system (e.g., compartments pharmacokinetics model). Implied input variable, t (time), tlast (last time point), podo (oral dose, undocumented case absorption transit models). Special constants like pi R’s predefined constants. Model parameters (e.g., ka rate absorption, CL clearance, etc.) Others, created assignments part model specification; referred LHS (left-hand side) variable. Currently, rxode2 modeling language recognizes system state variables “parameters”, thus, values need passed R ODE model (e.g., age) either passed params argument integrator function rxSolve() supplied event data-set. certain variable names rxode2 event tables. avoid confusion, following event table-related items assigned, used state can accessed rxode2 code: cmt dvid addl ss rate id However following variables used model specification: evid ii Sometimes rxode2 generates variables fed back rxode2. Similarly, nlmixr2 generates variables used nlmixr estimation simulation. variables start either rx nlmixr prefixes. avoid problems, suggested use variables starting either rx nlmixr prefixes.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"logical-operators","dir":"Reference","previous_headings":"","what":"Logical Operators","title":"Create an ODE-based model specification — rxode2","text":"Logical operators support standard R operators ==, != >= <= > <. Like R can () () statements, ifelse() expressions. Additionally can standard assignment. instance, following valid: Notice can also use character expressions comparisons. convenience comes cost since character comparisons slower numeric expressions. Unlike R, .numeric .integer logical statements needed, cause syntax error try use function.","code":"cov1 = covm*(sexf == \"female\") + covm*(sexf != \"female\")"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"supported-functions","dir":"Reference","previous_headings":"","what":"Supported functions","title":"Create an ODE-based model specification — rxode2","text":"supported functions rxode2 can seen rxSupportedFuns(). brief description built-functions following table: Note lag(cmt) = equivalent alag(cmt) = = lag(wt)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"reserved-keywords","dir":"Reference","previous_headings":"","what":"Reserved keywords","title":"Create an ODE-based model specification — rxode2","text":"reserved keywords rxode2 model. following table: Note rxFlag always output 11 calc_lhs since final variables calculated, though can tweak test certain parts rxode2 using flag.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"residual-functions-when-using-rxode-functions","dir":"Reference","previous_headings":"","what":"Residual functions when using rxode2 functions","title":"Create an ODE-based model specification — rxode2","text":"addition ~ hiding output certain types output, also used specify residual output endpoint input rxode2 model function (includes residual model({}) block). specifications form: Indicating variable var variable represents individual central tendencies model also represents compartment specification data-set. can also change compartment name using | syntax, : case var represents central tendency cmt represents compartment dvid specification.","code":"var ~ add(add.sd) var ~ add(add.sd) | cmt"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"transformations","dir":"Reference","previous_headings":"","what":"Transformations","title":"Create an ODE-based model specification — rxode2","text":"normal related distributions, can apply transformation sides using keywords/functions apply transformations. default likelihood transformations calculated untransformed scale. bounded variables like logit-normal probit-normal low high values defaulted 0 1 missing. models wish proportional model one transformation can replace standard deviation NA allow transformations, lnorm(), probitNorm() logitNorm() can combined variance stabilizing yeoJohnson() transformation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"normal-and-t-related-distributions","dir":"Reference","previous_headings":"","what":"Normal and t-related distributions","title":"Create an ODE-based model specification — rxode2","text":"normal t-related distributions, wanted keep ability use skewed distributions additive proportional t/cauchy-space, distributions specified differently comparison supported distributions within nlmixr2: Note normal t-related distributions nlmixr2 calculate cwres npde normal assumption help assess goodness fit model. Also note +dnorm() mostly testing purposes slow estimation procedure nlmixr2. suggest adding (except explicit testing). multiple endpoint models mix non-normal normal distributions, whole problem shifted log-likelihood method estimation nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"notes-on-additive-proportional-models","dir":"Reference","previous_headings":"","what":"Notes on additive + proportional models","title":"Create an ODE-based model specification — rxode2","text":"two different ways specify additive proportional models, call combined1 combined2, way Monolix calls two distributions (avoid software differences naming). first, combined1, assumes additive proportional differences standard deviation scale, : y=f+(+b* f^c)*err second, combined2, assumes additive proportional differences combined variance scale: y=f+[sqrt(^2+b^2 *f^(2c))]*err default nlmixr2/rxode2 otherwise specified combined2 since mirrors adding 2 normal distributions statistics add variances (standard deviations). However, combined1 can describe data possibly even better combined2 possible options rxode2/nlmixr2.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"distributions-of-known-likelihoods","dir":"Reference","previous_headings":"","what":"Distributions of known likelihoods","title":"Create an ODE-based model specification — rxode2","text":"residuals related normal, t-distribution cauchy, often residual specification form: compartment specification left handed side specification. generalized likelihood can specify:","code":"cmt ~ dbeta(alpha, beta) ll(cmt) ~ llik specification"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"ordinal-likelihoods","dir":"Reference","previous_headings":"","what":"Ordinal likelihoods","title":"Create an ODE-based model specification — rxode2","text":"Finally, ordinal likelihoods/simulations can specified 2 ways. first : err represents compartment p0 probability specific category: model ensure sum p values less 1. Additionally can write arbitrary number categories ordinal model described . seems little p0 probability category 1 sometimes scores non-whole numbers. can modeled follows: numeric categories specified explicitly, probabilities remain :","code":"err ~ c(p0, p1, p2) err ~ c(p0=0, p1=1, p2=2, 3)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"general-table-of-supported-residual-distributions","dir":"Reference","previous_headings":"","what":"General table of supported residual distributions","title":"Create an ODE-based model specification — rxode2","text":"general supported following table (available rxode2::rxResidualError)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"creating-rxode-models","dir":"Reference","previous_headings":"","what":"Creating rxode2 models","title":"Create an ODE-based model specification — rxode2","text":"NA","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Create an ODE-based model specification — rxode2","text":"Chamber, J. M. Temple Lang, D. (2001) Object Oriented Programming R. R News, Vol. 1, . 3, September 2001. https://cran.r-project.org/doc/Rnews/Rnews_2001-3.pdf. Hindmarsh, . C. ODEPACK, Systematized Collection ODE Solvers. Scientific Computing, R. S. Stepleman et al. (Eds.), North-Holland, Amsterdam, 1983, pp. 55-64. Petzold, L. R. Automatic Selection Methods Solving Stiff Nonstiff Systems Ordinary Differential Equations. Siam J. Sci. Stat. Comput. 4 (1983), pp. 136-148. Hairer, E., Norsett, S. P., Wanner, G. Solving ordinary differential equations , nonstiff problems. 2nd edition, Springer Series Computational Mathematics, Springer-Verlag (1993). Plevyak, J. dparser, https://dparser.sourceforge.net/. Web. 12 Oct. 2015.","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Create an ODE-based model specification — rxode2","text":"Melissa Hallow, Wenping Wang Matthew Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxode2.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Create an ODE-based model specification — rxode2","text":"","code":"# \\donttest{ mod <- function() { ini({ KA <- .291 CL <- 18.6 V2 <- 40.2 Q <- 10.5 V3 <- 297.0 Kin <- 1.0 Kout <- 1.0 EC50 <- 200.0 }) model({ # A 4-compartment model, 3 PK and a PD (effect) compartment # (notice state variable names 'depot', 'centr', 'peri', 'eff') C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot; d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3; d/dt(peri) <- Q*C2 - Q*C3; d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff; eff(0) <- 1 }) } m1 <- rxode2(mod) #> #> print(m1) #> ── rxode2-based free-form 4-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> KA CL V2 Q V3 Kin Kout EC50 #> 0.291 18.600 40.200 10.500 297.000 1.000 1.000 200.000 #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 centr #> 3 3 peri #> 4 4 eff #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> KA <- 0.291 #> CL <- 18.6 #> V2 <- 40.2 #> Q <- 10.5 #> V3 <- 297 #> Kin <- 1 #> Kout <- 1 #> EC50 <- 200 #> }) #> model({ #> C2 <- centr/V2 #> C3 <- peri/V3 #> d/dt(depot) <- -KA * depot #> d/dt(centr) <- KA * depot - CL * C2 - Q * C2 + Q * C3 #> d/dt(peri) <- Q * C2 - Q * C3 #> d/dt(eff) <- Kin - Kout * (1 - C2/(EC50 + C2)) * eff #> eff(0) <- 1 #> }) #> } # Step 2 - Create the model input as an EventTable, # including dosing and observation (sampling) events # QD (once daily) dosing for 5 days. qd <- et(amountUnits = \"ug\", timeUnits = \"hours\") %>% et(amt = 10000, addl = 4, ii = 24) # Sample the system hourly during the first day, every 8 hours # then after qd <- qd %>% et(0:24) %>% et(from = 24 + 8, to = 5 * 24, by = 8) # Step 3 - solve the system qd.cp <- rxSolve(m1, qd) #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ head(qd.cp) #> time C2 C3 depot centr peri eff #> 1 0 [h] 0.00000 0.0000000 10000.000 0.000 0.0000 1.000000 #> 2 1 [h] 43.99334 0.9113641 7475.157 1768.532 270.6751 1.083968 #> 3 2 [h] 54.50866 2.6510696 5587.797 2191.248 787.3677 1.179529 #> 4 3 [h] 51.65163 4.4243597 4176.966 2076.396 1314.0348 1.227523 #> 5 4 [h] 44.37513 5.9432612 3122.347 1783.880 1765.1486 1.233503 #> 6 5 [h] 36.46382 7.1389804 2334.004 1465.845 2120.2772 1.214084 # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate ordinal value — rxord","title":"Simulate ordinal value — rxord","text":"Simulate ordinal value","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate ordinal value — rxord","text":"","code":"rxord(...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate ordinal value — rxord","text":"... probabilities simulated. sum number one.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate ordinal value — rxord","text":"number 1 (number probabilities specified + 1)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate ordinal value — rxord","text":"values entered 'rxord' simulation simulate probability falling group. falls outside specified probabilities, simulate group (number probabilities specified + 1)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simulate ordinal value — rxord","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxord.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate ordinal value — rxord","text":"","code":"# This will give values 1, and 2 rxord(0.5) #> [1] 2 rxord(0.5) #> [1] 1 rxord(0.5) #> [1] 2 rxord(0.5) #> [1] 1 # This will give values 1, 2 and 3 rxord(0.3, 0.3) #> [1] 3 rxord(0.3, 0.3) #> [1] 3 rxord(0.3, 0.3) #> [1] 1"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate random Poisson variable from threefry generator — rxpois","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"","code":"rxpois(lambda, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"lambda vector (non-negative) means. n number random values return. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"poission random number deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxpois.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate random Poisson variable from threefry generator — rxpois","text":"","code":"# \\donttest{ ## Use threefry engine rxpois(lambda = 3, n = 10) # with rxpois you have to explicitly state n #> [1] 3 2 1 2 5 4 3 6 4 5 rxpois(lambda = 3, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 4 4 7 2 0 4 3 0 1 5 rxpois(4) ## The first arguments are the lambda parameter #> [1] 4 ## This example uses `rxpois` directly in the model rx <- function() { model({ a <- rxpois(3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate student t variable from threefry generator — rxt","title":"Simulate student t variable from threefry generator — rxt","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate student t variable from threefry generator — rxt","text":"","code":"rxt(df, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate student t variable from threefry generator — rxt","text":"df degrees freedom (\\(> 0\\), maybe non-integer). df = Inf allowed. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate student t variable from threefry generator — rxt","text":"t-distribution random numbers","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate student t variable from threefry generator — rxt","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxt.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate student t variable from threefry generator — rxt","text":"","code":"# \\donttest{ ## Use threefry engine rxt(df = 3, n = 10) # with rxt you have to explicitly state n #> [1] -0.29318080 -1.02704336 -0.66727550 0.09894623 0.31087795 0.45282571 #> [7] -0.74881267 0.14506443 0.92569974 1.08770261 rxt(df = 3, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 0.93648234 -0.74999474 -0.01956072 0.36815881 -1.68693318 -1.47839075 #> [7] 0.63749656 -0.55653082 1.20298022 -0.23653802 rxt(4) ## The first argument is the df parameter #> [1] -1.188745 ## This example uses `rxt` directly in the model rx <- function() { model({ a <- rxt(3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate uniform variable from threefry generator — rxunif","title":"Simulate uniform variable from threefry generator — rxunif","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate uniform variable from threefry generator — rxunif","text":"","code":"rxunif(min = 0, max = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate uniform variable from threefry generator — rxunif","text":"min, max lower upper limits distribution. Must finite. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate uniform variable from threefry generator — rxunif","text":"uniform random numbers","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate uniform variable from threefry generator — rxunif","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxunif.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate uniform variable from threefry generator — rxunif","text":"","code":"# \\donttest{ ## Use threefry engine rxunif(min = 0, max = 4, n = 10) # with rxunif you have to explicitly state n #> [1] 2.3748251 2.3747450 2.9484312 2.6503609 2.3441527 3.7895157 2.7632907 #> [8] 3.9259318 1.5470480 0.3119302 rxunif(min = 0, max = 4, n = 10, ncores = 2) # You can parallelize the simulation using openMP #> [1] 2.7055085 3.1282116 0.9762572 0.2150536 0.1354531 3.6681715 1.3651384 #> [8] 0.4735161 2.2566096 1.3867299 rxunif() #> [1] 0.7778129 ## This example uses `rxunif` directly in the model rx <- function() { model({ a <- rxunif(0, 3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Weibull variable from threefry generator — rxweibull","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"Care taken method encounter birthday problem, described https://www.johndcook.com/blog/2016/01/29/random-number-generator-seed-mistakes/. Since sitmo threefry, currently generates one random deviate uniform distribution seed engine threefry run code.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"","code":"rxweibull(shape, scale = 1, n = 1L, ncores = 1L)"},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"shape, scale shape scale parameters, latter defaulting 1. n number observations. length(n) > 1, length taken number required. ncores Number cores simulation rxnorm simulates using threefry sitmo generator. rxnormV used simulate vandercorput simulator, since satisfy normal properties changed simple alias rxnorm. longer supported rxode2({}) blocks","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"Weibull random deviates","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"Therefore, simple call random number generated followed second call random number generated may identical seeds. number random number generator calls increased probability birthday problem increase. key avoid problem either run simulations rxode2 environment (therefore one seed series seeds whole simulation), pre-generate random variables used simulation, seed rxode2 engine rxSetSeed() Internally ID seeded unique number results depend number cores used.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/rxweibull.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Weibull variable from threefry generator — rxweibull","text":"","code":"# \\donttest{ ## Use threefry engine # with rxweibull you have to explicitly state n rxweibull(shape = 1, scale = 4, n = 10) #> [1] 1.5102518 8.9958841 6.4523713 2.6136455 4.8022306 5.3803922 0.1930048 #> [8] 0.6736438 5.6880641 0.2705709 # You can parallelize the simulation using openMP rxweibull(shape = 1, scale = 4, n = 10, ncores = 2) #> [1] 3.7140085 3.6244019 0.4964775 5.7372342 3.7034107 10.3348485 #> [7] 0.1188517 0.3182516 10.1139392 4.0233797 rxweibull(3) #> [1] 0.5046466 ## This example uses `rxweibull` directly in the model rx <- function() { model({ a <- rxweibull(1, 3) }) } et <- et(1, id = 1:2) s <- rxSolve(rx, et) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":null,"dir":"Reference","previous_headings":"","what":"Dosing/Amt geom/stat — stat_amt","title":"Dosing/Amt geom/stat — stat_amt","text":"dosing geom shows vertical lines dose occurs","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Dosing/Amt geom/stat — stat_amt","text":"","code":"stat_amt( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, ... ) geom_amt( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Dosing/Amt geom/stat — stat_amt","text":"mapping Set aesthetic mappings created aes(). specified inherit.aes = TRUE (default), combined default mapping top level plot. must supply mapping plot mapping. data data displayed layer. three options: NULL, default, data inherited plot data specified call ggplot(). data.frame, object, override plot data. objects fortified produce data frame. See fortify() variables created. function called single argument, plot data. return value must data.frame, used layer data. function can created formula (e.g. ~ head(.x, 10)). position Position adjustment, either string naming adjustment (e.g. \"jitter\" use position_jitter), result call position adjustment function. Use latter need change settings adjustment. show.legend logical. layer included legends? NA, default, includes aesthetics mapped. FALSE never includes, TRUE always includes. can also named logical vector finely select aesthetics display. inherit.aes FALSE, overrides default aesthetics, rather combining . useful helper functions define data aesthetics inherit behaviour default plot specification, e.g. borders(). ... arguments passed layer(). often aesthetics, used set aesthetic fixed value, like colour = \"red\" size = 3. may also parameters paired geom/stat.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Dosing/Amt geom/stat — stat_amt","text":"returns stat_amt context ggplot2 plot","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Dosing/Amt geom/stat — stat_amt","text":"Requires following aesthetics: x representing x values, usually time amt representing dosing values; missing zero dose given","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_amt.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Dosing/Amt geom/stat — stat_amt","text":"","code":"# \\donttest{ library(rxode2) library(units) #> udunits database from /usr/share/xml/udunits/udunits2.xml ## Model from RxODE tutorial mod1 <- function() { ini({ KA <- 2.94E-01 CL <- 1.86E+01 V2 <- 4.02E+01 Q <- 1.05E+01 V3 <- 2.97E+02 Kin <- 1 Kout <- 1 EC50 <- 200 }) model({ C2 <- centr/V2 C3 <- peri/V3 d/dt(depot) <- -KA*depot d/dt(centr) <- KA*depot - CL*C2 - Q*C2 + Q*C3 d/dt(peri) <- Q*C2 - Q*C3 d/dt(eff) <- Kin - Kout*(1-C2/(EC50+C2))*eff }) } ## These are making the more complex regimens of the rxode2 tutorial ## bid for 5 days bid <- et(timeUnits=\"hr\") %>% et(amt=10000,ii=12,until=set_units(5, \"days\")) ## qd for 5 days qd <- et(timeUnits=\"hr\") %>% et(amt=20000,ii=24,until=set_units(5, \"days\")) ## bid for 5 days followed by qd for 5 days et <- seq(bid,qd) %>% et(seq(0,11*24,length.out=100)) bidQd <- rxSolve(mod1, et, addDosing=TRUE) #> #> #> #> #> using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ # by default dotted and under-stated plot(bidQd, C2) + geom_amt(aes(amt=amt)) # of course you can make it a bit more visible plot(bidQd, C2) + geom_amt(aes(amt=amt), col=\"red\", lty=1, linewidth=1.2) # }"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":null,"dir":"Reference","previous_headings":"","what":"Censoring geom/stat — stat_cens","title":"Censoring geom/stat — stat_cens","text":"censoring geom shows left right censoring specified nlmixr input data-set fit","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Censoring geom/stat — stat_cens","text":"","code":"stat_cens( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, width = 0.01, ... ) geom_cens( mapping = NULL, data = NULL, position = \"identity\", show.legend = NA, inherit.aes = TRUE, width = 0.01, ... )"},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Censoring geom/stat — stat_cens","text":"mapping Set aesthetic mappings created aes(). specified inherit.aes = TRUE (default), combined default mapping top level plot. must supply mapping plot mapping. data data displayed layer. three options: NULL, default, data inherited plot data specified call ggplot(). data.frame, object, override plot data. objects fortified produce data frame. See fortify() variables created. function called single argument, plot data. return value must data.frame, used layer data. function can created formula (e.g. ~ head(.x, 10)). position Position adjustment, either string naming adjustment (e.g. \"jitter\" use position_jitter), result call position adjustment function. Use latter need change settings adjustment. show.legend logical. layer included legends? NA, default, includes aesthetics mapped. FALSE never includes, TRUE always includes. can also named logical vector finely select aesthetics display. inherit.aes FALSE, overrides default aesthetics, rather combining . useful helper functions define data aesthetics inherit behaviour default plot specification, e.g. borders(). width represents width (\\ censoring box ... arguments passed layer(). often aesthetics, used set aesthetic fixed value, like colour = \"red\" size = 3. may also parameters paired geom/stat.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Censoring geom/stat — stat_cens","text":"returns ggplot2 stat","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/stat_cens.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Censoring geom/stat — stat_cens","text":"Requires following aesthetics: x Represents independent variable, often time scale y represents dependent variable CENS censoring information; (-1 right censored, 0 censoring 1 left censoring) LIMIT represents corresponding limit () add boxes representing areas fit censored.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":null,"dir":"Reference","previous_headings":"","what":"Summary of rxDll object — summary.rxDll","title":"Summary of rxDll object — summary.rxDll","text":"gives expanded information rxDll object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Summary of rxDll object — summary.rxDll","text":"","code":"# S3 method for rxDll summary(object, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Summary of rxDll object — summary.rxDll","text":"object RxDll object ... arguments. Includes noprint, logical telling object print rxDll object first. default FALSE","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Summary of rxDll object — summary.rxDll","text":"object returned","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxDll.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Summary of rxDll object — summary.rxDll","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":null,"dir":"Reference","previous_headings":"","what":"Print expanded information about the rxode2 object. — summary.rxode2","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"prints expanded information rxode2 object.","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"","code":"# S3 method for rxode2 summary(object, ...)"},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"object rxode2 object ... Ignored parameters","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"object returned","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/summary.rxode2.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print expanded information about the rxode2 object. — summary.rxode2","text":"Matthew L.Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":null,"dir":"Reference","previous_headings":"","what":"Update for rxUi — update.rxUi","title":"Update for rxUi — update.rxUi","text":"Update rxUi","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Update for rxUi — update.rxUi","text":"","code":"# S3 method for rxUi update(object, ..., envir = parent.frame())"},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Update for rxUi — update.rxUi","text":"object rxode2 UI object ... Lines update envir Environment evaluating ini() style calls","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/update.rxUi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Update for rxUi — update.rxUi","text":"new rxode2 updated UI object","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":null,"dir":"Reference","previous_headings":"","what":"uppergamma: upper incomplete gamma function — uppergamma","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"tgamma boost library","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"","code":"uppergamma(a, z)"},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"numeric '' parameter upper incomplete gamma z numeric 'z' parameter upper incomplete gamma","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"uppergamma results","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"uppergamma function given : \\(uppergamma(, z) = \\int_{z}^{\\infty}t^{-1}\\cdot e^{-t} dt\\)","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"Matthew L. Fidler","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/uppergamma.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"uppergamma: upper incomplete gamma function — uppergamma","text":"","code":"uppergamma(1, 3) #> [1] 0.04978707 uppergamma(1:3, 3) #> [1] 0.04978707 0.19914827 0.84638016 uppergamma(1, 1:3) #> [1] 0.36787944 0.13533528 0.04978707"},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":null,"dir":"Reference","previous_headings":"","what":"Set random effects and residual error to zero — zeroRe","title":"Set random effects and residual error to zero — zeroRe","text":"Set random effects residual error zero","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Set random effects and residual error to zero — zeroRe","text":"","code":"zeroRe(object, which = c(\"omega\", \"sigma\"), fix = TRUE)"},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Set random effects and residual error to zero — zeroRe","text":"object model modify types parameters set zero fix parameters fixed zero value?","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Set random effects and residual error to zero — zeroRe","text":"object parameters set zero","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Set random effects and residual error to zero — zeroRe","text":"Bill Denney","code":""},{"path":"https://nlmixr2.github.io/rxode2/reference/zeroRe.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Set random effects and residual error to zero — zeroRe","text":"","code":"one.compartment <- function() { ini({ tka <- log(1.57); label(\"Ka\") tcl <- log(2.72); label(\"Cl\") tv <- log(31.5); label(\"V\") 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) d/dt(depot) = -ka * depot d/dt(center) = ka * depot - cl / v * center cp = center / v cp ~ add(add.sd) }) } zeroRe(one.compartment) #> #> #> ── rxode2-based free-form 2-cmt ODE model ────────────────────────────────────── #> ── Initalization: ── #> Fixed Effects ($theta): #> tka tcl tv add.sd #> 0.4510756 1.0006319 3.4499875 0.0000000 #> #> Omega ($omega): #> eta.ka eta.cl eta.v #> eta.ka 0 0 0 #> eta.cl 0 0 0 #> eta.v 0 0 0 #> attr(,\"lotriFix\") #> eta.ka eta.cl eta.v #> eta.ka TRUE FALSE FALSE #> eta.cl FALSE TRUE FALSE #> eta.v FALSE FALSE TRUE #> #> States ($state or $stateDf): #> Compartment Number Compartment Name #> 1 1 depot #> 2 2 center #> ── μ-referencing ($muRefTable): ── #> theta eta level #> 1 tka eta.ka id #> 2 tcl eta.cl id #> 3 tv eta.v id #> #> ── Model (Normalized Syntax): ── #> function() { #> ini({ #> tka <- 0.451075619360217 #> label(\"Ka\") #> tcl <- 1.00063188030791 #> label(\"Cl\") #> tv <- 3.44998754583159 #> label(\"V\") #> add.sd <- fix(0, 0) #> eta.ka ~ fix(0) #> eta.cl ~ fix(0) #> eta.v ~ fix(0) #> }) #> model({ #> ka <- exp(tka + eta.ka) #> cl <- exp(tcl + eta.cl) #> v <- exp(tv + eta.v) #> d/dt(depot) = -ka * depot #> d/dt(center) = ka * depot - cl/v * center #> cp = center/v #> cp ~ add(add.sd) #> }) #> }"},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"breaking-changes-development-version","dir":"Changelog","previous_headings":"","what":"Breaking changes","title":"rxode2 (development version)","text":"Steady state lag times longer shifted lag time solved steady state default. addition steady state original time dosing also back-calculated. want old behavior can bring back option ssAtDoseTime=FALSE. “dop853” now uses hmax/h0 values rxControl() rxSolve(). may change ODE solving using “dop853” specified (xgxr available), x axis longer assumed hours","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-development-version","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 (development version)","text":"User defined functions can now R functions. many R functions can converted C rxFun() (can see C code afterwards rxC(\"funName\")) Parallel solving models require sorting (like modeled lag times, modeled duration etc) now solve parallel instead downgrading single threaded solving Steady state infusions duration infusions greater inter-dose interval now supported. Added $symengineModelNoPrune $symengineModelPrune loading models rxode2 rxS() plotting creating confidence intervals multiple endpoint models simulated rxode2 ui model, can plot/summarize endpoint sim. (ie. confint(model, \"sim\") plot(model, sim)). want summarize subset endpoints, can focus endpoint pre-pending endpoint sim. example wanted plot/summarize endpoint eff use sim.eff. (ie confint(model, \"sim.eff\") plot(model, sim.eff)) Added model$simulationIniModel prepend initial conditions ini({}) block classic rxode2({}) model. Now model$simulationModel model$simulationIniModel save use initialization values compiled model, solve original ui model. Allow ini(model) <- NULL drop ini block .ini(NULL) gives ini({}) (Issue #523) Add function modelExtract() extract model lines allow modifying changing model piping simply assigning modified lines model(ui) <- newModifiedLines Add Algebraic mu-referencing detection (mu2) allows express mu-referenced covariates : Instead previously required (log.WT.div.70.5 calculated data) mu expressions. ui now information allow transformation data internally transformation old mu-referencing style run optimization. Allow steady state infusions duration infusion greater inter-dose interval solved. Solves now possibly print information issuing “solve system” error function rxSetPipingAuto() now exported change way affect piping individual setup Allow covariates specified model piping, mod %>% model(=var+3, cov=\"var\") add \"var\" covariate. calculating confidence intervals rxode2 simulated objects can now use stratify simulation summary. example can now stratify gender race : confint(sim, \"sim\", =c(\"race\", \"gender\")) calculating intervals rxode2 simulated objects can now use ci=FALSE calculates default intervals without bands percentiles; can also choose match secondary bands limits levels use ci=0.99 instance new function introduced meanProbs() calculates mean expected confidence bands either normal t distribution related new function introduced calculates mean confidence bands Bernoulli/Binomial distribution (binomProbs()) calculating intervals rxode2 simulated objects can also use mean=TRUE use mean first level confidence using meanProbs(). confidence interval can override n used confidence interval using n=#. can also change prediction interval instead using pred=TRUE. Also calculating intervals rxode2 simulated object can also use mean=\"binom\" use binomial distributional information (ci) first level confidence using binomProbs(). confidence interval can override n used confidence interval using n=#. can also change prediction interval instead using pred=TRUE. pred=TRUE can override number predicted samples m=# plotting confint derived intervals rxode2 simulation, can now subset based simulated value like plot(ci, Cc) plot variable Cc summarized even also summarized eff (instance). rxode2 ui compressed ui object, can modify ini block $ini <- modify model block $model <-. equivalent ini(model) <- model(model) <-, respectively. Otherwise, object added user defined components function (ie $meta). object uncompressed, simply assigns environment instead (just like ). printing meta information happens lotri compatible matrix, use lotri express instead default R expression.","code":"cl <- exp(tcl + eta.cl + wt_cl * log(WT/70.5)) cl <- exp(tcl + eta.cl + wt_cl * log.WT.div.70.5)"},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"internal-new-features-development-version","dir":"Changelog","previous_headings":"","what":"Internal new features","title":"rxode2 (development version)","text":"Add .model() list expressions, implies model(ui) <- ui$lstExpr assign model components. also robustly work character vectors Simulated objects rxSolve now can access model variables $rxModelVars Simulation models UI now use rxerr.endpoint instead err.endpoint sigma residual error. align convention internally generated variables start rx nlmixr Sorting uses timsort now, upgraded latest version Morwenn","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-development-version","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 (development version)","text":"Piping add constants initial estimates constants specified model({}) block (like k <- 1), ini block Bug fix geom_amt() aes transformation x Bug fix covariate updates may affect multiple compartment models (like issue #581)","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"maintenance-fixes-development-version","dir":"Changelog","previous_headings":"","what":"Maintenance fixes","title":"rxode2 (development version)","text":"Modify plot code work development xgxr","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2014","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.14","title":"rxode2 2.0.14","text":"CRAN release: 2023-10-07 CRAN requested FORTRAN kind changed portable; commented code, simply removed comment. Bug-fix geom_amt(); also now uses linewidth least ggplot2 3.4.0 documentation cleaned rxode2 2.0.13","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2013","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.13","title":"rxode2 2.0.13","text":"CRAN release: 2023-04-22","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-2-0-13","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 2.0.13","text":"bug fixed zeroRe() function works correlated omega values. bug fixed rename() function works initial conditions compartments (cmt(0))","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-2-0-13","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 2.0.13","text":"new function zeroRe() allows simple setting omega /sigma values zero model (#456) Diagonal zeros omega sigma matrices treated zeros model. corresponding omega sigma matrices drop columns/rows diagonals zero create new omega sigma matrix simulation. idiom NONMEM uses simulation matrices. Add ability pipe model estimates another model parentModel %>% ini(modelWithNewEsts) Add ability append model statements piping using %>% model(x=3, append=d/dt(depot)), still supports appending append=TRUE pre-pending append=NA (default replace lines append=FALSE) rxSolve’s keep argument now maintain character factor classes input data class (#190) Parameter labels may now modified via ini(param = label(\"text\")) (#351). Parameter order may modified via append argument ini() piping model. example, ini(param = 1, append = 0) ini(param = label(\"text\"), append = \"param2\") (#352).","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"internal-changes-2-0-13","dir":"Changelog","previous_headings":"","what":"Internal changes","title":"rxode2 2.0.13","text":"lower/upper bounds outside required bounds, adjustment displayed. initial values piped break model’s boundary condition reset boundary unbounded message boundary reset. Added .rxUi() function convert following objects rxUi objects: rxode2, rxModelVars, function. Converting nlmixr2 fits rxUi placed s3 method corresponding package. assertRxUi(x) now uses .rxUi() can extended outside rxode2/nlmixr2. rxode2 now supports addl ss doses Moved rxDerived rxode2parse (re-exported ). Added test transit compartment solving absence dosing transit compartment (fixed rxode2parse solving tested ) Using ini() without arguments rxode2 type function return ini() block. Also added method ini(mod) <- iniBlock modify ini block wish. iniBlock expression. Using model() without arguments rxode2 type function return model() block. Also added new method model(mod) <- modelBlock Added new method rxode2(mod) <- modFunction allows replacing function new function maintaining meta information ui (like information comes nonmem2rx models). modFunction body new function, new function, new rxode2 ui. rxode2 ui objects now $sticky item inside internal (compressed) environment. $sticky tells variables keep “significant” change ui piping sort model change. respected model piping, modifying model ini(mod)<-, model(mod)<-, rxode2(mod)<-. significant change change model block, change number estimates, change value estimates. Estimate bounds, weather estimate fixed estimate label changes considered significant. Added .ini() method convert various formats ini expression. used internally ini(mod)<-. want assign something new can convert ini expression, add method .ini(). Added .model() method convert various formats model expression. used internally model(mod)<-. want assign something new can convert model expression, add method .model().","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2011","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.11","title":"rxode2 2.0.11","text":"CRAN release: 2022-11-01 Give meaningful error ‘rxode2’ ui models error expressions Break ABI requirement roxde2() rxode2parse() new rxode2parse fix sprintf exclusion shown CRAN.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-2010","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.10","title":"rxode2 2.0.10","text":"CRAN release: 2022-10-20 Time invariant covariates can now contain ‘NA’ values. column ‘NA’ entire id, now ‘rxode2’ warns id column instead just id. fix CRAN issues ‘nlmixr2est’, make version dependency explicit.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-209","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.9","title":"rxode2 2.0.9","text":"CRAN release: 2022-10-19 Remove log likelihoods ‘rxode2’ reduce compilation time increase maintainability ‘rxode2’. transferred ‘rxode2ll’ (requested CRAN). Remove parsing ‘rxode2’ solved linear compartment code move ‘rxode2parse’ reduce compilation time (requested CRAN). Remove random number generation ‘rxode2’ move ‘rxode2random’ reduce compilation time (requested CRAN). Remove event table translation generation ‘rxode2’ move ‘rxode2et’ reduce compilation time (requested CRAN). Change rxode2 ui object compressed, serialized object default. reduce C stack size problem occurs many environments R. Warn ignoring items simulations Export method change ‘rxode2’ solve methods internal integers Bug fix time invariant covariates identified time variant covariate individual’s time starts 0.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-208","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.8","title":"rxode2 2.0.8","text":"CRAN release: 2022-09-23","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"breaking-changes-2-0-8","dir":"Changelog","previous_headings":"","what":"Breaking changes","title":"rxode2 2.0.8","text":"rxgamma now allows rate input. aligns internal rxode2 version rxgamma clarifies used. also aligned llikGamma function used generalized likelihood estimation. ui cauchy simulations now follow ui normal t distributions, means can combine transformations. cauchy t distribution one degree freedom. ui dnorm() norm() longer equivalent add(). Now allows use loglik llikNorm() instead standard nlmixr2 style focei likelihood. done adding dnorm() end line. also means dnorm() now doesn’t take arguments. Vandercorput normal removed (non-random number generator)","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-2-0-8","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 2.0.8","text":"Allow models nlmixr2 form without ini({}) block Allow model piping omega matrix f %>% ini(omegaMatrix) Standard models created rxode2() can piped model function Families log-likelihood added rxode2 mixed likelihood nonlinear mixed effects models may specified run. memory footprint rxode2 solving reduced Piping now allow named strings (issue #249)","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-2-0-8","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 2.0.8","text":"rxode2’s symengine convert sqrt(2) M_SQRT_2 M_SQRT2. fixed; noticeable nlmixr2 log-likelihood estimation methods rxode2 treats DV non-covariate etTran (last time duplicate model). noticeable nlmixr2 log-likelihood estimation methods.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"new-features-2-0-8-1","dir":"Changelog","previous_headings":"","what":"New features","title":"rxode2 2.0.8","text":"new flag (rxFlag) created tell rxode2 solving process . useful debugging. outputting variable always 11 calculating left handed equations. using conjunction printf() methods, double variable formatted \"%f\". additional option fullPrint added rxode2() allows rprintf() used almost rxode2() steps (inductive linearization matrix exponential exception ) instead just integration ddt step. defaults FALSE.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-207","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.7","title":"rxode2 2.0.7","text":"CRAN release: 2022-05-17 Removed accidental ^S news requested CRAN. Bug fix complicated mu-referencing. Change rxode2 md5 depend C/C++/Fortran code headers R files. way binary compatibility nlmixr2est rxode2, new version nlmixr2est need submitted CRAN.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"rxode2-206","dir":"Changelog","previous_headings":"","what":"rxode2 2.0.6","title":"rxode2 2.0.6","text":"CRAN release: 2022-05-09","code":""},{"path":[]},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"solving-controls-2-0-6","dir":"Changelog","previous_headings":"Breaking changes","what":"Solving controls","title":"rxode2 2.0.6","text":"options rxControl rxSolve strict. camelCase now always used. Old options like add.cov transit_abs longer supported, addCov supported. new option, sigdig added rxControl(), controls common significant figure options like atol, rtol, ssAtol, ssRtol, single option.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"simulations-2-0-6","dir":"Changelog","previous_headings":"Breaking changes","what":"Simulations","title":"rxode2 2.0.6","text":"simulations, $simulationSigma now assumes diagonal matrix. sigma values assumed standard normal, uncorrelated endpoints. Simulation uncertainty still draw identity diagonal matrix Parallel solving now seeds simulation per individual based initial seed plus simulation id. makes simulation reproducible regardless number cores running simulation.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"other-breaking-changes-2-0-6","dir":"Changelog","previous_headings":"Breaking changes","what":"Other breaking changes","title":"rxode2 2.0.6","text":"Solved objects now access underlying rxode model $rxode2 instead $rxode Since change names, rxode2, rxode RxODE perform function. Options changed RxODE.syntax rxode2.syntax. Assigning states rxode2.syntax.assign.state (RxODE.syntax.assign.state) longer supported. Enforcing “pure” assignment syntax = syntax longer supported rxode2.syntax.assign longer supported (RxODE.syntax.assign). Since R supports ** exponentiation operator, pure syntax without ** can longer enabled. Hence rxode2.syntax.star.pow (RxODE.syntax.star.pow) longer effect. “pure” syntax requires semicolon can longer enabled. Therefore rxode2.syntax.require.semicolon (RxODE.syntax.require.semicolon) longer effect. syntax state(0) can longer turned . rxode2.syntax.allow.ini0 (RxODE.syntax.allow.ini0) removed. Variable dots variable state names like state.name works R. Therefore, “pure” syntax excluding . values variables enforced rxode2.syntax.allow.dots (RxODE.syntax.allow.dots). mnemonic et(rate=model) et(dur=model) mnemonics removed. rate needs set -1 -2 manually instead. function rxode2Test() removed favor using testthat directly. Transit compartments need use new evid, evid=7. said, transitAbs option longer supported. ID columns input parameter data frames sorted merged original dataset ; underlying assumption ID order now checked outside rxode2(). Note event data frame still sorted.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"additional-features-2-0-6","dir":"Changelog","previous_headings":"","what":"Additional features","title":"rxode2 2.0.6","text":"UI functions nlmixr ported work rxode2 directly. rxModelVars({}) now supported. may now combine 2 models rxode2 rxAppendModel(). fact, long first value rxode2 evaluated ui model, can use c/rbind bind 2 models together. may now append model lines piping using %>% model(lines, append=TRUE) can also pre-pend lines %>% model(lines, append=NA) may now rename model variables, states defined parameters %>% rxRename(new=old) dplyr loaded: %>% rename(new=old) can fix parameters %>% ini(tcl=fix) %>% ini(fix(tcl)) well unfix parameters %>% ini(tcl=unfix) %>% ini(unfix(tcl))","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"internal-changes-2-0-6","dir":"Changelog","previous_headings":"","what":"Internal changes","title":"rxode2 2.0.6","text":"Strict R headers enforced places Since many changes incompatible, version renamed rxode2 rxode2() printout longer uses rules centered headings make display better larger variety systems.","code":""},{"path":"https://nlmixr2.github.io/rxode2/news/index.html","id":"bug-fixes-2-0-6","dir":"Changelog","previous_headings":"","what":"Bug fixes","title":"rxode2 2.0.6","text":"tad() related time features reset start infusion (opposed starting beginning end infusion)","code":""}]

=9@pMO#A`RRYsw`?quy5F?X#I5y;Wu~opm0h$ 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

c19WvYXZ@v+xN-;dtwQotRLpf57PzntZ$ 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 z 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 diff --git a/articles/rxode2-plot_files/figure-html/unnamed-chunk-7-1.png b/articles/rxode2-plot_files/figure-html/unnamed-chunk-7-1.png index 7384b4f9108cef5701462ce69f975af47f08763d..b1555d6eea34878bbeb3bab448cbc1fa68c351e7 100644 GIT binary patch literal 169637 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