mirror of
https://github.com/fjosw/pyerrors.git
synced 2026-08-04 11:31:21 +02:00
Documentation updated
This commit is contained in:
parent
99cd80f2ae
commit
b54426e60a
5 changed files with 1481 additions and 564 deletions
|
|
@ -592,7 +592,7 @@
|
||||||
</span><span id="L-481"><a href="#L-481"><span class="linenos">481</span></a>
|
</span><span id="L-481"><a href="#L-481"><span class="linenos">481</span></a>
|
||||||
</span><span id="L-482"><a href="#L-482"><span class="linenos">482</span></a> <span class="k">try</span><span class="p">:</span>
|
</span><span id="L-482"><a href="#L-482"><span class="linenos">482</span></a> <span class="k">try</span><span class="p">:</span>
|
||||||
</span><span id="L-483"><a href="#L-483"><span class="linenos">483</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">chisqfunc</span><span class="p">)(</span><span class="n">fitp</span><span class="p">)</span>
|
</span><span id="L-483"><a href="#L-483"><span class="linenos">483</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">chisqfunc</span><span class="p">)(</span><span class="n">fitp</span><span class="p">)</span>
|
||||||
</span><span id="L-484"><a href="#L-484"><span class="linenos">484</span></a> <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
|
</span><span id="L-484"><a href="#L-484"><span class="linenos">484</span></a> <span class="k">except</span> <span class="p">(</span><span class="ne">TypeError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">LinAlgError</span><span class="p">):</span>
|
||||||
</span><span id="L-485"><a href="#L-485"><span class="linenos">485</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
</span><span id="L-485"><a href="#L-485"><span class="linenos">485</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
||||||
</span><span id="L-486"><a href="#L-486"><span class="linenos">486</span></a>
|
</span><span id="L-486"><a href="#L-486"><span class="linenos">486</span></a>
|
||||||
</span><span id="L-487"><a href="#L-487"><span class="linenos">487</span></a> <span class="n">len_y</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">y_f</span><span class="p">)</span>
|
</span><span id="L-487"><a href="#L-487"><span class="linenos">487</span></a> <span class="n">len_y</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">y_f</span><span class="p">)</span>
|
||||||
|
|
@ -833,7 +833,7 @@
|
||||||
</span><span id="L-722"><a href="#L-722"><span class="linenos">722</span></a> <span class="n">fitp</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">beta</span>
|
</span><span id="L-722"><a href="#L-722"><span class="linenos">722</span></a> <span class="n">fitp</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">beta</span>
|
||||||
</span><span id="L-723"><a href="#L-723"><span class="linenos">723</span></a> <span class="k">try</span><span class="p">:</span>
|
</span><span id="L-723"><a href="#L-723"><span class="linenos">723</span></a> <span class="k">try</span><span class="p">:</span>
|
||||||
</span><span id="L-724"><a href="#L-724"><span class="linenos">724</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">odr_chisquare</span><span class="p">)(</span><span class="n">np</span><span class="o">.</span><span class="n">concatenate</span><span class="p">((</span><span class="n">fitp</span><span class="p">,</span> <span class="n">out</span><span class="o">.</span><span class="n">xplusd</span><span class="o">.</span><span class="n">ravel</span><span class="p">())))</span>
|
</span><span id="L-724"><a href="#L-724"><span class="linenos">724</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">odr_chisquare</span><span class="p">)(</span><span class="n">np</span><span class="o">.</span><span class="n">concatenate</span><span class="p">((</span><span class="n">fitp</span><span class="p">,</span> <span class="n">out</span><span class="o">.</span><span class="n">xplusd</span><span class="o">.</span><span class="n">ravel</span><span class="p">())))</span>
|
||||||
</span><span id="L-725"><a href="#L-725"><span class="linenos">725</span></a> <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
|
</span><span id="L-725"><a href="#L-725"><span class="linenos">725</span></a> <span class="k">except</span> <span class="p">(</span><span class="ne">TypeError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">LinAlgError</span><span class="p">):</span>
|
||||||
</span><span id="L-726"><a href="#L-726"><span class="linenos">726</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
</span><span id="L-726"><a href="#L-726"><span class="linenos">726</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
||||||
</span><span id="L-727"><a href="#L-727"><span class="linenos">727</span></a>
|
</span><span id="L-727"><a href="#L-727"><span class="linenos">727</span></a>
|
||||||
</span><span id="L-728"><a href="#L-728"><span class="linenos">728</span></a> <span class="k">def</span><span class="w"> </span><span class="nf">odr_chisquare_compact_x</span><span class="p">(</span><span class="n">d</span><span class="p">):</span>
|
</span><span id="L-728"><a href="#L-728"><span class="linenos">728</span></a> <span class="k">def</span><span class="w"> </span><span class="nf">odr_chisquare_compact_x</span><span class="p">(</span><span class="n">d</span><span class="p">):</span>
|
||||||
|
|
@ -1623,7 +1623,7 @@ Hotelling t-squared p-value for correlated fits.</li>
|
||||||
</span><span id="least_squares-482"><a href="#least_squares-482"><span class="linenos">482</span></a>
|
</span><span id="least_squares-482"><a href="#least_squares-482"><span class="linenos">482</span></a>
|
||||||
</span><span id="least_squares-483"><a href="#least_squares-483"><span class="linenos">483</span></a> <span class="k">try</span><span class="p">:</span>
|
</span><span id="least_squares-483"><a href="#least_squares-483"><span class="linenos">483</span></a> <span class="k">try</span><span class="p">:</span>
|
||||||
</span><span id="least_squares-484"><a href="#least_squares-484"><span class="linenos">484</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">chisqfunc</span><span class="p">)(</span><span class="n">fitp</span><span class="p">)</span>
|
</span><span id="least_squares-484"><a href="#least_squares-484"><span class="linenos">484</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">chisqfunc</span><span class="p">)(</span><span class="n">fitp</span><span class="p">)</span>
|
||||||
</span><span id="least_squares-485"><a href="#least_squares-485"><span class="linenos">485</span></a> <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
|
</span><span id="least_squares-485"><a href="#least_squares-485"><span class="linenos">485</span></a> <span class="k">except</span> <span class="p">(</span><span class="ne">TypeError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">LinAlgError</span><span class="p">):</span>
|
||||||
</span><span id="least_squares-486"><a href="#least_squares-486"><span class="linenos">486</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
</span><span id="least_squares-486"><a href="#least_squares-486"><span class="linenos">486</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
||||||
</span><span id="least_squares-487"><a href="#least_squares-487"><span class="linenos">487</span></a>
|
</span><span id="least_squares-487"><a href="#least_squares-487"><span class="linenos">487</span></a>
|
||||||
</span><span id="least_squares-488"><a href="#least_squares-488"><span class="linenos">488</span></a> <span class="n">len_y</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">y_f</span><span class="p">)</span>
|
</span><span id="least_squares-488"><a href="#least_squares-488"><span class="linenos">488</span></a> <span class="n">len_y</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">y_f</span><span class="p">)</span>
|
||||||
|
|
@ -2041,7 +2041,7 @@ Parameters and information on the fitted result.</li>
|
||||||
</span><span id="total_least_squares-723"><a href="#total_least_squares-723"><span class="linenos">723</span></a> <span class="n">fitp</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">beta</span>
|
</span><span id="total_least_squares-723"><a href="#total_least_squares-723"><span class="linenos">723</span></a> <span class="n">fitp</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">beta</span>
|
||||||
</span><span id="total_least_squares-724"><a href="#total_least_squares-724"><span class="linenos">724</span></a> <span class="k">try</span><span class="p">:</span>
|
</span><span id="total_least_squares-724"><a href="#total_least_squares-724"><span class="linenos">724</span></a> <span class="k">try</span><span class="p">:</span>
|
||||||
</span><span id="total_least_squares-725"><a href="#total_least_squares-725"><span class="linenos">725</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">odr_chisquare</span><span class="p">)(</span><span class="n">np</span><span class="o">.</span><span class="n">concatenate</span><span class="p">((</span><span class="n">fitp</span><span class="p">,</span> <span class="n">out</span><span class="o">.</span><span class="n">xplusd</span><span class="o">.</span><span class="n">ravel</span><span class="p">())))</span>
|
</span><span id="total_least_squares-725"><a href="#total_least_squares-725"><span class="linenos">725</span></a> <span class="n">hess</span> <span class="o">=</span> <span class="n">hessian</span><span class="p">(</span><span class="n">odr_chisquare</span><span class="p">)(</span><span class="n">np</span><span class="o">.</span><span class="n">concatenate</span><span class="p">((</span><span class="n">fitp</span><span class="p">,</span> <span class="n">out</span><span class="o">.</span><span class="n">xplusd</span><span class="o">.</span><span class="n">ravel</span><span class="p">())))</span>
|
||||||
</span><span id="total_least_squares-726"><a href="#total_least_squares-726"><span class="linenos">726</span></a> <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
|
</span><span id="total_least_squares-726"><a href="#total_least_squares-726"><span class="linenos">726</span></a> <span class="k">except</span> <span class="p">(</span><span class="ne">TypeError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">LinAlgError</span><span class="p">):</span>
|
||||||
</span><span id="total_least_squares-727"><a href="#total_least_squares-727"><span class="linenos">727</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
</span><span id="total_least_squares-727"><a href="#total_least_squares-727"><span class="linenos">727</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within fit functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
||||||
</span><span id="total_least_squares-728"><a href="#total_least_squares-728"><span class="linenos">728</span></a>
|
</span><span id="total_least_squares-728"><a href="#total_least_squares-728"><span class="linenos">728</span></a>
|
||||||
</span><span id="total_least_squares-729"><a href="#total_least_squares-729"><span class="linenos">729</span></a> <span class="k">def</span><span class="w"> </span><span class="nf">odr_chisquare_compact_x</span><span class="p">(</span><span class="n">d</span><span class="p">):</span>
|
</span><span id="total_least_squares-729"><a href="#total_least_squares-729"><span class="linenos">729</span></a> <span class="k">def</span><span class="w"> </span><span class="nf">odr_chisquare_compact_x</span><span class="p">(</span><span class="n">d</span><span class="p">):</span>
|
||||||
|
|
|
||||||
|
|
@ -1216,7 +1216,7 @@ extracted DistillationContration data</li>
|
||||||
</span></pre></div>
|
</span></pre></div>
|
||||||
|
|
||||||
|
|
||||||
<div class="docstring"><p>ndarray(shape, dtype=float, buffer=None, offset=0, strides=None, order=None)</p>
|
<div class="docstring"><p>ndarray(shape, dtype=np.float64, buffer=None, offset=0, strides=None, order=None)</p>
|
||||||
|
|
||||||
<p>An array object represents a multidimensional, homogeneous array
|
<p>An array object represents a multidimensional, homogeneous array
|
||||||
of fixed-size items. An associated data-type object describes the
|
of fixed-size items. An associated data-type object describes the
|
||||||
|
|
@ -1331,7 +1331,7 @@ ndarray.</p>
|
||||||
|
|
||||||
<div class="pdoc-code codehilite">
|
<div class="pdoc-code codehilite">
|
||||||
<pre><span></span><code><span class="gp">>>> </span><span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
|
<pre><span></span><code><span class="gp">>>> </span><span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
|
||||||
<span class="gp">>>> </span><span class="n">np</span><span class="o">.</span><span class="n">ndarray</span><span class="p">(</span><span class="n">shape</span><span class="o">=</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span><span class="mi">2</span><span class="p">),</span> <span class="n">dtype</span><span class="o">=</span><span class="nb">float</span><span class="p">,</span> <span class="n">order</span><span class="o">=</span><span class="s1">'F'</span><span class="p">)</span>
|
<span class="gp">>>> </span><span class="n">np</span><span class="o">.</span><span class="n">ndarray</span><span class="p">(</span><span class="n">shape</span><span class="o">=</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span><span class="mi">2</span><span class="p">),</span> <span class="n">dtype</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">,</span> <span class="n">order</span><span class="o">=</span><span class="s1">'F'</span><span class="p">)</span>
|
||||||
<span class="go">array([[0.0e+000, 0.0e+000], # random</span>
|
<span class="go">array([[0.0e+000, 0.0e+000], # random</span>
|
||||||
<span class="go"> [ nan, 2.5e-323]])</span>
|
<span class="go"> [ nan, 2.5e-323]])</span>
|
||||||
</code></pre>
|
</code></pre>
|
||||||
|
|
@ -1342,7 +1342,7 @@ ndarray.</p>
|
||||||
<div class="pdoc-code codehilite">
|
<div class="pdoc-code codehilite">
|
||||||
<pre><span></span><code><span class="gp">>>> </span><span class="n">np</span><span class="o">.</span><span class="n">ndarray</span><span class="p">((</span><span class="mi">2</span><span class="p">,),</span> <span class="n">buffer</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">]),</span>
|
<pre><span></span><code><span class="gp">>>> </span><span class="n">np</span><span class="o">.</span><span class="n">ndarray</span><span class="p">((</span><span class="mi">2</span><span class="p">,),</span> <span class="n">buffer</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">]),</span>
|
||||||
<span class="gp">... </span> <span class="n">offset</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">int_</span><span class="p">()</span><span class="o">.</span><span class="n">itemsize</span><span class="p">,</span>
|
<span class="gp">... </span> <span class="n">offset</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">int_</span><span class="p">()</span><span class="o">.</span><span class="n">itemsize</span><span class="p">,</span>
|
||||||
<span class="gp">... </span> <span class="n">dtype</span><span class="o">=</span><span class="nb">int</span><span class="p">)</span> <span class="c1"># offset = 1*itemsize, i.e. skip first element</span>
|
<span class="gp">... </span> <span class="n">dtype</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">int_</span><span class="p">)</span> <span class="c1"># offset = 1*itemsize, i.e. skip first element</span>
|
||||||
<span class="go">array([2, 3])</span>
|
<span class="go">array([2, 3])</span>
|
||||||
</code></pre>
|
</code></pre>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -110,10 +110,10 @@
|
||||||
</span><span id="L-32"><a href="#L-32"><span class="linenos">32</span></a> <span class="n">root</span> <span class="o">=</span> <span class="n">scipy</span><span class="o">.</span><span class="n">optimize</span><span class="o">.</span><span class="n">fsolve</span><span class="p">(</span><span class="n">func</span><span class="p">,</span> <span class="n">guess</span><span class="p">,</span> <span class="n">d_val</span><span class="p">)</span>
|
</span><span id="L-32"><a href="#L-32"><span class="linenos">32</span></a> <span class="n">root</span> <span class="o">=</span> <span class="n">scipy</span><span class="o">.</span><span class="n">optimize</span><span class="o">.</span><span class="n">fsolve</span><span class="p">(</span><span class="n">func</span><span class="p">,</span> <span class="n">guess</span><span class="p">,</span> <span class="n">d_val</span><span class="p">)</span>
|
||||||
</span><span id="L-33"><a href="#L-33"><span class="linenos">33</span></a>
|
</span><span id="L-33"><a href="#L-33"><span class="linenos">33</span></a>
|
||||||
</span><span id="L-34"><a href="#L-34"><span class="linenos">34</span></a> <span class="c1"># Error propagation as detailed in arXiv:1809.01289</span>
|
</span><span id="L-34"><a href="#L-34"><span class="linenos">34</span></a> <span class="c1"># Error propagation as detailed in arXiv:1809.01289</span>
|
||||||
</span><span id="L-35"><a href="#L-35"><span class="linenos">35</span></a> <span class="n">dx</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="n">func</span><span class="p">)(</span><span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">d_val</span><span class="p">)</span>
|
</span><span id="L-35"><a href="#L-35"><span class="linenos">35</span></a> <span class="k">try</span><span class="p">:</span>
|
||||||
</span><span id="L-36"><a href="#L-36"><span class="linenos">36</span></a> <span class="k">try</span><span class="p">:</span>
|
</span><span id="L-36"><a href="#L-36"><span class="linenos">36</span></a> <span class="n">dx</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="n">func</span><span class="p">)(</span><span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">d_val</span><span class="p">)</span>
|
||||||
</span><span id="L-37"><a href="#L-37"><span class="linenos">37</span></a> <span class="n">da</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="k">lambda</span> <span class="n">u</span><span class="p">,</span> <span class="n">v</span><span class="p">:</span> <span class="n">func</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">u</span><span class="p">))(</span><span class="n">d_val</span><span class="p">,</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
|
</span><span id="L-37"><a href="#L-37"><span class="linenos">37</span></a> <span class="n">da</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="k">lambda</span> <span class="n">u</span><span class="p">,</span> <span class="n">v</span><span class="p">:</span> <span class="n">func</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">u</span><span class="p">))(</span><span class="n">d_val</span><span class="p">,</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
|
||||||
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a> <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
|
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a> <span class="k">except</span> <span class="p">(</span><span class="ne">TypeError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">LinAlgError</span><span class="p">):</span>
|
||||||
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within root functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within root functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
||||||
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a> <span class="n">deriv</span> <span class="o">=</span> <span class="o">-</span> <span class="n">da</span> <span class="o">/</span> <span class="n">dx</span>
|
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a> <span class="n">deriv</span> <span class="o">=</span> <span class="o">-</span> <span class="n">da</span> <span class="o">/</span> <span class="n">dx</span>
|
||||||
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">derived_observable</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">:</span> <span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">d</span><span class="p">)</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">value</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">*</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">derived_observable</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">:</span> <span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">d</span><span class="p">)</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">value</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">*</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
||||||
|
|
@ -162,10 +162,10 @@
|
||||||
</span><span id="find_root-33"><a href="#find_root-33"><span class="linenos">33</span></a> <span class="n">root</span> <span class="o">=</span> <span class="n">scipy</span><span class="o">.</span><span class="n">optimize</span><span class="o">.</span><span class="n">fsolve</span><span class="p">(</span><span class="n">func</span><span class="p">,</span> <span class="n">guess</span><span class="p">,</span> <span class="n">d_val</span><span class="p">)</span>
|
</span><span id="find_root-33"><a href="#find_root-33"><span class="linenos">33</span></a> <span class="n">root</span> <span class="o">=</span> <span class="n">scipy</span><span class="o">.</span><span class="n">optimize</span><span class="o">.</span><span class="n">fsolve</span><span class="p">(</span><span class="n">func</span><span class="p">,</span> <span class="n">guess</span><span class="p">,</span> <span class="n">d_val</span><span class="p">)</span>
|
||||||
</span><span id="find_root-34"><a href="#find_root-34"><span class="linenos">34</span></a>
|
</span><span id="find_root-34"><a href="#find_root-34"><span class="linenos">34</span></a>
|
||||||
</span><span id="find_root-35"><a href="#find_root-35"><span class="linenos">35</span></a> <span class="c1"># Error propagation as detailed in arXiv:1809.01289</span>
|
</span><span id="find_root-35"><a href="#find_root-35"><span class="linenos">35</span></a> <span class="c1"># Error propagation as detailed in arXiv:1809.01289</span>
|
||||||
</span><span id="find_root-36"><a href="#find_root-36"><span class="linenos">36</span></a> <span class="n">dx</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="n">func</span><span class="p">)(</span><span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">d_val</span><span class="p">)</span>
|
</span><span id="find_root-36"><a href="#find_root-36"><span class="linenos">36</span></a> <span class="k">try</span><span class="p">:</span>
|
||||||
</span><span id="find_root-37"><a href="#find_root-37"><span class="linenos">37</span></a> <span class="k">try</span><span class="p">:</span>
|
</span><span id="find_root-37"><a href="#find_root-37"><span class="linenos">37</span></a> <span class="n">dx</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="n">func</span><span class="p">)(</span><span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">d_val</span><span class="p">)</span>
|
||||||
</span><span id="find_root-38"><a href="#find_root-38"><span class="linenos">38</span></a> <span class="n">da</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="k">lambda</span> <span class="n">u</span><span class="p">,</span> <span class="n">v</span><span class="p">:</span> <span class="n">func</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">u</span><span class="p">))(</span><span class="n">d_val</span><span class="p">,</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
|
</span><span id="find_root-38"><a href="#find_root-38"><span class="linenos">38</span></a> <span class="n">da</span> <span class="o">=</span> <span class="n">jacobian</span><span class="p">(</span><span class="k">lambda</span> <span class="n">u</span><span class="p">,</span> <span class="n">v</span><span class="p">:</span> <span class="n">func</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">u</span><span class="p">))(</span><span class="n">d_val</span><span class="p">,</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
|
||||||
</span><span id="find_root-39"><a href="#find_root-39"><span class="linenos">39</span></a> <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span>
|
</span><span id="find_root-39"><a href="#find_root-39"><span class="linenos">39</span></a> <span class="k">except</span> <span class="p">(</span><span class="ne">TypeError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">LinAlgError</span><span class="p">):</span>
|
||||||
</span><span id="find_root-40"><a href="#find_root-40"><span class="linenos">40</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within root functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
</span><span id="find_root-40"><a href="#find_root-40"><span class="linenos">40</span></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="s2">"It is required to use autograd.numpy instead of numpy within root functions, see the documentation for details."</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="kc">None</span>
|
||||||
</span><span id="find_root-41"><a href="#find_root-41"><span class="linenos">41</span></a> <span class="n">deriv</span> <span class="o">=</span> <span class="o">-</span> <span class="n">da</span> <span class="o">/</span> <span class="n">dx</span>
|
</span><span id="find_root-41"><a href="#find_root-41"><span class="linenos">41</span></a> <span class="n">deriv</span> <span class="o">=</span> <span class="o">-</span> <span class="n">da</span> <span class="o">/</span> <span class="n">dx</span>
|
||||||
</span><span id="find_root-42"><a href="#find_root-42"><span class="linenos">42</span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">derived_observable</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">:</span> <span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">d</span><span class="p">)</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">value</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">*</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
</span><span id="find_root-42"><a href="#find_root-42"><span class="linenos">42</span></a> <span class="n">res</span> <span class="o">=</span> <span class="n">derived_observable</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">:</span> <span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">d</span><span class="p">)</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">value</span> <span class="o">+</span> <span class="n">np</span><span class="o">.</span><span class="n">finfo</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float64</span><span class="p">)</span><span class="o">.</span><span class="n">eps</span><span class="p">)</span> <span class="o">*</span> <span class="n">root</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue