aboutsummaryrefslogtreecommitdiff
path: root/R
diff options
context:
space:
mode:
author= <=>2013-12-04 10:25:14 +0100
committer= <=>2013-12-04 10:25:14 +0100
commit8b94131388071980e62c17190eb4229e89975a0c (patch)
tree48f90fae958d466076f9f3b0aa8ec733c9c7bbee /R
parentf7be9d1c545b6385f53603d2861e0a16e3044165 (diff)
Make it possible to use different ode solvers
Diffstat (limited to 'R')
-rw-r--r--R/mkinfit.R8
-rw-r--r--R/mkinpredict.R10
2 files changed, 11 insertions, 7 deletions
diff --git a/R/mkinfit.R b/R/mkinfit.R
index 3e47479f..749d7485 100644
--- a/R/mkinfit.R
+++ b/R/mkinfit.R
@@ -1,5 +1,3 @@
-# $Id$
-
# Copyright (C) 2010-2013 Johannes Ranke
# Contact: jranke@uni-bremen.de
# The summary function is an adapted and extended version of summary.modFit
@@ -28,6 +26,7 @@ mkinfit <- function(mkinmod, observed,
fixed_parms = NULL,
fixed_initials = names(mkinmod$diffs)[-1],
solution_type = "auto",
+ method.ode = "lsoda",
method.modFit = "Marq",
control.modFit = list(),
plot = FALSE, quiet = FALSE,
@@ -161,6 +160,7 @@ mkinfit <- function(mkinmod, observed,
# Solve the system with current transformed parameter values
out <- mkinpredict(mkinmod, parms, odeini, outtimes,
solution_type = solution_type,
+ method.ode = method.ode,
atol = atol, rtol = rtol, ...)
assign("out_predicted", out, inherits=TRUE)
@@ -177,7 +177,9 @@ mkinfit <- function(mkinmod, observed,
outtimes_plot = seq(min(observed$time), max(observed$time), length.out=100)
out_plot <- mkinpredict(mkinmod, parms, odeini, outtimes_plot,
- solution_type = solution_type, atol = atol, rtol = rtol, ...)
+ solution_type = solution_type,
+ method.ode = method.ode,
+ atol = atol, rtol = rtol, ...)
plot(0, type="n",
xlim = range(observed$time), ylim = range(observed$value, na.rm=TRUE),
diff --git a/R/mkinpredict.R b/R/mkinpredict.R
index 7ce26caf..07c1a819 100644
--- a/R/mkinpredict.R
+++ b/R/mkinpredict.R
@@ -1,6 +1,4 @@
-# $Id$
-
-# Copyright (C) 2010-2012 Johannes Ranke
+# Copyright (C) 2010-2013 Johannes Ranke
# Contact: jranke@uni-bremen.de
# This file is part of the R package mkin
@@ -18,7 +16,10 @@
# You should have received a copy of the GNU General Public License along with
# this program. If not, see <http://www.gnu.org/licenses/>
-mkinpredict <- function(mkinmod, odeparms, odeini, outtimes, solution_type = "deSolve", map_output = TRUE, atol = 1e-8, rtol = 1e-10, ...) {
+mkinpredict <- function(mkinmod, odeparms, odeini,
+ outtimes, solution_type = "deSolve",
+ method.ode = "lsoda", atol = 1e-8, rtol = 1e-10,
+ map_output = TRUE, ...) {
# Get the names of the state variables in the model
mod_vars <- names(mkinmod$diffs)
@@ -96,6 +97,7 @@ mkinpredict <- function(mkinmod, odeparms, odeini, outtimes, solution_type = "de
times = outtimes,
func = mkindiff,
parms = odeparms,
+ method = method.ode,
atol = atol,
rtol = rtol,
...

Contact - Imprint