Skip to content

mrgsolve 0.5.12

Compare
Choose a tag to compare
@kylebaron kylebaron released this 06 Apr 05:16

Bugs fixed

  • Added missing example model specification files (popExample, viralExample, others)
  • Added mindt attribute to mrgmod objects with default value of .Machine$double.eps*10. When the problem includes an infusion, the calculated end of the infusion
    may come too close to another record. Usually the solver will fail with the message DLSODA- TOUT(=R1) too close to T(=R2) to start integration.. To fix this, mindt is set to be greater than zero but small. When mindt is greater than zero and tto - tfrom (the times of two adjacent records) is less than mindt, mrgsolve will set tto equal to tfrom (issue 9).
  • zero.re didn't properly update the $SIGMA list when one matrix was named and another was unnamed. This has been fixed. (issue 16)
  • Fixed a bug where infusions with ss=1 caused mrgsolve/R to crash when the infusion duration was equal to or some multiple of the dosing interval. (issue 19)
  • Fixed a bug where setting F_CENT to zero gave undefined behavior. mrgsolve will issue an error if F_CMT is set to zero and the ss flag is set to 1. (issue 22)
  • Fixed bug where dosing records with evid=4 (reset the system and dose) and addl > 0 reset the system for all subsequent doses. Additional doses coming from records with evid=4 will not do system reset. (issue 23)

Important changes

  • New arguments for $NMXML (see ?nmxml) that are easier to understand and consistent with new prefixes and labels for ETA and EPS. name argument is removed. Use tname (to provide a prefix for THETAs), oname (to name the OMEGA matrix), and sname (to name the SIGMA matrix) instead. In general, set theta to be TRUE to import THETAs, set omega to be TRUE to import OMEGA, and set sigma to be TRUE to import SIGMA. Specifying character names tname, oname, and sname will imply theta=TRUE, omega=TRUE, and sigma=TRUE, respectively.

New features

  • New aliases available for setting bioavailability, lag time and infusion duration and rate. For a compartment called DEPOT use: F_DEPOT (bioavailability), ALAG_DEPOT (dosing lag time), D_DEPOT (infusion duration), and / or R_DEPOT (infusion rate). (issue 13)
  • Added slightly more informative messages when DLSODA fails, including clear identification if the value of istate, which is 2 when the solver succeeds and negative when the solver fails.
  • Added labels and prefix options to $OMEGA and $SIGMA. These allow descriptive aliases for ETAs ... e.g. using ETA_CL rather than ETA(1). (issue 15)
  • Added dplyr::slice method for mrgsims objects (issue 11)
  • New argument to mread: quiet. Setting quiet to TRUE will prevent printing messages when mread is called. The default is getOptions("mrgsolve_mread_quiet",FALSE) ... so you can call options(mrgsolve_mread_quiet = TRUE) to globally turn off messages from mread.