aboutsummaryrefslogtreecommitdiff
path: root/R
diff options
context:
space:
mode:
authorJohannes Ranke <jranke@uni-bremen.de>2014-01-22 10:46:44 +0100
committerJohannes Ranke <jranke@uni-bremen.de>2014-01-22 10:46:44 +0100
commit9ef8537149a37ebef8a2a18232644202872bbe55 (patch)
tree066de4b62d6fa8078637fe23ae466fe0f525629e /R
parentaf4a101d2cca91598ec5d1dc297c31a75517b139 (diff)
parent8b94131388071980e62c17190eb4229e89975a0c (diff)
Merge branch 'master' of https://github.com/jranke/mkin
Conflicts: DESCRIPTION R/mkinfit.R
Diffstat (limited to 'R')
-rw-r--r--R/mkinfit.R8
-rw-r--r--R/mkinmod.R15
-rw-r--r--R/mkinpredict.R10
3 files changed, 13 insertions, 20 deletions
diff --git a/R/mkinfit.R b/R/mkinfit.R
index fd536277..6c976a37 100644
--- a/R/mkinfit.R
+++ b/R/mkinfit.R
@@ -1,5 +1,3 @@
-# $Id$
-
# Copyright (C) 2010-2014 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/mkinmod.R b/R/mkinmod.R
index c743777b..2bc6ae35 100644
--- a/R/mkinmod.R
+++ b/R/mkinmod.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
@@ -46,19 +44,10 @@ mkinmod <- function(..., use_of_ff = "min", speclist = NULL)
# fractions
if(spec[[1]]$type %in% c("FOMC", "DFOP", "HS")) {
mat = FALSE
- if(!is.null(spec[[1]]$to)) {
- message <- paste(
- "Only constant formation fractions over time are implemented.",
- "Depending on the reason for the time dependence of degradation",
- "this may be unrealistic. You may want to consider using the",
- "SFORB model",
- sep="\n")
- warning(message)
- } else message <- "ok"
} else mat = TRUE
#}}}
- # Establish list of differential equations as well as map from observed {{{
+ # Establish a list of differential equations as well as a map from observed {{{
# compartments to differential equations
for (varname in obs_vars)
{
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