Age | Commit message (Collapse) | Author | Files | Lines |
|
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, use logit transformation for g and for solitary formation
fractions, addressing #10.
|
|
|
|
Improve and update docs
|
|
|
|
|
|
|
|
Vignette FOCUS_L failed as I had introduced a bug in the handling of
warnings.
Current vdiffr only runs visual tests if R < 4.1.0, skipping r-devel for now,
see https://github.com/r-lib/vdiffr/commit/630a29d013361fd63fea242f531e2db6aef37919
|
|
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.
|
|
|
|
also for deSolve and eigenvalue based solutions. This noticeably increases
performance for these methods, see test.log and benchmark vignette.
|
|
This revealed that transforming rates is necessary for fitting
the analytical solution of the SFO-SFO model to the FOCUS D dataset.
Benchmarks show that fitting coupled models with deSolve got a bit
slower through the latest changes
|
|
This increases performance up to a factor of five!
|
|
|
|
Still in preparation for analytical solutions of coupled models
|
|
Preparing for symbolic solutions for more than one compound
|
|
|
|
This was done to address the test failure on
r-devel-linux-x86_64-debian-gcc on CRAN
|
|
|
|
|
|
|
|
No idea why I had to do more assignments all of a sudden in test_nlme.R
|
|
|
|
|
|
- Added a section with platform specific notes on getting compiled
models to work to the compiled models article
- Don't return empty SFORB parameter list from endpoints() if there is no
SFORB model
- Avoid warnings when using standardized = TRUE in plot.mmkin()
|
|
|
|
|
|
- Switch an example dataset in the test setup to a dataset with
replicates, adapt tests
- Skip the test for lrtest with an update specification as it does not
only fail when pkgdown generates static help pages, but also in testthat
|
|
|
|
|
|
|
|
The likelihood ratio test method is lrtest, in addition,
methods for update and residuals were added.
|
|
The cutoff now matches what is given by Venzon and Moolgavkar (1988).
Also, confidence intervals closely match intervals obtained with
stats4::confint in the test case where an stats4::mle object
is created from the likelihood function in one test case.
Static documentation rebuilt by pkgdown
|
|
Static documentation rebuilt by pkgdown
|
|
|
|
|
|
mkinfit objects now include an ll() function to calculate the
log-likelihood. Part of the code was refactored, hopefully making it
easier to read and maintain. IRLS is currently the default algorithm for
the error model "obs", for no particular reason. This may be subject
to change when I get around to investigate.
Slow tests are now in a separate subdirectory and will probably
only be run by my own Makefile target.
Formatting of test logs is improved.
Roundtripping error model parameters works with a precision of 10% when
we use lots of replicates in the synthetic data (see slow tests). This
is not new in this commit, but as I think it is reasonable this
closes #7.
|
|
generated with mkin < 0.9.49.5
|
|
|
|
|
|
One of the tests exceeded the number of iterations when using the
d_3 error model algorithm, so only use "direct" in this case.
|
|
The new algorithm tries direct optimization of the likelihood, as well
as a three step procedure. In this way, we consistently get the
model with the highest likelihood for SFO, DFOP and HS for all 12
new test datasets.
|
|
by plotting squared residuals against predicted values, and
showing the variance function used in the fitted error model.
Rebuild docs
|
|
Static documentation rebuilt by pkgdown
|
|
Now we have a three stage fitting process for
nonconstant error models:
- Unweighted least squares
- Only optimize the error model
- Optimize both
Static documentation rebuilt by pkgdown
|
|
- Also make it possible to specify initial values for error model
parameters.
- Run tests
- Rebuild docs
|
|
Remove skipped tests as I do not intend to reactivate them
|
|
- Write the NEWS
- Static documentation rebuilt by pkgdown
- Adapt mkinerrmin
- Fix (hopefully all) remaining problems in mkinfit
|