Age | Commit message (Collapse) | Author | Files | Lines |
|
With a plot method. The class mixed.mmkin is currently only a virtual
class created to unify the plotting method.
|
|
This avoids code duplication
|
|
|
|
|
|
|
|
Currently SFO-SFO and DFOP-SFO. Speed increase factor about 60
|
|
Also make the endpoints function work for saem objects.
|
|
The reasons for this decision were
- Creating an saemix generic in the saemix package caused problems with
roxygen, because functions like saemix.plot.xy were documented in
their help files as S3 methods, although explicitly exported with
@export
- Creating an saemix generic in this package is possible, but would
make it necessary to load samix with exclude = "saemix" in order to
avoid overwriting the generic when loading saemix.
- The return object of such an saemix generic in this package cannot
be an S3 class with class attribute c("saemix.mmkin", "SaemixObject")
similar to nlme.mmkin, as saemix returns an S4 class.
- Extending the S4 class SaemixObject using simple inheritance to
a class SaemixMmkinObject with additional slots did not work
as expected. When the initialize method was left untouched, it
prevented creation of an SaemixMmkinObject even if it was based
on an initialised SaemixObject, as the initialize method seems
to always be called by new(). This could potentially be circumvented
by a coerce method. If an alternative initialize method was
used, an SaemixMmkinObject could be created. However, the methods
written for SaemixObjects only worked in some instances, either
because they checked for the class, and not for class inheritance
(like compare.saemix), or because the initialize method was called
for some reason. Therefore, the idea of creating a derived S4 class
was abandoned.
- A side effect of this decision is that the introduction of the saem
generic opens the possibility to use the same generic also for other
backends like nlmixr with the SAEM algorithm.
|
|
Also, exclude the saemix function when loading saemix in the example
code, to prevent overriding our generic
|
|
This commit also defined saemix.mmkin for mmkin row objects.
This works fine, but if we set the class of the returned object
to c("saemix.mmkin", "saemix"), it is not an S4 class any more
which make it impossible to use saemix functions on it.
|
|
Also, use logit transformation for g and for solitary formation
fractions, addressing #10.
|
|
|
|
|
|
Do not give starting values for random effects in nlme.mmkin.
|
|
Improve and update docs
|
|
|
|
|
|
|
|
Update docs
|
|
And add output for nlme fit translating the mkinfit error model "obs"
into nlme::varIdent().
|
|
The experimental nlme version in my drat repository contains the
variance function structure varConstProp which makes it possible to use
the two-component error model in generalized nonlinear models using
nlme::gnls() and in mixed effects models using nlme::nlme().
|
|
|
|
Also commit the dontrun instruction for saemix I had wanted to commit
and switch back to devel mode for pkgdown
|
|
|
|
|
|
|
|
|
|
- Reduce significant digits for the objective function output in
mkinfit(..., quiet = FALSE) as R and R-devel gave different output on my
system
- Add makefile target 'devtest' for testing with R-devel, in order
to fix problems showing up with R-devel on Travis
|
|
|
|
This revealed a bug in the data returned in mkinfit$data in the case
of the d_3 algorithm, which also affected the residual plot - the
data from the direct fitting was not returned even if this was
the better method.
|
|
|
|
Also, use more intelligent starting values for the variance of the
random effects for saemix. While this does not appear to speed up
the convergence, it shows where this variance is greatly reduced
by using mixed-effects models as opposed to the separate independent
fits.
|
|
|
|
saemix_data depends on a development version of saemix, see
pull request saemixdevelopment/saemixextension#2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This is about twice as fast as deSolve compiled in the case of FOCUS D
|
|
also for deSolve and eigenvalue based solutions. This noticeably increases
performance for these methods, see test.log and benchmark vignette.
|
|
This increases performance up to a factor of five!
|
|
|
|
|
|
Still in preparation for analytical solutions of coupled models
|
|
- Combine R/*.solution.R into R/parent_solutions.R
- Create a roxygen family of related functions
- Reduce redundancy by using the inherit tag
- Change the parent.0 argument to parent_0 to match
the corresponding parameter name used in mkinfit
|