source: sasmodels/api/model_test.html @ 68532f3

gh-pages
Last change on this file since 68532f3 was 68532f3, checked in by ajj, 8 years ago

Adding docs

  • Property mode set to 100644
File size: 8.6 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
4
5<html xmlns="http://www.w3.org/1999/xhtml">
6  <head>
7    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8   
9    <title>3.10. Unit test support &mdash; Sasmodels</title>
10   
11    <link rel="stylesheet" href="../_static/haiku-site.css" type="text/css" />
12    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
13   
14    <script type="text/javascript">
15      var DOCUMENTATION_OPTIONS = {
16        URL_ROOT:    '../',
17        VERSION:     '0.9',
18        COLLAPSE_INDEX: false,
19        FILE_SUFFIX: '.html',
20        HAS_SOURCE:  true
21      };
22    </script>
23    <script type="text/javascript" src="../_static/jquery.js"></script>
24    <script type="text/javascript" src="../_static/underscore.js"></script>
25    <script type="text/javascript" src="../_static/doctools.js"></script>
26    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
27    <link rel="top" title="Sasmodels" href="../index.html" />
28    <link rel="up" title="3. Reference" href="index.html" />
29    <link rel="next" title="3.11. 1-D resolution functions" href="resolution.html" />
30    <link rel="prev" title="3.9. Python model evaluator" href="kernelpy.html" /> 
31  </head>
32  <body>
33      <div class="header"><h1 class="heading"><a href="../index.html">
34          <span>Home</span></a></h1>
35        <h2 class="heading"><span>3.10. Unit test support</span></h2>
36      </div>
37      <div class="topnav">
38     
39        <p>
40        «&#160;&#160;<a href="kernelpy.html">3.9. Python model evaluator</a>
41        &#160;&#160;::&#160;&#160;
42        <a class="uplink" href="../index.html">Contents</a>
43        &#160;&#160;::&#160;&#160;
44        <a href="resolution.html">3.11. 1-D resolution functions</a>&#160;&#160;»
45        </p>
46
47      </div>
48      <div class="content">
49       
50       
51  <div class="section" id="unit-test-support">
52<h1>3.10. Unit test support<a class="headerlink" href="#unit-test-support" title="Permalink to this headline">¶</a></h1>
53<div class="section" id="module-sasmodels.model_test">
54<span id="sasmodels-model-test"></span><h2>3.10.1. <a class="reference internal" href="#module-sasmodels.model_test" title="sasmodels.model_test"><tt class="xref py py-mod docutils literal"><span class="pre">sasmodels.model_test</span></tt></a><a class="headerlink" href="#module-sasmodels.model_test" title="Permalink to this headline">¶</a></h2>
55<p>Run model unit tests.</p>
56<p>Usage:</p>
57<div class="highlight-python"><div class="highlight"><pre>python -m sasmodels.model_test [opencl|dll|opencl_and_dll] model1 model2 ...
58
59if model1 is &#39;all&#39;, then all except the remaining models will be tested
60</pre></div>
61</div>
62<p>Each model is tested using the default parameters at q=0.1, (qx,qy)=(0.1,0.1),
63and the ER and VR are computed.  The return values at these points are not
64considered.  The test is only to verify that the models run to completion,
65and do not produce inf or NaN.</p>
66<p>Tests are defined with the <em>tests</em> attribute in the model.py file.  <em>tests</em>
67is a list of individual tests to run, where each test consists of the
68parameter values for the test, the q-values and the expected results.  For
69the effective radius test, the q-value should be &#8216;ER&#8217;.  For the VR test,
70the q-value should be &#8216;VR&#8217;.  For 1-D tests, either specify the q value or
71a list of q-values, and the corresponding I(q) value, or list of I(q) values.</p>
72<p>That is:</p>
73<div class="highlight-python"><div class="highlight"><pre><span class="n">tests</span> <span class="o">=</span> <span class="p">[</span>
74    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="n">q</span><span class="p">,</span> <span class="n">I</span><span class="p">(</span><span class="n">q</span><span class="p">)],</span>
75    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="p">[</span><span class="n">q</span><span class="p">],</span> <span class="p">[</span><span class="n">I</span><span class="p">(</span><span class="n">q</span><span class="p">)]</span> <span class="p">],</span>
76    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="p">[</span><span class="n">q1</span><span class="p">,</span> <span class="n">q2</span><span class="p">,</span> <span class="o">...</span><span class="p">],</span> <span class="p">[</span><span class="n">I</span><span class="p">(</span><span class="n">q1</span><span class="p">),</span> <span class="n">I</span><span class="p">(</span><span class="n">q2</span><span class="p">),</span> <span class="o">...</span><span class="p">]],</span>
77
78    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="p">(</span><span class="n">qx</span><span class="p">,</span> <span class="n">qy</span><span class="p">),</span> <span class="n">I</span><span class="p">(</span><span class="n">qx</span><span class="p">,</span> <span class="n">Iqy</span><span class="p">)],</span>
79    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="p">[(</span><span class="n">qx1</span><span class="p">,</span> <span class="n">qy1</span><span class="p">),</span> <span class="p">(</span><span class="n">qx2</span><span class="p">,</span> <span class="n">qy2</span><span class="p">),</span> <span class="o">...</span><span class="p">],</span>
80                    <span class="p">[</span><span class="n">I</span><span class="p">(</span><span class="n">qx1</span><span class="p">,</span><span class="n">qy1</span><span class="p">),</span> <span class="n">I</span><span class="p">(</span><span class="n">qx2</span><span class="p">,</span><span class="n">qy2</span><span class="p">),</span> <span class="o">...</span><span class="p">]],</span>
81
82    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="s">&#39;ER&#39;</span><span class="p">,</span> <span class="n">ER</span><span class="p">(</span><span class="n">pars</span><span class="p">)</span> <span class="p">],</span>
83    <span class="p">[</span> <span class="p">{</span><span class="n">parameters</span><span class="p">},</span> <span class="s">&#39;VR&#39;</span><span class="p">,</span> <span class="n">VR</span><span class="p">(</span><span class="n">pars</span><span class="p">)</span> <span class="p">],</span>
84    <span class="o">...</span>
85<span class="p">]</span>
86</pre></div>
87</div>
88<p>Parameters are <em>key:value</em> pairs, where key is one of the parameters of the
89model and value is the value to use for the test.  Any parameters not given
90in the parameter list will take on the default parameter value.</p>
91<p>Precision defaults to 5 digits (relative).</p>
92<dl class="function">
93<dt id="sasmodels.model_test.main">
94<tt class="descclassname">sasmodels.model_test.</tt><tt class="descname">main</tt><big>(</big><big>)</big><a class="headerlink" href="#sasmodels.model_test.main" title="Permalink to this definition">¶</a></dt>
95<dd><p>Run tests given is sys.argv.</p>
96<p>Returns 0 if success or 1 if any tests fail.</p>
97</dd></dl>
98
99<dl class="function">
100<dt id="sasmodels.model_test.make_suite">
101<tt class="descclassname">sasmodels.model_test.</tt><tt class="descname">make_suite</tt><big>(</big><em>loaders</em>, <em>models</em><big>)</big><a class="headerlink" href="#sasmodels.model_test.make_suite" title="Permalink to this definition">¶</a></dt>
102<dd></dd></dl>
103
104<dl class="function">
105<dt id="sasmodels.model_test.model_tests">
106<tt class="descclassname">sasmodels.model_test.</tt><tt class="descname">model_tests</tt><big>(</big><big>)</big><a class="headerlink" href="#sasmodels.model_test.model_tests" title="Permalink to this definition">¶</a></dt>
107<dd><p>Test runner visible to nosetests.</p>
108<p>Run &#8220;nosetests sasmodels&#8221; on the command line to invoke it.</p>
109</dd></dl>
110
111</div>
112</div>
113
114
115      </div>
116      <div class="bottomnav">
117     
118        <p>
119        «&#160;&#160;<a href="kernelpy.html">3.9. Python model evaluator</a>
120        &#160;&#160;::&#160;&#160;
121        <a class="uplink" href="../index.html">Contents</a>
122        &#160;&#160;::&#160;&#160;
123        <a href="resolution.html">3.11. 1-D resolution functions</a>&#160;&#160;»
124        </p>
125
126      </div>
127
128    <div class="footer">
129        &copy; Copyright 2014, sasview team.
130      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
131    </div>
132  </body>
133</html>
Note: See TracBrowser for help on using the repository browser.