Ignore:
Timestamp:
Mar 14, 2015 5:35:03 PM (8 years ago)
Author:
toby
Message:

change sphinx docs links; rebuild & fixing minor formatting

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sphinxdocs/build/html/_modules/GSASIIindex.html

    r1513 r1709  
    5353<span class="c">#   includes cell refinement from peak positions (not zero as yet)</span>
    5454<span class="c">########### SVN repository information ###################</span>
    55 <span class="c"># $Date: 2014-07-30 10:29:52 -0500 (Wed, 30 Jul 2014) $</span>
     55<span class="c"># $Date: 2015-02-06 15:09:50 -0600 (Fri, 06 Feb 2015) $</span>
    5656<span class="c"># $Author: vondreele $</span>
    57 <span class="c"># $Revision: 1445 $</span>
    58 <span class="c"># $URL: https://subversion.xor.aps.anl.gov/pyGSAS/trunk/GSASIIindex.py $</span>
    59 <span class="c"># $Id: GSASIIindex.py 1445 2014-07-30 15:29:52Z vondreele $</span>
     57<span class="c"># $Revision: 1637 $</span>
     58<span class="c"># $URL: https://subversion.xray.aps.anl.gov/pyGSAS/trunk/GSASIIindex.py $</span>
     59<span class="c"># $Id: GSASIIindex.py 1637 2015-02-06 21:09:50Z vondreele $</span>
    6060<span class="c">########### SVN repository information ###################</span>
    6161<span class="sd">&#39;&#39;&#39;</span>
     
    7676<span class="kn">import</span> <span class="nn">numpy.linalg</span> <span class="kn">as</span> <span class="nn">nl</span>
    7777<span class="kn">import</span> <span class="nn">GSASIIpath</span>
    78 <span class="n">GSASIIpath</span><span class="o">.</span><span class="n">SetVersionNumber</span><span class="p">(</span><span class="s">&quot;$Revision: 1445 $&quot;</span><span class="p">)</span>
     78<span class="n">GSASIIpath</span><span class="o">.</span><span class="n">SetVersionNumber</span><span class="p">(</span><span class="s">&quot;$Revision: 1637 $&quot;</span><span class="p">)</span>
    7979<span class="kn">import</span> <span class="nn">GSASIIlattice</span> <span class="kn">as</span> <span class="nn">G2lat</span>
     80<span class="kn">import</span> <span class="nn">GSASIIpwd</span> <span class="kn">as</span> <span class="nn">G2pwd</span>
     81<span class="kn">import</span> <span class="nn">GSASIIspc</span> <span class="kn">as</span> <span class="nn">G2spc</span>
     82<span class="kn">import</span> <span class="nn">GSASIImath</span> <span class="kn">as</span> <span class="nn">G2mth</span>
    8083<span class="kn">import</span> <span class="nn">scipy.optimize</span> <span class="kn">as</span> <span class="nn">so</span>
    8184
     
    9699<span class="n">npatand</span> <span class="o">=</span> <span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="mf">180.</span><span class="o">*</span><span class="n">np</span><span class="o">.</span><span class="n">arctan</span><span class="p">(</span><span class="n">x</span><span class="p">)</span><span class="o">/</span><span class="n">np</span><span class="o">.</span><span class="n">pi</span>
    97100<span class="n">npatan2d</span> <span class="o">=</span> <span class="k">lambda</span> <span class="n">y</span><span class="p">,</span><span class="n">x</span><span class="p">:</span> <span class="mf">180.</span><span class="o">*</span><span class="n">np</span><span class="o">.</span><span class="n">arctan2</span><span class="p">(</span><span class="n">y</span><span class="p">,</span><span class="n">x</span><span class="p">)</span><span class="o">/</span><span class="n">np</span><span class="o">.</span><span class="n">pi</span>
     101<span class="n">rpd</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">pi</span><span class="o">/</span><span class="mf">180.</span>
    98102   
    99103<div class="viewcode-block" id="scaleAbyV"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.scaleAbyV">[docs]</a><span class="k">def</span> <span class="nf">scaleAbyV</span><span class="p">(</span><span class="n">A</span><span class="p">,</span><span class="n">V</span><span class="p">):</span>
     
    219223    <span class="k">return</span> <span class="p">[</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">alp</span><span class="p">,</span><span class="n">bet</span><span class="p">,</span><span class="n">gam</span><span class="p">]</span>
    220224    </div>
    221 <div class="viewcode-block" id="calc_M20"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.calc_M20">[docs]</a><span class="k">def</span> <span class="nf">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">):</span>
     225<div class="viewcode-block" id="calc_M20"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.calc_M20">[docs]</a><span class="k">def</span> <span class="nf">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">,</span><span class="n">ifX20</span><span class="o">=</span><span class="bp">True</span><span class="p">):</span>
    222226    <span class="s">&#39;needs a doc string&#39;</span>
    223227    <span class="n">diff</span> <span class="o">=</span> <span class="mi">0</span>
     
    238242    <span class="k">for</span> <span class="n">N20</span><span class="p">,</span><span class="n">hkl</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">HKL</span><span class="p">):</span>
    239243        <span class="k">if</span> <span class="n">hkl</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">d20</span><span class="p">:</span>
     244            <span class="k">break</span>               
     245    <span class="n">eta</span> <span class="o">=</span> <span class="n">diff</span><span class="o">/</span><span class="n">Nobs20</span>
     246    <span class="n">Q20</span> <span class="o">=</span> <span class="mf">1.0</span><span class="o">/</span><span class="n">d20</span><span class="o">**</span><span class="mi">2</span>
     247    <span class="k">if</span> <span class="n">diff</span><span class="p">:</span>
     248        <span class="n">M20</span> <span class="o">=</span> <span class="n">Q20</span><span class="o">/</span><span class="p">(</span><span class="mf">2.0</span><span class="o">*</span><span class="n">diff</span><span class="p">)</span>
     249    <span class="k">else</span><span class="p">:</span>
     250        <span class="n">M20</span> <span class="o">=</span> <span class="mi">0</span>
     251    <span class="k">if</span> <span class="n">ifX20</span><span class="p">:</span>
     252        <span class="n">M20</span> <span class="o">/=</span> <span class="p">(</span><span class="mf">1.</span><span class="o">+</span><span class="n">X20</span><span class="p">)</span>
     253    <span class="k">return</span> <span class="n">M20</span><span class="p">,</span><span class="n">X20</span>
     254    </div>
     255<div class="viewcode-block" id="calc_M20SS"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.calc_M20SS">[docs]</a><span class="k">def</span> <span class="nf">calc_M20SS</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">):</span>
     256    <span class="s">&#39;needs a doc string&#39;</span>
     257    <span class="n">diff</span> <span class="o">=</span> <span class="mi">0</span>
     258    <span class="n">X20</span> <span class="o">=</span> <span class="mi">0</span>
     259    <span class="k">for</span> <span class="n">Nobs20</span><span class="p">,</span><span class="n">peak</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">peaks</span><span class="p">):</span>
     260        <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]:</span>
     261            <span class="n">Qobs</span> <span class="o">=</span> <span class="mf">1.0</span><span class="o">/</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span><span class="o">**</span><span class="mi">2</span>
     262            <span class="n">Qcalc</span> <span class="o">=</span> <span class="mf">1.0</span><span class="o">/</span><span class="n">peak</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span><span class="o">**</span><span class="mi">2</span>
     263            <span class="n">diff</span> <span class="o">+=</span> <span class="nb">abs</span><span class="p">(</span><span class="n">Qobs</span><span class="o">-</span><span class="n">Qcalc</span><span class="p">)</span>
     264        <span class="k">elif</span> <span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span>
     265            <span class="n">X20</span> <span class="o">+=</span> <span class="mi">1</span>
     266        <span class="k">if</span> <span class="n">Nobs20</span> <span class="o">==</span> <span class="mi">19</span><span class="p">:</span>
     267            <span class="n">d20</span> <span class="o">=</span> <span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span>
     268            <span class="k">break</span>
     269    <span class="k">else</span><span class="p">:</span>
     270        <span class="n">d20</span> <span class="o">=</span> <span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span>
     271        <span class="n">Nobs20</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span>
     272    <span class="k">for</span> <span class="n">N20</span><span class="p">,</span><span class="n">hkl</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">HKL</span><span class="p">):</span>
     273        <span class="k">if</span> <span class="n">hkl</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">d20</span><span class="p">:</span>
    240274            <span class="k">break</span>               
    241275    <span class="n">eta</span> <span class="o">=</span> <span class="n">diff</span><span class="o">/</span><span class="n">Nobs20</span>
     
    263297    <span class="k">return</span> <span class="n">X</span>
    264298                </div>
    265 <span class="k">def</span> <span class="nf">sortVolume</span><span class="p">(</span><span class="n">cells</span><span class="p">):</span>
     299<span class="k">def</span> <span class="nf">sortCells</span><span class="p">(</span><span class="n">cells</span><span class="p">,</span><span class="n">col</span><span class="p">):</span>
    266300    <span class="c">#cells is M20,X20,Bravais,a,b,c,alp,bet,gam,volume</span>
    267     <span class="c">#sort smallest volume 1st</span>
     301    <span class="c">#sort smallest a,b,c,alpha,beta,gamma or volume 1st</span>
    268302    <span class="n">T</span> <span class="o">=</span> <span class="p">[]</span>
    269303    <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">M</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">cells</span><span class="p">):</span>
    270         <span class="n">T</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">M</span><span class="p">[</span><span class="mi">9</span><span class="p">],</span><span class="n">i</span><span class="p">))</span>
     304        <span class="n">T</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">M</span><span class="p">[</span><span class="n">col</span><span class="p">],</span><span class="n">i</span><span class="p">))</span>
    271305    <span class="n">D</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="nb">zip</span><span class="p">(</span><span class="n">T</span><span class="p">,</span><span class="n">cells</span><span class="p">))</span>
    272306    <span class="n">T</span><span class="o">.</span><span class="n">sort</span><span class="p">()</span>
     
    275309        <span class="n">X</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">D</span><span class="p">[</span><span class="n">key</span><span class="p">])</span>
    276310    <span class="k">return</span> <span class="n">X</span>
     311   
     312<span class="k">def</span> <span class="nf">findMV</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">controls</span><span class="p">,</span><span class="n">ssopt</span><span class="p">,</span><span class="n">Inst</span><span class="p">,</span><span class="n">dlg</span><span class="p">):</span>
     313       
     314    <span class="k">def</span> <span class="nf">Val2Vec</span><span class="p">(</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">values</span><span class="p">):</span>
     315        <span class="n">Vec</span> <span class="o">=</span> <span class="p">[]</span>
     316        <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span>
     317        <span class="k">for</span> <span class="n">j</span><span class="p">,</span><span class="n">r</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Vref</span><span class="p">):</span>
     318            <span class="k">if</span> <span class="n">r</span><span class="p">:</span>
     319                <span class="k">if</span> <span class="n">values</span><span class="o">.</span><span class="n">size</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
     320                    <span class="n">Vec</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="nb">max</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="nb">min</span><span class="p">(</span><span class="mf">1.0</span><span class="p">,</span><span class="n">values</span><span class="p">[</span><span class="n">i</span><span class="p">])))</span>
     321                <span class="k">else</span><span class="p">:</span>
     322                    <span class="n">Vec</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="nb">max</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="nb">min</span><span class="p">(</span><span class="mf">1.0</span><span class="p">,</span><span class="n">values</span><span class="p">)))</span>                   
     323                <span class="n">i</span> <span class="o">+=</span> <span class="mi">1</span>
     324            <span class="k">else</span><span class="p">:</span>
     325                <span class="n">Vec</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">vec</span><span class="p">[</span><span class="n">j</span><span class="p">])</span>
     326        <span class="k">return</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">Vec</span><span class="p">)</span> 
     327     
     328    <span class="k">def</span> <span class="nf">ZSSfunc</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">dmin</span><span class="p">,</span><span class="n">Inst</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">maxH</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">dlg</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
     329        <span class="n">Vec</span> <span class="o">=</span> <span class="n">Val2Vec</span><span class="p">(</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     330        <span class="n">HKL</span> <span class="o">=</span>  <span class="n">G2pwd</span><span class="o">.</span><span class="n">getHKLMpeak</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">Inst</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">,</span><span class="n">Vec</span><span class="p">,</span><span class="n">maxH</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
     331        <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">IndexSSPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">1</span><span class="p">])</span><span class="o">.</span><span class="n">T</span>
     332        <span class="n">Qo</span> <span class="o">=</span> <span class="mf">1.</span><span class="o">/</span><span class="n">Peaks</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span><span class="o">**</span><span class="mi">2</span>
     333        <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqZSS</span><span class="p">(</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">],</span><span class="n">A</span><span class="p">,</span><span class="n">Vec</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">)</span>
     334        <span class="n">chi</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">((</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
     335        <span class="k">if</span> <span class="n">dlg</span><span class="p">:</span>
     336            <span class="n">dlg</span><span class="o">.</span><span class="n">Pulse</span><span class="p">()</span>   
     337        <span class="k">return</span> <span class="n">chi</span>
     338
     339    <span class="k">if</span> <span class="s">&#39;C&#39;</span> <span class="ow">in</span> <span class="n">Inst</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">]:</span>
     340        <span class="n">wave</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">getWave</span><span class="p">(</span><span class="n">Inst</span><span class="p">)</span>
     341    <span class="k">else</span><span class="p">:</span>
     342        <span class="n">difC</span> <span class="o">=</span> <span class="n">Inst</span><span class="p">[</span><span class="s">&#39;difC&#39;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
     343    <span class="n">SGData</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SpcGroup</span><span class="p">(</span><span class="n">controls</span><span class="p">[</span><span class="mi">13</span><span class="p">])[</span><span class="mi">1</span><span class="p">]</span>
     344    <span class="n">SSGData</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SSpcGroup</span><span class="p">(</span><span class="n">SGData</span><span class="p">,</span><span class="n">ssopt</span><span class="p">[</span><span class="s">&#39;ssSymb&#39;</span><span class="p">])[</span><span class="mi">1</span><span class="p">]</span>
     345    <span class="n">A</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">cell2A</span><span class="p">(</span><span class="n">controls</span><span class="p">[</span><span class="mi">6</span><span class="p">:</span><span class="mi">12</span><span class="p">])</span>
     346    <span class="n">Z</span> <span class="o">=</span> <span class="n">controls</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
     347    <span class="n">Vref</span> <span class="o">=</span> <span class="p">[</span><span class="bp">True</span> <span class="k">if</span> <span class="n">x</span> <span class="ow">in</span> <span class="n">ssopt</span><span class="p">[</span><span class="s">&#39;ssSymb&#39;</span><span class="p">]</span> <span class="k">else</span> <span class="bp">False</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;a&#39;</span><span class="p">,</span><span class="s">&#39;b&#39;</span><span class="p">,</span><span class="s">&#39;g&#39;</span><span class="p">]]</span>
     348    <span class="n">values</span> <span class="o">=</span> <span class="p">[]</span>
     349    <span class="n">ranges</span> <span class="o">=</span> <span class="p">[]</span>   
     350    <span class="k">for</span> <span class="n">v</span><span class="p">,</span><span class="n">r</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">ssopt</span><span class="p">[</span><span class="s">&#39;ModVec&#39;</span><span class="p">],</span><span class="n">Vref</span><span class="p">):</span>
     351        <span class="k">if</span> <span class="n">r</span><span class="p">:</span>
     352            <span class="n">ranges</span> <span class="o">+=</span> <span class="p">[</span><span class="nb">slice</span><span class="p">(</span><span class="o">.</span><span class="mo">02</span><span class="p">,</span><span class="o">.</span><span class="mi">98</span><span class="p">,</span><span class="o">.</span><span class="mo">05</span><span class="p">),]</span>
     353            <span class="n">values</span> <span class="o">+=</span> <span class="p">[</span><span class="n">v</span><span class="p">,]</span>
     354    <span class="n">dmin</span> <span class="o">=</span> <span class="n">getDmin</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">-</span><span class="mf">0.005</span>
     355    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">copy</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span><span class="p">)</span>   
     356    <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">brute</span><span class="p">(</span><span class="n">ZSSfunc</span><span class="p">,</span><span class="n">ranges</span><span class="p">,</span><span class="n">finish</span><span class="o">=</span><span class="n">so</span><span class="o">.</span><span class="n">fmin_cg</span><span class="p">,</span>
     357        <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">dmin</span><span class="p">,</span><span class="n">Inst</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">,</span><span class="n">ssopt</span><span class="p">[</span><span class="s">&#39;ModVec&#39;</span><span class="p">],</span><span class="n">Vref</span><span class="p">,</span><span class="n">ssopt</span><span class="p">[</span><span class="s">&#39;maxH&#39;</span><span class="p">],</span><span class="n">A</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">dlg</span><span class="p">))</span>
     358    <span class="k">return</span> <span class="n">Val2Vec</span><span class="p">(</span><span class="n">ssopt</span><span class="p">[</span><span class="s">&#39;ModVec&#39;</span><span class="p">],</span><span class="n">Vref</span><span class="p">,</span><span class="n">result</span><span class="p">)</span>
    277359               
    278360<div class="viewcode-block" id="IndexPeaks"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.IndexPeaks">[docs]</a><span class="k">def</span> <span class="nf">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">):</span>
     
    280362    <span class="kn">import</span> <span class="nn">bisect</span>
    281363    <span class="n">N</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span>
    282     <span class="k">if</span> <span class="n">N</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span> <span class="k">return</span> <span class="bp">False</span>
     364    <span class="k">if</span> <span class="n">N</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span> <span class="k">return</span> <span class="bp">False</span><span class="p">,</span><span class="n">peaks</span>
    283365    <span class="n">hklds</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span><span class="o">.</span><span class="n">T</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span><span class="o">+</span><span class="p">[</span><span class="mf">1000.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,]</span>
    284366    <span class="n">hklds</span><span class="o">.</span><span class="n">sort</span><span class="p">()</span>                                        <span class="c"># ascending sort - upper bound at end</span>
     
    286368    <span class="k">for</span> <span class="n">ipk</span><span class="p">,</span><span class="n">peak</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">peaks</span><span class="p">):</span>
    287369        <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span>
     370            <span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">]</span>                           <span class="c">#clear old indexing</span>
     371            <span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span>
    288372            <span class="n">i</span> <span class="o">=</span> <span class="n">bisect</span><span class="o">.</span><span class="n">bisect_right</span><span class="p">(</span><span class="n">hklds</span><span class="p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">7</span><span class="p">])</span>          <span class="c"># find peak position in hkl list</span>
    289             <span class="n">dm</span> <span class="o">=</span> <span class="n">peak</span><span class="p">[</span><span class="mi">7</span><span class="p">]</span><span class="o">-</span><span class="n">hklds</span><span class="p">[</span><span class="n">i</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>                         <span class="c"># peak to neighbor hkls in list</span>
    290             <span class="n">dp</span> <span class="o">=</span> <span class="n">hklds</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">-</span><span class="n">peak</span><span class="p">[</span><span class="mi">7</span><span class="p">]</span>
     373            <span class="n">dm</span> <span class="o">=</span> <span class="n">peak</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span><span class="o">-</span><span class="n">hklds</span><span class="p">[</span><span class="n">i</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>                         <span class="c"># peak to neighbor hkls in list</span>
     374            <span class="n">dp</span> <span class="o">=</span> <span class="n">hklds</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">-</span><span class="n">peak</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span>
    291375            <span class="n">pos</span> <span class="o">=</span> <span class="n">N</span><span class="o">-</span><span class="n">i</span>                                       <span class="c"># reverse the order</span>
    292376            <span class="k">if</span> <span class="n">dp</span> <span class="o">&gt;</span> <span class="n">dm</span><span class="p">:</span> <span class="n">pos</span> <span class="o">+=</span> <span class="mi">1</span>                            <span class="c"># closer to upper than lower</span>
     
    295379                <span class="k">break</span>
    296380            <span class="n">hkl</span> <span class="o">=</span> <span class="n">HKL</span><span class="p">[</span><span class="n">pos</span><span class="p">]</span>                                 <span class="c"># put in hkl</span>
    297             <span class="k">if</span> <span class="n">hkl</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>                                 <span class="c"># peak already assigned - test if this one better</span>
    298                 <span class="n">opeak</span> <span class="o">=</span> <span class="n">peaks</span><span class="p">[</span><span class="n">hkl</span><span class="p">[</span><span class="mi">4</span><span class="p">]]</span>
    299                 <span class="n">dold</span> <span class="o">=</span> <span class="nb">abs</span><span class="p">(</span><span class="n">opeak</span><span class="p">[</span><span class="mi">7</span><span class="p">]</span><span class="o">-</span><span class="n">hkl</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
     381            <span class="k">if</span> <span class="n">hkl</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>                                 <span class="c"># peak already assigned - test if this one better</span>
     382                <span class="n">opeak</span> <span class="o">=</span> <span class="n">peaks</span><span class="p">[</span><span class="n">hkl</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]]</span>
     383                <span class="n">dold</span> <span class="o">=</span> <span class="nb">abs</span><span class="p">(</span><span class="n">opeak</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span><span class="o">-</span><span class="n">hkl</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
    300384                <span class="n">dnew</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">dm</span><span class="p">,</span><span class="n">dp</span><span class="p">)</span>
    301385                <span class="k">if</span> <span class="n">dold</span> <span class="o">&gt;</span> <span class="n">dnew</span><span class="p">:</span>                             <span class="c"># new better - zero out old</span>
     
    304388                <span class="k">else</span><span class="p">:</span>                                       <span class="c"># old better - do nothing</span>
    305389                    <span class="k">continue</span>               
    306             <span class="n">hkl</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">=</span> <span class="n">ipk</span>
     390            <span class="n">hkl</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">ipk</span>
    307391            <span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">]</span> <span class="o">=</span> <span class="n">hkl</span><span class="p">[:</span><span class="mi">3</span><span class="p">]</span>
    308392            <span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="n">hkl</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span>                                <span class="c"># fill in d-calc</span>
     
    310394        <span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span>
    311395        <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span>
    312             <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mf">0.</span><span class="p">:</span>
     396            <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mf">0.</span><span class="p">:</span>
    313397                <span class="k">for</span> <span class="n">j</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">3</span><span class="p">):</span>
    314398                    <span class="k">if</span> <span class="nb">abs</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">4</span><span class="p">])</span> <span class="o">&gt;</span> <span class="n">hklmax</span><span class="p">[</span><span class="n">j</span><span class="p">]:</span> <span class="n">hklmax</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">=</span> <span class="nb">abs</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">4</span><span class="p">])</span>
    315399                <span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="bp">True</span>
    316400    <span class="k">if</span> <span class="n">hklmax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">hklmax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">hklmax</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
    317         <span class="k">return</span> <span class="bp">True</span>
    318     <span class="k">else</span><span class="p">:</span>
    319         <span class="k">return</span> <span class="bp">False</span>
     401        <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">peaks</span>
     402    <span class="k">else</span><span class="p">:</span>
     403        <span class="k">return</span> <span class="bp">False</span><span class="p">,</span><span class="n">peaks</span>  <span class="c">#nothing indexed!</span>
     404        </div>
     405<div class="viewcode-block" id="IndexSSPeaks"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.IndexSSPeaks">[docs]</a><span class="k">def</span> <span class="nf">IndexSSPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">):</span>
     406    <span class="s">&#39;needs a doc string&#39;</span>
     407    <span class="kn">import</span> <span class="nn">bisect</span>
     408    <span class="n">N</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span>
     409    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">copy</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span>
     410    <span class="k">if</span> <span class="n">N</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span> <span class="k">return</span> <span class="bp">False</span><span class="p">,</span><span class="n">Peaks</span>
     411    <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="o">==</span> <span class="mi">9</span><span class="p">:</span>      <span class="c">#add m column if missing</span>
     412        <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span><span class="n">Peaks</span><span class="p">,</span><span class="mi">7</span><span class="p">,</span><span class="n">np</span><span class="o">.</span><span class="n">zeros_like</span><span class="p">(</span><span class="n">Peaks</span><span class="o">.</span><span class="n">T</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
     413<span class="c">#        for peak in Peaks:</span>
     414<span class="c">#            peak.insert(7,0)</span>
     415    <span class="n">hklds</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span><span class="o">.</span><span class="n">T</span><span class="p">[</span><span class="mi">4</span><span class="p">])</span><span class="o">+</span><span class="p">[</span><span class="mf">1000.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,]</span>
     416    <span class="n">hklds</span><span class="o">.</span><span class="n">sort</span><span class="p">()</span>                                        <span class="c"># ascending sort - upper bound at end</span>
     417    <span class="n">hklmax</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">]</span>
     418    <span class="k">for</span> <span class="n">ipk</span><span class="p">,</span><span class="n">peak</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Peaks</span><span class="p">):</span>
     419        <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span> <span class="c">#Use</span>
     420            <span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">]</span>                           <span class="c">#clear old indexing</span>
     421            <span class="n">peak</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span>
     422            <span class="n">i</span> <span class="o">=</span> <span class="n">bisect</span><span class="o">.</span><span class="n">bisect_right</span><span class="p">(</span><span class="n">hklds</span><span class="p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">])</span>          <span class="c"># find peak position in hkl list</span>
     423            <span class="n">dm</span> <span class="o">=</span> <span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span><span class="o">-</span><span class="n">hklds</span><span class="p">[</span><span class="n">i</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>                         <span class="c"># peak to neighbor hkls in list</span>
     424            <span class="n">dp</span> <span class="o">=</span> <span class="n">hklds</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">-</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span>
     425            <span class="n">pos</span> <span class="o">=</span> <span class="n">N</span><span class="o">-</span><span class="n">i</span>                                       <span class="c"># reverse the order</span>
     426            <span class="k">if</span> <span class="n">dp</span> <span class="o">&gt;</span> <span class="n">dm</span><span class="p">:</span> <span class="n">pos</span> <span class="o">+=</span> <span class="mi">1</span>                            <span class="c"># closer to upper than lower</span>
     427            <span class="k">if</span> <span class="n">pos</span> <span class="o">&gt;=</span> <span class="n">N</span><span class="p">:</span>
     428                <span class="k">print</span> <span class="n">pos</span><span class="p">,</span><span class="n">N</span>
     429                <span class="k">break</span>
     430            <span class="n">hkl</span> <span class="o">=</span> <span class="n">HKL</span><span class="p">[</span><span class="n">pos</span><span class="p">]</span>                                 <span class="c"># put in hkl</span>
     431            <span class="k">if</span> <span class="n">hkl</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">:</span>                                 <span class="c"># peak already assigned - test if this one better</span>
     432                <span class="n">opeak</span> <span class="o">=</span> <span class="n">Peaks</span><span class="p">[</span><span class="n">hkl</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]]</span>
     433                <span class="n">dold</span> <span class="o">=</span> <span class="nb">abs</span><span class="p">(</span><span class="n">opeak</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span><span class="o">-</span><span class="n">hkl</span><span class="p">[</span><span class="mi">4</span><span class="p">])</span>
     434                <span class="n">dnew</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="n">dm</span><span class="p">,</span><span class="n">dp</span><span class="p">)</span>
     435                <span class="k">if</span> <span class="n">dold</span> <span class="o">&gt;</span> <span class="n">dnew</span><span class="p">:</span>                             <span class="c"># new better - zero out old</span>
     436                    <span class="n">opeak</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">]</span>
     437                    <span class="n">opeak</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span>
     438                <span class="k">else</span><span class="p">:</span>                                       <span class="c"># old better - do nothing</span>
     439                    <span class="k">continue</span>
     440            <span class="n">hkl</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">ipk</span>
     441            <span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="n">hkl</span><span class="p">[:</span><span class="mi">4</span><span class="p">]</span>
     442            <span class="n">peak</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span> <span class="o">=</span> <span class="n">hkl</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span>                                <span class="c"># fill in d-calc</span>
     443    <span class="k">for</span> <span class="n">peak</span> <span class="ow">in</span> <span class="n">Peaks</span><span class="p">:</span>
     444        <span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span>
     445        <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span>
     446            <span class="k">if</span> <span class="n">peak</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mf">0.</span><span class="p">:</span>
     447                <span class="k">for</span> <span class="n">j</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">4</span><span class="p">):</span>
     448                    <span class="k">if</span> <span class="nb">abs</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">4</span><span class="p">])</span> <span class="o">&gt;</span> <span class="n">hklmax</span><span class="p">[</span><span class="n">j</span><span class="p">]:</span> <span class="n">hklmax</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">=</span> <span class="nb">abs</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">4</span><span class="p">])</span>
     449                <span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="bp">True</span>
     450    <span class="k">if</span> <span class="n">hklmax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">hklmax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">hklmax</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">hklmax</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
     451        <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">Peaks</span>
     452    <span class="k">else</span><span class="p">:</span>
     453        <span class="k">return</span> <span class="bp">False</span><span class="p">,</span><span class="n">Peaks</span>  <span class="c">#nothing indexed!</span>
    320454        </div>
    321455<div class="viewcode-block" id="Values2A"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.Values2A">[docs]</a><span class="k">def</span> <span class="nf">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">):</span>
     
    332466        <span class="k">return</span> <span class="p">[</span><span class="n">values</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">values</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">values</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="mi">0</span><span class="p">,</span><span class="n">values</span><span class="p">[</span><span class="mi">3</span><span class="p">],</span><span class="mi">0</span><span class="p">]</span>
    333467    <span class="k">else</span><span class="p">:</span>
    334         <span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="n">values</span><span class="p">)</span>
     468        <span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="n">values</span><span class="p">[:</span><span class="mi">6</span><span class="p">])</span>
    335469        </div>
    336470<div class="viewcode-block" id="A2values"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.A2values">[docs]</a><span class="k">def</span> <span class="nf">A2values</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">):</span>
     
    346480    <span class="k">else</span><span class="p">:</span>
    347481        <span class="k">return</span> <span class="n">A</span>
    348 </div>
     482        </div>
     483<span class="k">def</span> <span class="nf">Values2Vec</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">val</span><span class="p">):</span>
     484    <span class="k">if</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">6</span><span class="p">]:</span>
     485        <span class="n">Nskip</span> <span class="o">=</span> <span class="mi">2</span>
     486    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">7</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">9</span><span class="p">,</span><span class="mi">10</span><span class="p">]:</span>
     487        <span class="n">Nskip</span> <span class="o">=</span> <span class="mi">3</span>
     488    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">11</span><span class="p">,</span><span class="mi">12</span><span class="p">]:</span>
     489        <span class="n">Nskip</span> <span class="o">=</span> <span class="mi">4</span>
     490    <span class="k">else</span><span class="p">:</span>
     491        <span class="n">Nskip</span> <span class="o">=</span> <span class="mi">6</span>
     492    <span class="n">Vec</span> <span class="o">=</span> <span class="p">[]</span>
     493    <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span>
     494    <span class="k">for</span> <span class="n">j</span><span class="p">,</span><span class="n">r</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Vref</span><span class="p">):</span>
     495        <span class="k">if</span> <span class="n">r</span><span class="p">:</span>
     496            <span class="n">Vec</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">val</span><span class="p">[</span><span class="n">i</span><span class="o">+</span><span class="n">Nskip</span><span class="p">])</span>
     497            <span class="n">i</span> <span class="o">+=</span> <span class="mi">1</span>
     498        <span class="k">else</span><span class="p">:</span>
     499            <span class="n">Vec</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">vec</span><span class="p">[</span><span class="n">j</span><span class="p">])</span>
     500    <span class="k">return</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">Vec</span><span class="p">)</span> 
     501
    349502<div class="viewcode-block" id="FitHKL"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.FitHKL">[docs]</a><span class="k">def</span> <span class="nf">FitHKL</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Pwr</span><span class="p">):</span>
    350503    <span class="s">&#39;needs a doc string&#39;</span>
     
    355508        <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsq</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    356509        <span class="k">return</span> <span class="p">(</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span><span class="o">*</span><span class="n">d</span><span class="o">**</span><span class="n">Pwr</span>
     510       
     511    <span class="k">def</span> <span class="nf">dervFit</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">Pwr</span><span class="p">):</span>
     512        <span class="k">if</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">]:</span>
     513            <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],]</span>
     514        <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,]:</span>
     515            <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     516        <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">5</span><span class="p">,</span><span class="mi">6</span><span class="p">]:</span>
     517            <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     518        <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">7</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">9</span><span class="p">,</span><span class="mi">10</span><span class="p">]:</span>
     519            <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     520        <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">11</span><span class="p">,</span><span class="mi">12</span><span class="p">]:</span>
     521            <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     522        <span class="k">else</span><span class="p">:</span>
     523            <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     524        <span class="n">derv</span> <span class="o">=</span> <span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">derv</span><span class="p">)</span>
     525        <span class="k">return</span> <span class="p">(</span><span class="n">derv</span><span class="o">*</span><span class="n">d</span><span class="o">**</span><span class="n">Pwr</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
    357526   
    358527    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
    359    
    360528    <span class="n">values</span> <span class="o">=</span> <span class="n">A2values</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    361     <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFit</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">,</span>
     529    <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFit</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">Dfun</span><span class="o">=</span><span class="n">dervFit</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">0.000001</span><span class="p">,</span>
    362530        <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Pwr</span><span class="p">))</span>
    363531    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
    364532    <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">errFit</span><span class="p">(</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Pwr</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">),</span><span class="n">A</span><span class="p">,</span><span class="n">result</span>
    365533           </div>
    366 <div class="viewcode-block" id="FitHKLZ"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.FitHKLZ">[docs]</a><span class="k">def</span> <span class="nf">FitHKLZ</span><span class="p">(</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">):</span>
    367     <span class="s">&#39;needs a doc string&#39;</span>
    368    
    369     <span class="k">def</span> <span class="nf">errFit</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">):</span>
    370         <span class="n">Zero</span> <span class="o">=</span> <span class="n">Z</span>
    371         <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>   
    372             <span class="n">Zero</span> <span class="o">=</span> <span class="n">values</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
    373         <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">[:</span><span class="mi">6</span><span class="p">])</span>
    374         <span class="n">Qo</span> <span class="o">=</span> <span class="mf">1.</span><span class="o">/</span><span class="n">d</span><span class="o">**</span><span class="mi">2</span>
    375         <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqZ</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">)</span>
    376         <span class="k">return</span> <span class="p">(</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span><span class="o">*</span><span class="n">d</span><span class="o">**</span><span class="n">Pwr</span>
    377    
    378     <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
    379    
     534<span class="k">def</span> <span class="nf">errFitZ</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     535    <span class="n">Zero</span> <span class="o">=</span> <span class="n">Z</span>
     536    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>   
     537        <span class="n">Zero</span> <span class="o">=</span> <span class="n">values</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
     538    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     539    <span class="n">Qo</span> <span class="o">=</span> <span class="mf">1.</span><span class="o">/</span><span class="n">d</span><span class="o">**</span><span class="mi">2</span>
     540    <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqZ</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">)</span>
     541    <span class="k">return</span> <span class="p">(</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span>
     542   
     543<span class="k">def</span> <span class="nf">dervFitZ</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     544    <span class="k">if</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">]:</span>
     545        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],]</span>
     546    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,]:</span>
     547        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     548    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">5</span><span class="p">,</span><span class="mi">6</span><span class="p">]:</span>
     549        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     550    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">7</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">9</span><span class="p">,</span><span class="mi">10</span><span class="p">]:</span>
     551        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     552    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">11</span><span class="p">,</span><span class="mi">12</span><span class="p">]:</span>
     553        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     554    <span class="k">else</span><span class="p">:</span>
     555        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     556    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
     557        <span class="n">derv</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">npsind</span><span class="p">(</span><span class="n">tth</span><span class="p">)</span><span class="o">*</span><span class="mf">2.0</span><span class="o">*</span><span class="n">rpd</span><span class="o">/</span><span class="n">wave</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
     558    <span class="n">derv</span> <span class="o">=</span> <span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">derv</span><span class="p">)</span>
     559    <span class="k">return</span> <span class="n">derv</span><span class="o">.</span><span class="n">T</span>
     560   
     561<div class="viewcode-block" id="FitHKLZ"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.FitHKLZ">[docs]</a><span class="k">def</span> <span class="nf">FitHKLZ</span><span class="p">(</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     562    <span class="s">&#39;needs a doc string&#39;</span>
     563   
     564    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>   
    380565    <span class="n">values</span> <span class="o">=</span> <span class="n">A2values</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    381566    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
    382567        <span class="n">values</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">Z</span><span class="p">)</span>
    383     <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFit</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">,</span><span class="n">factor</span><span class="o">=</span><span class="mf">0.001</span><span class="p">,</span>
    384         <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">))</span>
     568    <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFitZ</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">Dfun</span><span class="o">=</span><span class="n">dervFitZ</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">,</span>
     569        <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">))</span>
    385570    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">][:</span><span class="mi">6</span><span class="p">])</span>
    386571    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
    387572        <span class="n">Z</span> <span class="o">=</span> <span class="n">result</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>
    388        
    389     <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">errFit</span><span class="p">(</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">),</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span>
    390     </div>
    391 <div class="viewcode-block" id="FitHKLT"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.FitHKLT">[docs]</a><span class="k">def</span> <span class="nf">FitHKLT</span><span class="p">(</span><span class="n">difC</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">):</span>
    392     <span class="s">&#39;needs a doc string&#39;</span>
    393    
    394     <span class="k">def</span> <span class="nf">errFit</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tof</span><span class="p">,</span><span class="n">difC</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">):</span>
    395         <span class="n">Zero</span> <span class="o">=</span> <span class="n">Z</span>
    396         <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>   
    397             <span class="n">Zero</span> <span class="o">=</span> <span class="n">values</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
    398         <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">[:</span><span class="mi">6</span><span class="p">])</span>
    399         <span class="n">Qo</span> <span class="o">=</span> <span class="mf">1.</span><span class="o">/</span><span class="n">d</span><span class="o">**</span><span class="mi">2</span>
    400         <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqT</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">tof</span><span class="p">,</span><span class="n">difC</span><span class="p">)</span>
    401         <span class="k">return</span> <span class="p">(</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span><span class="o">*</span><span class="n">d</span><span class="o">**</span><span class="n">Pwr</span>
    402    
    403     <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
    404    
     573    <span class="n">chisq</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">errFitZ</span><span class="p">(</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
     574    <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">chisq</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span>
     575    </div>
     576<span class="k">def</span> <span class="nf">errFitZSS</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     577    <span class="n">Zero</span> <span class="o">=</span> <span class="n">Z</span>
     578    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>   
     579        <span class="n">Zero</span> <span class="o">=</span> <span class="n">values</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
     580    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     581    <span class="n">Vec</span> <span class="o">=</span> <span class="n">Values2Vec</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     582    <span class="n">Qo</span> <span class="o">=</span> <span class="mf">1.</span><span class="o">/</span><span class="n">d</span><span class="o">**</span><span class="mi">2</span>
     583    <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqZSS</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Vec</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">)</span>
     584    <span class="k">return</span> <span class="p">(</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span>
     585   
     586<span class="k">def</span> <span class="nf">dervFitZSS</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tth</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     587    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     588    <span class="n">Vec</span> <span class="o">=</span> <span class="n">Values2Vec</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     589    <span class="n">HM</span> <span class="o">=</span> <span class="n">H</span><span class="p">[:</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="p">(</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">][:,</span><span class="n">np</span><span class="o">.</span><span class="n">newaxis</span><span class="p">]</span><span class="o">*</span><span class="n">Vec</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
     590    <span class="k">if</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,]:</span>
     591        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     592    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">5</span><span class="p">,</span><span class="mi">6</span><span class="p">]:</span>
     593        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     594    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">7</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">9</span><span class="p">,</span><span class="mi">10</span><span class="p">]:</span>
     595        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     596    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">11</span><span class="p">,</span><span class="mi">12</span><span class="p">]:</span>
     597        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     598    <span class="k">else</span><span class="p">:</span>
     599        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     600    <span class="k">if</span> <span class="n">Vref</span><span class="p">[</span><span class="mi">0</span><span class="p">]:</span>
     601        <span class="n">derv</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="mf">2.</span><span class="o">*</span><span class="n">A</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="n">A</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="n">A</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
     602    <span class="k">if</span> <span class="n">Vref</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
     603        <span class="n">derv</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="mf">2.</span><span class="o">*</span><span class="n">A</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="n">A</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="n">A</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
     604    <span class="k">if</span> <span class="n">Vref</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span>
     605        <span class="n">derv</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="mf">2.</span><span class="o">*</span><span class="n">A</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="n">A</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span><span class="o">+</span><span class="n">A</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span><span class="o">*</span><span class="n">HM</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>   
     606    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
     607        <span class="n">derv</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">npsind</span><span class="p">(</span><span class="n">tth</span><span class="p">)</span><span class="o">*</span><span class="mf">2.0</span><span class="o">*</span><span class="n">rpd</span><span class="o">/</span><span class="n">wave</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
     608    <span class="n">derv</span> <span class="o">=</span> <span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">derv</span><span class="p">)</span>
     609    <span class="k">return</span> <span class="n">derv</span><span class="o">.</span><span class="n">T</span>
     610   
     611<div class="viewcode-block" id="FitHKLZSS"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.FitHKLZSS">[docs]</a><span class="k">def</span> <span class="nf">FitHKLZSS</span><span class="p">(</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">V</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     612    <span class="s">&#39;needs a doc string&#39;</span>
     613   
     614    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>   
     615    <span class="n">values</span> <span class="o">=</span> <span class="n">A2values</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
     616    <span class="k">for</span> <span class="n">v</span><span class="p">,</span><span class="n">r</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">V</span><span class="p">,</span><span class="n">Vref</span><span class="p">):</span>
     617        <span class="k">if</span> <span class="n">r</span><span class="p">:</span>
     618            <span class="n">values</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">v</span><span class="p">)</span>
     619    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
     620        <span class="n">values</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">Z</span><span class="p">)</span>
     621    <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFitZSS</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">Dfun</span><span class="o">=</span><span class="n">dervFitZSS</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">1.e-6</span><span class="p">,</span>
     622        <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">8</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">,</span><span class="n">V</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">))</span>
     623    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
     624    <span class="n">Vec</span> <span class="o">=</span> <span class="n">Values2Vec</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">V</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
     625    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
     626        <span class="n">Z</span> <span class="o">=</span> <span class="n">result</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>
     627    <span class="n">chisq</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">errFitZSS</span><span class="p">(</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">8</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">,</span><span class="n">Vec</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
     628    <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">chisq</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Vec</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span>
     629    </div>
     630<span class="k">def</span> <span class="nf">errFitT</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tof</span><span class="p">,</span><span class="n">difC</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     631    <span class="n">Zero</span> <span class="o">=</span> <span class="n">Z</span>
     632    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>   
     633        <span class="n">Zero</span> <span class="o">=</span> <span class="n">values</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span>
     634    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">values</span><span class="p">)</span>
     635    <span class="n">Qo</span> <span class="o">=</span> <span class="mf">1.</span><span class="o">/</span><span class="n">d</span><span class="o">**</span><span class="mi">2</span>
     636    <span class="n">Qc</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqT</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">tof</span><span class="p">,</span><span class="n">difC</span><span class="p">)</span>
     637    <span class="k">return</span> <span class="p">(</span><span class="n">Qo</span><span class="o">-</span><span class="n">Qc</span><span class="p">)</span>
     638   
     639<span class="k">def</span> <span class="nf">dervFitT</span><span class="p">(</span><span class="n">values</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">H</span><span class="p">,</span><span class="n">tof</span><span class="p">,</span><span class="n">difC</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     640    <span class="k">if</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">]:</span>
     641        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],]</span>
     642    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,]:</span>
     643        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     644    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">5</span><span class="p">,</span><span class="mi">6</span><span class="p">]:</span>
     645        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     646    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">7</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">9</span><span class="p">,</span><span class="mi">10</span><span class="p">]:</span>
     647        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     648    <span class="k">elif</span> <span class="n">ibrav</span> <span class="ow">in</span> <span class="p">[</span><span class="mi">11</span><span class="p">,</span><span class="mi">12</span><span class="p">]:</span>
     649        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     650    <span class="k">else</span><span class="p">:</span>
     651        <span class="n">derv</span> <span class="o">=</span> <span class="p">[</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">H</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">H</span><span class="p">[</span><span class="mi">2</span><span class="p">]]</span>
     652    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
     653        <span class="n">derv</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">ones_like</span><span class="p">(</span><span class="n">d</span><span class="p">)</span><span class="o">/</span><span class="n">difC</span><span class="p">)</span>
     654    <span class="n">derv</span> <span class="o">=</span> <span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">derv</span><span class="p">)</span>
     655    <span class="k">return</span> <span class="n">derv</span><span class="o">.</span><span class="n">T</span>
     656   
     657<div class="viewcode-block" id="FitHKLT"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.FitHKLT">[docs]</a><span class="k">def</span> <span class="nf">FitHKLT</span><span class="p">(</span><span class="n">difC</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">):</span>
     658    <span class="s">&#39;needs a doc string&#39;</span>
     659   
     660    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>   
    405661    <span class="n">values</span> <span class="o">=</span> <span class="n">A2values</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    406662    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
    407663        <span class="n">values</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">Z</span><span class="p">)</span>
    408     <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFit</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">,</span><span class="n">factor</span><span class="o">=</span><span class="mf">0.001</span><span class="p">,</span>
    409         <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">difC</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">))</span>
    410     <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">][:</span><span class="mi">6</span><span class="p">])</span>
     664    <span class="n">result</span> <span class="o">=</span> <span class="n">so</span><span class="o">.</span><span class="n">leastsq</span><span class="p">(</span><span class="n">errFitT</span><span class="p">,</span><span class="n">values</span><span class="p">,</span><span class="n">Dfun</span><span class="o">=</span><span class="n">dervFitT</span><span class="p">,</span><span class="n">full_output</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">ftol</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">,</span>
     665        <span class="n">args</span><span class="o">=</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">difC</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">))</span>
     666    <span class="n">A</span> <span class="o">=</span> <span class="n">Values2A</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
    411667    <span class="k">if</span> <span class="n">Zref</span><span class="p">:</span>
    412668        <span class="n">Z</span> <span class="o">=</span> <span class="n">result</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>
    413    
    414     <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">errFit</span><span class="p">(</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">difC</span><span class="p">,</span><span class="n">Zref</span><span class="p">,</span><span class="n">Pwr</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">),</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span>
     669    <span class="n">chisq</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sum</span><span class="p">(</span><span class="n">errFitT</span><span class="p">(</span><span class="n">result</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">],</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">difC</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Zref</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
     670    <span class="k">return</span> <span class="bp">True</span><span class="p">,</span><span class="n">chisq</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span>
    415671               </div>
    416672<div class="viewcode-block" id="rotOrthoA"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.rotOrthoA">[docs]</a><span class="k">def</span> <span class="nf">rotOrthoA</span><span class="p">(</span><span class="n">A</span><span class="p">):</span>
     
    454710<div class="viewcode-block" id="getDmin"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.getDmin">[docs]</a><span class="k">def</span> <span class="nf">getDmin</span><span class="p">(</span><span class="n">peaks</span><span class="p">):</span>
    455711    <span class="s">&#39;needs a doc string&#39;</span>
    456     <span class="k">return</span> <span class="n">peaks</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">][</span><span class="mi">7</span><span class="p">]</span>
     712    <span class="k">return</span> <span class="n">peaks</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">][</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span>
    457713    </div>
    458714<div class="viewcode-block" id="getDmax"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.getDmax">[docs]</a><span class="k">def</span> <span class="nf">getDmax</span><span class="p">(</span><span class="n">peaks</span><span class="p">):</span>
    459715    <span class="s">&#39;needs a doc string&#39;</span>
    460     <span class="k">return</span> <span class="n">peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">7</span><span class="p">]</span>
     716    <span class="k">return</span> <span class="n">peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span>
    461717    </div>
    462718<div class="viewcode-block" id="refinePeaksZ"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.refinePeaksZ">[docs]</a><span class="k">def</span> <span class="nf">refinePeaksZ</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">):</span>
    463719    <span class="s">&#39;needs a doc string&#39;</span>
    464720    <span class="n">dmin</span> <span class="o">=</span> <span class="n">getDmin</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span>
    465     <span class="n">OK</span><span class="p">,</span><span class="n">smin</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span> <span class="o">=</span> <span class="n">FitHKLZ</span><span class="p">(</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
     721    <span class="n">OK</span><span class="p">,</span><span class="n">smin</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span> <span class="o">=</span> <span class="n">FitHKLZ</span><span class="p">(</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">)</span>
    466722    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
    467723    <span class="n">H</span> <span class="o">=</span> <span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">]</span>
    468724    <span class="n">Peaks</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="mf">1.</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="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqZ</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">))</span>
    469725    <span class="n">peaks</span> <span class="o">=</span> <span class="n">Peaks</span><span class="o">.</span><span class="n">T</span>   
    470     <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Aref</span><span class="p">)</span>
     726    <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    471727    <span class="n">M20</span><span class="p">,</span><span class="n">X20</span> <span class="o">=</span> <span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
    472728    <span class="k">return</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">),</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span>
    473729    </div>
     730<div class="viewcode-block" id="refinePeaksZSS"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.refinePeaksZSS">[docs]</a><span class="k">def</span> <span class="nf">refinePeaksZSS</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span><span class="n">Inst</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">,</span><span class="n">maxH</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">vecRef</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">):</span>
     731    <span class="s">&#39;needs a doc string&#39;</span>
     732    <span class="n">dmin</span> <span class="o">=</span> <span class="n">getDmin</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span>
     733    <span class="n">OK</span><span class="p">,</span><span class="n">smin</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span> <span class="o">=</span> <span class="n">FitHKLZSS</span><span class="p">(</span><span class="n">wave</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">vec</span><span class="p">,</span><span class="n">vecRef</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">)</span>
     734    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
     735    <span class="n">H</span> <span class="o">=</span> <span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">8</span><span class="p">]</span>
     736    <span class="n">Peaks</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span> <span class="o">=</span> <span class="mf">1.</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="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqZSS</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">wave</span><span class="p">))</span>  <span class="c">#H,A,vec,Z,tth,lam</span>
     737    <span class="n">peaks</span> <span class="o">=</span> <span class="n">Peaks</span><span class="o">.</span><span class="n">T</span>   
     738    <span class="n">HKL</span> <span class="o">=</span>  <span class="n">G2pwd</span><span class="o">.</span><span class="n">getHKLMpeak</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">Inst</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">maxH</span><span class="p">,</span><span class="n">Aref</span><span class="p">)</span>
     739    <span class="n">M20</span><span class="p">,</span><span class="n">X20</span> <span class="o">=</span> <span class="n">calc_M20SS</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
     740    <span class="k">return</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">),</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Vref</span><span class="p">,</span><span class="n">Z</span>
     741    </div>
    474742<div class="viewcode-block" id="refinePeaksT"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.refinePeaksT">[docs]</a><span class="k">def</span> <span class="nf">refinePeaksT</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">difC</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">):</span>
    475743    <span class="s">&#39;needs a doc string&#39;</span>
    476744    <span class="n">dmin</span> <span class="o">=</span> <span class="n">getDmin</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span>
    477     <span class="n">OK</span><span class="p">,</span><span class="n">smin</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span> <span class="o">=</span> <span class="n">FitHKLT</span><span class="p">(</span><span class="n">difC</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
     745    <span class="n">OK</span><span class="p">,</span><span class="n">smin</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">result</span> <span class="o">=</span> <span class="n">FitHKLT</span><span class="p">(</span><span class="n">difC</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Zero</span><span class="p">,</span><span class="n">ZeroRef</span><span class="p">)</span>
    478746    <span class="n">Peaks</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span><span class="o">.</span><span class="n">T</span>
    479747    <span class="n">H</span> <span class="o">=</span> <span class="n">Peaks</span><span class="p">[</span><span class="mi">4</span><span class="p">:</span><span class="mi">7</span><span class="p">]</span>
    480748    <span class="n">Peaks</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span> <span class="o">=</span> <span class="mf">1.</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="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsqT</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span><span class="p">,</span><span class="n">Peaks</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">difC</span><span class="p">))</span>
    481749    <span class="n">peaks</span> <span class="o">=</span> <span class="n">Peaks</span><span class="o">.</span><span class="n">T</span>   
    482     <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Aref</span><span class="p">)</span>
     750    <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    483751    <span class="n">M20</span><span class="p">,</span><span class="n">X20</span> <span class="o">=</span> <span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
    484752    <span class="k">return</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">),</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span><span class="p">,</span><span class="n">Z</span>
    485753    </div>
    486 <div class="viewcode-block" id="refinePeaks"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.refinePeaks">[docs]</a><span class="k">def</span> <span class="nf">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">):</span>
     754<div class="viewcode-block" id="refinePeaks"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.refinePeaks">[docs]</a><span class="k">def</span> <span class="nf">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">ifX20</span><span class="o">=</span><span class="bp">True</span><span class="p">):</span>
    487755    <span class="s">&#39;needs a doc string&#39;</span>
    488756    <span class="n">dmin</span> <span class="o">=</span> <span class="n">getDmin</span><span class="p">(</span><span class="n">peaks</span><span class="p">)</span>
     
    493761    <span class="n">tries</span> <span class="o">=</span> <span class="mi">0</span>
    494762    <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    495     <span class="k">while</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">2</span> <span class="ow">and</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">):</span>
     763    <span class="k">while</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">2</span> <span class="ow">and</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">0</span><span class="p">]:</span>
    496764        <span class="n">Pwr</span> <span class="o">=</span> <span class="n">pwr</span> <span class="o">-</span> <span class="p">(</span><span class="n">tries</span> <span class="o">%</span> <span class="mi">2</span><span class="p">)</span>
    497765        <span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span>
     
    526794            <span class="n">A</span> <span class="o">=</span> <span class="n">oldA</span>
    527795       
    528     <span class="n">M20</span><span class="p">,</span><span class="n">X20</span> <span class="o">=</span> <span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
     796    <span class="n">M20</span><span class="p">,</span><span class="n">X20</span> <span class="o">=</span> <span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
    529797    <span class="k">return</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">),</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span>
    530798        </div>
    531 <div class="viewcode-block" id="findBestCell"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.findBestCell">[docs]</a><span class="k">def</span> <span class="nf">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Ntries</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">V1</span><span class="p">):</span>
     799<div class="viewcode-block" id="findBestCell"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.findBestCell">[docs]</a><span class="k">def</span> <span class="nf">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Ntries</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">V1</span><span class="p">,</span><span class="n">ifX20</span><span class="o">=</span><span class="bp">True</span><span class="p">):</span>
    532800    <span class="s">&#39;needs a doc string&#39;</span>
    533801<span class="c"># dlg &amp; ncMax are used for wx progress bar </span>
     
    544812        <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">[:])</span>
    545813        <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span> <span class="o">&gt;</span> <span class="n">mHKL</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]:</span>
    546             <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
    547             <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">),</span><span class="n">A</span><span class="p">[:]])</span>
     814            <span class="n">peaks</span> <span class="o">=</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
     815            <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">,</span><span class="n">ifX20</span><span class="p">),</span><span class="n">A</span><span class="p">[:]])</span>
    548816    <span class="n">tries</span> <span class="o">=</span> <span class="mi">0</span>
    549817    <span class="k">while</span> <span class="n">tries</span> <span class="o">&lt;</span> <span class="n">Ntries</span><span class="p">:</span>
     
    556824        <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">)</span>
    557825       
    558         <span class="k">if</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span> <span class="o">&gt;</span> <span class="n">mHKL</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]:</span>
    559             <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">)</span>
    560             <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">),</span><span class="n">Aref</span><span class="p">[:]])</span>
     826        <span class="k">if</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span> <span class="ow">and</span> <span class="nb">len</span><span class="p">(</span><span class="n">HKL</span><span class="p">)</span> <span class="o">&gt;</span> <span class="n">mHKL</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]:</span>
     827            <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
     828            <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">,</span><span class="n">ifX20</span><span class="p">),</span><span class="n">Aref</span><span class="p">[:]])</span>
    561829            <span class="k">if</span> <span class="n">ibrav</span> <span class="o">==</span> <span class="mi">9</span><span class="p">:</span>                          <span class="c">#C-centered orthorhombic</span>
    562830                <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="mi">2</span><span class="p">):</span>
    563831                    <span class="n">Abeg</span> <span class="o">=</span> <span class="n">rotOrthoA</span><span class="p">(</span><span class="n">Abeg</span><span class="p">[:])</span>
    564                     <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">)</span>
     832                    <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
    565833                    <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Aref</span><span class="p">)</span>
    566                     <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
    567                     <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">),</span><span class="n">Aref</span><span class="p">[:]])</span>
     834                    <span class="n">peaks</span> <span class="o">=</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
     835                    <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">,</span><span class="n">ifX20</span><span class="p">),</span><span class="n">Aref</span><span class="p">[:]])</span>
    568836            <span class="k">elif</span> <span class="n">ibrav</span> <span class="o">==</span> <span class="mi">11</span><span class="p">:</span>                      <span class="c">#C-centered monoclinic</span>
    569837                <span class="n">Abeg</span> <span class="o">=</span> <span class="n">swapMonoA</span><span class="p">(</span><span class="n">Abeg</span><span class="p">[:])</span>
    570                 <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">)</span>
     838                <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Aref</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Abeg</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
    571839                <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">Aref</span><span class="p">)</span>
    572                 <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
    573                 <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">),</span><span class="n">Aref</span><span class="p">[:]])</span>
     840                <span class="n">peaks</span> <span class="o">=</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
     841                <span class="n">Asave</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">calc_M20</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">,</span><span class="n">ifX20</span><span class="p">),</span><span class="n">Aref</span><span class="p">[:]])</span>
    574842        <span class="k">else</span><span class="p">:</span>
    575843            <span class="k">break</span>
     
    584852    <span class="n">X</span> <span class="o">=</span> <span class="n">sortM20</span><span class="p">(</span><span class="n">Asave</span><span class="p">)</span>
    585853    <span class="k">if</span> <span class="n">X</span><span class="p">:</span>
    586         <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">X</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">])</span>
     854        <span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">refinePeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">X</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span><span class="n">ifX20</span><span class="p">)</span>
    587855        <span class="k">return</span> <span class="n">GoOn</span><span class="p">,</span><span class="n">Lhkl</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span>
    588856       
     
    612880    <span class="k">return</span> <span class="n">A</span>
    613881</div>
    614 <div class="viewcode-block" id="DoIndexPeaks"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.DoIndexPeaks">[docs]</a><span class="k">def</span> <span class="nf">DoIndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">controls</span><span class="p">,</span><span class="n">bravais</span><span class="p">):</span>
     882<div class="viewcode-block" id="DoIndexPeaks"><a class="viewcode-back" href="../GSASIIindex.html#GSASIIindex.DoIndexPeaks">[docs]</a><span class="k">def</span> <span class="nf">DoIndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">controls</span><span class="p">,</span><span class="n">bravais</span><span class="p">,</span><span class="n">ifX20</span><span class="o">=</span><span class="bp">True</span><span class="p">):</span>
    615883    <span class="s">&#39;needs a doc string&#39;</span>
    616884   
     
    655923                                <span class="k">if</span> <span class="ow">not</span> <span class="n">N2</span><span class="p">:</span>
    656924                                    <span class="n">A</span> <span class="o">=</span> <span class="p">[]</span>
    657                                     <span class="n">GoOn</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Nm</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]</span><span class="o">*</span><span class="n">N1s</span><span class="p">[</span><span class="n">ibrav</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">V1</span><span class="p">)</span>
     925                                    <span class="n">GoOn</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="n">A</span><span class="p">,</span><span class="n">Nm</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]</span><span class="o">*</span><span class="n">N1s</span><span class="p">[</span><span class="n">ibrav</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">V1</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
    658926                                <span class="k">if</span> <span class="n">A</span><span class="p">:</span>
    659                                     <span class="n">GoOn</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="n">A</span><span class="p">[:],</span><span class="n">N1s</span><span class="p">[</span><span class="n">ibrav</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
     927                                    <span class="n">GoOn</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="n">A</span><span class="p">[:],</span><span class="n">N1s</span><span class="p">[</span><span class="n">ibrav</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
    660928                            <span class="k">else</span><span class="p">:</span>
    661                                 <span class="n">GoOn</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="n">Nm</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]</span><span class="o">*</span><span class="n">N1s</span><span class="p">[</span><span class="n">ibrav</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">V1</span><span class="p">)</span>
     929                                <span class="n">GoOn</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">A</span> <span class="o">=</span> <span class="n">findBestCell</span><span class="p">(</span><span class="n">dlg</span><span class="p">,</span><span class="n">ncMax</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="n">Nm</span><span class="p">[</span><span class="n">ibrav</span><span class="p">]</span><span class="o">*</span><span class="n">N1s</span><span class="p">[</span><span class="n">ibrav</span><span class="p">],</span><span class="n">ibrav</span><span class="p">,</span><span class="n">peaks</span><span class="p">,</span><span class="n">V1</span><span class="p">,</span><span class="n">ifX20</span><span class="p">)</span>
    662930                            <span class="k">if</span> <span class="n">Nc</span> <span class="o">&gt;=</span> <span class="n">ncMax</span><span class="p">:</span>
    663931                                <span class="n">GoOn</span> <span class="o">=</span> <span class="bp">False</span>
     
    675943                                        <span class="n">A</span> <span class="o">=</span> <span class="n">monoCellReduce</span><span class="p">(</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">[:])</span>
    676944                                    <span class="n">HKL</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">GenHBravais</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">A</span><span class="p">)</span>
    677                                     <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)</span>
     945                                    <span class="n">peaks</span> <span class="o">=</span> <span class="n">IndexPeaks</span><span class="p">(</span><span class="n">peaks</span><span class="p">,</span><span class="n">HKL</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
    678946                                    <span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">alp</span><span class="p">,</span><span class="n">bet</span><span class="p">,</span><span class="n">gam</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">A2cell</span><span class="p">(</span><span class="n">A</span><span class="p">)</span>
    679947                                    <span class="n">V</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">calc_V</span><span class="p">(</span><span class="n">A</span><span class="p">)</span>
    680                                     <span class="k">print</span> <span class="s">&quot;</span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.2f</span><span class="s"> </span><span class="si">%10.2f</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">alp</span><span class="p">,</span><span class="n">bet</span><span class="p">,</span><span class="n">gam</span><span class="p">,</span><span class="n">V</span><span class="p">,</span><span class="n">V1</span><span class="p">)</span>
    681948                                    <span class="k">if</span> <span class="n">M20</span> <span class="o">&gt;=</span> <span class="mf">2.0</span><span class="p">:</span>
     949                                        <span class="k">print</span> <span class="s">&quot;</span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.2f</span><span class="s"> </span><span class="si">%10.2f</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">Nc</span><span class="p">,</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">alp</span><span class="p">,</span><span class="n">bet</span><span class="p">,</span><span class="n">gam</span><span class="p">,</span><span class="n">V</span><span class="p">,</span><span class="n">V1</span><span class="p">)</span>
    682950                                        <span class="n">cells</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">M20</span><span class="p">,</span><span class="n">X20</span><span class="p">,</span><span class="n">ibrav</span><span class="p">,</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">alp</span><span class="p">,</span><span class="n">bet</span><span class="p">,</span><span class="n">gam</span><span class="p">,</span><span class="n">V</span><span class="p">,</span><span class="bp">False</span><span class="p">,</span><span class="bp">False</span><span class="p">])</span>
    683951                            <span class="k">if</span> <span class="ow">not</span> <span class="n">GoOn</span><span class="p">:</span>
Note: See TracChangeset for help on using the changeset viewer.