diff options
Diffstat (limited to 'docs/dev/articles/FOCUS_L.html')
-rw-r--r-- | docs/dev/articles/FOCUS_L.html | 894 |
1 files changed, 894 insertions, 0 deletions
diff --git a/docs/dev/articles/FOCUS_L.html b/docs/dev/articles/FOCUS_L.html new file mode 100644 index 00000000..badf4822 --- /dev/null +++ b/docs/dev/articles/FOCUS_L.html @@ -0,0 +1,894 @@ +<!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> |