Documentation updated

This commit is contained in:
fjosw 2021-11-07 21:45:25 +00:00
parent bf3eda40c2
commit eec13a754e
9 changed files with 744 additions and 670 deletions

View file

@ -423,8 +423,8 @@
<span class="k">def</span> <span class="nf">roll</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dt</span><span class="p">):</span> <span class="k">def</span> <span class="nf">roll</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dt</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Periodically shift the correlator by dt timeslices</span> <span class="sd">&quot;&quot;&quot;Periodically shift the correlator by dt timeslices</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> dt : int</span> <span class="sd"> dt : int</span>
<span class="sd"> number of timeslices</span> <span class="sd"> number of timeslices</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -461,9 +461,6 @@
<span class="sd"> weight : Obs</span> <span class="sd"> weight : Obs</span>
<span class="sd"> Reweighting factor. An Observable that has to be defined on a superset of the</span> <span class="sd"> Reweighting factor. An Observable that has to be defined on a superset of the</span>
<span class="sd"> configurations in obs[i].idl for all i.</span> <span class="sd"> configurations in obs[i].idl for all i.</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> all_configs : bool</span> <span class="sd"> all_configs : bool</span>
<span class="sd"> if True, the reweighted observables are normalized by the average of</span> <span class="sd"> if True, the reweighted observables are normalized by the average of</span>
<span class="sd"> the reweighting factor on all configurations in weight.idl and not</span> <span class="sd"> the reweighting factor on all configurations in weight.idl and not</span>
@ -480,8 +477,8 @@
<span class="k">def</span> <span class="nf">T_symmetry</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">partner</span><span class="p">,</span> <span class="n">parity</span><span class="o">=+</span><span class="mi">1</span><span class="p">):</span> <span class="k">def</span> <span class="nf">T_symmetry</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">partner</span><span class="p">,</span> <span class="n">parity</span><span class="o">=+</span><span class="mi">1</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Return the time symmetry average of the correlator and its partner</span> <span class="sd">&quot;&quot;&quot;Return the time symmetry average of the correlator and its partner</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> partner : Corr</span> <span class="sd"> partner : Corr</span>
<span class="sd"> Time symmetry partner of the Corr</span> <span class="sd"> Time symmetry partner of the Corr</span>
<span class="sd"> partity : int</span> <span class="sd"> partity : int</span>
@ -506,8 +503,8 @@
<span class="k">def</span> <span class="nf">deriv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">symmetric</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span> <span class="k">def</span> <span class="nf">deriv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">symmetric</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Return the first derivative of the correlator with respect to x0.</span> <span class="sd">&quot;&quot;&quot;Return the first derivative of the correlator with respect to x0.</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> symmetric : bool</span> <span class="sd"> symmetric : bool</span>
<span class="sd"> decides whether symmertic of simple finite differences are used. Default: True</span> <span class="sd"> decides whether symmertic of simple finite differences are used. Default: True</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -611,8 +608,8 @@
<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">function</span><span class="p">,</span> <span class="n">fitrange</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <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">function</span><span class="p">,</span> <span class="n">fitrange</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Fits function to the data</span> <span class="sd">&quot;&quot;&quot;Fits function to the data</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> function : obj</span> <span class="sd"> function : obj</span>
<span class="sd"> function to fit to the data. See fits.least_squares for details.</span> <span class="sd"> function to fit to the data. See fits.least_squares for details.</span>
<span class="sd"> fitrange : list</span> <span class="sd"> fitrange : list</span>
@ -644,8 +641,8 @@
<span class="k">def</span> <span class="nf">plateau</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">plateau_range</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s2">&quot;fit&quot;</span><span class="p">):</span> <span class="k">def</span> <span class="nf">plateau</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">plateau_range</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s2">&quot;fit&quot;</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Extract a plateu value from a Corr object</span> <span class="sd">&quot;&quot;&quot; Extract a plateu value from a Corr object</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> plateau_range : list</span> <span class="sd"> plateau_range : list</span>
<span class="sd"> list with two entries, indicating the first and the last timeslice</span> <span class="sd"> list with two entries, indicating the first and the last timeslice</span>
<span class="sd"> of the plateau region.</span> <span class="sd"> of the plateau region.</span>
@ -775,8 +772,8 @@
<span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="p">):</span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dumps the Corr into a pickel file</span> <span class="sd">&quot;&quot;&quot;Dumps the Corr into a pickel file</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> filename : str</span> <span class="sd"> filename : str</span>
<span class="sd"> Name of the file</span> <span class="sd"> Name of the file</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -1225,8 +1222,8 @@
<span class="k">def</span> <span class="nf">roll</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dt</span><span class="p">):</span> <span class="k">def</span> <span class="nf">roll</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dt</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Periodically shift the correlator by dt timeslices</span> <span class="sd">&quot;&quot;&quot;Periodically shift the correlator by dt timeslices</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> dt : int</span> <span class="sd"> dt : int</span>
<span class="sd"> number of timeslices</span> <span class="sd"> number of timeslices</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -1263,9 +1260,6 @@
<span class="sd"> weight : Obs</span> <span class="sd"> weight : Obs</span>
<span class="sd"> Reweighting factor. An Observable that has to be defined on a superset of the</span> <span class="sd"> Reweighting factor. An Observable that has to be defined on a superset of the</span>
<span class="sd"> configurations in obs[i].idl for all i.</span> <span class="sd"> configurations in obs[i].idl for all i.</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> all_configs : bool</span> <span class="sd"> all_configs : bool</span>
<span class="sd"> if True, the reweighted observables are normalized by the average of</span> <span class="sd"> if True, the reweighted observables are normalized by the average of</span>
<span class="sd"> the reweighting factor on all configurations in weight.idl and not</span> <span class="sd"> the reweighting factor on all configurations in weight.idl and not</span>
@ -1282,8 +1276,8 @@
<span class="k">def</span> <span class="nf">T_symmetry</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">partner</span><span class="p">,</span> <span class="n">parity</span><span class="o">=+</span><span class="mi">1</span><span class="p">):</span> <span class="k">def</span> <span class="nf">T_symmetry</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">partner</span><span class="p">,</span> <span class="n">parity</span><span class="o">=+</span><span class="mi">1</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Return the time symmetry average of the correlator and its partner</span> <span class="sd">&quot;&quot;&quot;Return the time symmetry average of the correlator and its partner</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> partner : Corr</span> <span class="sd"> partner : Corr</span>
<span class="sd"> Time symmetry partner of the Corr</span> <span class="sd"> Time symmetry partner of the Corr</span>
<span class="sd"> partity : int</span> <span class="sd"> partity : int</span>
@ -1308,8 +1302,8 @@
<span class="k">def</span> <span class="nf">deriv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">symmetric</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span> <span class="k">def</span> <span class="nf">deriv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">symmetric</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Return the first derivative of the correlator with respect to x0.</span> <span class="sd">&quot;&quot;&quot;Return the first derivative of the correlator with respect to x0.</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> symmetric : bool</span> <span class="sd"> symmetric : bool</span>
<span class="sd"> decides whether symmertic of simple finite differences are used. Default: True</span> <span class="sd"> decides whether symmertic of simple finite differences are used. Default: True</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -1413,8 +1407,8 @@
<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">function</span><span class="p">,</span> <span class="n">fitrange</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <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">function</span><span class="p">,</span> <span class="n">fitrange</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Fits function to the data</span> <span class="sd">&quot;&quot;&quot;Fits function to the data</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> function : obj</span> <span class="sd"> function : obj</span>
<span class="sd"> function to fit to the data. See fits.least_squares for details.</span> <span class="sd"> function to fit to the data. See fits.least_squares for details.</span>
<span class="sd"> fitrange : list</span> <span class="sd"> fitrange : list</span>
@ -1446,8 +1440,8 @@
<span class="k">def</span> <span class="nf">plateau</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">plateau_range</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s2">&quot;fit&quot;</span><span class="p">):</span> <span class="k">def</span> <span class="nf">plateau</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">plateau_range</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s2">&quot;fit&quot;</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Extract a plateu value from a Corr object</span> <span class="sd">&quot;&quot;&quot; Extract a plateu value from a Corr object</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> plateau_range : list</span> <span class="sd"> plateau_range : list</span>
<span class="sd"> list with two entries, indicating the first and the last timeslice</span> <span class="sd"> list with two entries, indicating the first and the last timeslice</span>
<span class="sd"> of the plateau region.</span> <span class="sd"> of the plateau region.</span>
@ -1577,8 +1571,8 @@
<span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="p">):</span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dumps the Corr into a pickel file</span> <span class="sd">&quot;&quot;&quot;Dumps the Corr into a pickel file</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> filename : str</span> <span class="sd"> filename : str</span>
<span class="sd"> Name of the file</span> <span class="sd"> Name of the file</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -2190,8 +2184,8 @@ timeslice and the error on each timeslice.</p>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">roll</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dt</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">roll</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">dt</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Periodically shift the correlator by dt timeslices</span> <span class="sd">&quot;&quot;&quot;Periodically shift the correlator by dt timeslices</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> dt : int</span> <span class="sd"> dt : int</span>
<span class="sd"> number of timeslices</span> <span class="sd"> number of timeslices</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -2202,10 +2196,12 @@ timeslice and the error on each timeslice.</p>
<div class="docstring"><p>Periodically shift the correlator by dt timeslices</p> <div class="docstring"><p>Periodically shift the correlator by dt timeslices</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>dt : int <ul>
number of timeslices</p> <li><strong>dt</strong> (int):
number of timeslices</li>
</ul>
</div> </div>
@ -2287,9 +2283,6 @@ timeslice and the error on each timeslice.</p>
<span class="sd"> weight : Obs</span> <span class="sd"> weight : Obs</span>
<span class="sd"> Reweighting factor. An Observable that has to be defined on a superset of the</span> <span class="sd"> Reweighting factor. An Observable that has to be defined on a superset of the</span>
<span class="sd"> configurations in obs[i].idl for all i.</span> <span class="sd"> configurations in obs[i].idl for all i.</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> all_configs : bool</span> <span class="sd"> all_configs : bool</span>
<span class="sd"> if True, the reweighted observables are normalized by the average of</span> <span class="sd"> if True, the reweighted observables are normalized by the average of</span>
<span class="sd"> the reweighting factor on all configurations in weight.idl and not</span> <span class="sd"> the reweighting factor on all configurations in weight.idl and not</span>
@ -2314,14 +2307,11 @@ timeslice and the error on each timeslice.</p>
<li><strong>weight</strong> (Obs): <li><strong>weight</strong> (Obs):
Reweighting factor. An Observable that has to be defined on a superset of the Reweighting factor. An Observable that has to be defined on a superset of the
configurations in obs[i].idl for all i.</li> configurations in obs[i].idl for all i.</li>
<li><strong>all_configs</strong> (bool):
if True, the reweighted observables are normalized by the average of
the reweighting factor on all configurations in weight.idl and not
on the configurations in obs[i].idl.</li>
</ul> </ul>
<h6 id="keyword-arguments">Keyword arguments</h6>
<p>all_configs : bool
if True, the reweighted observables are normalized by the average of
the reweighting factor on all configurations in weight.idl and not
on the configurations in obs[i].idl.</p>
</div> </div>
@ -2339,8 +2329,8 @@ configurations in obs[i].idl for all i.</li>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">T_symmetry</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">partner</span><span class="p">,</span> <span class="n">parity</span><span class="o">=+</span><span class="mi">1</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">T_symmetry</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">partner</span><span class="p">,</span> <span class="n">parity</span><span class="o">=+</span><span class="mi">1</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Return the time symmetry average of the correlator and its partner</span> <span class="sd">&quot;&quot;&quot;Return the time symmetry average of the correlator and its partner</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> partner : Corr</span> <span class="sd"> partner : Corr</span>
<span class="sd"> Time symmetry partner of the Corr</span> <span class="sd"> Time symmetry partner of the Corr</span>
<span class="sd"> partity : int</span> <span class="sd"> partity : int</span>
@ -2367,12 +2357,14 @@ configurations in obs[i].idl for all i.</li>
<div class="docstring"><p>Return the time symmetry average of the correlator and its partner</p> <div class="docstring"><p>Return the time symmetry average of the correlator and its partner</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>partner : Corr <ul>
Time symmetry partner of the Corr <li><strong>partner</strong> (Corr):
partity : int Time symmetry partner of the Corr</li>
Parity quantum number of the correlator, can be +1 or -1</p> <li><strong>partity</strong> (int):
Parity quantum number of the correlator, can be +1 or -1</li>
</ul>
</div> </div>
@ -2390,8 +2382,8 @@ partity : int
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">deriv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">symmetric</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">deriv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">symmetric</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Return the first derivative of the correlator with respect to x0.</span> <span class="sd">&quot;&quot;&quot;Return the first derivative of the correlator with respect to x0.</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> symmetric : bool</span> <span class="sd"> symmetric : bool</span>
<span class="sd"> decides whether symmertic of simple finite differences are used. Default: True</span> <span class="sd"> decides whether symmertic of simple finite differences are used. Default: True</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -2421,10 +2413,12 @@ partity : int
<div class="docstring"><p>Return the first derivative of the correlator with respect to x0.</p> <div class="docstring"><p>Return the first derivative of the correlator with respect to x0.</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>symmetric : bool <ul>
decides whether symmertic of simple finite differences are used. Default: True</p> <li><strong>symmetric</strong> (bool):
decides whether symmertic of simple finite differences are used. Default: True</li>
</ul>
</div> </div>
@ -2566,8 +2560,8 @@ guess for the root finder, only relevant for the root variant</li>
<div class="codehilite"><pre><span></span> <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">function</span><span class="p">,</span> <span class="n">fitrange</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <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">function</span><span class="p">,</span> <span class="n">fitrange</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Fits function to the data</span> <span class="sd">&quot;&quot;&quot;Fits function to the data</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> function : obj</span> <span class="sd"> function : obj</span>
<span class="sd"> function to fit to the data. See fits.least_squares for details.</span> <span class="sd"> function to fit to the data. See fits.least_squares for details.</span>
<span class="sd"> fitrange : list</span> <span class="sd"> fitrange : list</span>
@ -2601,15 +2595,17 @@ guess for the root finder, only relevant for the root variant</li>
<div class="docstring"><p>Fits function to the data</p> <div class="docstring"><p>Fits function to the data</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>function : obj <ul>
function to fit to the data. See fits.least_squares for details. <li><strong>function</strong> (obj):
fitrange : list function to fit to the data. See fits.least_squares for details.</li>
Range in which the function is to be fitted to the data. <li><strong>fitrange</strong> (list):
If not specified, self.prange or all timeslices are used. Range in which the function is to be fitted to the data.
silent : bool If not specified, self.prange or all timeslices are used.</li>
Decides whether output is printed to the standard output.</p> <li><strong>silent</strong> (bool):
Decides whether output is printed to the standard output.</li>
</ul>
</div> </div>
@ -2627,8 +2623,8 @@ silent : bool
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">plateau</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">plateau_range</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s2">&quot;fit&quot;</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">plateau</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">plateau_range</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s2">&quot;fit&quot;</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Extract a plateu value from a Corr object</span> <span class="sd">&quot;&quot;&quot; Extract a plateu value from a Corr object</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> plateau_range : list</span> <span class="sd"> plateau_range : list</span>
<span class="sd"> list with two entries, indicating the first and the last timeslice</span> <span class="sd"> list with two entries, indicating the first and the last timeslice</span>
<span class="sd"> of the plateau region.</span> <span class="sd"> of the plateau region.</span>
@ -2663,15 +2659,17 @@ silent : bool
<div class="docstring"><p>Extract a plateu value from a Corr object</p> <div class="docstring"><p>Extract a plateu value from a Corr object</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>plateau_range : list <ul>
list with two entries, indicating the first and the last timeslice <li><strong>plateau_range</strong> (list):
of the plateau region. list with two entries, indicating the first and the last timeslice
method : str of the plateau region.</li>
method to extract the plateau. <li><strong>method</strong> (str):
method to extract the plateau.
'fit' fits a constant to the plateau region 'fit' fits a constant to the plateau region
'avg', 'average' or 'mean' just average over the given timeslices.</p> 'avg', 'average' or 'mean' just average over the given timeslices.</li>
</ul>
</div> </div>
@ -2851,8 +2849,8 @@ path to file in which the figure should be saved</li>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dumps the Corr into a pickel file</span> <span class="sd">&quot;&quot;&quot;Dumps the Corr into a pickel file</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> filename : str</span> <span class="sd"> filename : str</span>
<span class="sd"> Name of the file</span> <span class="sd"> Name of the file</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -2864,10 +2862,12 @@ path to file in which the figure should be saved</li>
<div class="docstring"><p>Dumps the Corr into a pickel file</p> <div class="docstring"><p>Dumps the Corr into a pickel file</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>filename : str <ul>
Name of the file</p> <li><strong>filename</strong> (str):
Name of the file</li>
</ul>
</div> </div>

View file

@ -175,7 +175,7 @@
<span class="k">def</span> <span class="nf">least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">priors</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">priors</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x).</span> <span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x).</span>
<span class="sd"> Arguments:</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> x : list</span> <span class="sd"> x : list</span>
<span class="sd"> list of floats.</span> <span class="sd"> list of floats.</span>
@ -203,19 +203,20 @@
<span class="sd"> enough.</span> <span class="sd"> enough.</span>
<span class="sd"> silent : bool, optional</span> <span class="sd"> silent : bool, optional</span>
<span class="sd"> If true all output to the console is omitted (default False).</span> <span class="sd"> If true all output to the console is omitted (default False).</span>
<span class="sd"> initial_guess : list</span>
<span class="sd"> can provide an initial guess for the input parameters. Relevant for</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> initial_guess -- can provide an initial guess for the input parameters. Relevant for</span>
<span class="sd"> non-linear fits with many parameters.</span> <span class="sd"> non-linear fits with many parameters.</span>
<span class="sd"> method -- can be used to choose an alternative method for the minimization of chisquare.</span> <span class="sd"> method : str</span>
<span class="sd"> can be used to choose an alternative method for the minimization of chisquare.</span>
<span class="sd"> The possible methods are the ones which can be used for scipy.optimize.minimize and</span> <span class="sd"> The possible methods are the ones which can be used for scipy.optimize.minimize and</span>
<span class="sd"> migrad of iminuit. If no method is specified, Levenberg-Marquard is used.</span> <span class="sd"> migrad of iminuit. If no method is specified, Levenberg-Marquard is used.</span>
<span class="sd"> Reliable alternatives are migrad, Powell and Nelder-Mead.</span> <span class="sd"> Reliable alternatives are migrad, Powell and Nelder-Mead.</span>
<span class="sd"> resplot -- If true, a plot which displays fit, data and residuals is generated (default False).</span> <span class="sd"> resplot : bool</span>
<span class="sd"> qqplot -- If true, a quantile-quantile plot of the fit result is generated (default False).</span> <span class="sd"> If true, a plot which displays fit, data and residuals is generated (default False).</span>
<span class="sd"> expected_chisquare -- If true prints the expected chisquare which is</span> <span class="sd"> qqplot : bool</span>
<span class="sd"> If true, a quantile-quantile plot of the fit result is generated (default False).</span>
<span class="sd"> expected_chisquare : bool</span>
<span class="sd"> If true prints the expected chisquare which is</span>
<span class="sd"> corrected by effects caused by correlated input data.</span> <span class="sd"> corrected by effects caused by correlated input data.</span>
<span class="sd"> This can take a while as the full correlation matrix</span> <span class="sd"> This can take a while as the full correlation matrix</span>
<span class="sd"> has to be calculated (default False).</span> <span class="sd"> has to be calculated (default False).</span>
@ -370,6 +371,8 @@
<span class="k">def</span> <span class="nf">total_least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">total_least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x) and returns a list of Obs corresponding to the fit parameters.</span> <span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x) and returns a list of Obs corresponding to the fit parameters.</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> x : list</span> <span class="sd"> x : list</span>
<span class="sd"> list of Obs, or a tuple of lists of Obs</span> <span class="sd"> list of Obs, or a tuple of lists of Obs</span>
<span class="sd"> y : list</span> <span class="sd"> y : list</span>
@ -392,12 +395,11 @@
<span class="sd"> silent : bool, optional</span> <span class="sd"> silent : bool, optional</span>
<span class="sd"> If true all output to the console is omitted (default False).</span> <span class="sd"> If true all output to the console is omitted (default False).</span>
<span class="sd"> Based on the orthogonal distance regression module of scipy</span> <span class="sd"> Based on the orthogonal distance regression module of scipy</span>
<span class="sd"> initial_guess : list</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> can provide an initial guess for the input parameters. Relevant for non-linear</span>
<span class="sd"> -----------------</span>
<span class="sd"> initial_guess -- can provide an initial guess for the input parameters. Relevant for non-linear</span>
<span class="sd"> fits with many parameters.</span> <span class="sd"> fits with many parameters.</span>
<span class="sd"> expected_chisquare -- If true prints the expected chisquare which is</span> <span class="sd"> expected_chisquare : bool</span>
<span class="sd"> If true prints the expected chisquare which is</span>
<span class="sd"> corrected by effects caused by correlated input data.</span> <span class="sd"> corrected by effects caused by correlated input data.</span>
<span class="sd"> This can take a while as the full correlation matrix</span> <span class="sd"> This can take a while as the full correlation matrix</span>
<span class="sd"> has to be calculated (default False).</span> <span class="sd"> has to be calculated (default False).</span>
@ -1044,7 +1046,7 @@ also accesible via indices.</li>
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">priors</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">priors</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x).</span> <span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x).</span>
<span class="sd"> Arguments:</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> x : list</span> <span class="sd"> x : list</span>
<span class="sd"> list of floats.</span> <span class="sd"> list of floats.</span>
@ -1072,19 +1074,20 @@ also accesible via indices.</li>
<span class="sd"> enough.</span> <span class="sd"> enough.</span>
<span class="sd"> silent : bool, optional</span> <span class="sd"> silent : bool, optional</span>
<span class="sd"> If true all output to the console is omitted (default False).</span> <span class="sd"> If true all output to the console is omitted (default False).</span>
<span class="sd"> initial_guess : list</span>
<span class="sd"> can provide an initial guess for the input parameters. Relevant for</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> initial_guess -- can provide an initial guess for the input parameters. Relevant for</span>
<span class="sd"> non-linear fits with many parameters.</span> <span class="sd"> non-linear fits with many parameters.</span>
<span class="sd"> method -- can be used to choose an alternative method for the minimization of chisquare.</span> <span class="sd"> method : str</span>
<span class="sd"> can be used to choose an alternative method for the minimization of chisquare.</span>
<span class="sd"> The possible methods are the ones which can be used for scipy.optimize.minimize and</span> <span class="sd"> The possible methods are the ones which can be used for scipy.optimize.minimize and</span>
<span class="sd"> migrad of iminuit. If no method is specified, Levenberg-Marquard is used.</span> <span class="sd"> migrad of iminuit. If no method is specified, Levenberg-Marquard is used.</span>
<span class="sd"> Reliable alternatives are migrad, Powell and Nelder-Mead.</span> <span class="sd"> Reliable alternatives are migrad, Powell and Nelder-Mead.</span>
<span class="sd"> resplot -- If true, a plot which displays fit, data and residuals is generated (default False).</span> <span class="sd"> resplot : bool</span>
<span class="sd"> qqplot -- If true, a quantile-quantile plot of the fit result is generated (default False).</span> <span class="sd"> If true, a plot which displays fit, data and residuals is generated (default False).</span>
<span class="sd"> expected_chisquare -- If true prints the expected chisquare which is</span> <span class="sd"> qqplot : bool</span>
<span class="sd"> If true, a quantile-quantile plot of the fit result is generated (default False).</span>
<span class="sd"> expected_chisquare : bool</span>
<span class="sd"> If true prints the expected chisquare which is</span>
<span class="sd"> corrected by effects caused by correlated input data.</span> <span class="sd"> corrected by effects caused by correlated input data.</span>
<span class="sd"> This can take a while as the full correlation matrix</span> <span class="sd"> This can take a while as the full correlation matrix</span>
<span class="sd"> has to be calculated (default False).</span> <span class="sd"> has to be calculated (default False).</span>
@ -1099,51 +1102,53 @@ also accesible via indices.</li>
<div class="docstring"><p>Performs a non-linear fit to y = func(x).</p> <div class="docstring"><p>Performs a non-linear fit to y = func(x).</p>
<h2 id="arguments">Arguments:</h2> <h6 id="parameters">Parameters</h6>
<p>x : list <ul>
list of floats. <li><strong>x</strong> (list):
y : list list of floats.</li>
list of Obs. <li><strong>y</strong> (list):
func : object list of Obs.</li>
fit function, has to be of the form</p> <li><p><strong>func</strong> (object):
fit function, has to be of the form</p>
<pre><code>def func(a, x): <p>def func(a, x):
return a[0] + a[1] * x + a[2] * anp.sinh(x) return a[0] + a[1] * x + a[2] * anp.sinh(x)</p>
For multiple x values func can be of the form <p>For multiple x values func can be of the form</p>
def func(a, x): <p>def func(a, x):
(x1, x2) = x (x1, x2) = x
return a[0] * x1 ** 2 + a[1] * x2 return a[0] * x1 ** 2 + a[1] * x2</p>
It is important that all numpy functions refer to autograd.numpy, otherwise the differentiation <p>It is important that all numpy functions refer to autograd.numpy, otherwise the differentiation
will not work will not work</p></li>
</code></pre> <li><strong>priors</strong> (list, optional):
priors has to be a list with an entry for every parameter in the fit. The entries can either be
<p>priors : list, optional Obs (e.g. results from a previous fit) or strings containing a value and an error formatted like
priors has to be a list with an entry for every parameter in the fit. The entries can either be 0.548(23), 500(40) or 0.5(0.4)
Obs (e.g. results from a previous fit) or strings containing a value and an error formatted like It is important for the subsequent error estimation that the e_tag for the gamma method is large
0.548(23), 500(40) or 0.5(0.4) enough.</li>
It is important for the subsequent error estimation that the e_tag for the gamma method is large <li><strong>silent</strong> (bool, optional):
enough. If true all output to the console is omitted (default False).</li>
silent : bool, optional <li><strong>initial_guess</strong> (list):
If true all output to the console is omitted (default False).</p> can provide an initial guess for the input parameters. Relevant for
non-linear fits with many parameters.</li>
<h6 id="keyword-arguments">Keyword arguments</h6> <li><strong>method</strong> (str):
can be used to choose an alternative method for the minimization of chisquare.
<p>initial_guess -- can provide an initial guess for the input parameters. Relevant for The possible methods are the ones which can be used for scipy.optimize.minimize and
non-linear fits with many parameters. migrad of iminuit. If no method is specified, Levenberg-Marquard is used.
method -- can be used to choose an alternative method for the minimization of chisquare. Reliable alternatives are migrad, Powell and Nelder-Mead.</li>
The possible methods are the ones which can be used for scipy.optimize.minimize and <li><strong>resplot</strong> (bool):
migrad of iminuit. If no method is specified, Levenberg-Marquard is used. If true, a plot which displays fit, data and residuals is generated (default False).</li>
Reliable alternatives are migrad, Powell and Nelder-Mead. <li><strong>qqplot</strong> (bool):
resplot -- If true, a plot which displays fit, data and residuals is generated (default False). If true, a quantile-quantile plot of the fit result is generated (default False).</li>
qqplot -- If true, a quantile-quantile plot of the fit result is generated (default False). <li><strong>expected_chisquare</strong> (bool):
expected_chisquare -- If true prints the expected chisquare which is If true prints the expected chisquare which is
corrected by effects caused by correlated input data. corrected by effects caused by correlated input data.
This can take a while as the full correlation matrix This can take a while as the full correlation matrix
has to be calculated (default False).</p> has to be calculated (default False).</li>
</ul>
</div> </div>
@ -1201,6 +1206,8 @@ expected_chisquare -- If true prints the expected chisquare which is
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">total_least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">total_least_squares</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">func</span><span class="p">,</span> <span class="n">silent</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x) and returns a list of Obs corresponding to the fit parameters.</span> <span class="sd">&quot;&quot;&quot;Performs a non-linear fit to y = func(x) and returns a list of Obs corresponding to the fit parameters.</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> x : list</span> <span class="sd"> x : list</span>
<span class="sd"> list of Obs, or a tuple of lists of Obs</span> <span class="sd"> list of Obs, or a tuple of lists of Obs</span>
<span class="sd"> y : list</span> <span class="sd"> y : list</span>
@ -1223,12 +1230,11 @@ expected_chisquare -- If true prints the expected chisquare which is
<span class="sd"> silent : bool, optional</span> <span class="sd"> silent : bool, optional</span>
<span class="sd"> If true all output to the console is omitted (default False).</span> <span class="sd"> If true all output to the console is omitted (default False).</span>
<span class="sd"> Based on the orthogonal distance regression module of scipy</span> <span class="sd"> Based on the orthogonal distance regression module of scipy</span>
<span class="sd"> initial_guess : list</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> can provide an initial guess for the input parameters. Relevant for non-linear</span>
<span class="sd"> -----------------</span>
<span class="sd"> initial_guess -- can provide an initial guess for the input parameters. Relevant for non-linear</span>
<span class="sd"> fits with many parameters.</span> <span class="sd"> fits with many parameters.</span>
<span class="sd"> expected_chisquare -- If true prints the expected chisquare which is</span> <span class="sd"> expected_chisquare : bool</span>
<span class="sd"> If true prints the expected chisquare which is</span>
<span class="sd"> corrected by effects caused by correlated input data.</span> <span class="sd"> corrected by effects caused by correlated input data.</span>
<span class="sd"> This can take a while as the full correlation matrix</span> <span class="sd"> This can take a while as the full correlation matrix</span>
<span class="sd"> has to be calculated (default False).</span> <span class="sd"> has to be calculated (default False).</span>
@ -1366,39 +1372,40 @@ expected_chisquare -- If true prints the expected chisquare which is
<div class="docstring"><p>Performs a non-linear fit to y = func(x) and returns a list of Obs corresponding to the fit parameters.</p> <div class="docstring"><p>Performs a non-linear fit to y = func(x) and returns a list of Obs corresponding to the fit parameters.</p>
<p>x : list <h6 id="parameters">Parameters</h6>
list of Obs, or a tuple of lists of Obs
y : list
list of Obs. The dvalues of the Obs are used as x- and yerror for the fit.
func : object
func has to be of the form</p>
<pre><code>def func(a, x): <ul>
<li><strong>x</strong> (list):
list of Obs, or a tuple of lists of Obs</li>
<li><strong>y</strong> (list):
list of Obs. The dvalues of the Obs are used as x- and yerror for the fit.</li>
<li><p><strong>func</strong> (object):
func has to be of the form</p>
<p>def func(a, x):
y = a[0] + a[1] * x + a[2] * anp.sinh(x) y = a[0] + a[1] * x + a[2] * anp.sinh(x)
return y return y</p>
For multiple x values func can be of the form <p>For multiple x values func can be of the form</p>
def func(a, x): <p>def func(a, x):
(x1, x2) = x (x1, x2) = x
return a[0] * x1 ** 2 + a[1] * x2 return a[0] * x1 ** 2 + a[1] * x2</p>
It is important that all numpy functions refer to autograd.numpy, otherwise the differentiation <p>It is important that all numpy functions refer to autograd.numpy, otherwise the differentiation
will not work. will not work.</p></li>
</code></pre> <li><strong>silent</strong> (bool, optional):
If true all output to the console is omitted (default False).</li>
<p>silent : bool, optional <li><strong>Based on the orthogonal distance regression module of scipy</strong></li>
If true all output to the console is omitted (default False). <li><strong>initial_guess</strong> (list):
Based on the orthogonal distance regression module of scipy</p> can provide an initial guess for the input parameters. Relevant for non-linear
fits with many parameters.</li>
<h6 id="keyword-arguments">Keyword arguments</h6> <li><strong>expected_chisquare</strong> (bool):
If true prints the expected chisquare which is
<p>initial_guess -- can provide an initial guess for the input parameters. Relevant for non-linear corrected by effects caused by correlated input data.
fits with many parameters. This can take a while as the full correlation matrix
expected_chisquare -- If true prints the expected chisquare which is has to be calculated (default False).</li>
corrected by effects caused by correlated input data. </ul>
This can take a while as the full correlation matrix
has to be calculated (default False).</p>
</div> </div>

View file

@ -87,15 +87,16 @@
<span class="k">def</span> <span class="nf">read_rwms</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">version</span><span class="o">=</span><span class="s1">&#39;2.0&#39;</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">read_rwms</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">version</span><span class="o">=</span><span class="s1">&#39;2.0&#39;</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read rwms format from given folder structure. Returns a list of length nrw</span> <span class="sd">&quot;&quot;&quot;Read rwms format from given folder structure. Returns a list of length nrw</span>
<span class="sd"> Attributes</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> version -- version of openQCD, default 2.0</span> <span class="sd"> version : str</span>
<span class="sd"> version of openQCD, default 2.0</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> r_start : list</span>
<span class="sd"> -----------------</span> <span class="sd"> list which contains the first config to be read for each replicum</span>
<span class="sd"> r_start -- list which contains the first config to be read for each replicum</span> <span class="sd"> r_stop : list</span>
<span class="sd"> r_stop -- list which contains the last config to be read for each replicum</span> <span class="sd"> list which contains the last config to be read for each replicum</span>
<span class="sd"> postfix -- postfix of the file to read, e.g. &#39;.ms1&#39; for openQCD-files</span> <span class="sd"> postfix : str</span>
<span class="sd"> postfix of the file to read, e.g. &#39;.ms1&#39; for openQCD-files</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">known_oqcd_versions</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;1.4&#39;</span><span class="p">,</span> <span class="s1">&#39;1.6&#39;</span><span class="p">,</span> <span class="s1">&#39;2.0&#39;</span><span class="p">]</span> <span class="n">known_oqcd_versions</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;1.4&#39;</span><span class="p">,</span> <span class="s1">&#39;1.6&#39;</span><span class="p">,</span> <span class="s1">&#39;2.0&#39;</span><span class="p">]</span>
<span class="k">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">version</span> <span class="ow">in</span> <span class="n">known_oqcd_versions</span><span class="p">):</span> <span class="k">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">version</span> <span class="ow">in</span> <span class="n">known_oqcd_versions</span><span class="p">):</span>
@ -248,19 +249,25 @@
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- Path to .ms.dat files</span> <span class="sd"> path : str</span>
<span class="sd"> prefix -- Ensemble prefix</span> <span class="sd"> Path to .ms.dat files</span>
<span class="sd"> dtr_read -- Determines how many trajectories should be skipped when reading the ms.dat files.</span> <span class="sd"> prefix : str</span>
<span class="sd"> Ensemble prefix</span>
<span class="sd"> dtr_read : int</span>
<span class="sd"> Determines how many trajectories should be skipped when reading the ms.dat files.</span>
<span class="sd"> Corresponds to dtr_cnfg / dtr_ms in the openQCD input file.</span> <span class="sd"> Corresponds to dtr_cnfg / dtr_ms in the openQCD input file.</span>
<span class="sd"> xmin -- First timeslice where the boundary effects have sufficiently decayed.</span> <span class="sd"> xmin : int</span>
<span class="sd"> spatial_extent -- spatial extent of the lattice, required for normalization.</span> <span class="sd"> First timeslice where the boundary effects have sufficiently decayed.</span>
<span class="sd"> fit_range -- Number of data points left and right of the zero crossing to be included in the linear fit. (Default: 5)</span> <span class="sd"> spatial_extent : int</span>
<span class="sd"> spatial extent of the lattice, required for normalization.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> fit_range : int</span>
<span class="sd"> -----------------</span> <span class="sd"> Number of data points left and right of the zero crossing to be included in the linear fit. (Default: 5)</span>
<span class="sd"> r_start -- list which contains the first config to be read for each replicum.</span> <span class="sd"> r_start : list</span>
<span class="sd"> r_stop -- list which contains the last config to be read for each replicum.</span> <span class="sd"> list which contains the first config to be read for each replicum.</span>
<span class="sd"> plaquette -- If true extract the plaquette estimate of t0 instead.</span> <span class="sd"> r_stop: list</span>
<span class="sd"> list which contains the last config to be read for each replicum.</span>
<span class="sd"> plaquette : bool</span>
<span class="sd"> If true extract the plaquette estimate of t0 instead.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">ls</span> <span class="o">=</span> <span class="p">[]</span> <span class="n">ls</span> <span class="o">=</span> <span class="p">[]</span>
@ -428,15 +435,16 @@
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_rwms</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">version</span><span class="o">=</span><span class="s1">&#39;2.0&#39;</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_rwms</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">version</span><span class="o">=</span><span class="s1">&#39;2.0&#39;</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read rwms format from given folder structure. Returns a list of length nrw</span> <span class="sd">&quot;&quot;&quot;Read rwms format from given folder structure. Returns a list of length nrw</span>
<span class="sd"> Attributes</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> version -- version of openQCD, default 2.0</span> <span class="sd"> version : str</span>
<span class="sd"> version of openQCD, default 2.0</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> r_start : list</span>
<span class="sd"> -----------------</span> <span class="sd"> list which contains the first config to be read for each replicum</span>
<span class="sd"> r_start -- list which contains the first config to be read for each replicum</span> <span class="sd"> r_stop : list</span>
<span class="sd"> r_stop -- list which contains the last config to be read for each replicum</span> <span class="sd"> list which contains the last config to be read for each replicum</span>
<span class="sd"> postfix -- postfix of the file to read, e.g. &#39;.ms1&#39; for openQCD-files</span> <span class="sd"> postfix : str</span>
<span class="sd"> postfix of the file to read, e.g. &#39;.ms1&#39; for openQCD-files</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">known_oqcd_versions</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;1.4&#39;</span><span class="p">,</span> <span class="s1">&#39;1.6&#39;</span><span class="p">,</span> <span class="s1">&#39;2.0&#39;</span><span class="p">]</span> <span class="n">known_oqcd_versions</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;1.4&#39;</span><span class="p">,</span> <span class="s1">&#39;1.6&#39;</span><span class="p">,</span> <span class="s1">&#39;2.0&#39;</span><span class="p">]</span>
<span class="k">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">version</span> <span class="ow">in</span> <span class="n">known_oqcd_versions</span><span class="p">):</span> <span class="k">if</span> <span class="ow">not</span> <span class="p">(</span><span class="n">version</span> <span class="ow">in</span> <span class="n">known_oqcd_versions</span><span class="p">):</span>
@ -583,17 +591,18 @@
<div class="docstring"><p>Read rwms format from given folder structure. Returns a list of length nrw</p> <div class="docstring"><p>Read rwms format from given folder structure. Returns a list of length nrw</p>
<h6 id="attributes">Attributes</h6> <h6 id="parameters">Parameters</h6>
<ul> <ul>
<li><strong>version -- version of openQCD, default 2.0</strong></li> <li><strong>version</strong> (str):
version of openQCD, default 2.0</li>
<li><strong>r_start</strong> (list):
list which contains the first config to be read for each replicum</li>
<li><strong>r_stop</strong> (list):
list which contains the last config to be read for each replicum</li>
<li><strong>postfix</strong> (str):
postfix of the file to read, e.g. '.ms1' for openQCD-files</li>
</ul> </ul>
<h6 id="keyword-arguments">Keyword arguments</h6>
<p>r_start -- list which contains the first config to be read for each replicum
r_stop -- list which contains the last config to be read for each replicum
postfix -- postfix of the file to read, e.g. '.ms1' for openQCD-files</p>
</div> </div>
@ -618,19 +627,25 @@ postfix -- postfix of the file to read, e.g. '.ms1' for openQCD-files</p>
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- Path to .ms.dat files</span> <span class="sd"> path : str</span>
<span class="sd"> prefix -- Ensemble prefix</span> <span class="sd"> Path to .ms.dat files</span>
<span class="sd"> dtr_read -- Determines how many trajectories should be skipped when reading the ms.dat files.</span> <span class="sd"> prefix : str</span>
<span class="sd"> Ensemble prefix</span>
<span class="sd"> dtr_read : int</span>
<span class="sd"> Determines how many trajectories should be skipped when reading the ms.dat files.</span>
<span class="sd"> Corresponds to dtr_cnfg / dtr_ms in the openQCD input file.</span> <span class="sd"> Corresponds to dtr_cnfg / dtr_ms in the openQCD input file.</span>
<span class="sd"> xmin -- First timeslice where the boundary effects have sufficiently decayed.</span> <span class="sd"> xmin : int</span>
<span class="sd"> spatial_extent -- spatial extent of the lattice, required for normalization.</span> <span class="sd"> First timeslice where the boundary effects have sufficiently decayed.</span>
<span class="sd"> fit_range -- Number of data points left and right of the zero crossing to be included in the linear fit. (Default: 5)</span> <span class="sd"> spatial_extent : int</span>
<span class="sd"> spatial extent of the lattice, required for normalization.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> fit_range : int</span>
<span class="sd"> -----------------</span> <span class="sd"> Number of data points left and right of the zero crossing to be included in the linear fit. (Default: 5)</span>
<span class="sd"> r_start -- list which contains the first config to be read for each replicum.</span> <span class="sd"> r_start : list</span>
<span class="sd"> r_stop -- list which contains the last config to be read for each replicum.</span> <span class="sd"> list which contains the first config to be read for each replicum.</span>
<span class="sd"> plaquette -- If true extract the plaquette estimate of t0 instead.</span> <span class="sd"> r_stop: list</span>
<span class="sd"> list which contains the last config to be read for each replicum.</span>
<span class="sd"> plaquette : bool</span>
<span class="sd"> If true extract the plaquette estimate of t0 instead.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">ls</span> <span class="o">=</span> <span class="p">[]</span> <span class="n">ls</span> <span class="o">=</span> <span class="p">[]</span>
@ -745,19 +760,26 @@ Only works with openQCD v 1.2.</p>
<h6 id="parameters">Parameters</h6> <h6 id="parameters">Parameters</h6>
<ul> <ul>
<li><strong>path -- Path to .ms.dat files</strong></li> <li><strong>path</strong> (str):
<li><strong>prefix -- Ensemble prefix</strong></li> Path to .ms.dat files</li>
<li><strong>dtr_read -- Determines how many trajectories should be skipped when reading the ms.dat files.</strong>: Corresponds to dtr_cnfg / dtr_ms in the openQCD input file.</li> <li><strong>prefix</strong> (str):
<li><strong>xmin -- First timeslice where the boundary effects have sufficiently decayed.</strong></li> Ensemble prefix</li>
<li><strong>spatial_extent -- spatial extent of the lattice, required for normalization.</strong></li> <li><strong>dtr_read</strong> (int):
<li><strong>fit_range -- Number of data points left and right of the zero crossing to be included in the linear fit. (Default</strong> (5)):</li> Determines how many trajectories should be skipped when reading the ms.dat files.
Corresponds to dtr_cnfg / dtr_ms in the openQCD input file.</li>
<li><strong>xmin</strong> (int):
First timeslice where the boundary effects have sufficiently decayed.</li>
<li><strong>spatial_extent</strong> (int):
spatial extent of the lattice, required for normalization.</li>
<li><strong>fit_range</strong> (int):
Number of data points left and right of the zero crossing to be included in the linear fit. (Default: 5)</li>
<li><strong>r_start</strong> (list):
list which contains the first config to be read for each replicum.</li>
<li><strong>r_stop</strong> (list):
list which contains the last config to be read for each replicum.</li>
<li><strong>plaquette</strong> (bool):
If true extract the plaquette estimate of t0 instead.</li>
</ul> </ul>
<h6 id="keyword-arguments">Keyword arguments</h6>
<p>r_start -- list which contains the first config to be read for each replicum.
r_stop -- list which contains the last config to be read for each replicum.
plaquette -- If true extract the plaquette estimate of t0 instead.</p>
</div> </div>

View file

@ -88,8 +88,8 @@
<span class="k">def</span> <span class="nf">read_sfcf</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">read_sfcf</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read sfcf C format from given folder structure.</span> <span class="sd">&quot;&quot;&quot;Read sfcf C format from given folder structure.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span> <span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span>
<span class="sd"> single -- if True, read a boundary-to-boundary correlation function with a single value</span> <span class="sd"> single -- if True, read a boundary-to-boundary correlation function with a single value</span>
<span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span> <span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span>
@ -190,15 +190,12 @@
<span class="k">def</span> <span class="nf">read_sfcf_c</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">quarks</span><span class="o">=</span><span class="s1">&#39;.*&#39;</span><span class="p">,</span> <span class="n">noffset</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf2</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">read_sfcf_c</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">quarks</span><span class="o">=</span><span class="s1">&#39;.*&#39;</span><span class="p">,</span> <span class="n">noffset</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf2</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read sfcf c format from given folder structure.</span> <span class="sd">&quot;&quot;&quot;Read sfcf c format from given folder structure.</span>
<span class="sd"> Arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> quarks -- Label of the quarks used in the sfcf input file</span> <span class="sd"> quarks -- Label of the quarks used in the sfcf input file</span>
<span class="sd"> noffset -- Offset of the source (only relevant when wavefunctions are used)</span> <span class="sd"> noffset -- Offset of the source (only relevant when wavefunctions are used)</span>
<span class="sd"> wf -- ID of wave function</span> <span class="sd"> wf -- ID of wave function</span>
<span class="sd"> wf2 -- ID of the second wavefunction (only relevant for boundary-to-boundary correlation functions)</span> <span class="sd"> wf2 -- ID of the second wavefunction (only relevant for boundary-to-boundary correlation functions)</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span> <span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span>
<span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span> <span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span>
<span class="sd"> names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</span> <span class="sd"> names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</span>
@ -313,8 +310,8 @@
<span class="k">def</span> <span class="nf">read_qtop</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">read_qtop</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read qtop format from given folder structure.</span> <span class="sd">&quot;&quot;&quot;Read qtop format from given folder structure.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> target -- specifies the topological sector to be reweighted to (default 0)</span> <span class="sd"> target -- specifies the topological sector to be reweighted to (default 0)</span>
<span class="sd"> full -- if true read the charge instead of the reweighting factor.</span> <span class="sd"> full -- if true read the charge instead of the reweighting factor.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -390,8 +387,8 @@
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_sfcf</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_sfcf</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read sfcf C format from given folder structure.</span> <span class="sd">&quot;&quot;&quot;Read sfcf C format from given folder structure.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span> <span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span>
<span class="sd"> single -- if True, read a boundary-to-boundary correlation function with a single value</span> <span class="sd"> single -- if True, read a boundary-to-boundary correlation function with a single value</span>
<span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span> <span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span>
@ -493,12 +490,14 @@
<div class="docstring"><p>Read sfcf C format from given folder structure.</p> <div class="docstring"><p>Read sfcf C format from given folder structure.</p>
<h6 id="keyword-arguments">Keyword arguments</h6> <h6 id="parameters">Parameters</h6>
<p>im -- if True, read imaginary instead of real part of the correlation function. <ul>
single -- if True, read a boundary-to-boundary correlation function with a single value <li><strong>im -- if True, read imaginary instead of real part of the correlation function.</strong></li>
b2b -- if True, read a time-dependent boundary-to-boundary correlation function <li><strong>single -- if True, read a boundary-to-boundary correlation function with a single value</strong></li>
names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</p> <li><strong>b2b -- if True, read a time-dependent boundary-to-boundary correlation function</strong></li>
<li><strong>names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</strong></li>
</ul>
</div> </div>
@ -516,15 +515,12 @@ names -- Alternative labeling for replicas/ensembles. Has to have the appropriat
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_sfcf_c</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">quarks</span><span class="o">=</span><span class="s1">&#39;.*&#39;</span><span class="p">,</span> <span class="n">noffset</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf2</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_sfcf_c</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">quarks</span><span class="o">=</span><span class="s1">&#39;.*&#39;</span><span class="p">,</span> <span class="n">noffset</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">wf2</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read sfcf c format from given folder structure.</span> <span class="sd">&quot;&quot;&quot;Read sfcf c format from given folder structure.</span>
<span class="sd"> Arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> quarks -- Label of the quarks used in the sfcf input file</span> <span class="sd"> quarks -- Label of the quarks used in the sfcf input file</span>
<span class="sd"> noffset -- Offset of the source (only relevant when wavefunctions are used)</span> <span class="sd"> noffset -- Offset of the source (only relevant when wavefunctions are used)</span>
<span class="sd"> wf -- ID of wave function</span> <span class="sd"> wf -- ID of wave function</span>
<span class="sd"> wf2 -- ID of the second wavefunction (only relevant for boundary-to-boundary correlation functions)</span> <span class="sd"> wf2 -- ID of the second wavefunction (only relevant for boundary-to-boundary correlation functions)</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span> <span class="sd"> im -- if True, read imaginary instead of real part of the correlation function.</span>
<span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span> <span class="sd"> b2b -- if True, read a time-dependent boundary-to-boundary correlation function</span>
<span class="sd"> names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</span> <span class="sd"> names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</span>
@ -640,20 +636,19 @@ names -- Alternative labeling for replicas/ensembles. Has to have the appropriat
<div class="docstring"><p>Read sfcf c format from given folder structure.</p> <div class="docstring"><p>Read sfcf c format from given folder structure.</p>
<h6 id="arguments">Arguments</h6> <h6 id="parameters">Parameters</h6>
<p>quarks -- Label of the quarks used in the sfcf input file <ul>
noffset -- Offset of the source (only relevant when wavefunctions are used) <li><strong>quarks -- Label of the quarks used in the sfcf input file</strong></li>
wf -- ID of wave function <li><strong>noffset -- Offset of the source (only relevant when wavefunctions are used)</strong></li>
wf2 -- ID of the second wavefunction (only relevant for boundary-to-boundary correlation functions)</p> <li><strong>wf -- ID of wave function</strong></li>
<li><strong>wf2 -- ID of the second wavefunction (only relevant for boundary-to-boundary correlation functions)</strong></li>
<h6 id="keyword-arguments">Keyword arguments</h6> <li><strong>im -- if True, read imaginary instead of real part of the correlation function.</strong></li>
<li><strong>b2b -- if True, read a time-dependent boundary-to-boundary correlation function</strong></li>
<p>im -- if True, read imaginary instead of real part of the correlation function. <li><strong>names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length</strong></li>
b2b -- if True, read a time-dependent boundary-to-boundary correlation function <li><strong>ens_name</strong> (str):
names -- Alternative labeling for replicas/ensembles. Has to have the appropriate length replaces the name of the ensemble</li>
ens_name : str </ul>
replaces the name of the ensemble</p>
</div> </div>
@ -671,8 +666,8 @@ ens_name : str
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_qtop</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">read_qtop</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">prefix</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Read qtop format from given folder structure.</span> <span class="sd">&quot;&quot;&quot;Read qtop format from given folder structure.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> target -- specifies the topological sector to be reweighted to (default 0)</span> <span class="sd"> target -- specifies the topological sector to be reweighted to (default 0)</span>
<span class="sd"> full -- if true read the charge instead of the reweighting factor.</span> <span class="sd"> full -- if true read the charge instead of the reweighting factor.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -736,10 +731,12 @@ ens_name : str
<div class="docstring"><p>Read qtop format from given folder structure.</p> <div class="docstring"><p>Read qtop format from given folder structure.</p>
<h6 id="keyword-arguments">Keyword arguments</h6> <h6 id="parameters">Parameters</h6>
<p>target -- specifies the topological sector to be reweighted to (default 0) <ul>
full -- if true read the charge instead of the reweighting factor.</p> <li><strong>target -- specifies the topological sector to be reweighted to (default 0)</strong></li>
<li><strong>full -- if true read the charge instead of the reweighting factor.</strong></li>
</ul>
</div> </div>

View file

@ -121,9 +121,6 @@
<span class="sd"> automatic differentiation to work, all numpy functions have to have</span> <span class="sd"> automatic differentiation to work, all numpy functions have to have</span>
<span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span> <span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span>
<span class="sd"> data -- list of Obs, e.g. [obs1, obs2, obs3].</span> <span class="sd"> data -- list of Obs, e.g. [obs1, obs2, obs3].</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> man_grad -- manually supply a list or an array which contains the jacobian</span> <span class="sd"> man_grad -- manually supply a list or an array which contains the jacobian</span>
<span class="sd"> of func. Use cautiously, supplying the wrong derivative will</span> <span class="sd"> of func. Use cautiously, supplying the wrong derivative will</span>
<span class="sd"> not be intercepted.</span> <span class="sd"> not be intercepted.</span>
@ -667,9 +664,6 @@
<span class="sd"> automatic differentiation to work, all numpy functions have to have</span> <span class="sd"> automatic differentiation to work, all numpy functions have to have</span>
<span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span> <span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span>
<span class="sd"> data -- list of Obs, e.g. [obs1, obs2, obs3].</span> <span class="sd"> data -- list of Obs, e.g. [obs1, obs2, obs3].</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> man_grad -- manually supply a list or an array which contains the jacobian</span> <span class="sd"> man_grad -- manually supply a list or an array which contains the jacobian</span>
<span class="sd"> of func. Use cautiously, supplying the wrong derivative will</span> <span class="sd"> of func. Use cautiously, supplying the wrong derivative will</span>
<span class="sd"> not be intercepted.</span> <span class="sd"> not be intercepted.</span>
@ -769,13 +763,9 @@ using automatic differentiation.</p>
<li><strong>func -- arbitrary function of the form func(data, **kwargs). For the</strong>: automatic differentiation to work, all numpy functions have to have <li><strong>func -- arbitrary function of the form func(data, **kwargs). For the</strong>: automatic differentiation to work, all numpy functions have to have
the autograd wrapper (use 'import autograd.numpy as anp').</li> the autograd wrapper (use 'import autograd.numpy as anp').</li>
<li><strong>data -- list of Obs, e.g. [obs1, obs2, obs3].</strong></li> <li><strong>data -- list of Obs, e.g. [obs1, obs2, obs3].</strong></li>
<li><strong>man_grad -- manually supply a list or an array which contains the jacobian</strong>: of func. Use cautiously, supplying the wrong derivative will
not be intercepted.</li>
</ul> </ul>
<h6 id="keyword-arguments">Keyword arguments</h6>
<p>man_grad -- manually supply a list or an array which contains the jacobian
of func. Use cautiously, supplying the wrong derivative will
not be intercepted.</p>
</div> </div>

View file

@ -79,8 +79,8 @@
<span class="k">def</span> <span class="nf">gen_correlated_data</span><span class="p">(</span><span class="n">means</span><span class="p">,</span> <span class="n">cov</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">tau</span><span class="o">=</span><span class="mf">0.5</span><span class="p">,</span> <span class="n">samples</span><span class="o">=</span><span class="mi">1000</span><span class="p">):</span> <span class="k">def</span> <span class="nf">gen_correlated_data</span><span class="p">(</span><span class="n">means</span><span class="p">,</span> <span class="n">cov</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">tau</span><span class="o">=</span><span class="mf">0.5</span><span class="p">,</span> <span class="n">samples</span><span class="o">=</span><span class="mi">1000</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Generate observables with given covariance and autocorrelation times.</span> <span class="sd">&quot;&quot;&quot; Generate observables with given covariance and autocorrelation times.</span>
<span class="sd"> Arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> means -- list containing the mean value of each observable.</span> <span class="sd"> means -- list containing the mean value of each observable.</span>
<span class="sd"> cov -- covariance matrix for the data to be geneated.</span> <span class="sd"> cov -- covariance matrix for the data to be geneated.</span>
<span class="sd"> name -- ensemble name for the data to be geneated.</span> <span class="sd"> name -- ensemble name for the data to be geneated.</span>
@ -124,8 +124,8 @@
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">gen_correlated_data</span><span class="p">(</span><span class="n">means</span><span class="p">,</span> <span class="n">cov</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">tau</span><span class="o">=</span><span class="mf">0.5</span><span class="p">,</span> <span class="n">samples</span><span class="o">=</span><span class="mi">1000</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">gen_correlated_data</span><span class="p">(</span><span class="n">means</span><span class="p">,</span> <span class="n">cov</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">tau</span><span class="o">=</span><span class="mf">0.5</span><span class="p">,</span> <span class="n">samples</span><span class="o">=</span><span class="mi">1000</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Generate observables with given covariance and autocorrelation times.</span> <span class="sd">&quot;&quot;&quot; Generate observables with given covariance and autocorrelation times.</span>
<span class="sd"> Arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> means -- list containing the mean value of each observable.</span> <span class="sd"> means -- list containing the mean value of each observable.</span>
<span class="sd"> cov -- covariance matrix for the data to be geneated.</span> <span class="sd"> cov -- covariance matrix for the data to be geneated.</span>
<span class="sd"> name -- ensemble name for the data to be geneated.</span> <span class="sd"> name -- ensemble name for the data to be geneated.</span>
@ -157,14 +157,15 @@
<div class="docstring"><p>Generate observables with given covariance and autocorrelation times.</p> <div class="docstring"><p>Generate observables with given covariance and autocorrelation times.</p>
<h6 id="arguments">Arguments</h6> <h6 id="parameters">Parameters</h6>
<p>means -- list containing the mean value of each observable. <ul>
cov -- covariance matrix for the data to be geneated. <li><strong>means -- list containing the mean value of each observable.</strong></li>
name -- ensemble name for the data to be geneated. <li><strong>cov -- covariance matrix for the data to be geneated.</strong></li>
tau -- can either be a real number or a list with an entry for <li><strong>name -- ensemble name for the data to be geneated.</strong></li>
every dataset. <li><strong>tau -- can either be a real number or a list with an entry for</strong>: every dataset.</li>
samples -- number of samples to be generated for each observable.</p> <li><strong>samples -- number of samples to be generated for each observable.</strong></li>
</ul>
</div> </div>

View file

@ -159,9 +159,12 @@
<span class="k">def</span> <span class="nf">Zq</span><span class="p">(</span><span class="n">inv_prop</span><span class="p">,</span> <span class="n">fermion</span><span class="o">=</span><span class="s1">&#39;Wilson&#39;</span><span class="p">):</span> <span class="k">def</span> <span class="nf">Zq</span><span class="p">(</span><span class="n">inv_prop</span><span class="p">,</span> <span class="n">fermion</span><span class="o">=</span><span class="s1">&#39;Wilson&#39;</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Calculates the quark field renormalization constant Zq</span> <span class="sd">&quot;&quot;&quot; Calculates the quark field renormalization constant Zq</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> inv_prop -- Inverted 12x12 quark propagator</span> <span class="sd"> ----------</span>
<span class="sd"> fermion -- Fermion type for which the tree-level propagator is used</span> <span class="sd"> inv_prop : array</span>
<span class="sd"> Inverted 12x12 quark propagator</span>
<span class="sd"> fermion : str</span>
<span class="sd"> Fermion type for which the tree-level propagator is used</span>
<span class="sd"> in the calculation of Zq. Default Wilson.</span> <span class="sd"> in the calculation of Zq. Default Wilson.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">_check_geometry</span><span class="p">()</span> <span class="n">_check_geometry</span><span class="p">()</span>
@ -520,9 +523,12 @@ momenta. Works only for 12x12 matrices.</p>
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">Zq</span><span class="p">(</span><span class="n">inv_prop</span><span class="p">,</span> <span class="n">fermion</span><span class="o">=</span><span class="s1">&#39;Wilson&#39;</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">Zq</span><span class="p">(</span><span class="n">inv_prop</span><span class="p">,</span> <span class="n">fermion</span><span class="o">=</span><span class="s1">&#39;Wilson&#39;</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Calculates the quark field renormalization constant Zq</span> <span class="sd">&quot;&quot;&quot; Calculates the quark field renormalization constant Zq</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> inv_prop -- Inverted 12x12 quark propagator</span> <span class="sd"> ----------</span>
<span class="sd"> fermion -- Fermion type for which the tree-level propagator is used</span> <span class="sd"> inv_prop : array</span>
<span class="sd"> Inverted 12x12 quark propagator</span>
<span class="sd"> fermion : str</span>
<span class="sd"> Fermion type for which the tree-level propagator is used</span>
<span class="sd"> in the calculation of Zq. Default Wilson.</span> <span class="sd"> in the calculation of Zq. Default Wilson.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">_check_geometry</span><span class="p">()</span> <span class="n">_check_geometry</span><span class="p">()</span>
@ -556,10 +562,15 @@ momenta. Works only for 12x12 matrices.</p>
<div class="docstring"><p>Calculates the quark field renormalization constant Zq</p> <div class="docstring"><p>Calculates the quark field renormalization constant Zq</p>
<p>Attributes: <h6 id="parameters">Parameters</h6>
inv_prop -- Inverted 12x12 quark propagator
fermion -- Fermion type for which the tree-level propagator is used <ul>
in the calculation of Zq. Default Wilson.</p> <li><strong>inv_prop</strong> (array):
Inverted 12x12 quark propagator</li>
<li><strong>fermion</strong> (str):
Fermion type for which the tree-level propagator is used
in the calculation of Zq. Default Wilson.</li>
</ul>
</div> </div>

View file

@ -113,15 +113,15 @@
<li> <li>
<a class="variable" href="#Obs.e_content">e_content</a> <a class="variable" href="#Obs.e_content">e_content</a>
</li> </li>
<li>
<a class="function" href="#Obs.gamma_method">gamma_method</a>
</li>
<li> <li>
<a class="function" href="#Obs.expand_deltas">expand_deltas</a> <a class="function" href="#Obs.expand_deltas">expand_deltas</a>
</li> </li>
<li> <li>
<a class="function" href="#Obs.calc_gamma">calc_gamma</a> <a class="function" href="#Obs.calc_gamma">calc_gamma</a>
</li> </li>
<li>
<a class="function" href="#Obs.gamma_method">gamma_method</a>
</li>
<li> <li>
<a class="function" href="#Obs.print">print</a> <a class="function" href="#Obs.print">print</a>
</li> </li>
@ -382,7 +382,7 @@
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">samples</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">idl</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">means</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">samples</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">idl</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">means</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Initialize Obs object.</span> <span class="sd">&quot;&quot;&quot; Initialize Obs object.</span>
<span class="sd"> Attributes</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> samples : list</span> <span class="sd"> samples : list</span>
<span class="sd"> list of numpy arrays containing the Monte Carlo samples</span> <span class="sd"> list of numpy arrays containing the Monte Carlo samples</span>
@ -479,57 +479,11 @@
<span class="n">res</span><span class="p">[</span><span class="n">e_name</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">e_name</span><span class="p">)</span> <span class="n">res</span><span class="p">[</span><span class="n">e_name</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">e_name</span><span class="p">)</span>
<span class="k">return</span> <span class="n">res</span> <span class="k">return</span> <span class="n">res</span>
<span class="k">def</span> <span class="nf">expand_deltas</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.</span>
<span class="sd"> If idx is of type range, the deltas are not changed</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">range</span><span class="p">:</span>
<span class="k">return</span> <span class="n">deltas</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">ret</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">idx</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">shape</span><span class="p">):</span>
<span class="n">ret</span><span class="p">[</span><span class="n">idx</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="n">deltas</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="k">return</span> <span class="n">ret</span>
<span class="k">def</span> <span class="nf">calc_gamma</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">,</span> <span class="n">fft</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate Gamma_{AA} from the deltas, which are defined on idx.</span>
<span class="sd"> idx is assumed to be a contiguous range (possibly with a stepsize != 1)</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> w_max -- Upper bound for the summation window</span>
<span class="sd"> fft -- boolean, which determines whether the fft algorithm is used for</span>
<span class="sd"> the computation of the autocorrelation function</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">gamma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">w_max</span><span class="p">)</span>
<span class="n">deltas</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_deltas</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">)</span>
<span class="n">new_shape</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span>
<span class="k">if</span> <span class="n">fft</span><span class="p">:</span>
<span class="n">max_gamma</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">new_shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">)</span>
<span class="c1"># The padding for the fft has to be even</span>
<span class="n">padding</span> <span class="o">=</span> <span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span> <span class="o">+</span> <span class="p">(</span><span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span><span class="p">)</span> <span class="o">%</span> <span class="mi">2</span>
<span class="n">gamma</span><span class="p">[:</span><span class="n">max_gamma</span><span class="p">]</span> <span class="o">+=</span> <span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">irfft</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">rfft</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">padding</span><span class="p">))</span> <span class="o">**</span> <span class="mi">2</span><span class="p">)[:</span><span class="n">max_gamma</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">w_max</span><span class="p">):</span>
<span class="k">if</span> <span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">gamma</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">+=</span> <span class="n">deltas</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span><span class="p">]</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">deltas</span><span class="p">[</span><span class="n">n</span><span class="p">:</span><span class="n">new_shape</span><span class="p">])</span>
<span class="k">return</span> <span class="n">gamma</span>
<span class="k">def</span> <span class="nf">gamma_method</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">gamma_method</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate the error and related properties of the Obs.</span> <span class="sd">&quot;&quot;&quot;Calculate the error and related properties of the Obs.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> S : float</span> <span class="sd"> S : float</span>
<span class="sd"> specifies a custom value for the parameter S (default 2.0), can be</span> <span class="sd"> specifies a custom value for the parameter S (default 2.0), can be</span>
<span class="sd"> a float or an array of floats for different ensembles</span> <span class="sd"> a float or an array of floats for different ensembles</span>
@ -707,6 +661,52 @@
<span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span><span class="p">)</span> <span class="o">/</span> <span class="bp">self</span><span class="o">.</span><span class="n">dvalue</span> <span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span><span class="p">)</span> <span class="o">/</span> <span class="bp">self</span><span class="o">.</span><span class="n">dvalue</span>
<span class="k">return</span> <span class="k">return</span>
<span class="k">def</span> <span class="nf">expand_deltas</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.</span>
<span class="sd"> If idx is of type range, the deltas are not changed</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">range</span><span class="p">:</span>
<span class="k">return</span> <span class="n">deltas</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">ret</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">idx</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">shape</span><span class="p">):</span>
<span class="n">ret</span><span class="p">[</span><span class="n">idx</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="n">deltas</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="k">return</span> <span class="n">ret</span>
<span class="k">def</span> <span class="nf">calc_gamma</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">,</span> <span class="n">fft</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate Gamma_{AA} from the deltas, which are defined on idx.</span>
<span class="sd"> idx is assumed to be a contiguous range (possibly with a stepsize != 1)</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> w_max -- Upper bound for the summation window</span>
<span class="sd"> fft -- boolean, which determines whether the fft algorithm is used for</span>
<span class="sd"> the computation of the autocorrelation function</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">gamma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">w_max</span><span class="p">)</span>
<span class="n">deltas</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_deltas</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">)</span>
<span class="n">new_shape</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span>
<span class="k">if</span> <span class="n">fft</span><span class="p">:</span>
<span class="n">max_gamma</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">new_shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">)</span>
<span class="c1"># The padding for the fft has to be even</span>
<span class="n">padding</span> <span class="o">=</span> <span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span> <span class="o">+</span> <span class="p">(</span><span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span><span class="p">)</span> <span class="o">%</span> <span class="mi">2</span>
<span class="n">gamma</span><span class="p">[:</span><span class="n">max_gamma</span><span class="p">]</span> <span class="o">+=</span> <span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">irfft</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">rfft</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">padding</span><span class="p">))</span> <span class="o">**</span> <span class="mi">2</span><span class="p">)[:</span><span class="n">max_gamma</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">w_max</span><span class="p">):</span>
<span class="k">if</span> <span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">gamma</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">+=</span> <span class="n">deltas</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span><span class="p">]</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">deltas</span><span class="p">[</span><span class="n">n</span><span class="p">:</span><span class="n">new_shape</span><span class="p">])</span>
<span class="k">return</span> <span class="n">gamma</span>
<span class="k">def</span> <span class="nf">print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">level</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span> <span class="k">def</span> <span class="nf">print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">level</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span>
<span class="n">warnings</span><span class="o">.</span><span class="n">warn</span><span class="p">(</span><span class="s2">&quot;Method &#39;print&#39; renamed to &#39;details&#39;&quot;</span><span class="p">,</span> <span class="ne">DeprecationWarning</span><span class="p">)</span> <span class="n">warnings</span><span class="o">.</span><span class="n">warn</span><span class="p">(</span><span class="s2">&quot;Method &#39;print&#39; renamed to &#39;details&#39;&quot;</span><span class="p">,</span> <span class="ne">DeprecationWarning</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">details</span><span class="p">(</span><span class="n">level</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">)</span> <span class="bp">self</span><span class="o">.</span><span class="n">details</span><span class="p">(</span><span class="n">level</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">)</span>
@ -868,9 +868,10 @@
<span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dump the Obs to a pickle file &#39;name&#39;.</span> <span class="sd">&quot;&quot;&quot;Dump the Obs to a pickle file &#39;name&#39;.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- specifies a custom path for the file (default &#39;.&#39;)</span> <span class="sd"> path : str</span>
<span class="sd"> specifies a custom path for the file (default &#39;.&#39;)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span> <span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span>
<span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span> <span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span>
@ -1165,7 +1166,8 @@
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> idl -- List of lists or ranges.</span> <span class="sd"> idl : list</span>
<span class="sd"> List of lists or ranges.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="c1"># Use groupby to efficiently check whether all elements of idl are identical</span> <span class="c1"># Use groupby to efficiently check whether all elements of idl are identical</span>
@ -1222,14 +1224,15 @@
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> names -- List of names</span> <span class="sd"> names : list</span>
<span class="sd"> deltas -- Dict lists of fluctuations</span> <span class="sd"> List of names</span>
<span class="sd"> idx -- Dict of lists or ranges of configs on which the deltas are defined.</span> <span class="sd"> deltas : dict</span>
<span class="sd"> Dict lists of fluctuations</span>
<span class="sd"> idx : dict</span>
<span class="sd"> Dict of lists or ranges of configs on which the deltas are defined.</span>
<span class="sd"> Has to be a subset of new_idx.</span> <span class="sd"> Has to be a subset of new_idx.</span>
<span class="sd"> eps : float</span>
<span class="sd"> Optional parameters</span> <span class="sd"> Prefactor that enters the filter criterion.</span>
<span class="sd"> ----------</span>
<span class="sd"> eps -- Prefactor that enters the filter criterion.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">new_names</span> <span class="o">=</span> <span class="p">[]</span> <span class="n">new_names</span> <span class="o">=</span> <span class="p">[]</span>
<span class="n">new_deltas</span> <span class="o">=</span> <span class="p">{}</span> <span class="n">new_deltas</span> <span class="o">=</span> <span class="p">{}</span>
@ -1260,9 +1263,6 @@
<span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span> <span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span>
<span class="sd"> data : list</span> <span class="sd"> data : list</span>
<span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span> <span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> num_grad : bool</span> <span class="sd"> num_grad : bool</span>
<span class="sd"> if True, numerical derivatives are used instead of autograd</span> <span class="sd"> if True, numerical derivatives are used instead of autograd</span>
<span class="sd"> (default False). To control the numerical differentiation the</span> <span class="sd"> (default False). To control the numerical differentiation the</span>
@ -1401,9 +1401,12 @@
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span> <span class="sd"> deltas : list</span>
<span class="sd"> idx_old -- List or range of configs on which the deltas are defined</span> <span class="sd"> List of fluctuations</span>
<span class="sd"> idx_new -- List of configs for which we want to extract the deltas.</span> <span class="sd"> idx_old : list</span>
<span class="sd"> List or range of configs on which the deltas are defined</span>
<span class="sd"> idx_new : list</span>
<span class="sd"> List of configs for which we want to extract the deltas.</span>
<span class="sd"> Has to be a subset of idx_old.</span> <span class="sd"> Has to be a subset of idx_old.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="ow">not</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span> <span class="o">==</span> <span class="nb">len</span><span class="p">(</span><span class="n">idx_old</span><span class="p">):</span> <span class="k">if</span> <span class="ow">not</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span> <span class="o">==</span> <span class="nb">len</span><span class="p">(</span><span class="n">idx_old</span><span class="p">):</span>
@ -1438,9 +1441,6 @@
<span class="sd"> configurations in obs[i].idl for all i.</span> <span class="sd"> configurations in obs[i].idl for all i.</span>
<span class="sd"> obs : list</span> <span class="sd"> obs : list</span>
<span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span> <span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> all_configs : bool</span> <span class="sd"> all_configs : bool</span>
<span class="sd"> if True, the reweighted observables are normalized by the average of</span> <span class="sd"> if True, the reweighted observables are normalized by the average of</span>
<span class="sd"> the reweighting factor on all configurations in weight.idl and not</span> <span class="sd"> the reweighting factor on all configurations in weight.idl and not</span>
@ -1475,8 +1475,8 @@
<span class="k">def</span> <span class="nf">correlate</span><span class="p">(</span><span class="n">obs_a</span><span class="p">,</span> <span class="n">obs_b</span><span class="p">):</span> <span class="k">def</span> <span class="nf">correlate</span><span class="p">(</span><span class="n">obs_a</span><span class="p">,</span> <span class="n">obs_b</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Correlate two observables.</span> <span class="sd">&quot;&quot;&quot;Correlate two observables.</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> obs_a : Obs</span> <span class="sd"> obs_a : Obs</span>
<span class="sd"> First observable</span> <span class="sd"> First observable</span>
<span class="sd"> obs_b : Obs</span> <span class="sd"> obs_b : Obs</span>
@ -1522,9 +1522,10 @@
<span class="sd"> is constrained to the maximum value in order to make sure that covariance</span> <span class="sd"> is constrained to the maximum value in order to make sure that covariance</span>
<span class="sd"> matrices are positive semidefinite.</span> <span class="sd"> matrices are positive semidefinite.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> correlation -- if true the correlation instead of the covariance is</span> <span class="sd"> correlation : bool</span>
<span class="sd"> if true the correlation instead of the covariance is</span>
<span class="sd"> returned (default False)</span> <span class="sd"> returned (default False)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -1779,9 +1780,14 @@
<span class="k">def</span> <span class="nf">dump_object</span><span class="p">(</span><span class="n">obj</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">dump_object</span><span class="p">(</span><span class="n">obj</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dump object into pickle file.</span> <span class="sd">&quot;&quot;&quot;Dump object into pickle file.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- specifies a custom path for the file (default &#39;.&#39;)</span> <span class="sd"> obj : object</span>
<span class="sd"> object to be saved in the pickle file</span>
<span class="sd"> name : str</span>
<span class="sd"> name of the file</span>
<span class="sd"> path : str</span>
<span class="sd"> specifies a custom path for the file (default &#39;.&#39;)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span> <span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span>
<span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span> <span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span>
@ -1800,6 +1806,11 @@
<span class="k">def</span> <span class="nf">merge_obs</span><span class="p">(</span><span class="n">list_of_obs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">merge_obs</span><span class="p">(</span><span class="n">list_of_obs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Combine all observables in list_of_obs into one new observable</span> <span class="sd">&quot;&quot;&quot;Combine all observables in list_of_obs into one new observable</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> list_of_obs : list</span>
<span class="sd"> list of the Obs object to be combined</span>
<span class="sd"> It is not possible to combine obs which are based on the same replicum</span> <span class="sd"> It is not possible to combine obs which are based on the same replicum</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">replist</span> <span class="o">=</span> <span class="p">[</span><span class="n">item</span> <span class="k">for</span> <span class="n">obs</span> <span class="ow">in</span> <span class="n">list_of_obs</span> <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">obs</span><span class="o">.</span><span class="n">names</span><span class="p">]</span> <span class="n">replist</span> <span class="o">=</span> <span class="p">[</span><span class="n">item</span> <span class="k">for</span> <span class="n">obs</span> <span class="ow">in</span> <span class="n">list_of_obs</span> <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">obs</span><span class="o">.</span><span class="n">names</span><span class="p">]</span>
@ -1875,7 +1886,7 @@
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">samples</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">idl</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">means</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">samples</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">idl</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">means</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Initialize Obs object.</span> <span class="sd">&quot;&quot;&quot; Initialize Obs object.</span>
<span class="sd"> Attributes</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> samples : list</span> <span class="sd"> samples : list</span>
<span class="sd"> list of numpy arrays containing the Monte Carlo samples</span> <span class="sd"> list of numpy arrays containing the Monte Carlo samples</span>
@ -1972,57 +1983,11 @@
<span class="n">res</span><span class="p">[</span><span class="n">e_name</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">e_name</span><span class="p">)</span> <span class="n">res</span><span class="p">[</span><span class="n">e_name</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">e_name</span><span class="p">)</span>
<span class="k">return</span> <span class="n">res</span> <span class="k">return</span> <span class="n">res</span>
<span class="k">def</span> <span class="nf">expand_deltas</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.</span>
<span class="sd"> If idx is of type range, the deltas are not changed</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">range</span><span class="p">:</span>
<span class="k">return</span> <span class="n">deltas</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">ret</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">idx</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">shape</span><span class="p">):</span>
<span class="n">ret</span><span class="p">[</span><span class="n">idx</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="n">deltas</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="k">return</span> <span class="n">ret</span>
<span class="k">def</span> <span class="nf">calc_gamma</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">,</span> <span class="n">fft</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate Gamma_{AA} from the deltas, which are defined on idx.</span>
<span class="sd"> idx is assumed to be a contiguous range (possibly with a stepsize != 1)</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> w_max -- Upper bound for the summation window</span>
<span class="sd"> fft -- boolean, which determines whether the fft algorithm is used for</span>
<span class="sd"> the computation of the autocorrelation function</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">gamma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">w_max</span><span class="p">)</span>
<span class="n">deltas</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_deltas</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">)</span>
<span class="n">new_shape</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span>
<span class="k">if</span> <span class="n">fft</span><span class="p">:</span>
<span class="n">max_gamma</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">new_shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">)</span>
<span class="c1"># The padding for the fft has to be even</span>
<span class="n">padding</span> <span class="o">=</span> <span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span> <span class="o">+</span> <span class="p">(</span><span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span><span class="p">)</span> <span class="o">%</span> <span class="mi">2</span>
<span class="n">gamma</span><span class="p">[:</span><span class="n">max_gamma</span><span class="p">]</span> <span class="o">+=</span> <span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">irfft</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">rfft</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">padding</span><span class="p">))</span> <span class="o">**</span> <span class="mi">2</span><span class="p">)[:</span><span class="n">max_gamma</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">w_max</span><span class="p">):</span>
<span class="k">if</span> <span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">gamma</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">+=</span> <span class="n">deltas</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span><span class="p">]</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">deltas</span><span class="p">[</span><span class="n">n</span><span class="p">:</span><span class="n">new_shape</span><span class="p">])</span>
<span class="k">return</span> <span class="n">gamma</span>
<span class="k">def</span> <span class="nf">gamma_method</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">gamma_method</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate the error and related properties of the Obs.</span> <span class="sd">&quot;&quot;&quot;Calculate the error and related properties of the Obs.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> S : float</span> <span class="sd"> S : float</span>
<span class="sd"> specifies a custom value for the parameter S (default 2.0), can be</span> <span class="sd"> specifies a custom value for the parameter S (default 2.0), can be</span>
<span class="sd"> a float or an array of floats for different ensembles</span> <span class="sd"> a float or an array of floats for different ensembles</span>
@ -2200,6 +2165,52 @@
<span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span><span class="p">)</span> <span class="o">/</span> <span class="bp">self</span><span class="o">.</span><span class="n">dvalue</span> <span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">ddvalue</span><span class="p">)</span> <span class="o">/</span> <span class="bp">self</span><span class="o">.</span><span class="n">dvalue</span>
<span class="k">return</span> <span class="k">return</span>
<span class="k">def</span> <span class="nf">expand_deltas</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.</span>
<span class="sd"> If idx is of type range, the deltas are not changed</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">range</span><span class="p">:</span>
<span class="k">return</span> <span class="n">deltas</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">ret</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">idx</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">shape</span><span class="p">):</span>
<span class="n">ret</span><span class="p">[</span><span class="n">idx</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="n">deltas</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="k">return</span> <span class="n">ret</span>
<span class="k">def</span> <span class="nf">calc_gamma</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">,</span> <span class="n">fft</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate Gamma_{AA} from the deltas, which are defined on idx.</span>
<span class="sd"> idx is assumed to be a contiguous range (possibly with a stepsize != 1)</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> w_max -- Upper bound for the summation window</span>
<span class="sd"> fft -- boolean, which determines whether the fft algorithm is used for</span>
<span class="sd"> the computation of the autocorrelation function</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">gamma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">w_max</span><span class="p">)</span>
<span class="n">deltas</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_deltas</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">)</span>
<span class="n">new_shape</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span>
<span class="k">if</span> <span class="n">fft</span><span class="p">:</span>
<span class="n">max_gamma</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">new_shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">)</span>
<span class="c1"># The padding for the fft has to be even</span>
<span class="n">padding</span> <span class="o">=</span> <span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span> <span class="o">+</span> <span class="p">(</span><span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span><span class="p">)</span> <span class="o">%</span> <span class="mi">2</span>
<span class="n">gamma</span><span class="p">[:</span><span class="n">max_gamma</span><span class="p">]</span> <span class="o">+=</span> <span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">irfft</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">rfft</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">padding</span><span class="p">))</span> <span class="o">**</span> <span class="mi">2</span><span class="p">)[:</span><span class="n">max_gamma</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">w_max</span><span class="p">):</span>
<span class="k">if</span> <span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">gamma</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">+=</span> <span class="n">deltas</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span><span class="p">]</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">deltas</span><span class="p">[</span><span class="n">n</span><span class="p">:</span><span class="n">new_shape</span><span class="p">])</span>
<span class="k">return</span> <span class="n">gamma</span>
<span class="k">def</span> <span class="nf">print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">level</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span> <span class="k">def</span> <span class="nf">print</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">level</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span>
<span class="n">warnings</span><span class="o">.</span><span class="n">warn</span><span class="p">(</span><span class="s2">&quot;Method &#39;print&#39; renamed to &#39;details&#39;&quot;</span><span class="p">,</span> <span class="ne">DeprecationWarning</span><span class="p">)</span> <span class="n">warnings</span><span class="o">.</span><span class="n">warn</span><span class="p">(</span><span class="s2">&quot;Method &#39;print&#39; renamed to &#39;details&#39;&quot;</span><span class="p">,</span> <span class="ne">DeprecationWarning</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">details</span><span class="p">(</span><span class="n">level</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">)</span> <span class="bp">self</span><span class="o">.</span><span class="n">details</span><span class="p">(</span><span class="n">level</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">)</span>
@ -2361,9 +2372,10 @@
<span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dump the Obs to a pickle file &#39;name&#39;.</span> <span class="sd">&quot;&quot;&quot;Dump the Obs to a pickle file &#39;name&#39;.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- specifies a custom path for the file (default &#39;.&#39;)</span> <span class="sd"> path : str</span>
<span class="sd"> specifies a custom path for the file (default &#39;.&#39;)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span> <span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span>
<span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span> <span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span>
@ -2588,7 +2600,7 @@ Standard value for N_sigma (default 1.0)</li>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">samples</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">idl</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">means</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">samples</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">idl</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">means</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Initialize Obs object.</span> <span class="sd">&quot;&quot;&quot; Initialize Obs object.</span>
<span class="sd"> Attributes</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> samples : list</span> <span class="sd"> samples : list</span>
<span class="sd"> list of numpy arrays containing the Monte Carlo samples</span> <span class="sd"> list of numpy arrays containing the Monte Carlo samples</span>
@ -2669,7 +2681,7 @@ Standard value for N_sigma (default 1.0)</li>
<div class="docstring"><p>Initialize Obs object.</p> <div class="docstring"><p>Initialize Obs object.</p>
<h6 id="attributes">Attributes</h6> <h6 id="parameters">Parameters</h6>
<ul> <ul>
<li><strong>samples</strong> (list): <li><strong>samples</strong> (list):
@ -2865,108 +2877,6 @@ already subtracted from the samples</li>
</div>
<div id="Obs.expand_deltas" class="classattr">
<div class="attr function"><a class="headerlink" href="#Obs.expand_deltas">#&nbsp;&nbsp</a>
<span class="def">def</span>
<span class="name">expand_deltas</span><span class="signature">(self, deltas, idx, shape)</span>:
</div>
<details>
<summary>View Source</summary>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">expand_deltas</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.</span>
<span class="sd"> If idx is of type range, the deltas are not changed</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">range</span><span class="p">:</span>
<span class="k">return</span> <span class="n">deltas</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">ret</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">idx</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">shape</span><span class="p">):</span>
<span class="n">ret</span><span class="p">[</span><span class="n">idx</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="n">deltas</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="k">return</span> <span class="n">ret</span>
</pre></div>
</details>
<div class="docstring"><p>Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.
If idx is of type range, the deltas are not changed</p>
<h6 id="parameters">Parameters</h6>
<ul>
<li><strong>deltas -- List of fluctuations</strong></li>
<li><strong>idx -- List or range of configs on which the deltas are defined.</strong></li>
<li><strong>shape -- Number of configs in idx.</strong></li>
</ul>
</div>
</div>
<div id="Obs.calc_gamma" class="classattr">
<div class="attr function"><a class="headerlink" href="#Obs.calc_gamma">#&nbsp;&nbsp</a>
<span class="def">def</span>
<span class="name">calc_gamma</span><span class="signature">(self, deltas, idx, shape, w_max, fft)</span>:
</div>
<details>
<summary>View Source</summary>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">calc_gamma</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">,</span> <span class="n">fft</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate Gamma_{AA} from the deltas, which are defined on idx.</span>
<span class="sd"> idx is assumed to be a contiguous range (possibly with a stepsize != 1)</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> w_max -- Upper bound for the summation window</span>
<span class="sd"> fft -- boolean, which determines whether the fft algorithm is used for</span>
<span class="sd"> the computation of the autocorrelation function</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">gamma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">w_max</span><span class="p">)</span>
<span class="n">deltas</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_deltas</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">)</span>
<span class="n">new_shape</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span>
<span class="k">if</span> <span class="n">fft</span><span class="p">:</span>
<span class="n">max_gamma</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">new_shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">)</span>
<span class="c1"># The padding for the fft has to be even</span>
<span class="n">padding</span> <span class="o">=</span> <span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span> <span class="o">+</span> <span class="p">(</span><span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span><span class="p">)</span> <span class="o">%</span> <span class="mi">2</span>
<span class="n">gamma</span><span class="p">[:</span><span class="n">max_gamma</span><span class="p">]</span> <span class="o">+=</span> <span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">irfft</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">rfft</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">padding</span><span class="p">))</span> <span class="o">**</span> <span class="mi">2</span><span class="p">)[:</span><span class="n">max_gamma</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">w_max</span><span class="p">):</span>
<span class="k">if</span> <span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">gamma</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">+=</span> <span class="n">deltas</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span><span class="p">]</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">deltas</span><span class="p">[</span><span class="n">n</span><span class="p">:</span><span class="n">new_shape</span><span class="p">])</span>
<span class="k">return</span> <span class="n">gamma</span>
</pre></div>
</details>
<div class="docstring"><p>Calculate Gamma_{AA} from the deltas, which are defined on idx.
idx is assumed to be a contiguous range (possibly with a stepsize != 1)</p>
<h6 id="parameters">Parameters</h6>
<ul>
<li><strong>deltas -- List of fluctuations</strong></li>
<li><strong>idx -- List or range of configs on which the deltas are defined.</strong></li>
<li><strong>shape -- Number of configs in idx.</strong></li>
<li><strong>w_max -- Upper bound for the summation window</strong></li>
<li><strong>fft -- boolean, which determines whether the fft algorithm is used for</strong>: the computation of the autocorrelation function</li>
</ul>
</div>
</div> </div>
<div id="Obs.gamma_method" class="classattr"> <div id="Obs.gamma_method" class="classattr">
<div class="attr function"><a class="headerlink" href="#Obs.gamma_method">#&nbsp;&nbsp</a> <div class="attr function"><a class="headerlink" href="#Obs.gamma_method">#&nbsp;&nbsp</a>
@ -2981,8 +2891,8 @@ already subtracted from the samples</li>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">gamma_method</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">gamma_method</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate the error and related properties of the Obs.</span> <span class="sd">&quot;&quot;&quot;Calculate the error and related properties of the Obs.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> S : float</span> <span class="sd"> S : float</span>
<span class="sd"> specifies a custom value for the parameter S (default 2.0), can be</span> <span class="sd"> specifies a custom value for the parameter S (default 2.0), can be</span>
<span class="sd"> a float or an array of floats for different ensembles</span> <span class="sd"> a float or an array of floats for different ensembles</span>
@ -3165,21 +3075,125 @@ already subtracted from the samples</li>
<div class="docstring"><p>Calculate the error and related properties of the Obs.</p> <div class="docstring"><p>Calculate the error and related properties of the Obs.</p>
<h6 id="keyword-arguments">Keyword arguments</h6> <h6 id="parameters">Parameters</h6>
<p>S : float <ul>
specifies a custom value for the parameter S (default 2.0), can be <li><strong>S</strong> (float):
a float or an array of floats for different ensembles specifies a custom value for the parameter S (default 2.0), can be
tau_exp : float a float or an array of floats for different ensembles</li>
positive value triggers the critical slowing down analysis <li><strong>tau_exp</strong> (float):
(default 0.0), can be a float or an array of floats for different positive value triggers the critical slowing down analysis
ensembles (default 0.0), can be a float or an array of floats for different
N_sigma : float ensembles</li>
number of standard deviations from zero until the tail is <li><strong>N_sigma</strong> (float):
attached to the autocorrelation function (default 1) number of standard deviations from zero until the tail is
fft : bool attached to the autocorrelation function (default 1)</li>
determines whether the fft algorithm is used for the computation <li><strong>fft</strong> (bool):
of the autocorrelation function (default True)</p> determines whether the fft algorithm is used for the computation
of the autocorrelation function (default True)</li>
</ul>
</div>
</div>
<div id="Obs.expand_deltas" class="classattr">
<div class="attr function"><a class="headerlink" href="#Obs.expand_deltas">#&nbsp;&nbsp</a>
<span class="def">def</span>
<span class="name">expand_deltas</span><span class="signature">(self, deltas, idx, shape)</span>:
</div>
<details>
<summary>View Source</summary>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">expand_deltas</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.</span>
<span class="sd"> If idx is of type range, the deltas are not changed</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">idx</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">range</span><span class="p">:</span>
<span class="k">return</span> <span class="n">deltas</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">ret</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">idx</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">shape</span><span class="p">):</span>
<span class="n">ret</span><span class="p">[</span><span class="n">idx</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">-</span> <span class="n">idx</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="n">deltas</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="k">return</span> <span class="n">ret</span>
</pre></div>
</details>
<div class="docstring"><p>Expand deltas defined on idx to a regular, contiguous range, where holes are filled by 0.
If idx is of type range, the deltas are not changed</p>
<h6 id="parameters">Parameters</h6>
<ul>
<li><strong>deltas -- List of fluctuations</strong></li>
<li><strong>idx -- List or range of configs on which the deltas are defined.</strong></li>
<li><strong>shape -- Number of configs in idx.</strong></li>
</ul>
</div>
</div>
<div id="Obs.calc_gamma" class="classattr">
<div class="attr function"><a class="headerlink" href="#Obs.calc_gamma">#&nbsp;&nbsp</a>
<span class="def">def</span>
<span class="name">calc_gamma</span><span class="signature">(self, deltas, idx, shape, w_max, fft)</span>:
</div>
<details>
<summary>View Source</summary>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">calc_gamma</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">,</span> <span class="n">fft</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Calculate Gamma_{AA} from the deltas, which are defined on idx.</span>
<span class="sd"> idx is assumed to be a contiguous range (possibly with a stepsize != 1)</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span>
<span class="sd"> idx -- List or range of configs on which the deltas are defined.</span>
<span class="sd"> shape -- Number of configs in idx.</span>
<span class="sd"> w_max -- Upper bound for the summation window</span>
<span class="sd"> fft -- boolean, which determines whether the fft algorithm is used for</span>
<span class="sd"> the computation of the autocorrelation function</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">gamma</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">w_max</span><span class="p">)</span>
<span class="n">deltas</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">expand_deltas</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">idx</span><span class="p">,</span> <span class="n">shape</span><span class="p">)</span>
<span class="n">new_shape</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span>
<span class="k">if</span> <span class="n">fft</span><span class="p">:</span>
<span class="n">max_gamma</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">new_shape</span><span class="p">,</span> <span class="n">w_max</span><span class="p">)</span>
<span class="c1"># The padding for the fft has to be even</span>
<span class="n">padding</span> <span class="o">=</span> <span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span> <span class="o">+</span> <span class="p">(</span><span class="n">new_shape</span> <span class="o">+</span> <span class="n">max_gamma</span><span class="p">)</span> <span class="o">%</span> <span class="mi">2</span>
<span class="n">gamma</span><span class="p">[:</span><span class="n">max_gamma</span><span class="p">]</span> <span class="o">+=</span> <span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">irfft</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">fft</span><span class="o">.</span><span class="n">rfft</span><span class="p">(</span><span class="n">deltas</span><span class="p">,</span> <span class="n">padding</span><span class="p">))</span> <span class="o">**</span> <span class="mi">2</span><span class="p">)[:</span><span class="n">max_gamma</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">w_max</span><span class="p">):</span>
<span class="k">if</span> <span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">gamma</span><span class="p">[</span><span class="n">n</span><span class="p">]</span> <span class="o">+=</span> <span class="n">deltas</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">new_shape</span> <span class="o">-</span> <span class="n">n</span><span class="p">]</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">deltas</span><span class="p">[</span><span class="n">n</span><span class="p">:</span><span class="n">new_shape</span><span class="p">])</span>
<span class="k">return</span> <span class="n">gamma</span>
</pre></div>
</details>
<div class="docstring"><p>Calculate Gamma_{AA} from the deltas, which are defined on idx.
idx is assumed to be a contiguous range (possibly with a stepsize != 1)</p>
<h6 id="parameters">Parameters</h6>
<ul>
<li><strong>deltas -- List of fluctuations</strong></li>
<li><strong>idx -- List or range of configs on which the deltas are defined.</strong></li>
<li><strong>shape -- Number of configs in idx.</strong></li>
<li><strong>w_max -- Upper bound for the summation window</strong></li>
<li><strong>fft -- boolean, which determines whether the fft algorithm is used for</strong>: the computation of the autocorrelation function</li>
</ul>
</div> </div>
@ -3518,9 +3532,10 @@ ensemble to the error and returns a dictionary containing the fractions.</p>
<div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span> <span class="k">def</span> <span class="nf">dump</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dump the Obs to a pickle file &#39;name&#39;.</span> <span class="sd">&quot;&quot;&quot;Dump the Obs to a pickle file &#39;name&#39;.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- specifies a custom path for the file (default &#39;.&#39;)</span> <span class="sd"> path : str</span>
<span class="sd"> specifies a custom path for the file (default &#39;.&#39;)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span> <span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span>
<span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span> <span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span>
@ -3534,9 +3549,12 @@ ensemble to the error and returns a dictionary containing the fractions.</p>
<div class="docstring"><p>Dump the Obs to a pickle file 'name'.</p> <div class="docstring"><p>Dump the Obs to a pickle file 'name'.</p>
<h6 id="keyword-arguments">Keyword arguments</h6> <h6 id="parameters">Parameters</h6>
<p>path -- specifies a custom path for the file (default '.')</p> <ul>
<li><strong>path</strong> (str):
specifies a custom path for the file (default '.')</li>
</ul>
</div> </div>
@ -4208,7 +4226,8 @@ ensemble to the error and returns a dictionary containing the fractions.</p>
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> idl -- List of lists or ranges.</span> <span class="sd"> idl : list</span>
<span class="sd"> List of lists or ranges.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="c1"># Use groupby to efficiently check whether all elements of idl are identical</span> <span class="c1"># Use groupby to efficiently check whether all elements of idl are identical</span>
@ -4236,7 +4255,8 @@ ensemble to the error and returns a dictionary containing the fractions.</p>
<h6 id="parameters">Parameters</h6> <h6 id="parameters">Parameters</h6>
<ul> <ul>
<li><strong>idl -- List of lists or ranges.</strong></li> <li><strong>idl</strong> (list):
List of lists or ranges.</li>
</ul> </ul>
</div> </div>
@ -4321,14 +4341,15 @@ List of configs that defines the new range.</li>
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> names -- List of names</span> <span class="sd"> names : list</span>
<span class="sd"> deltas -- Dict lists of fluctuations</span> <span class="sd"> List of names</span>
<span class="sd"> idx -- Dict of lists or ranges of configs on which the deltas are defined.</span> <span class="sd"> deltas : dict</span>
<span class="sd"> Dict lists of fluctuations</span>
<span class="sd"> idx : dict</span>
<span class="sd"> Dict of lists or ranges of configs on which the deltas are defined.</span>
<span class="sd"> Has to be a subset of new_idx.</span> <span class="sd"> Has to be a subset of new_idx.</span>
<span class="sd"> eps : float</span>
<span class="sd"> Optional parameters</span> <span class="sd"> Prefactor that enters the filter criterion.</span>
<span class="sd"> ----------</span>
<span class="sd"> eps -- Prefactor that enters the filter criterion.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">new_names</span> <span class="o">=</span> <span class="p">[]</span> <span class="n">new_names</span> <span class="o">=</span> <span class="p">[]</span>
<span class="n">new_deltas</span> <span class="o">=</span> <span class="p">{}</span> <span class="n">new_deltas</span> <span class="o">=</span> <span class="p">{}</span>
@ -4359,14 +4380,16 @@ List of configs that defines the new range.</li>
<h6 id="parameters">Parameters</h6> <h6 id="parameters">Parameters</h6>
<ul> <ul>
<li><strong>names -- List of names</strong></li> <li><strong>names</strong> (list):
<li><strong>deltas -- Dict lists of fluctuations</strong></li> List of names</li>
<li><strong>idx -- Dict of lists or ranges of configs on which the deltas are defined.</strong>: Has to be a subset of new_idx.</li> <li><strong>deltas</strong> (dict):
Dict lists of fluctuations</li>
<li><strong>idx</strong> (dict):
Dict of lists or ranges of configs on which the deltas are defined.
Has to be a subset of new_idx.</li>
<li><strong>eps</strong> (float):
Prefactor that enters the filter criterion.</li>
</ul> </ul>
<h6 id="optional-parameters">Optional parameters</h6>
<p>eps -- Prefactor that enters the filter criterion.</p>
</div> </div>
@ -4392,9 +4415,6 @@ List of configs that defines the new range.</li>
<span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span> <span class="sd"> the autograd wrapper (use &#39;import autograd.numpy as anp&#39;).</span>
<span class="sd"> data : list</span> <span class="sd"> data : list</span>
<span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span> <span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> num_grad : bool</span> <span class="sd"> num_grad : bool</span>
<span class="sd"> if True, numerical derivatives are used instead of autograd</span> <span class="sd"> if True, numerical derivatives are used instead of autograd</span>
<span class="sd"> (default False). To control the numerical differentiation the</span> <span class="sd"> (default False). To control the numerical differentiation the</span>
@ -4541,20 +4561,17 @@ automatic differentiation to work, all numpy functions have to have
the autograd wrapper (use 'import autograd.numpy as anp').</li> the autograd wrapper (use 'import autograd.numpy as anp').</li>
<li><strong>data</strong> (list): <li><strong>data</strong> (list):
list of Obs, e.g. [obs1, obs2, obs3].</li> list of Obs, e.g. [obs1, obs2, obs3].</li>
<li><strong>num_grad</strong> (bool):
if True, numerical derivatives are used instead of autograd
(default False). To control the numerical differentiation the
kwargs of numdifftools.step_generators.MaxStepGenerator
can be used.</li>
<li><strong>man_grad</strong> (list):
manually supply a list or an array which contains the jacobian
of func. Use cautiously, supplying the wrong derivative will
not be intercepted.</li>
</ul> </ul>
<h6 id="keyword-arguments">Keyword arguments</h6>
<p>num_grad : bool
if True, numerical derivatives are used instead of autograd
(default False). To control the numerical differentiation the
kwargs of numdifftools.step_generators.MaxStepGenerator
can be used.
man_grad : list
manually supply a list or an array which contains the jacobian
of func. Use cautiously, supplying the wrong derivative will
not be intercepted.</p>
<h6 id="notes">Notes</h6> <h6 id="notes">Notes</h6>
<p>For simple mathematical operations it can be practical to use anonymous <p>For simple mathematical operations it can be practical to use anonymous
@ -4580,9 +4597,12 @@ functions. For the ratio of two observables one can e.g. use</p>
<span class="sd"> Parameters</span> <span class="sd"> Parameters</span>
<span class="sd"> ----------</span> <span class="sd"> ----------</span>
<span class="sd"> deltas -- List of fluctuations</span> <span class="sd"> deltas : list</span>
<span class="sd"> idx_old -- List or range of configs on which the deltas are defined</span> <span class="sd"> List of fluctuations</span>
<span class="sd"> idx_new -- List of configs for which we want to extract the deltas.</span> <span class="sd"> idx_old : list</span>
<span class="sd"> List or range of configs on which the deltas are defined</span>
<span class="sd"> idx_new : list</span>
<span class="sd"> List of configs for which we want to extract the deltas.</span>
<span class="sd"> Has to be a subset of idx_old.</span> <span class="sd"> Has to be a subset of idx_old.</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="ow">not</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span> <span class="o">==</span> <span class="nb">len</span><span class="p">(</span><span class="n">idx_old</span><span class="p">):</span> <span class="k">if</span> <span class="ow">not</span> <span class="nb">len</span><span class="p">(</span><span class="n">deltas</span><span class="p">)</span> <span class="o">==</span> <span class="nb">len</span><span class="p">(</span><span class="n">idx_old</span><span class="p">):</span>
@ -4614,9 +4634,13 @@ functions. For the ratio of two observables one can e.g. use</p>
<h6 id="parameters">Parameters</h6> <h6 id="parameters">Parameters</h6>
<ul> <ul>
<li><strong>deltas -- List of fluctuations</strong></li> <li><strong>deltas</strong> (list):
<li><strong>idx_old -- List or range of configs on which the deltas are defined</strong></li> List of fluctuations</li>
<li><strong>idx_new -- List of configs for which we want to extract the deltas.</strong>: Has to be a subset of idx_old.</li> <li><strong>idx_old</strong> (list):
List or range of configs on which the deltas are defined</li>
<li><strong>idx_new</strong> (list):
List of configs for which we want to extract the deltas.
Has to be a subset of idx_old.</li>
</ul> </ul>
</div> </div>
@ -4642,9 +4666,6 @@ functions. For the ratio of two observables one can e.g. use</p>
<span class="sd"> configurations in obs[i].idl for all i.</span> <span class="sd"> configurations in obs[i].idl for all i.</span>
<span class="sd"> obs : list</span> <span class="sd"> obs : list</span>
<span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span> <span class="sd"> list of Obs, e.g. [obs1, obs2, obs3].</span>
<span class="sd"> Keyword arguments</span>
<span class="sd"> -----------------</span>
<span class="sd"> all_configs : bool</span> <span class="sd"> all_configs : bool</span>
<span class="sd"> if True, the reweighted observables are normalized by the average of</span> <span class="sd"> if True, the reweighted observables are normalized by the average of</span>
<span class="sd"> the reweighting factor on all configurations in weight.idl and not</span> <span class="sd"> the reweighting factor on all configurations in weight.idl and not</span>
@ -4688,14 +4709,11 @@ Reweighting factor. An Observable that has to be defined on a superset of the
configurations in obs[i].idl for all i.</li> configurations in obs[i].idl for all i.</li>
<li><strong>obs</strong> (list): <li><strong>obs</strong> (list):
list of Obs, e.g. [obs1, obs2, obs3].</li> list of Obs, e.g. [obs1, obs2, obs3].</li>
<li><strong>all_configs</strong> (bool):
if True, the reweighted observables are normalized by the average of
the reweighting factor on all configurations in weight.idl and not
on the configurations in obs[i].idl.</li>
</ul> </ul>
<h6 id="keyword-arguments">Keyword arguments</h6>
<p>all_configs : bool
if True, the reweighted observables are normalized by the average of
the reweighting factor on all configurations in weight.idl and not
on the configurations in obs[i].idl.</p>
</div> </div>
@ -4713,8 +4731,8 @@ list of Obs, e.g. [obs1, obs2, obs3].</li>
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">correlate</span><span class="p">(</span><span class="n">obs_a</span><span class="p">,</span> <span class="n">obs_b</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">correlate</span><span class="p">(</span><span class="n">obs_a</span><span class="p">,</span> <span class="n">obs_b</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Correlate two observables.</span> <span class="sd">&quot;&quot;&quot;Correlate two observables.</span>
<span class="sd"> Attributes:</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------</span> <span class="sd"> ----------</span>
<span class="sd"> obs_a : Obs</span> <span class="sd"> obs_a : Obs</span>
<span class="sd"> First observable</span> <span class="sd"> First observable</span>
<span class="sd"> obs_b : Obs</span> <span class="sd"> obs_b : Obs</span>
@ -4754,16 +4772,17 @@ list of Obs, e.g. [obs1, obs2, obs3].</li>
<div class="docstring"><p>Correlate two observables.</p> <div class="docstring"><p>Correlate two observables.</p>
<h2 id="attributes">Attributes:</h2> <h6 id="parameters">Parameters</h6>
<p>obs_a : Obs <ul>
First observable <li><strong>obs_a</strong> (Obs):
obs_b : Obs First observable</li>
Second observable</p> <li><strong>obs_b</strong> (Obs):
Second observable</li>
<p>Keep in mind to only correlate primary observables which have not been reweighted <li><strong>Keep in mind to only correlate primary observables which have not been reweighted</strong></li>
yet. The reweighting has to be applied after correlating the observables. <li><strong>yet. The reweighting has to be applied after correlating the observables.</strong></li>
Currently only works if ensembles are identical. This is not really necessary.</p> <li><strong>Currently only works if ensembles are identical. This is not really necessary.</strong></li>
</ul>
</div> </div>
@ -4788,9 +4807,10 @@ Currently only works if ensembles are identical. This is not really necessary.</
<span class="sd"> is constrained to the maximum value in order to make sure that covariance</span> <span class="sd"> is constrained to the maximum value in order to make sure that covariance</span>
<span class="sd"> matrices are positive semidefinite.</span> <span class="sd"> matrices are positive semidefinite.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> correlation -- if true the correlation instead of the covariance is</span> <span class="sd"> correlation : bool</span>
<span class="sd"> if true the correlation instead of the covariance is</span>
<span class="sd"> returned (default False)</span> <span class="sd"> returned (default False)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
@ -4845,10 +4865,13 @@ The gamma method has to be applied first to both observables.</p>
is constrained to the maximum value in order to make sure that covariance is constrained to the maximum value in order to make sure that covariance
matrices are positive semidefinite.</p> matrices are positive semidefinite.</p>
<h6 id="keyword-arguments">Keyword arguments</h6> <h6 id="parameters">Parameters</h6>
<p>correlation -- if true the correlation instead of the covariance is <ul>
returned (default False)</p> <li><strong>correlation</strong> (bool):
if true the correlation instead of the covariance is
returned (default False)</li>
</ul>
</div> </div>
@ -5154,9 +5177,14 @@ plot -- if true, the integrated autocorrelation time for each ensemble is
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">dump_object</span><span class="p">(</span><span class="n">obj</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">dump_object</span><span class="p">(</span><span class="n">obj</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Dump object into pickle file.</span> <span class="sd">&quot;&quot;&quot;Dump object into pickle file.</span>
<span class="sd"> Keyword arguments</span> <span class="sd"> Parameters</span>
<span class="sd"> -----------------</span> <span class="sd"> ----------</span>
<span class="sd"> path -- specifies a custom path for the file (default &#39;.&#39;)</span> <span class="sd"> obj : object</span>
<span class="sd"> object to be saved in the pickle file</span>
<span class="sd"> name : str</span>
<span class="sd"> name of the file</span>
<span class="sd"> path : str</span>
<span class="sd"> specifies a custom path for the file (default &#39;.&#39;)</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span> <span class="k">if</span> <span class="s1">&#39;path&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span>
<span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span> <span class="n">file_name</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;path&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">name</span> <span class="o">+</span> <span class="s1">&#39;.p&#39;</span>
@ -5170,9 +5198,16 @@ plot -- if true, the integrated autocorrelation time for each ensemble is
<div class="docstring"><p>Dump object into pickle file.</p> <div class="docstring"><p>Dump object into pickle file.</p>
<h6 id="keyword-arguments">Keyword arguments</h6> <h6 id="parameters">Parameters</h6>
<p>path -- specifies a custom path for the file (default '.')</p> <ul>
<li><strong>obj</strong> (object):
object to be saved in the pickle file</li>
<li><strong>name</strong> (str):
name of the file</li>
<li><strong>path</strong> (str):
specifies a custom path for the file (default '.')</li>
</ul>
</div> </div>
@ -5213,6 +5248,11 @@ plot -- if true, the integrated autocorrelation time for each ensemble is
<div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">merge_obs</span><span class="p">(</span><span class="n">list_of_obs</span><span class="p">):</span> <div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">merge_obs</span><span class="p">(</span><span class="n">list_of_obs</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;Combine all observables in list_of_obs into one new observable</span> <span class="sd">&quot;&quot;&quot;Combine all observables in list_of_obs into one new observable</span>
<span class="sd"> Parameters</span>
<span class="sd"> ----------</span>
<span class="sd"> list_of_obs : list</span>
<span class="sd"> list of the Obs object to be combined</span>
<span class="sd"> It is not possible to combine obs which are based on the same replicum</span> <span class="sd"> It is not possible to combine obs which are based on the same replicum</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="n">replist</span> <span class="o">=</span> <span class="p">[</span><span class="n">item</span> <span class="k">for</span> <span class="n">obs</span> <span class="ow">in</span> <span class="n">list_of_obs</span> <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">obs</span><span class="o">.</span><span class="n">names</span><span class="p">]</span> <span class="n">replist</span> <span class="o">=</span> <span class="p">[</span><span class="n">item</span> <span class="k">for</span> <span class="n">obs</span> <span class="ow">in</span> <span class="n">list_of_obs</span> <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">obs</span><span class="o">.</span><span class="n">names</span><span class="p">]</span>
@ -5236,7 +5276,13 @@ plot -- if true, the integrated autocorrelation time for each ensemble is
<div class="docstring"><p>Combine all observables in list_of_obs into one new observable</p> <div class="docstring"><p>Combine all observables in list_of_obs into one new observable</p>
<p>It is not possible to combine obs which are based on the same replicum</p> <h6 id="parameters">Parameters</h6>
<ul>
<li><strong>list_of_obs</strong> (list):
list of the Obs object to be combined</li>
<li><strong>It is not possible to combine obs which are based on the same replicum</strong></li>
</ul>
</div> </div>

File diff suppressed because one or more lines are too long