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







                                                                      
                                                                                                       


                                                                                                                                                                               
                  
 
                                                                                                                                                                                                                







                                                                                                                                                                                                                      
                                                   











                                                                                                      
                                                    
              
                                                                            











                                                                                                         
                                                          
     



















                                                                                                                    

           
      
                                              





                                            



                                
 


               


                                 
                                                                                
          
 











                                                                                                                                                                                                                                                                                                                                                                                                                                               
                                                                                                








































                                                                                                  
                                                                                   
 


                                                                                                                        
 
                                                                                          
                                                           


                                                                                                  
 
                                                                          



                                                                                       
                                                                           

                                                                   
    
 
                                                                                            




                                                                                                                                                                                                                                                                      
                                                                                                                                                                                   
                                                                                                                                                                                                                                                                                                                       








                                                                                                                                                                                                                                                                                                                                                
                                                                                      





























                                                                                                                                                                                                                                                                                                                                                  
        













                                                         







                   
                             
                                     





                                                                                




               
<!-- Generated by pkgdown: do not edit by hand -->
<!DOCTYPE html>
<html>
  <head>
  <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>Function to set up a kinetic model with one or more state variables — mkinmod • mkin</title>

<!-- jquery -->
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script>
<!-- Bootstrap -->

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<!-- Font Awesome icons -->
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous">


<!-- pkgdown -->
<link href="../pkgdown.css" rel="stylesheet">
<script src="../jquery.sticky-kit.min.js"></script>
<script src="../pkgdown.js"></script>

<!-- mathjax -->
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></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>
    <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">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="../index.html">mkin</a>
    </div>
    <div id="navbar" class="navbar-collapse collapse">
      <ul class="nav navbar-nav">
        <li>
  <a href="../reference/index.html">Function reference</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/compiled_models.html">Performance benefit by using compiled model definitions in mkin</a>
    </li>
  </ul>
</li>
      </ul>
      
      <ul class="nav navbar-nav navbar-right">
        <li>
  <a href="http://github.com/jranke/mkin">
    <span class="fa 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>Function to set up a kinetic model with one or more state variables</h1>
    </div>

    
    <p>The function usually takes several expressions, each assigning a compound name to 
  a list, specifying the kinetic model type and reaction or transfer to other
  observed compartments. Instead of specifying several expressions, a list
  of lists can be given in the speclist argument.</p>

    <p>For the definition of model types and their parameters, the equations given
  in the FOCUS and NAFTA guidance documents are used.</p>
    

    <pre><span class='fu'>mkinmod</span>(<span class='no'>...</span>, <span class='kw'>use_of_ff</span> <span class='kw'>=</span> <span class='st'>"min"</span>, <span class='kw'>speclist</span> <span class='kw'>=</span> <span class='kw'>NULL</span>, <span class='kw'>quiet</span> <span class='kw'>=</span> <span class='fl'>FALSE</span>, <span class='kw'>verbose</span> <span class='kw'>=</span> <span class='fl'>FALSE</span>)</pre>
    
    <h2 class="hasAnchor" id="arguments"><a class="anchor" href="#arguments"></a> Arguments</h2>
    <dl class="dl-horizontal">
      <dt>...</dt>
      <dd>
    For each observed variable, a list has to be specified as an argument, containing
    at least a component <code>type</code>, specifying the type of kinetics to use
    for the variable. Currently, single first order kinetics &quot;SFO&quot;, 
    indeterminate order rate equation kinetics &quot;IORE&quot;, or
    single first order with reversible binding &quot;SFORB&quot; are implemented for all
    variables, while 
    &quot;FOMC&quot;, &quot;DFOP&quot; and &quot;HS&quot; can additionally be chosen for the first
    variable which is assumed to be the source compartment.
    Additionally, each component of the list can include a character vector <code>to</code>,
    specifying names of variables to which a transfer is to be assumed in the
    model.
    If the argument <code>use_of_ff</code> is set to &quot;min&quot; (default) and the model for 
    the compartment is &quot;SFO&quot; or &quot;SFORB&quot;, an additional component of the list
    can be &quot;sink=FALSE&quot; effectively fixing the flux to sink to zero.
  </dd>
      <dt>use_of_ff</dt>
      <dd>
    Specification of the use of formation fractions in the model equations and, if 
    applicable, the coefficient matrix. If &quot;min&quot;, a minimum use of formation 
    fractions is made in order to avoid fitting the product of formation fractions 
    and rate constants. If &quot;max&quot;, formation fractions are always used.
  </dd>
      <dt>speclist</dt>
      <dd>
    The specification of the observed variables and their submodel types and 
    pathways can be given as a single list using this argument. Default is NULL.
  </dd>
      <dt>quiet</dt>
      <dd>
    Should messages be suppressed?
  </dd>
      <dt>verbose</dt>
      <dd>
    If <code>TRUE</code>, passed to <code>cfunction</code> if applicable to give
    detailed information about the C function being built.
  </dd>
    </dl>
    
    <h2 class="hasAnchor" id="value"><a class="anchor" href="#value"></a>Value</h2>

    <p>A list of class <code>mkinmod</code> for use with <code><a href='mkinfit.html'>mkinfit</a></code>, containing</p>
    
    <h2 class="hasAnchor" id="note"><a class="anchor" href="#note"></a>Note</h2>

    <p>The IORE submodel is not well tested (yet). When using this model for metabolites, 
  you may want to read the second note in the help page to 
  <code><a href='mkinfit.html'>mkinfit</a></code>.</p>
    
    <h2 class="hasAnchor" id="references"><a class="anchor" href="#references"></a>References</h2>

    <p>FOCUS (2006) &#8220;Guidance Document on Estimating Persistence and
  Degradation Kinetics from Environmental Fate Studies on Pesticides in EU
  Registration&#8221; Report of the FOCUS Work Group on Degradation Kinetics,
  EC Document Reference Sanco/10058/2005 version 2.0, 434 pp,
  <a href = 'http://focus.jrc.ec.europa.eu/dk'>http://focus.jrc.ec.europa.eu/dk</a></p>
    <p>NAFTA Technical Working Group on Pesticides (not dated) Guidance for
  Evaluating and Calculating Degradation Kinetics in Environmental 
  Media</p>
    

    <h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
    <pre class="examples"><div class='input'><span class='co'># Specify the SFO model (this is not needed any more, as we can now mkinfit("SFO", ...)</span>
<span class='no'>SFO</span> <span class='kw'>&lt;-</span> <span class='fu'>mkinmod</span>(<span class='kw'>parent</span> <span class='kw'>=</span> <span class='fu'>list</span>(<span class='kw'>type</span> <span class='kw'>=</span> <span class='st'>"SFO"</span>))

<span class='co'># One parent compound, one metabolite, both single first order</span>
<span class='no'>SFO_SFO</span> <span class='kw'>&lt;-</span> <span class='fu'>mkinmod</span>(
  <span class='kw'>parent</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"SFO"</span>, <span class='st'>"m1"</span>),
  <span class='kw'>m1</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"SFO"</span>))</div><div class='output co'>#&gt; <span class='message'>Successfully compiled differential equation model from auto-generated C code.</span></div><div class='input'>

<span class='co'># The above model used to be specified like this, before the advent of mkinsub()</span>
<span class='no'>SFO_SFO</span> <span class='kw'>&lt;-</span> <span class='fu'>mkinmod</span>(
  <span class='kw'>parent</span> <span class='kw'>=</span> <span class='fu'>list</span>(<span class='kw'>type</span> <span class='kw'>=</span> <span class='st'>"SFO"</span>, <span class='kw'>to</span> <span class='kw'>=</span> <span class='st'>"m1"</span>),
  <span class='kw'>m1</span> <span class='kw'>=</span> <span class='fu'>list</span>(<span class='kw'>type</span> <span class='kw'>=</span> <span class='st'>"SFO"</span>))</div><div class='output co'>#&gt; <span class='message'>Successfully compiled differential equation model from auto-generated C code.</span></div><div class='input'>
<span class='co'># Show details of creating the C function</span>
<span class='no'>SFO_SFO</span> <span class='kw'>&lt;-</span> <span class='fu'>mkinmod</span>(
  <span class='kw'>parent</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"SFO"</span>, <span class='st'>"m1"</span>),
  <span class='kw'>m1</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"SFO"</span>), <span class='kw'>verbose</span> <span class='kw'>=</span> <span class='fl'>TRUE</span>)</div><div class='output co'>#&gt; Compilation argument:
#&gt;  /usr/lib/R/bin/R CMD SHLIB file4abb63d73c2f.c 2&gt; file4abb63d73c2f.c.err.txt 
#&gt; Program source:
#&gt;   1: #include &lt;R.h&gt;
#&gt;   2: 
#&gt;   3: 
#&gt;   4: static double parms [3];
#&gt;   5: #define k_parent_sink parms[0]
#&gt;   6: #define k_parent_m1 parms[1]
#&gt;   7: #define k_m1_sink parms[2]
#&gt;   8: 
#&gt;   9: void initpar(void (* odeparms)(int *, double *)) {
#&gt;  10:     int N = 3;
#&gt;  11:     odeparms(&amp;N, parms);
#&gt;  12: }
#&gt;  13: 
#&gt;  14: 
#&gt;  15: void func ( int * n, double * t, double * y, double * f, double * rpar, int * ipar ) {
#&gt;  16: 
#&gt;  17: f[0] = - k_parent_sink * y[0] - k_parent_m1 * y[0];
#&gt;  18: f[1] = + k_parent_m1 * y[0] - k_m1_sink * y[1];
#&gt;  19: }</div><div class='output co'>#&gt; <span class='message'>Successfully compiled differential equation model from auto-generated C code.</span></div><div class='input'>
<span class='co'># If we have several parallel metabolites </span>
<span class='co'># (compare tests/testthat/test_synthetic_data_for_UBA_2014.R)</span>
<span class='no'>m_synth_DFOP_par</span> <span class='kw'>&lt;-</span> <span class='fu'>mkinmod</span>(<span class='kw'>parent</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"DFOP"</span>, <span class='fu'>c</span>(<span class='st'>"M1"</span>, <span class='st'>"M2"</span>)),
                           <span class='kw'>M1</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"SFO"</span>),
                           <span class='kw'>M2</span> <span class='kw'>=</span> <span class='fu'><a href='mkinsub.html'>mkinsub</a></span>(<span class='st'>"SFO"</span>),
                           <span class='kw'>use_of_ff</span> <span class='kw'>=</span> <span class='st'>"max"</span>, <span class='kw'>quiet</span> <span class='kw'>=</span> <span class='fl'>TRUE</span>)

<span class='no'>fit_DFOP_par_c</span> <span class='kw'>&lt;-</span> <span class='fu'><a href='mkinfit.html'>mkinfit</a></span>(<span class='no'>m_synth_DFOP_par</span>,
                          <span class='no'>synthetic_data_for_UBA_2014</span><span class='kw'>[[</span><span class='fl'>12</span>]]$<span class='no'>data</span>,
                          <span class='kw'>quiet</span> <span class='kw'>=</span> <span class='fl'>TRUE</span>)</div></pre>
  </div>
  <div class="col-md-3 hidden-xs hidden-sm" id="sidebar">
    <h2>Contents</h2>
    <ul class="nav nav-pills nav-stacked">
      <li><a href="#arguments">Arguments</a></li>
      
      <li><a href="#value">Value</a></li>

      <li><a href="#note">Note</a></li>

      <li><a href="#references">References</a></li>
      
      <li><a href="#examples">Examples</a></li>
    </ul>

    <h2>Author</h2>
    
  Johannes Ranke

  </div>
</div>

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

<div class="pkgdown">
  <p>Site built with <a href="http://hadley.github.io/pkgdown/">pkgdown</a>.</p>
</div>

      </footer>
   </div>

  </body>
</html>

Contact - Imprint