aboutsummaryrefslogblamecommitdiff
path: root/docs/reference/mkinpredict.html
blob: b52d9eced7cf93f85d76fafc1a4bc526382a32ff (plain) (tree)
1
2
3
4
5
6
7
8
9
               
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
                                                              
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    

                                                                               

                                                              
 
                                                    
                                                                                    

                               

                                                                                                                               



                                      

                                                            
                                                                                                                                     
             
          
 
                                                      
                                     
                                                          
     





                                                                                                 
                                            








                                                                                                 


                                                                                                                                                      
                                                                                                   

         
                                                                                                                             
         


                                                                                                      


                                                                                                                


                                                                               
            


                                       

                                                                  
                                             


      
                                       

                           
 
      
 
                                

                                 
                                                                               
                                                                                                                                                                       
                                                              
          
 
                                 
                                                                               
                                                                                                      
                                                                  
          
 

































                                                                                                                                                                                                                                                                                                           
 







                                                                                                   
                                                              


                                                                  
                                                                         








                                                                        


                                                                        





                                                                                           
                                                                       








                                                                    
                                                                      
                                                                     





                                                                        
                                                            


                     
                         
          
 
















































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
        
                                                                 

                                                                                      

      
 

                                            


                     
                                                                                                             
      
 
                     
 

  
 
  
 
                
 
<!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.0"><title>Produce predictions from a kinetic model using specific parameters — mkinpredict • mkin</title><!-- jquery --><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script><!-- Bootstrap --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha256-bZLfwXAP04zRMK2BjiO8iu9pf4FbLqX6zitd+tIvLhE=" crossorigin="anonymous"><script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script><!-- bootstrap-toc --><link rel="stylesheet" href="../bootstrap-toc.css"><script src="../bootstrap-toc.js"></script><!-- Font Awesome icons --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous"><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous"><!-- clipboard.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script><!-- headroom.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script><!-- pkgdown --><link href="../pkgdown.css" rel="stylesheet"><script src="../pkgdown.js"></script><meta property="og:title" content="Produce predictions from a kinetic model using specific parameters — mkinpredict"><meta property="og:description" content="This function produces a time series for all the observed variables in a
kinetic model as specified by mkinmod, using a specific set of
kinetic parameters and initial values for the state variables."><!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]--></head><body data-spy="scroll" data-target="#toc">
    

    <div class="container template-reference-topic">
      <header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
  <div class="container">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <span class="navbar-brand">
        <a class="navbar-link" href="../index.html">mkin</a>
        <span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">1.1.0</span>
      </span>
    </div>

    <div id="navbar" class="navbar-collapse collapse">
      <ul class="nav navbar-nav"><li>
  <a href="../reference/index.html">Functions and data</a>
</li>
<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
    Articles
     
    <span class="caret"></span>
  </a>
  <ul class="dropdown-menu" role="menu"><li>
      <a href="../articles/mkin.html">Introduction to mkin</a>
    </li>
    <li>
      <a href="../articles/FOCUS_D.html">Example evaluation of FOCUS Example Dataset D</a>
    </li>
    <li>
      <a href="../articles/FOCUS_L.html">Example evaluation of FOCUS Laboratory Data L1 to L3</a>
    </li>
    <li>
      <a href="../articles/web_only/dimethenamid_2018.html">Example evaluations of dimethenamid data from 2018 with nonlinear mixed-effects models</a>
    </li>
    <li>
      <a href="../articles/web_only/FOCUS_Z.html">Example evaluation of FOCUS Example Dataset Z</a>
    </li>
    <li>
      <a href="../articles/web_only/compiled_models.html">Performance benefit by using compiled model definitions in mkin</a>
    </li>
    <li>
      <a href="../articles/twa.html">Calculation of time weighted average concentrations with mkin</a>
    </li>
    <li>
      <a href="../articles/web_only/NAFTA_examples.html">Example evaluation of NAFTA SOP Attachment examples</a>
    </li>
    <li>
      <a href="../articles/web_only/benchmarks.html">Some benchmark timings</a>
    </li>
  </ul></li>
<li>
  <a href="../news/index.html">News</a>
</li>
      </ul><ul class="nav navbar-nav navbar-right"><li>
  <a href="https://github.com/jranke/mkin/" class="external-link">
    <span class="fab fa-github fa-lg"></span>
     
  </a>
</li>
      </ul></div><!--/.nav-collapse -->
  </div><!--/.container -->
</div><!--/.navbar -->

      

      </header><div class="row">
  <div class="col-md-9 contents">
    <div class="page-header">
    <h1>Produce predictions from a kinetic model using specific parameters</h1>
    <small class="dont-index">Source: <a href="https://github.com/jranke/mkin/blob/HEAD/R/mkinpredict.R" class="external-link"><code>R/mkinpredict.R</code></a></small>
    <div class="hidden name"><code>mkinpredict.Rd</code></div>
    </div>

    <div class="ref-description">
    <p>This function produces a time series for all the observed variables in a
kinetic model as specified by <code><a href="mkinmod.html">mkinmod</a></code>, using a specific set of
kinetic parameters and initial values for the state variables.</p>
    </div>

    <div id="ref-usage">
    <div class="sourceCode"><pre class="sourceCode r"><code><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">x</span>, <span class="va">odeparms</span>, <span class="va">odeini</span>, <span class="va">outtimes</span>, <span class="va">...</span><span class="op">)</span>

<span class="co"># S3 method for mkinmod</span>
<span class="fu">mkinpredict</span><span class="op">(</span>
  <span class="va">x</span>,
  odeparms <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>k_parent_sink <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,
  odeini <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>parent <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>,
  outtimes <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">120</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,
  solution_type <span class="op">=</span> <span class="st">"deSolve"</span>,
  use_compiled <span class="op">=</span> <span class="st">"auto"</span>,
  method.ode <span class="op">=</span> <span class="st">"lsoda"</span>,
  atol <span class="op">=</span> <span class="fl">1e-08</span>,
  rtol <span class="op">=</span> <span class="fl">1e-10</span>,
  map_output <span class="op">=</span> <span class="cn">TRUE</span>,
  na_stop <span class="op">=</span> <span class="cn">TRUE</span>,
  <span class="va">...</span>
<span class="op">)</span>

<span class="co"># S3 method for mkinfit</span>
<span class="fu">mkinpredict</span><span class="op">(</span>
  <span class="va">x</span>,
  odeparms <span class="op">=</span> <span class="va">x</span><span class="op">$</span><span class="va">bparms.ode</span>,
  odeini <span class="op">=</span> <span class="va">x</span><span class="op">$</span><span class="va">bparms.state</span>,
  outtimes <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">120</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,
  solution_type <span class="op">=</span> <span class="st">"deSolve"</span>,
  use_compiled <span class="op">=</span> <span class="st">"auto"</span>,
  method.ode <span class="op">=</span> <span class="st">"lsoda"</span>,
  atol <span class="op">=</span> <span class="fl">1e-08</span>,
  rtol <span class="op">=</span> <span class="fl">1e-10</span>,
  map_output <span class="op">=</span> <span class="cn">TRUE</span>,
  <span class="va">...</span>
<span class="op">)</span></code></pre></div>
    </div>

    <div id="arguments">
    <h2>Arguments</h2>
    <dl><dt>x</dt>
<dd><p>A kinetic model as produced by <code><a href="mkinmod.html">mkinmod</a></code>, or a kinetic
fit as fitted by <code><a href="mkinfit.html">mkinfit</a></code>. In the latter case, the fitted
parameters are used for the prediction.</p></dd>
<dt>odeparms</dt>
<dd><p>A numeric vector specifying the parameters used in the
kinetic model, which is generally defined as a set of ordinary
differential equations.</p></dd>
<dt>odeini</dt>
<dd><p>A numeric vector containing the initial values of the state
variables of the model. Note that the state variables can differ from the
observed variables, for example in the case of the SFORB model.</p></dd>
<dt>outtimes</dt>
<dd><p>A numeric vector specifying the time points for which model
predictions should be generated.</p></dd>
<dt>...</dt>
<dd><p>Further arguments passed to the ode solver in case such a
solver is used.</p></dd>
<dt>solution_type</dt>
<dd><p>The method that should be used for producing the
predictions. This should generally be "analytical" if there is only one
observed variable, and usually "deSolve" in the case of several observed
variables. The third possibility "eigen" is faster but not applicable to
some models e.g.  using FOMC for the parent compound.</p></dd>
<dt>use_compiled</dt>
<dd><p>If set to <code>FALSE</code>, no compiled version of the
<code><a href="mkinmod.html">mkinmod</a></code> model is used, even if is present.</p></dd>
<dt>method.ode</dt>
<dd><p>The solution method passed via <code>mkinpredict</code>
to <code>ode</code> in case the solution type is "deSolve". The default
"lsoda" is performant, but sometimes fails to converge.</p></dd>
<dt>atol</dt>
<dd><p>Absolute error tolerance, passed to <code>ode</code>. Default
is 1e-8, lower than in <code>lsoda</code>.</p></dd>
<dt>rtol</dt>
<dd><p>Absolute error tolerance, passed to <code>ode</code>. Default
is 1e-10, much lower than in <code>lsoda</code>.</p></dd>
<dt>map_output</dt>
<dd><p>Boolean to specify if the output should list values for
the observed variables (default) or for all state variables (if set to
FALSE). Setting this to FALSE has no effect for analytical solutions,
as these always return mapped output.</p></dd>
<dt>na_stop</dt>
<dd><p>Should it be an error if deSolve::ode returns NaN values</p></dd>
</dl></div>
    <div id="value">
    <h2>Value</h2>
    <p>A matrix with the numeric solution in wide format</p>
    </div>
    <div id="author">
    <h2>Author</h2>
    <p>Johannes Ranke</p>
    </div>

    <div id="ref-examples">
    <h2>Examples</h2>
    <div class="sourceCode"><pre class="sourceCode r"><code><span class="r-in"></span>
<span class="r-in"><span class="va">SFO</span> <span class="op">&lt;-</span> <span class="fu"><a href="mkinmod.html">mkinmod</a></span><span class="op">(</span>degradinol <span class="op">=</span> <span class="fu"><a href="mkinmod.html">mkinsub</a></span><span class="op">(</span><span class="st">"SFO"</span><span class="op">)</span><span class="op">)</span></span>
<span class="r-in"><span class="co"># Compare solution types</span></span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"analytical"</span><span class="op">)</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>    time  degradinol</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0     0 100.0000000</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 1     1  74.0818221</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 2     2  54.8811636</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 3     3  40.6569660</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 4     4  30.1194212</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 5     5  22.3130160</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 6     6  16.5298888</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 7     7  12.2456428</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 8     8   9.0717953</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 9     9   6.7205513</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 10   10   4.9787068</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 11   11   3.6883167</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 12   12   2.7323722</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 13   13   2.0241911</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 14   14   1.4995577</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 15   15   1.1108997</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 16   16   0.8229747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 17   17   0.6096747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 18   18   0.4516581</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 19   19   0.3345965</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20   20   0.2478752</span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"deSolve"</span><span class="op">)</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>    time  degradinol</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0     0 100.0000000</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 1     1  74.0818221</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 2     2  54.8811636</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 3     3  40.6569660</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 4     4  30.1194212</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 5     5  22.3130160</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 6     6  16.5298888</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 7     7  12.2456428</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 8     8   9.0717953</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 9     9   6.7205513</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 10   10   4.9787068</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 11   11   3.6883167</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 12   12   2.7323722</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 13   13   2.0241911</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 14   14   1.4995577</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 15   15   1.1108996</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 16   16   0.8229747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 17   17   0.6096747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 18   18   0.4516581</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 19   19   0.3345965</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20   20   0.2478752</span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"deSolve"</span>, use_compiled <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>    time  degradinol</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0     0 100.0000000</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 1     1  74.0818221</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 2     2  54.8811636</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 3     3  40.6569660</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 4     4  30.1194212</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 5     5  22.3130160</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 6     6  16.5298888</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 7     7  12.2456428</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 8     8   9.0717953</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 9     9   6.7205513</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 10   10   4.9787068</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 11   11   3.6883167</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 12   12   2.7323722</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 13   13   2.0241911</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 14   14   1.4995577</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 15   15   1.1108996</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 16   16   0.8229747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 17   17   0.6096747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 18   18   0.4516581</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 19   19   0.3345965</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20   20   0.2478752</span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"eigen"</span><span class="op">)</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>    time  degradinol</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0     0 100.0000000</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 1     1  74.0818221</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 2     2  54.8811636</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 3     3  40.6569660</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 4     4  30.1194212</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 5     5  22.3130160</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 6     6  16.5298888</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 7     7  12.2456428</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 8     8   9.0717953</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 9     9   6.7205513</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 10   10   4.9787068</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 11   11   3.6883167</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 12   12   2.7323722</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 13   13   2.0241911</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 14   14   1.4995577</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 15   15   1.1108997</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 16   16   0.8229747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 17   17   0.6096747</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 18   18   0.4516581</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 19   19   0.3345965</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20   20   0.2478752</span>
<span class="r-in"></span>
<span class="r-in"><span class="co"># Compare integration methods to analytical solution</span></span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"analytical"</span><span class="op">)</span><span class="op">[</span><span class="fl">21</span>,<span class="op">]</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>       time degradinol </span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20.0000000  0.2478752 </span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      method <span class="op">=</span> <span class="st">"lsoda"</span><span class="op">)</span><span class="op">[</span><span class="fl">21</span>,<span class="op">]</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>       time degradinol </span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20.0000000  0.2478752 </span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      method <span class="op">=</span> <span class="st">"ode45"</span><span class="op">)</span><span class="op">[</span><span class="fl">21</span>,<span class="op">]</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>       time degradinol </span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20.0000000  0.2478752 </span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>, <span class="fl">0</span><span class="op">:</span><span class="fl">20</span>,</span>
<span class="r-in">      method <span class="op">=</span> <span class="st">"rk4"</span><span class="op">)</span><span class="op">[</span><span class="fl">21</span>,<span class="op">]</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>       time degradinol </span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20.0000000  0.2480043 </span>
<span class="r-in"><span class="co"># rk4 is not as precise here</span></span>
<span class="r-in"></span>
<span class="r-in"><span class="co"># The number of output times used to make a lot of difference until the</span></span>
<span class="r-in"><span class="co"># default for atol was adjusted</span></span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">20</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span><span class="op">)</span><span class="op">[</span><span class="fl">201</span>,<span class="op">]</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>       time degradinol </span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20.0000000  0.2478752 </span>
<span class="r-in"><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_degradinol <span class="op">=</span> <span class="fl">0.3</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>degradinol <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">20</span>, by <span class="op">=</span> <span class="fl">0.01</span><span class="op">)</span><span class="op">)</span><span class="op">[</span><span class="fl">2001</span>,<span class="op">]</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>       time degradinol </span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 20.0000000  0.2478752 </span>
<span class="r-in"></span>
<span class="r-in"><span class="co"># Comparison of the performance of solution types</span></span>
<span class="r-in"><span class="va">SFO_SFO</span> <span class="op">=</span> <span class="fu"><a href="mkinmod.html">mkinmod</a></span><span class="op">(</span>parent <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/list.html" class="external-link">list</a></span><span class="op">(</span>type <span class="op">=</span> <span class="st">"SFO"</span>, to <span class="op">=</span> <span class="st">"m1"</span><span class="op">)</span>,</span>
<span class="r-in">                  m1 <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/list.html" class="external-link">list</a></span><span class="op">(</span>type <span class="op">=</span> <span class="st">"SFO"</span><span class="op">)</span>, use_of_ff <span class="op">=</span> <span class="st">"max"</span><span class="op">)</span></span>
<span class="r-msg co"><span class="r-pr">#&gt;</span> Temporary DLL for differentials generated and loaded</span>
<span class="r-in"><span class="kw">if</span><span class="op">(</span><span class="kw"><a href="https://rdrr.io/r/base/library.html" class="external-link">require</a></span><span class="op">(</span><span class="va"><a href="http://rbenchmark.googlecode.com" class="external-link">rbenchmark</a></span><span class="op">)</span><span class="op">)</span> <span class="op">{</span></span>
<span class="r-in">  <span class="fu"><a href="https://rdrr.io/pkg/rbenchmark/man/benchmark.html" class="external-link">benchmark</a></span><span class="op">(</span>replications <span class="op">=</span> <span class="fl">10</span>, order <span class="op">=</span> <span class="st">"relative"</span>, columns <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">"test"</span>, <span class="st">"relative"</span>, <span class="st">"elapsed"</span><span class="op">)</span>,</span>
<span class="r-in">    eigen <span class="op">=</span> <span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO_SFO</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_parent <span class="op">=</span> <span class="fl">0.15</span>, f_parent_to_m1 <span class="op">=</span> <span class="fl">0.5</span>, k_m1 <span class="op">=</span> <span class="fl">0.01</span><span class="op">)</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>parent <span class="op">=</span> <span class="fl">100</span>, m1 <span class="op">=</span> <span class="fl">0</span><span class="op">)</span>, <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">20</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"eigen"</span><span class="op">)</span><span class="op">[</span><span class="fl">201</span>,<span class="op">]</span>,</span>
<span class="r-in">    deSolve_compiled <span class="op">=</span> <span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO_SFO</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_parent <span class="op">=</span> <span class="fl">0.15</span>, f_parent_to_m1 <span class="op">=</span> <span class="fl">0.5</span>, k_m1 <span class="op">=</span> <span class="fl">0.01</span><span class="op">)</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>parent <span class="op">=</span> <span class="fl">100</span>, m1 <span class="op">=</span> <span class="fl">0</span><span class="op">)</span>, <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">20</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"deSolve"</span><span class="op">)</span><span class="op">[</span><span class="fl">201</span>,<span class="op">]</span>,</span>
<span class="r-in">    deSolve <span class="op">=</span> <span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO_SFO</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_parent <span class="op">=</span> <span class="fl">0.15</span>, f_parent_to_m1 <span class="op">=</span> <span class="fl">0.5</span>, k_m1 <span class="op">=</span> <span class="fl">0.01</span><span class="op">)</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>parent <span class="op">=</span> <span class="fl">100</span>, m1 <span class="op">=</span> <span class="fl">0</span><span class="op">)</span>, <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">20</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"deSolve"</span>, use_compiled <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span><span class="op">[</span><span class="fl">201</span>,<span class="op">]</span>,</span>
<span class="r-in">    analytical <span class="op">=</span> <span class="fu">mkinpredict</span><span class="op">(</span><span class="va">SFO_SFO</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>k_parent <span class="op">=</span> <span class="fl">0.15</span>, f_parent_to_m1 <span class="op">=</span> <span class="fl">0.5</span>, k_m1 <span class="op">=</span> <span class="fl">0.01</span><span class="op">)</span>,</span>
<span class="r-in">      <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span>parent <span class="op">=</span> <span class="fl">100</span>, m1 <span class="op">=</span> <span class="fl">0</span><span class="op">)</span>, <span class="fu"><a href="https://rdrr.io/r/base/seq.html" class="external-link">seq</a></span><span class="op">(</span><span class="fl">0</span>, <span class="fl">20</span>, by <span class="op">=</span> <span class="fl">0.1</span><span class="op">)</span>,</span>
<span class="r-in">      solution_type <span class="op">=</span> <span class="st">"analytical"</span>, use_compiled <span class="op">=</span> <span class="cn">FALSE</span><span class="op">)</span><span class="op">[</span><span class="fl">201</span>,<span class="op">]</span><span class="op">)</span></span>
<span class="r-in"><span class="op">}</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>               test relative elapsed</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 4       analytical      1.0   0.005</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 2 deSolve_compiled      1.2   0.006</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 1            eigen      4.2   0.021</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 3          deSolve     40.8   0.204</span>
<span class="r-in"></span>
<span class="r-in"><span class="co"># \dontrun{</span></span>
<span class="r-in">  <span class="co"># Predict from a fitted model</span></span>
<span class="r-in">  <span class="va">f</span> <span class="op">&lt;-</span> <span class="fu"><a href="mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="va">SFO_SFO</span>, <span class="va">FOCUS_2006_C</span>, quiet <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span>
<span class="r-in">  <span class="va">f</span> <span class="op">&lt;-</span> <span class="fu"><a href="mkinfit.html">mkinfit</a></span><span class="op">(</span><span class="va">SFO_SFO</span>, <span class="va">FOCUS_2006_C</span>, quiet <span class="op">=</span> <span class="cn">TRUE</span>, solution_type <span class="op">=</span> <span class="st">"deSolve"</span><span class="op">)</span></span>
<span class="r-in">  <span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu">mkinpredict</span><span class="op">(</span><span class="va">f</span><span class="op">)</span><span class="op">)</span></span>
<span class="r-out co"><span class="r-pr">#&gt;</span>     time   parent       m1</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0    0.0 82.49216 0.000000</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0.1  0.1 80.00562 1.236394</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0.2  0.2 77.59404 2.423201</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0.3  0.3 75.25514 3.562040</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0.4  0.4 72.98675 4.654478</span>
<span class="r-out co"><span class="r-pr">#&gt;</span> 0.5  0.5 70.78673 5.702033</span>
<span class="r-in"><span class="co"># }</span></span>
<span class="r-in"></span>
</code></pre></div>
    </div>
  </div>
  <div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
    <nav id="toc" data-toggle="toc" class="sticky-top"><h2 data-toc-skip>Contents</h2>
    </nav></div>
</div>


      <footer><div class="copyright">
  <p></p><p>Developed by Johannes Ranke.</p>
</div>

<div class="pkgdown">
  <p></p><p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 2.0.2.</p>
</div>

      </footer></div>

  


  

  </body></html>

Contact - Imprint