Releases: metrumresearchgroup/mrgsolve
mrgsolve 1.0.9
- Fix signatures for
compiled.mrgmod()
andas_tibble.mrgsims()
based on new
R-devel check findings (#1065).
mrgsolve 1.0.8
-
SIGMA()
is a new model macro which allows users to access on-diagonal
elements ofSIGMA
in the model (e.g.SIGMA(2)
in$ERROR
) (#1051, #1052). -
mrgsim()
andmrgsim_q()
gain anetasrc
argument, allowingETAs
to
be either simulated fromOMEGA
(new default and previously the only
behavior) or taken from the input data set (new option), similar to the way
parameters can be scraped from the data set (#1037). -
@etas
is a new option for use with the$CAPTURE
block to let users name
ETAs
to be captured into the simulated output; for example, use
@etas 1:last
to capture all modelETAs
in the simulated output (#1055). -
Drop
CXX_STD
statement from Makevars file and DESCRIPTION to be consistent
with current changes in R-devel; mrgsolve continues to require compiler
capable of implementing C++11 standard, but this should be selected
automatically by R (#1060). -
mrgsolve now depends on
R >= 3.6.2
(#1060).
Bugs Fixed
-
Fix bug when the
path
argument is used in the$NMXML
or$NMEXT
blocks;
this bug was introduced through the@cppstem
feature in version1.0.7
(#1046, #1048). -
Fix bug in
mread_cache()
where theproject
directory wasn't getting
rendered properly when passing the complete path to the model specification
file (#1056).
mrgsolve 1.0.7
-
$NMXML
and$NMEXT
now accept therun
argument set to"@cppstem"
(i.e
run = "@cppstem"
); in this case, the stem of the NONMEM run will be assumed
to be the same as the stem of the mrgsolve model file (#1025). -
Missing values (
NA
) in input data sets will be replaced with 0 for the
following columns:AMT
,CMT
,EVID
,II
,ADDL
,RATE
,SS
as well as
their lower case counterparts (#1030). -
Refactored include order when building a model; this is an internal update and
not expected to be visible to the user (#1038).
mrgsolve 1.0.6
Bugs Fixed
- Fix bug in
TOUCH_FUNS
where parameter and compartment lists were not
getting generated properly whenmrgsolve
was not loaded; bug was
detected and fixed prior to upload to CRAN or MPN (#1013).
mrgsolve 1.0.5
-
Changed behavior for dosing records where EVID = 4 and SS != 0
to match what is done by NONMEM: the system will be advanced to
steady-state but will not be reset; behavior prior to 1.0.5
release was to advance to steady-state and then reset (#1011). -
Any column in an input data set that has a class attribute will
now be dropped in addition to non-numeric columns; this includes
columns that areinteger64
which can be present in data frames
derived fromdata.table::fread()
or other.csv
readers
(#1008). -
The
$MAIN
and$TABLE
blocks will no longer get called for
actual dose administration records with lag times; this could
change time after dose calculations or other calculations that
could be happening in those blocks when the actual administration
is taking place (#992). -
Code to update the parameter list was re-factored to be much more
efficient (#978).
Bugs Fixed
-
Fix bug where apparent dosing events for additional doses with lag
times were not getting scheduled (only records for the actual
administration); this doesn't change the simulated output but could
change time after dose calculation (#992). -
Fix bug where special
nm-vars
variables were not getting recognized
as valid capture items during dynamic capture (#987). -
Fix bug when updating the parameter list with a data frame that included
non-numeric columns that were not parameters (#978).
mrgsolve 1.0.4
-
Fix bug where
as_data_frame()
was not properly working when leading event
object wasevd
type (#948, #955). -
Add
uctran()
to convert nmtran data names to upper case (#955). -
Both
lctran()
anductran()
are generic and work ondata.frame
or
event (ev
) objects (#949, #955). -
Fix bug where data records with
EVID = 3
were getting shifted in time by
ALAG
(#964, #969). -
Small negative eigenvalues from
OMEGA
orSIGMA
are set to zero in
multivariate normal simulation ofETA
andEPS
, following the pattern
seen inMASS::mvrnorm()
(#956, #957). -
Fixed bug where template parameters (
T
) were getting modified whennm-vars
plugin was used in conjunction withmrgx
plugin (#965, #968).
mrgsolve 1.0.3
mrgsolve 1.0.1
-
Add
LOG()
,EXP()
,SQRT()
macros whennm-vars
plugin is invoked
#931, #936. -
Use
evd()
to create an event object which renders nmtran names
in upper case (e.g.TIME
rather thantime
) #935, #919. -
Fixed bug where
rate
was not getting set for modeled events #934. -
Fixed bug where
self.stop_id()
andself.stop_id_cf()
had reversed
behavior as documented #927, #928. -
Refactored EVID=3 behavior to leave
NEWIND
as-is #934.
mrgsolve 1.0.0
-
New model syntax:
THETA(n)
is interpreted asTHETAn
in the model code;
THETA
is now a reserved word (#837, #891, #892). -
New functions
collapse_omega()
,collapse_sigma()
andcollapse_matrix()
added which help to reshape OMEGA and SIGMA matrix objects with multiple
blocks (#897, #900). -
New plugin
nm-vars
which implements NONMEM-like syntax for referring to
compartments, differential equations, bioavailability factor, infusion
duration and rate, and lag time (#904, #891). -
New plugin
autodec
which will find user-defined variables in the model
code and automatically declare them as typedouble
(#905, #893). -
Use
ii
as spacer for setting the between-dose interval when putting event
objects in a sequence (c.f.wait
) (#906, #901). -
Start deprecating
simeta(n)
andsimeps(n)
, calls tosimeta()
or
simeps()
with an integer argument thus limiting the update to just a single
ETA(n)
orEPS(n)
; use in model code will generate warning when loading
the model that contains then
integer value (#908, #909).
release/0.11.2
mrgsolve 0.11.2
-
In
pk2iv
, change scaling volume forCENT
fromV2
(incorrect) to
V1
(#831, #832, #833) -
Fix bug collating multiple
$OMEGA
or$SIGMA
matrices when parsing a
model (#863) -
Refactor how debugging information is processed when using the
recover
argument tomread()
(#853) -
Fix typo in documentation for
as_cmat()
; the off-diagonals are assumed
to contain correlations (#856) -
Wrote a
as.data.frame.matrix()
function in Rcpp; all simulation results
return from the C++ simulation code as a data frame (#857) -
Fix bug where dynamic capture (via
mread()
) was not allowed for variables
declared in$GLOBAL
(#868)