source: sasview/_modules/park/parkde.html @ a462c6a

gh-pages
Last change on this file since a462c6a was a462c6a, checked in by ajj, 9 years ago

Rebuild to fix index and modules docs

  • Property mode set to 100644
File size: 11.0 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>park.parkde &mdash; SasView 3.0.0 documentation</title>
10   
11    <link rel="stylesheet" href="../../_static/default.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:     '3.0.0',
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="SasView 3.0.0 documentation" href="../../index.html" />
28    <link rel="up" title="Module code" href="../index.html" /> 
29  </head>
30  <body>
31    <div class="related">
32      <h3>Navigation</h3>
33      <ul>
34        <li class="right" style="margin-right: 10px">
35          <a href="../../genindex.html" title="General Index"
36             accesskey="I">index</a></li>
37        <li class="right" >
38          <a href="../../py-modindex.html" title="Python Module Index"
39             >modules</a> |</li>
40        <li><a href="../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
41          <li><a href="../index.html" accesskey="U">Module code</a> &raquo;</li> 
42      </ul>
43    </div> 
44
45    <div class="document">
46      <div class="documentwrapper">
47        <div class="bodywrapper">
48          <div class="body">
49           
50  <h1>Source code for park.parkde</h1><div class="highlight"><pre>
51<span class="sd">&quot;&quot;&quot;</span>
52<span class="sd">&quot;&quot;&quot;</span>
53<span class="kn">from</span> <span class="nn">__future__</span> <span class="kn">import</span> <span class="n">division</span>
54<span class="kn">import</span> <span class="nn">thread</span>
55<span class="kn">import</span> <span class="nn">numpy</span>
56
57<span class="kn">import</span> <span class="nn">diffev</span>
58
59<span class="kn">import</span> <span class="nn">fit</span><span class="o">,</span><span class="nn">fitresult</span>
60
61<span class="n">__all__</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;DiffEv&#39;</span><span class="p">]</span>
62
63<div class="viewcode-block" id="DiffEv"><a class="viewcode-back" href="../../dev/api/park.html#park.parkde.DiffEv">[docs]</a><span class="k">class</span> <span class="nc">DiffEv</span><span class="p">(</span><span class="n">fit</span><span class="o">.</span><span class="n">Fitter</span><span class="p">):</span>
64    <span class="sd">&quot;&quot;&quot;</span>
65<span class="sd">    Differential evolution optimizer</span>
66
67<span class="sd">    This implements `park.fit.Fitter`.</span>
68<span class="sd">    &quot;&quot;&quot;</span>
69
70    <span class="n">maxiter</span><span class="o">=</span><span class="mi">1000</span>
71    <span class="sd">&quot;&quot;&quot;Maximum number of iterations&quot;&quot;&quot;</span>
72    <span class="n">pop_scale</span><span class="o">=</span><span class="mi">4</span>
73    <span class="sd">&quot;&quot;&quot;Number of active points per dimension&quot;&quot;&quot;</span>
74    <span class="n">crossover_rate</span><span class="o">=</span><span class="mf">0.9</span>
75    <span class="sd">&quot;&quot;&quot;Amount of mixing in population&quot;&quot;&quot;</span>
76    <span class="n">Fscale</span><span class="o">=</span><span class="mf">0.5</span>
77    <span class="sd">&quot;&quot;&quot;Step size along difference vector&quot;&quot;&quot;</span>
78    <span class="n">tolerance</span><span class="o">=</span><span class="mf">1e-5</span>
79    <span class="sd">&quot;&quot;&quot;Fit tolerance&quot;&quot;&quot;</span>
80
81<div class="viewcode-block" id="DiffEv.progress"><a class="viewcode-back" href="../../dev/api/park.html#park.parkde.DiffEv.progress">[docs]</a>    <span class="k">def</span> <span class="nf">progress</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">k</span><span class="p">,</span> <span class="n">n</span><span class="p">):</span>
82        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">progress</span><span class="p">(</span><span class="n">k</span><span class="p">,</span><span class="n">n</span><span class="p">)</span></div>
83<div class="viewcode-block" id="DiffEv.improvement"><a class="viewcode-back" href="../../dev/api/park.html#park.parkde.DiffEv.improvement">[docs]</a>    <span class="k">def</span> <span class="nf">improvement</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">x</span><span class="p">,</span> <span class="n">fx</span><span class="p">,</span> <span class="n">ncalls</span><span class="o">=-</span><span class="mi">1</span><span class="p">):</span>
84        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">result</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">x</span><span class="p">,</span><span class="n">fx</span><span class="p">,</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span>
85        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">improvement</span><span class="p">()</span>
86</div>
87    <span class="k">def</span> <span class="nf">_call</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">objective</span><span class="p">,</span> <span class="n">x0</span><span class="p">,</span> <span class="n">bounds</span><span class="p">):</span>
88        <span class="n">x</span><span class="p">,</span><span class="n">fx</span><span class="p">,</span><span class="n">calls</span> <span class="o">=</span> <span class="n">diffev</span><span class="o">.</span><span class="n">diffev</span><span class="p">(</span><span class="n">objective</span><span class="p">,</span> <span class="n">bounds</span><span class="p">,</span>
89                                   <span class="n">maxiter</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">maxiter</span><span class="p">,</span>
90                                   <span class="n">pop_scale</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">pop_scale</span><span class="p">,</span>
91                                   <span class="n">crossover_rate</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">crossover_rate</span><span class="p">,</span>
92                                   <span class="n">Fscale</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">Fscale</span><span class="p">,</span>
93                                   <span class="n">tolerance</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">tolerance</span><span class="p">,</span>
94                                   <span class="n">x0</span><span class="o">=</span><span class="n">x0</span><span class="p">,</span> <span class="n">monitor</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
95
96        <span class="c"># Post the result</span>
97        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">result</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">fx</span><span class="p">,</span> <span class="n">calls</span><span class="p">)</span>
98        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">result</span><span class="o">.</span><span class="n">calc_cov</span><span class="p">(</span><span class="n">objective</span><span class="p">)</span>
99        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">done</span> <span class="o">=</span> <span class="bp">True</span>
100        <span class="bp">self</span><span class="o">.</span><span class="n">handler</span><span class="o">.</span><span class="n">finalize</span><span class="p">()</span>
101
102    <span class="k">def</span> <span class="nf">_fit</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">objective</span><span class="p">,</span> <span class="n">x0</span><span class="p">,</span> <span class="n">bounds</span><span class="p">):</span>
103        <span class="bp">self</span><span class="o">.</span><span class="n">_threaded</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_call</span><span class="p">,</span> <span class="n">objective</span><span class="p">,</span> <span class="n">x0</span><span class="p">,</span> <span class="n">bounds</span><span class="p">)</span>
104</div>
105<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&quot;__main__&quot;</span><span class="p">:</span>
106    <span class="n">fit</span><span class="o">.</span><span class="n">demo2</span><span class="p">(</span><span class="n">fitter</span><span class="o">=</span><span class="n">DiffEv</span><span class="p">())</span>
107</pre></div>
108
109          </div>
110        </div>
111      </div>
112      <div class="sphinxsidebar">
113        <div class="sphinxsidebarwrapper">
114<div id="searchbox" style="display: none">
115  <h3>Quick search</h3>
116    <form class="search" action="../../search.html" method="get">
117      <input type="text" name="q" />
118      <input type="submit" value="Go" />
119      <input type="hidden" name="check_keywords" value="yes" />
120      <input type="hidden" name="area" value="default" />
121    </form>
122    <p class="searchtip" style="font-size: 90%">
123    Enter search terms or a module, class or function name.
124    </p>
125</div>
126<script type="text/javascript">$('#searchbox').show(0);</script>
127        </div>
128      </div>
129      <div class="clearer"></div>
130    </div>
131    <div class="related">
132      <h3>Navigation</h3>
133      <ul>
134        <li class="right" style="margin-right: 10px">
135          <a href="../../genindex.html" title="General Index"
136             >index</a></li>
137        <li class="right" >
138          <a href="../../py-modindex.html" title="Python Module Index"
139             >modules</a> |</li>
140        <li><a href="../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
141          <li><a href="../index.html" >Module code</a> &raquo;</li> 
142      </ul>
143    </div>
144    <div class="footer">
145        &copy; Copyright 2013, The SasView Project.
146      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
147    </div>
148  </body>
149</html>
Note: See TracBrowser for help on using the repository browser.