From ec574cff822a1238138c0aa69b3d1459bdc3dfa8 Mon Sep 17 00:00:00 2001 From: Johannes Ranke Date: Fri, 19 Jun 2015 17:46:11 +0200 Subject: Use odeintr instead of ccSolve for compiling models --- man/mkinmod.Rd | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) (limited to 'man/mkinmod.Rd') diff --git a/man/mkinmod.Rd b/man/mkinmod.Rd index f6a8fe5d..c5d59403 100644 --- a/man/mkinmod.Rd +++ b/man/mkinmod.Rd @@ -11,9 +11,16 @@ For the definition of model types and their parameters, the equations given in the FOCUS and NAFTA guidance documents are used. + + When a C++ compiler is available (currently checking for g++), the model is + compiled using the \code{\link{odeintr}} package, so that model fitting will + be faster. } \usage{ -mkinmod(..., use_of_ff = "min", speclist = NULL, quiet = FALSE) +mkinmod(..., use_of_ff = "min", speclist = NULL, quiet = FALSE, + odeintr_compile = c("auto", "no", "yes"), + odeintr_method = "rk5_i", + odeintr_atol = 1e-8, odeintr_rtol = 1e-10) } \arguments{ \item{...}{ @@ -45,6 +52,24 @@ mkinmod(..., use_of_ff = "min", speclist = NULL, quiet = FALSE) \item{quiet}{ Should messages be suppressed? } + \item{odeintr_compile}{ + When "no", the model is not compiled using \code{\link{compile_sys}}. + When "auto", it is only compiled when an eigenvalue based solution + is not possible, as compiling the model takes some time and we + want to avoid this in case it does not bring a large performance benefit. + } + \item{odeintr_method}{ + The integration method passed to \code{\link{compile_sys}}. The default "rk5_i" + is an interpolating adaptive method. + } + \item{odeintr_atol}{ + Absolute error tolerance, only used when the model is compiled using the odeintr + package. Default is 1e-8, lower than in \code{\link{compile_sys}}. + } + \item{odeintr_rtol}{ + Relative error tolerance, only used when the model is compiled using the odeintr + package. Default is 1e-10, lower than in \code{\link{compile_sys}}. + } } \value{ A list of class \code{mkinmod} for use with \code{\link{mkinfit}}, containing @@ -56,6 +81,11 @@ mkinmod(..., use_of_ff = "min", speclist = NULL, quiet = FALSE) \item{use_of_ff}{ The content of \code{use_of_ff} is passed on in this list component. } \item{coefmat}{ The coefficient matrix, if the system of differential equations can be represented by one. } + \item{e}{An environment where the functions generated by \{code\{link{compile_sys}} + are installed when the model is compiled. The name used for the model is "m", so + for example the function for setting parameters is e$m_set_params(). See + the help page for \code{\link{compile_sys}} for the available functions + and their arguments. } \note{ The IORE submodel is not well tested (yet). When using this model for metabolites, @@ -92,12 +122,12 @@ SFO_SFO <- mkinmod( # If we have several parallel metabolites # (compare tests/testthat/test_synthetic_data_for_UBA_2014.R) +\dontrun{ m_synth_DFOP_par <- mkinmod(parent = mkinsub("DFOP", c("M1", "M2")), M1 = mkinsub("SFO"), M2 = mkinsub("SFO"), use_of_ff = "max", quiet = TRUE) -\dontrun{ fit_DFOP_par_c <- mkinfit(m_synth_DFOP_par, synthetic_data_for_UBA_2014[[12]]$data, quiet = TRUE) -- cgit v1.2.1