<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Example evaluation of FOCUS Laboratory Data L1 to L3 • mkin</title>
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
<script src="../deps/headroom-0.11.0/headroom.min.js"></script><script src="../deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="../deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="../deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="../deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="../deps/search-1.0.0/fuse.min.js"></script><script src="../deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="../pkgdown.js"></script><meta property="og:title" content="Example evaluation of FOCUS Laboratory Data L1 to L3">
<meta name="robots" content="noindex">
</head>
<body>
<a href="#main" class="visually-hidden-focusable">Skip to contents</a>
<nav class="navbar navbar-expand-lg fixed-top bg-light" data-bs-theme="default" aria-label="Site navigation"><div class="container">
<a class="navbar-brand me-2" href="../index.html">mkin</a>
<small class="nav-text text-info me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="In-development version">1.2.10</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div id="navbar" class="collapse navbar-collapse ms-3">
<ul class="navbar-nav me-auto">
<li class="nav-item"><a class="nav-link" href="../reference/index.html">Reference</a></li>
<li class="active nav-item dropdown">
<button class="nav-link dropdown-toggle" type="button" id="dropdown-articles" data-bs-toggle="dropdown" aria-expanded="false" aria-haspopup="true">Articles</button>
<ul class="dropdown-menu" aria-labelledby="dropdown-articles">
<li><a class="dropdown-item" href="../articles/mkin.html">Introduction to mkin</a></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header" data-toc-skip>Example evaluations with (generalised) nonlinear least squares</h6></li>
<li><a class="dropdown-item" href="../articles/FOCUS_D.html">Example evaluation of FOCUS Example Dataset D</a></li>
<li><a class="dropdown-item" href="../articles/FOCUS_L.html">Example evaluation of FOCUS Laboratory Data L1 to L3</a></li>
<li><a class="dropdown-item" href="../articles/web_only/FOCUS_Z.html">Example evaluation of FOCUS Example Dataset Z</a></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header" data-toc-skip>Example evaluations with hierarchical models (nonlinear mixed-effects models)</h6></li>
<li><a class="dropdown-item" href="../articles/prebuilt/2022_dmta_parent.html">Testing hierarchical parent degradation kinetics with residue data on dimethenamid and dimethenamid-P</a></li>
<li><a class="dropdown-item" href="../articles/prebuilt/2022_dmta_pathway.html">Testing hierarchical pathway kinetics with residue data on dimethenamid and dimethenamid-P</a></li>
<li><a class="dropdown-item" href="../articles/prebuilt/2023_mesotrione_parent.html">Testing covariate modelling in hierarchical parent degradation kinetics with residue data on mesotrione</a></li>
<li><a class="dropdown-item" href="../articles/prebuilt/2022_cyan_pathway.html">Testing hierarchical pathway kinetics with residue data on cyantraniliprole</a></li>
<li><a class="dropdown-item" href="../articles/web_only/dimethenamid_2018.html">Comparison of saemix and nlme evaluations of dimethenamid data from 2018</a></li>
<li><a class="dropdown-item" href="../articles/web_only/multistart.html">Short demo of the multistart method</a></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header" data-toc-skip>Performance</h6></li>
<li><a class="dropdown-item" href="../articles/web_only/compiled_models.html">Performance benefit by using compiled model definitions in mkin</a></li>
<li><a class="dropdown-item" href="../articles/web_only/benchmarks.html">Benchmark timings for mkin</a></li>
<li><a class="dropdown-item" href="../articles/web_only/saem_benchmarks.html">Benchmark timings for saem.mmkin</a></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header" data-toc-skip>Miscellaneous</h6></li>
<li><a class="dropdown-item" href="../articles/twa.html">Calculation of time weighted average concentrations with mkin</a></li>
<li><a class="dropdown-item" href="../articles/web_only/NAFTA_examples.html">Example evaluation of NAFTA SOP Attachment examples</a></li>
</ul>
</li>
<li class="nav-item"><a class="nav-link" href="../coverage/coverage.html">Test coverage</a></li>
<li class="nav-item"><a class="nav-link" href="../news/index.html">News</a></li>
</ul>
<ul class="navbar-nav">
<li class="nav-item"><form class="form-inline" role="search">
<input class="form-control" type="search" name="search-input" id="search-input" autocomplete="off" aria-label="Search site" placeholder="Search for" data-search-index="../search.json">
</form></li>
<li class="nav-item"><a class="external-link nav-link" href="https://github.com/jranke/mkin/" aria-label="GitHub"><span class="fa fab fa-github fa-lg"></span></a></li>
</ul>
</div>
</div>
</nav><div class="container template-article">
<div class="row">
<main id="main" class="col-md-9"><div class="page-header">
<h1>Example evaluation of FOCUS Laboratory Data L1 to L3</h1>
<h4 data-toc-skip class="author">Johannes
Ranke</h4>
<h4 data-toc-skip class="date">Last change 18 May 2023
(rebuilt 2025-02-14)</h4>
<small class="dont-index">Source: <a href="https://github.com/jranke/mkin/blob/HEAD/vignettes/FOCUS_L.rmd" class="external-link"><code>vignettes/FOCUS_L.rmd</code></a></small>
<div class="d-none name"><code>FOCUS_L.rmd</code></div>
</div>
<div class="section level2">
<h2 id="laboratory-data-l1">Laboratory Data L1<a class="anchor" aria-label="anchor" href="#laboratory-data-l1"></a>
</h2>
<p>The following code defines example dataset L1 from the FOCUS kinetics
report, p. 284:</p>
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="kw"><a href="https://rdrr.io/r/base/library.html" class="external-link">library</a></span><span class="op">(</span><span class="st"><a href="https://pkgdown.jrwb.de/mkin/">"mkin"</a></span>, quietly <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="va">FOCUS_2006_L1</span> <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span></span>
<span> t <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/rep.html" class="external-link">rep</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">1</span>, <span class="fl">2</span>, <span class="fl">3</span>, <span class="fl">5</span>, <span class="fl">7</span>, <span class="fl">14</span>, <span class="fl">21</span>, <span class="fl">30</span><span class="op">)</span>, each <span class="op">=</span> <span class="fl">2</span><span class="op">)</span>,</span>
<span> parent <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">88.3</span>, <span class="fl">91.4</span>, <span class="fl">85.6</span>, <span class="fl">84.5</span>, <span class="fl">78.9</span>, <span class="fl">77.6</span>,</span>
<span> <span class="fl">72.0</span>, <span class="fl">71.9</span>, <span class="fl">50.3</span>, <span class="fl">59.4</span>, <span class="fl">47.0</span>, <span class="fl">45.1</span>,</span>
<span> <span class="fl">27.7</span>, <span class="fl">27.3</span>, <span class="fl">10.0</span>, <span class="fl">10.4</span>, <span class="fl">2.9</span>, <span class="fl">4.0</span><span class="op">)</span><span class="op">)</span></span>
<span><span class="va">FOCUS_2006_L1_mkin</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkin_wide_to_long.html">mkin_wide_to_long</a></span><span class="op">(</span><span class="va">FOCUS_2006_L1</span><span class="op">)</span></span></code></pre></div>
<p>Here we use the assumptions of simple first order (SFO), the case of
declining rate constant over time (FOMC) and the case of two different
phases of the kinetics (DFOP). For a more detailed discussion of the
models, please see the FOCUS kinetics report.</p>
<p>Since mkin version 0.9-32 (July 2014), we can use shorthand notation
like <code>"SFO"</code> for parent only degradation models. The
following two lines fit the model and produce the summary report of the
model fit. This covers the numerical analysis given in the FOCUS
report.</p>
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">m.L1.SFO</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="st">"SFO"</span>, <span class="va">FOCUS_2006_L1_mkin</span>, quiet <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">m.L1.SFO</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:11 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:11 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - k_parent * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 133 model solutions performed in 0.01 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 89.85 state</span></span>
<span><span class="co">## k_parent 0.10 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 89.850000 -Inf Inf</span></span>
<span><span class="co">## log_k_parent -2.302585 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 93.88778 96.5589 -43.94389</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 92.470 1.28200 89.740 95.200</span></span>
<span><span class="co">## log_k_parent -2.347 0.03763 -2.428 -2.267</span></span>
<span><span class="co">## sigma 2.780 0.46330 1.792 3.767</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_k_parent sigma</span></span>
<span><span class="co">## parent_0 1.000e+00 6.186e-01 -1.516e-09</span></span>
<span><span class="co">## log_k_parent 6.186e-01 1.000e+00 -3.124e-09</span></span>
<span><span class="co">## sigma -1.516e-09 -3.124e-09 1.000e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 92.47000 72.13 8.824e-21 89.74000 95.2000</span></span>
<span><span class="co">## k_parent 0.09561 26.57 2.487e-14 0.08824 0.1036</span></span>
<span><span class="co">## sigma 2.78000 6.00 1.216e-05 1.79200 3.7670</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 3.424 2 7</span></span>
<span><span class="co">## parent 3.424 2 7</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90</span></span>
<span><span class="co">## parent 7.249 24.08</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Data:</span></span>
<span><span class="co">## time variable observed predicted residual</span></span>
<span><span class="co">## 0 parent 88.3 92.471 -4.1710</span></span>
<span><span class="co">## 0 parent 91.4 92.471 -1.0710</span></span>
<span><span class="co">## 1 parent 85.6 84.039 1.5610</span></span>
<span><span class="co">## 1 parent 84.5 84.039 0.4610</span></span>
<span><span class="co">## 2 parent 78.9 76.376 2.5241</span></span>
<span><span class="co">## 2 parent 77.6 76.376 1.2241</span></span>
<span><span class="co">## 3 parent 72.0 69.412 2.5884</span></span>
<span><span class="co">## 3 parent 71.9 69.412 2.4884</span></span>
<span><span class="co">## 5 parent 50.3 57.330 -7.0301</span></span>
<span><span class="co">## 5 parent 59.4 57.330 2.0699</span></span>
<span><span class="co">## 7 parent 47.0 47.352 -0.3515</span></span>
<span><span class="co">## 7 parent 45.1 47.352 -2.2515</span></span>
<span><span class="co">## 14 parent 27.7 24.247 3.4528</span></span>
<span><span class="co">## 14 parent 27.3 24.247 3.0528</span></span>
<span><span class="co">## 21 parent 10.0 12.416 -2.4163</span></span>
<span><span class="co">## 21 parent 10.4 12.416 -2.0163</span></span>
<span><span class="co">## 30 parent 2.9 5.251 -2.3513</span></span>
<span><span class="co">## 30 parent 4.0 5.251 -1.2513</span></span></code></pre>
<p>A plot of the fit is obtained with the plot function for mkinfit
objects.</p>
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">m.L1.SFO</span>, show_errmin <span class="op">=</span> <span class="cn">TRUE</span>, main <span class="op">=</span> <span class="st">"FOCUS L1 - SFO"</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-4-1.png" width="576"></p>
<p>The residual plot can be easily obtained by</p>
<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/mkinresplot.html">mkinresplot</a></span><span class="op">(</span><span class="va">m.L1.SFO</span>, ylab <span class="op">=</span> <span class="st">"Observed"</span>, xlab <span class="op">=</span> <span class="st">"Time"</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-5-1.png" width="576"></p>
<p>For comparison, the FOMC model is fitted as well, and the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level is checked.</p>
<div class="sourceCode" id="cb6"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">m.L1.FOMC</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="st">"FOMC"</span>, <span class="va">FOCUS_2006_L1_mkin</span>, quiet<span class="op">=</span><span class="cn">TRUE</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## Warning in mkinfit("FOMC", FOCUS_2006_L1_mkin, quiet = TRUE): Optimisation did not converge:</span></span>
<span><span class="co">## false convergence (8)</span></span></code></pre>
<div class="sourceCode" id="cb8"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">m.L1.FOMC</span>, show_errmin <span class="op">=</span> <span class="cn">TRUE</span>, main <span class="op">=</span> <span class="st">"FOCUS L1 - FOMC"</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-6-1.png" width="576"></p>
<div class="sourceCode" id="cb9"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">m.L1.FOMC</span>, data <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## Warning in sqrt(diag(covar)): NaNs produced</span></span></code></pre>
<pre><code><span><span class="co">## Warning in cov2cor(ans$covar): diag(V) had non-positive or NA entries; the</span></span>
<span><span class="co">## non-finite result may be dubious</span></span></code></pre>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:11 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:11 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - (alpha/beta) * 1/((time/beta) + 1) * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 342 model solutions performed in 0.023 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 89.85 state</span></span>
<span><span class="co">## alpha 1.00 deparm</span></span>
<span><span class="co">## beta 10.00 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 89.850000 -Inf Inf</span></span>
<span><span class="co">## log_alpha 0.000000 -Inf Inf</span></span>
<span><span class="co">## log_beta 2.302585 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Warning(s): </span></span>
<span><span class="co">## Optimisation did not converge:</span></span>
<span><span class="co">## false convergence (8)</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 95.88782 99.44931 -43.94391</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 92.47 1.2820 89.720 95.220</span></span>
<span><span class="co">## log_alpha 13.20 NaN NaN NaN</span></span>
<span><span class="co">## log_beta 15.54 NaN NaN NaN</span></span>
<span><span class="co">## sigma 2.78 0.4607 1.792 3.768</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_alpha log_beta sigma</span></span>
<span><span class="co">## parent_0 1.000000 NaN NaN 0.000603</span></span>
<span><span class="co">## log_alpha NaN 1 NaN NaN</span></span>
<span><span class="co">## log_beta NaN NaN 1 NaN</span></span>
<span><span class="co">## sigma 0.000603 NaN NaN 1.000000</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 9.247e+01 NA NA 89.720 95.220</span></span>
<span><span class="co">## alpha 5.386e+05 NA NA NA NA</span></span>
<span><span class="co">## beta 5.633e+06 NA NA NA NA</span></span>
<span><span class="co">## sigma 2.780e+00 NA NA 1.792 3.768</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 3.619 3 6</span></span>
<span><span class="co">## parent 3.619 3 6</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90 DT50back</span></span>
<span><span class="co">## parent 7.249 24.08 7.249</span></span></code></pre>
<p>We get a warning that the default optimisation algorithm
<code>Port</code> did not converge, which is an indication that the
model is overparameterised, <em>i.e.</em> contains too many parameters
that are ill-defined as a consequence.</p>
<p>And in fact, due to the higher number of parameters, and the lower
number of degrees of freedom of the fit, the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level is actually higher for the FOMC model (3.6%) than for the
SFO model (3.4%). Additionally, the parameters <code>log_alpha</code>
and <code>log_beta</code> internally fitted in the model have excessive
confidence intervals, that span more than 25 orders of magnitude (!)
when backtransformed to the scale of <code>alpha</code> and
<code>beta</code>. Also, the t-test for significant difference from zero
does not indicate such a significant difference, with p-values greater
than 0.1, and finally, the parameter correlation of
<code>log_alpha</code> and <code>log_beta</code> is 1.000, clearly
indicating that the model is overparameterised.</p>
<p>The
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error levels reported in Appendix 3 and Appendix 7 to the FOCUS kinetics
report are rounded to integer percentages and partly deviate by one
percentage point from the results calculated by mkin. The reason for
this is not known. However, mkin gives the same
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error levels as the kinfit package and the calculation routines of the
kinfit package have been extensively compared to the results obtained by
the KinGUI software, as documented in the kinfit package vignette.
KinGUI was the first widely used standard package in this field. Also,
the calculation of
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error levels was compared with KinGUII, CAKE and DegKin manager in a
project sponsored by the German Umweltbundesamt <span class="citation">(Ranke 2014)</span>.</p>
</div>
<div class="section level2">
<h2 id="laboratory-data-l2">Laboratory Data L2<a class="anchor" aria-label="anchor" href="#laboratory-data-l2"></a>
</h2>
<p>The following code defines example dataset L2 from the FOCUS kinetics
report, p. 287:</p>
<div class="sourceCode" id="cb13"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">FOCUS_2006_L2</span> <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span></span>
<span> t <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/rep.html" class="external-link">rep</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">1</span>, <span class="fl">3</span>, <span class="fl">7</span>, <span class="fl">14</span>, <span class="fl">28</span><span class="op">)</span>, each <span class="op">=</span> <span class="fl">2</span><span class="op">)</span>,</span>
<span> parent <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">96.1</span>, <span class="fl">91.8</span>, <span class="fl">41.4</span>, <span class="fl">38.7</span>,</span>
<span> <span class="fl">19.3</span>, <span class="fl">22.3</span>, <span class="fl">4.6</span>, <span class="fl">4.6</span>,</span>
<span> <span class="fl">2.6</span>, <span class="fl">1.2</span>, <span class="fl">0.3</span>, <span class="fl">0.6</span><span class="op">)</span><span class="op">)</span></span>
<span><span class="va">FOCUS_2006_L2_mkin</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkin_wide_to_long.html">mkin_wide_to_long</a></span><span class="op">(</span><span class="va">FOCUS_2006_L2</span><span class="op">)</span></span></code></pre></div>
<div class="section level3">
<h3 id="sfo-fit-for-l2">SFO fit for L2<a class="anchor" aria-label="anchor" href="#sfo-fit-for-l2"></a>
</h3>
<p>Again, the SFO model is fitted and the result is plotted. The
residual plot can be obtained simply by adding the argument
<code>show_residuals</code> to the plot command.</p>
<div class="sourceCode" id="cb14"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">m.L2.SFO</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="st">"SFO"</span>, <span class="va">FOCUS_2006_L2_mkin</span>, quiet<span class="op">=</span><span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">m.L2.SFO</span>, show_residuals <span class="op">=</span> <span class="cn">TRUE</span>, show_errmin <span class="op">=</span> <span class="cn">TRUE</span>,</span>
<span> main <span class="op">=</span> <span class="st">"FOCUS L2 - SFO"</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-8-1.png" width="672"></p>
<p>The
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level of 14% suggests that the model does not fit very well. This
is also obvious from the plots of the fit, in which we have included the
residual plot.</p>
<p>In the FOCUS kinetics report, it is stated that there is no apparent
systematic error observed from the residual plot up to the measured DT90
(approximately at day 5), and there is an underestimation beyond that
point.</p>
<p>We may add that it is difficult to judge the random nature of the
residuals just from the three samplings at days 0, 1 and 3. Also, it is
not clear <em>a priori</em> why a consistent underestimation after the
approximate DT90 should be irrelevant. However, this can be rationalised
by the fact that the FOCUS fate models generally only implement SFO
kinetics.</p>
</div>
<div class="section level3">
<h3 id="fomc-fit-for-l2">FOMC fit for L2<a class="anchor" aria-label="anchor" href="#fomc-fit-for-l2"></a>
</h3>
<p>For comparison, the FOMC model is fitted as well, and the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level is checked.</p>
<div class="sourceCode" id="cb15"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">m.L2.FOMC</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="st">"FOMC"</span>, <span class="va">FOCUS_2006_L2_mkin</span>, quiet <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">m.L2.FOMC</span>, show_residuals <span class="op">=</span> <span class="cn">TRUE</span>,</span>
<span> main <span class="op">=</span> <span class="st">"FOCUS L2 - FOMC"</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-9-1.png" width="672"></p>
<div class="sourceCode" id="cb16"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">m.L2.FOMC</span>, data <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:12 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:12 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - (alpha/beta) * 1/((time/beta) + 1) * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 239 model solutions performed in 0.015 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 93.95 state</span></span>
<span><span class="co">## alpha 1.00 deparm</span></span>
<span><span class="co">## beta 10.00 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 93.950000 -Inf Inf</span></span>
<span><span class="co">## log_alpha 0.000000 -Inf Inf</span></span>
<span><span class="co">## log_beta 2.302585 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 61.78966 63.72928 -26.89483</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 93.7700 1.6130 90.05000 97.4900</span></span>
<span><span class="co">## log_alpha 0.3180 0.1559 -0.04149 0.6776</span></span>
<span><span class="co">## log_beta 0.2102 0.2493 -0.36460 0.7850</span></span>
<span><span class="co">## sigma 2.2760 0.4645 1.20500 3.3470</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_alpha log_beta sigma</span></span>
<span><span class="co">## parent_0 1.000e+00 -1.151e-01 -2.085e-01 -7.436e-09</span></span>
<span><span class="co">## log_alpha -1.151e-01 1.000e+00 9.741e-01 -1.617e-07</span></span>
<span><span class="co">## log_beta -2.085e-01 9.741e-01 1.000e+00 -1.386e-07</span></span>
<span><span class="co">## sigma -7.436e-09 -1.617e-07 -1.386e-07 1.000e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 93.770 58.120 4.267e-12 90.0500 97.490</span></span>
<span><span class="co">## alpha 1.374 6.414 1.030e-04 0.9594 1.969</span></span>
<span><span class="co">## beta 1.234 4.012 1.942e-03 0.6945 2.192</span></span>
<span><span class="co">## sigma 2.276 4.899 5.977e-04 1.2050 3.347</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 6.205 3 3</span></span>
<span><span class="co">## parent 6.205 3 3</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90 DT50back</span></span>
<span><span class="co">## parent 0.8092 5.356 1.612</span></span></code></pre>
<p>The error level at which the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
test passes is much lower in this case. Therefore, the FOMC model
provides a better description of the data, as less experimental error
has to be assumed in order to explain the data.</p>
</div>
<div class="section level3">
<h3 id="dfop-fit-for-l2">DFOP fit for L2<a class="anchor" aria-label="anchor" href="#dfop-fit-for-l2"></a>
</h3>
<p>Fitting the four parameter DFOP model further reduces the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level.</p>
<div class="sourceCode" id="cb18"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">m.L2.DFOP</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="st">"DFOP"</span>, <span class="va">FOCUS_2006_L2_mkin</span>, quiet <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">m.L2.DFOP</span>, show_residuals <span class="op">=</span> <span class="cn">TRUE</span>, show_errmin <span class="op">=</span> <span class="cn">TRUE</span>,</span>
<span> main <span class="op">=</span> <span class="st">"FOCUS L2 - DFOP"</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-10-1.png" width="672"></p>
<div class="sourceCode" id="cb19"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">m.L2.DFOP</span>, data <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:12 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:12 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - ((k1 * g * exp(-k1 * time) + k2 * (1 - g) * exp(-k2 *</span></span>
<span><span class="co">## time)) / (g * exp(-k1 * time) + (1 - g) * exp(-k2 * time)))</span></span>
<span><span class="co">## * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 581 model solutions performed in 0.042 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 93.95 state</span></span>
<span><span class="co">## k1 0.10 deparm</span></span>
<span><span class="co">## k2 0.01 deparm</span></span>
<span><span class="co">## g 0.50 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 93.950000 -Inf Inf</span></span>
<span><span class="co">## log_k1 -2.302585 -Inf Inf</span></span>
<span><span class="co">## log_k2 -4.605170 -Inf Inf</span></span>
<span><span class="co">## g_qlogis 0.000000 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 52.36695 54.79148 -21.18347</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 93.950 9.998e-01 91.5900 96.3100</span></span>
<span><span class="co">## log_k1 3.113 1.849e+03 -4369.0000 4375.0000</span></span>
<span><span class="co">## log_k2 -1.088 6.285e-02 -1.2370 -0.9394</span></span>
<span><span class="co">## g_qlogis -0.399 9.946e-02 -0.6342 -0.1638</span></span>
<span><span class="co">## sigma 1.414 2.886e-01 0.7314 2.0960</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_k1 log_k2 g_qlogis sigma</span></span>
<span><span class="co">## parent_0 1.000e+00 6.763e-07 -8.944e-10 2.665e-01 -1.083e-09</span></span>
<span><span class="co">## log_k1 6.763e-07 1.000e+00 1.112e-04 -2.187e-04 -1.027e-05</span></span>
<span><span class="co">## log_k2 -8.944e-10 1.112e-04 1.000e+00 -7.903e-01 9.464e-09</span></span>
<span><span class="co">## g_qlogis 2.665e-01 -2.187e-04 -7.903e-01 1.000e+00 -1.532e-08</span></span>
<span><span class="co">## sigma -1.083e-09 -1.027e-05 9.464e-09 -1.532e-08 1.000e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 93.9500 9.397e+01 2.036e-12 91.5900 96.3100</span></span>
<span><span class="co">## k1 22.4900 5.533e-04 4.998e-01 0.0000 Inf</span></span>
<span><span class="co">## k2 0.3369 1.591e+01 4.697e-07 0.2904 0.3909</span></span>
<span><span class="co">## g 0.4016 1.680e+01 3.238e-07 0.3466 0.4591</span></span>
<span><span class="co">## sigma 1.4140 4.899e+00 8.776e-04 0.7314 2.0960</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 2.53 4 2</span></span>
<span><span class="co">## parent 2.53 4 2</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90 DT50back DT50_k1 DT50_k2</span></span>
<span><span class="co">## parent 0.5335 5.311 1.599 0.03083 2.058</span></span></code></pre>
<p>Here, the DFOP model is clearly the best-fit model for dataset L2
based on the chi^2 error level criterion.</p>
</div>
</div>
<div class="section level2">
<h2 id="laboratory-data-l3">Laboratory Data L3<a class="anchor" aria-label="anchor" href="#laboratory-data-l3"></a>
</h2>
<p>The following code defines example dataset L3 from the FOCUS kinetics
report, p. 290.</p>
<div class="sourceCode" id="cb21"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">FOCUS_2006_L3</span> <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span></span>
<span> t <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">3</span>, <span class="fl">7</span>, <span class="fl">14</span>, <span class="fl">30</span>, <span class="fl">60</span>, <span class="fl">91</span>, <span class="fl">120</span><span class="op">)</span>,</span>
<span> parent <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">97.8</span>, <span class="fl">60</span>, <span class="fl">51</span>, <span class="fl">43</span>, <span class="fl">35</span>, <span class="fl">22</span>, <span class="fl">15</span>, <span class="fl">12</span><span class="op">)</span><span class="op">)</span></span>
<span><span class="va">FOCUS_2006_L3_mkin</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkin_wide_to_long.html">mkin_wide_to_long</a></span><span class="op">(</span><span class="va">FOCUS_2006_L3</span><span class="op">)</span></span></code></pre></div>
<div class="section level3">
<h3 id="fit-multiple-models">Fit multiple models<a class="anchor" aria-label="anchor" href="#fit-multiple-models"></a>
</h3>
<p>As of mkin version 0.9-39 (June 2015), we can fit several models to
one or more datasets in one call to the function <code>mmkin</code>. The
datasets have to be passed in a list, in this case a named list holding
only the L3 dataset prepared above.</p>
<div class="sourceCode" id="cb22"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="co"># Only use one core here, not to offend the CRAN checks</span></span>
<span><span class="va">mm.L3</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mmkin.html">mmkin</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"SFO"</span>, <span class="st">"FOMC"</span>, <span class="st">"DFOP"</span><span class="op">)</span>, cores <span class="op">=</span> <span class="fl">1</span>,</span>
<span> <span class="fu"><a href="https://rdrr.io/r/base/list.html" class="external-link">list</a></span><span class="op">(</span><span class="st">"FOCUS L3"</span> <span class="op">=</span> <span class="va">FOCUS_2006_L3_mkin</span><span class="op">)</span>, quiet <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">mm.L3</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-12-1.png" width="700"></p>
<p>The
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level of 21% as well as the plot suggest that the SFO model does
not fit very well. The FOMC model performs better, with an error level
at which the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
test passes of 7%. Fitting the four parameter DFOP model further reduces
the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level considerably.</p>
</div>
<div class="section level3">
<h3 id="accessing-mmkin-objects">Accessing mmkin objects<a class="anchor" aria-label="anchor" href="#accessing-mmkin-objects"></a>
</h3>
<p>The objects returned by mmkin are arranged like a matrix, with models
as a row index and datasets as a column index.</p>
<p>We can extract the summary and plot for <em>e.g.</em> the DFOP fit,
using square brackets for indexing which will result in the use of the
summary and plot functions working on mkinfit objects.</p>
<div class="sourceCode" id="cb23"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">mm.L3</span><span class="op">[[</span><span class="st">"DFOP"</span>, <span class="fl">1</span><span class="op">]</span><span class="op">]</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:12 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:12 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - ((k1 * g * exp(-k1 * time) + k2 * (1 - g) * exp(-k2 *</span></span>
<span><span class="co">## time)) / (g * exp(-k1 * time) + (1 - g) * exp(-k2 * time)))</span></span>
<span><span class="co">## * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 376 model solutions performed in 0.024 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 97.80 state</span></span>
<span><span class="co">## k1 0.10 deparm</span></span>
<span><span class="co">## k2 0.01 deparm</span></span>
<span><span class="co">## g 0.50 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 97.800000 -Inf Inf</span></span>
<span><span class="co">## log_k1 -2.302585 -Inf Inf</span></span>
<span><span class="co">## log_k2 -4.605170 -Inf Inf</span></span>
<span><span class="co">## g_qlogis 0.000000 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 32.97732 33.37453 -11.48866</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 97.7500 1.01900 94.5000 101.000000</span></span>
<span><span class="co">## log_k1 -0.6612 0.10050 -0.9812 -0.341300</span></span>
<span><span class="co">## log_k2 -4.2860 0.04322 -4.4230 -4.148000</span></span>
<span><span class="co">## g_qlogis -0.1739 0.05270 -0.3416 -0.006142</span></span>
<span><span class="co">## sigma 1.0170 0.25430 0.2079 1.827000</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_k1 log_k2 g_qlogis sigma</span></span>
<span><span class="co">## parent_0 1.000e+00 1.732e-01 2.282e-02 4.009e-01 -9.696e-08</span></span>
<span><span class="co">## log_k1 1.732e-01 1.000e+00 4.945e-01 -5.809e-01 7.148e-07</span></span>
<span><span class="co">## log_k2 2.282e-02 4.945e-01 1.000e+00 -6.812e-01 1.022e-06</span></span>
<span><span class="co">## g_qlogis 4.009e-01 -5.809e-01 -6.812e-01 1.000e+00 -7.930e-07</span></span>
<span><span class="co">## sigma -9.696e-08 7.148e-07 1.022e-06 -7.930e-07 1.000e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 97.75000 95.960 1.248e-06 94.50000 101.00000</span></span>
<span><span class="co">## k1 0.51620 9.947 1.081e-03 0.37490 0.71090</span></span>
<span><span class="co">## k2 0.01376 23.140 8.840e-05 0.01199 0.01579</span></span>
<span><span class="co">## g 0.45660 34.920 2.581e-05 0.41540 0.49850</span></span>
<span><span class="co">## sigma 1.01700 4.000 1.400e-02 0.20790 1.82700</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 2.225 4 4</span></span>
<span><span class="co">## parent 2.225 4 4</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90 DT50back DT50_k1 DT50_k2</span></span>
<span><span class="co">## parent 7.464 123 37.03 1.343 50.37</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Data:</span></span>
<span><span class="co">## time variable observed predicted residual</span></span>
<span><span class="co">## 0 parent 97.8 97.75 0.05396</span></span>
<span><span class="co">## 3 parent 60.0 60.45 -0.44933</span></span>
<span><span class="co">## 7 parent 51.0 49.44 1.56338</span></span>
<span><span class="co">## 14 parent 43.0 43.84 -0.83632</span></span>
<span><span class="co">## 30 parent 35.0 35.15 -0.14707</span></span>
<span><span class="co">## 60 parent 22.0 23.26 -1.25919</span></span>
<span><span class="co">## 91 parent 15.0 15.18 -0.18181</span></span>
<span><span class="co">## 120 parent 12.0 10.19 1.81395</span></span></code></pre>
<div class="sourceCode" id="cb25"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">mm.L3</span><span class="op">[[</span><span class="st">"DFOP"</span>, <span class="fl">1</span><span class="op">]</span><span class="op">]</span>, show_errmin <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-13-1.png" width="700"></p>
<p>Here, a look to the model plot, the confidence intervals of the
parameters and the correlation matrix suggest that the parameter
estimates are reliable, and the DFOP model can be used as the best-fit
model based on the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level criterion for laboratory data L3.</p>
<p>This is also an example where the standard t-test for the parameter
<code>g_ilr</code> is misleading, as it tests for a significant
difference from zero. In this case, zero appears to be the correct value
for this parameter, and the confidence interval for the backtransformed
parameter <code>g</code> is quite narrow.</p>
</div>
</div>
<div class="section level2">
<h2 id="laboratory-data-l4">Laboratory Data L4<a class="anchor" aria-label="anchor" href="#laboratory-data-l4"></a>
</h2>
<p>The following code defines example dataset L4 from the FOCUS kinetics
report, p. 293:</p>
<div class="sourceCode" id="cb26"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">FOCUS_2006_L4</span> <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span></span>
<span> t <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">3</span>, <span class="fl">7</span>, <span class="fl">14</span>, <span class="fl">30</span>, <span class="fl">60</span>, <span class="fl">91</span>, <span class="fl">120</span><span class="op">)</span>,</span>
<span> parent <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">96.6</span>, <span class="fl">96.3</span>, <span class="fl">94.3</span>, <span class="fl">88.8</span>, <span class="fl">74.9</span>, <span class="fl">59.9</span>, <span class="fl">53.5</span>, <span class="fl">49.0</span><span class="op">)</span><span class="op">)</span></span>
<span><span class="va">FOCUS_2006_L4_mkin</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mkin_wide_to_long.html">mkin_wide_to_long</a></span><span class="op">(</span><span class="va">FOCUS_2006_L4</span><span class="op">)</span></span></code></pre></div>
<p>Fits of the SFO and FOMC models, plots and summaries are produced
below:</p>
<div class="sourceCode" id="cb27"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="co"># Only use one core here, not to offend the CRAN checks</span></span>
<span><span class="va">mm.L4</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mmkin.html">mmkin</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"SFO"</span>, <span class="st">"FOMC"</span><span class="op">)</span>, cores <span class="op">=</span> <span class="fl">1</span>,</span>
<span> <span class="fu"><a href="https://rdrr.io/r/base/list.html" class="external-link">list</a></span><span class="op">(</span><span class="st">"FOCUS L4"</span> <span class="op">=</span> <span class="va">FOCUS_2006_L4_mkin</span><span class="op">)</span>,</span>
<span> quiet <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/base/plot.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">mm.L4</span><span class="op">)</span></span></code></pre></div>
<p><img src="FOCUS_L_files/figure-html/unnamed-chunk-15-1.png" width="700"></p>
<p>The
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
error level of 3.3% as well as the plot suggest that the SFO model fits
very well. The error level at which the
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><msup><mi>χ</mi><mn>2</mn></msup><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math>
test passes is slightly lower for the FOMC model. However, the
difference appears negligible.</p>
<div class="sourceCode" id="cb28"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">mm.L4</span><span class="op">[[</span><span class="st">"SFO"</span>, <span class="fl">1</span><span class="op">]</span><span class="op">]</span>, data <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:13 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:13 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - k_parent * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 142 model solutions performed in 0.01 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 96.6 state</span></span>
<span><span class="co">## k_parent 0.1 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 96.600000 -Inf Inf</span></span>
<span><span class="co">## log_k_parent -2.302585 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 47.12133 47.35966 -20.56067</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 96.440 1.69900 92.070 100.800</span></span>
<span><span class="co">## log_k_parent -5.030 0.07059 -5.211 -4.848</span></span>
<span><span class="co">## sigma 3.162 0.79050 1.130 5.194</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_k_parent sigma</span></span>
<span><span class="co">## parent_0 1.000e+00 5.938e-01 3.430e-07</span></span>
<span><span class="co">## log_k_parent 5.938e-01 1.000e+00 5.885e-07</span></span>
<span><span class="co">## sigma 3.430e-07 5.885e-07 1.000e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 96.440000 56.77 1.604e-08 92.070000 1.008e+02</span></span>
<span><span class="co">## k_parent 0.006541 14.17 1.578e-05 0.005455 7.842e-03</span></span>
<span><span class="co">## sigma 3.162000 4.00 5.162e-03 1.130000 5.194e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 3.287 2 6</span></span>
<span><span class="co">## parent 3.287 2 6</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90</span></span>
<span><span class="co">## parent 106 352</span></span></code></pre>
<div class="sourceCode" id="cb30"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/pkg/saemix/man/summary-methods.html" class="external-link">summary</a></span><span class="op">(</span><span class="va">mm.L4</span><span class="op">[[</span><span class="st">"FOMC"</span>, <span class="fl">1</span><span class="op">]</span><span class="op">]</span>, data <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## mkin version used for fitting: 1.2.10 </span></span>
<span><span class="co">## R version used for fitting: 4.4.2 </span></span>
<span><span class="co">## Date of fit: Fri Feb 14 08:59:13 2025 </span></span>
<span><span class="co">## Date of summary: Fri Feb 14 08:59:13 2025 </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Equations:</span></span>
<span><span class="co">## d_parent/dt = - (alpha/beta) * 1/((time/beta) + 1) * parent</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Model predictions using solution type analytical </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fitted using 224 model solutions performed in 0.013 s</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model: Constant variance </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Error model algorithm: OLS </span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for parameters to be optimised:</span></span>
<span><span class="co">## value type</span></span>
<span><span class="co">## parent_0 96.6 state</span></span>
<span><span class="co">## alpha 1.0 deparm</span></span>
<span><span class="co">## beta 10.0 deparm</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Starting values for the transformed parameters actually optimised:</span></span>
<span><span class="co">## value lower upper</span></span>
<span><span class="co">## parent_0 96.600000 -Inf Inf</span></span>
<span><span class="co">## log_alpha 0.000000 -Inf Inf</span></span>
<span><span class="co">## log_beta 2.302585 -Inf Inf</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Fixed parameter values:</span></span>
<span><span class="co">## None</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Results:</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## AIC BIC logLik</span></span>
<span><span class="co">## 40.37255 40.69032 -16.18628</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Optimised, transformed parameters with symmetric confidence intervals:</span></span>
<span><span class="co">## Estimate Std. Error Lower Upper</span></span>
<span><span class="co">## parent_0 99.1400 1.2670 95.6300 102.7000</span></span>
<span><span class="co">## log_alpha -0.3506 0.2616 -1.0770 0.3756</span></span>
<span><span class="co">## log_beta 4.1740 0.3938 3.0810 5.2670</span></span>
<span><span class="co">## sigma 1.8300 0.4575 0.5598 3.1000</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Parameter correlation:</span></span>
<span><span class="co">## parent_0 log_alpha log_beta sigma</span></span>
<span><span class="co">## parent_0 1.000e+00 -4.696e-01 -5.543e-01 -2.447e-07</span></span>
<span><span class="co">## log_alpha -4.696e-01 1.000e+00 9.889e-01 2.198e-08</span></span>
<span><span class="co">## log_beta -5.543e-01 9.889e-01 1.000e+00 4.923e-08</span></span>
<span><span class="co">## sigma -2.447e-07 2.198e-08 4.923e-08 1.000e+00</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Backtransformed parameters:</span></span>
<span><span class="co">## Confidence intervals for internally transformed parameters are asymmetric.</span></span>
<span><span class="co">## t-test (unrealistically) based on the assumption of normal distribution</span></span>
<span><span class="co">## for estimators of untransformed parameters.</span></span>
<span><span class="co">## Estimate t value Pr(>t) Lower Upper</span></span>
<span><span class="co">## parent_0 99.1400 78.250 7.993e-08 95.6300 102.700</span></span>
<span><span class="co">## alpha 0.7042 3.823 9.365e-03 0.3407 1.456</span></span>
<span><span class="co">## beta 64.9800 2.540 3.201e-02 21.7800 193.900</span></span>
<span><span class="co">## sigma 1.8300 4.000 8.065e-03 0.5598 3.100</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## FOCUS Chi2 error levels in percent:</span></span>
<span><span class="co">## err.min n.optim df</span></span>
<span><span class="co">## All data 2.029 3 5</span></span>
<span><span class="co">## parent 2.029 3 5</span></span>
<span><span class="co">## </span></span>
<span><span class="co">## Estimated disappearance times:</span></span>
<span><span class="co">## DT50 DT90 DT50back</span></span>
<span><span class="co">## parent 108.9 1644 494.9</span></span></code></pre>
</div>
<div class="section level2">
<h2 class="unnumbered" id="references">References<a class="anchor" aria-label="anchor" href="#references"></a>
</h2>
<div id="refs" class="references csl-bib-body hanging-indent">
<div id="ref-ranke2014" class="csl-entry">
Ranke, Johannes. 2014. <span>“<span class="nocase">Prüfung und
Validierung von Modellierungssoftware als Alternative zu ModelMaker
4.0</span>.”</span> Umweltbundesamt Projektnummer 27452.
</div>
</div>
</div>
</main><aside class="col-md-3"><nav id="toc" aria-label="Table of contents"><h2>On this page</h2>
</nav></aside>
</div>
<footer><div class="pkgdown-footer-left">
<p>Developed by Johannes Ranke.</p>
</div>
<div class="pkgdown-footer-right">
<p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 2.1.1.</p>
</div>
</footer>
</div>
</body>
</html>