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/GSASIIstrIO.html

    r1513 r1709  
    5151<span class="c"># -*- coding: utf-8 -*-</span>
    5252<span class="c">########### SVN repository information ###################</span>
    53 <span class="c"># $Date: 2014-09-14 19:48:39 -0500 (Sun, 14 Sep 2014) $</span>
     53<span class="c"># $Date: 2015-02-28 09:16:41 -0600 (Sat, 28 Feb 2015) $</span>
    5454<span class="c"># $Author: vondreele $</span>
    55 <span class="c"># $Revision: 1496 $</span>
     55<span class="c"># $Revision: 1682 $</span>
    5656<span class="c"># $URL: https://subversion.xray.aps.anl.gov/pyGSAS/trunk/GSASIIstrIO.py $</span>
    57 <span class="c"># $Id: GSASIIstrIO.py 1496 2014-09-15 00:48:39Z vondreele $</span>
     57<span class="c"># $Id: GSASIIstrIO.py 1682 2015-02-28 15:16:41Z vondreele $</span>
    5858<span class="c">########### SVN repository information ###################</span>
    5959<span class="sd">&#39;&#39;&#39;</span>
     
    7575<span class="kn">import</span> <span class="nn">scipy.optimize</span> <span class="kn">as</span> <span class="nn">so</span>
    7676<span class="kn">import</span> <span class="nn">GSASIIpath</span>
    77 <span class="n">GSASIIpath</span><span class="o">.</span><span class="n">SetVersionNumber</span><span class="p">(</span><span class="s">&quot;$Revision: 1496 $&quot;</span><span class="p">)</span>
     77<span class="n">GSASIIpath</span><span class="o">.</span><span class="n">SetVersionNumber</span><span class="p">(</span><span class="s">&quot;$Revision: 1682 $&quot;</span><span class="p">)</span>
    7878<span class="kn">import</span> <span class="nn">GSASIIElem</span> <span class="kn">as</span> <span class="nn">G2el</span>
    7979<span class="kn">import</span> <span class="nn">GSASIIgrid</span> <span class="kn">as</span> <span class="nn">G2gd</span>
     
    239239    <span class="n">rbIds</span> <span class="o">=</span> <span class="n">rigidbodyDict</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#39;RBIds&#39;</span><span class="p">,{</span><span class="s">&#39;Vector&#39;</span><span class="p">:[],</span><span class="s">&#39;Residue&#39;</span><span class="p">:[]})</span>
    240240    <span class="n">rbVary</span><span class="p">,</span><span class="n">rbDict</span> <span class="o">=</span> <span class="n">GetRigidBodyModels</span><span class="p">(</span><span class="n">rigidbodyDict</span><span class="p">,</span><span class="n">Print</span><span class="o">=</span><span class="bp">False</span><span class="p">)</span>
    241     <span class="n">Natoms</span><span class="p">,</span><span class="n">atomIndx</span><span class="p">,</span><span class="n">phaseVary</span><span class="p">,</span><span class="n">phaseDict</span><span class="p">,</span><span class="n">pawleyLookup</span><span class="p">,</span><span class="n">FFtables</span><span class="p">,</span><span class="n">BLtables</span> <span class="o">=</span> <span class="n">GetPhaseData</span><span class="p">(</span><span class="n">Phases</span><span class="p">,</span><span class="n">RestraintDict</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span><span class="n">rbIds</span><span class="o">=</span><span class="n">rbIds</span><span class="p">,</span><span class="n">Print</span><span class="o">=</span><span class="bp">False</span><span class="p">)</span>
     241    <span class="n">Natoms</span><span class="p">,</span><span class="n">atomIndx</span><span class="p">,</span><span class="n">phaseVary</span><span class="p">,</span><span class="n">phaseDict</span><span class="p">,</span><span class="n">pawleyLookup</span><span class="p">,</span><span class="n">FFtables</span><span class="p">,</span><span class="n">BLtables</span><span class="p">,</span><span class="n">maxSSwave</span> <span class="o">=</span> <span class="n">GetPhaseData</span><span class="p">(</span><span class="n">Phases</span><span class="p">,</span><span class="n">RestraintDict</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span><span class="n">rbIds</span><span class="o">=</span><span class="n">rbIds</span><span class="p">,</span><span class="n">Print</span><span class="o">=</span><span class="bp">False</span><span class="p">)</span>
    242242    <span class="n">hapVary</span><span class="p">,</span><span class="n">hapDict</span><span class="p">,</span><span class="n">controlDict</span> <span class="o">=</span> <span class="n">GetHistogramPhaseData</span><span class="p">(</span><span class="n">Phases</span><span class="p">,</span><span class="n">Histograms</span><span class="p">,</span><span class="n">Print</span><span class="o">=</span><span class="bp">False</span><span class="p">)</span>
    243243    <span class="n">histVary</span><span class="p">,</span><span class="n">histDict</span><span class="p">,</span><span class="n">controlDict</span> <span class="o">=</span> <span class="n">GetHistogramData</span><span class="p">(</span><span class="n">Histograms</span><span class="p">,</span><span class="n">Print</span><span class="o">=</span><span class="bp">False</span><span class="p">)</span>
     
    377377                <span class="n">HKLFdata</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">datum</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span>        <span class="c">#weight factor</span>
    378378<span class="c">#patch</span>
    379                 <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">datum</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">1</span><span class="p">],</span><span class="nb">list</span><span class="p">):</span>
     379                <span class="k">if</span> <span class="s">&#39;list&#39;</span> <span class="ow">in</span> <span class="nb">str</span><span class="p">(</span><span class="nb">type</span><span class="p">(</span><span class="n">datum</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">1</span><span class="p">])):</span>
     380                <span class="c">#if isinstance(datum[1][1],list):</span>
    380381                    <span class="n">RefData</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;RefList&#39;</span><span class="p">:[],</span><span class="s">&#39;FF&#39;</span><span class="p">:{}}</span>
    381382                    <span class="k">for</span> <span class="n">ref</span> <span class="ow">in</span> <span class="n">datum</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">1</span><span class="p">]:</span>
     
    510511<span class="sd">    &#39;&#39;&#39;</span>
    511512                       
     513    <span class="kn">import</span> <span class="nn">distutils.file_util</span> <span class="kn">as</span> <span class="nn">dfu</span>
    512514    <span class="n">GPXback</span> <span class="o">=</span> <span class="n">GPXBackup</span><span class="p">(</span><span class="n">GPXfile</span><span class="p">,</span><span class="n">makeBack</span><span class="p">)</span>
    513515    <span class="k">print</span> <span class="s">&#39;Read from file:&#39;</span><span class="p">,</span><span class="n">GPXback</span>
     
    542544        <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
    543545            <span class="k">pass</span>
    544                                
    545         <span class="n">cPickle</span><span class="o">.</span><span class="n">dump</span><span class="p">(</span><span class="n">data</span><span class="p">,</span><span class="n">outfile</span><span class="p">,</span><span class="mi">1</span><span class="p">)</span>
    546     <span class="n">infile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
    547     <span class="n">outfile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
     546        <span class="k">try</span><span class="p">:</span>                       
     547            <span class="n">cPickle</span><span class="o">.</span><span class="n">dump</span><span class="p">(</span><span class="n">data</span><span class="p">,</span><span class="n">outfile</span><span class="p">,</span><span class="mi">1</span><span class="p">)</span>
     548        <span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span>
     549            <span class="k">print</span> <span class="s">&#39;ERROR - bad data in least squares result&#39;</span>
     550            <span class="n">infile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
     551            <span class="n">outfile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
     552            <span class="n">dfu</span><span class="o">.</span><span class="n">copy_file</span><span class="p">(</span><span class="n">GPXback</span><span class="p">,</span><span class="n">GPXfile</span><span class="p">)</span>
     553            <span class="k">print</span> <span class="s">&#39;GPX file save failed - old version retained&#39;</span>
     554            <span class="k">return</span>
     555           
    548556    <span class="k">print</span> <span class="s">&#39;GPX file save successful&#39;</span>
    549557    </div>
     
    611619        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; Process histograms in reverse order: &#39;</span><span class="p">,</span><span class="n">Controls</span><span class="p">[</span><span class="s">&#39;Reverse Seq&#39;</span><span class="p">]</span>
    612620    </div>
    613 <div class="viewcode-block" id="GetPawleyConstr"><a class="viewcode-back" href="../GSASIIstruc.html#GSASIIstrIO.GetPawleyConstr">[docs]</a><span class="k">def</span> <span class="nf">GetPawleyConstr</span><span class="p">(</span><span class="n">SGLaue</span><span class="p">,</span><span class="n">PawleyRef</span><span class="p">,</span><span class="n">pawleyVary</span><span class="p">):</span>
     621<div class="viewcode-block" id="GetPawleyConstr"><a class="viewcode-back" href="../GSASIIstruc.html#GSASIIstrIO.GetPawleyConstr">[docs]</a><span class="k">def</span> <span class="nf">GetPawleyConstr</span><span class="p">(</span><span class="n">SGLaue</span><span class="p">,</span><span class="n">PawleyRef</span><span class="p">,</span><span class="n">im</span><span class="p">,</span><span class="n">pawleyVary</span><span class="p">):</span>
    614622    <span class="s">&#39;needs a doc string&#39;</span>
    615623<span class="c">#    if SGLaue in [&#39;-1&#39;,&#39;2/m&#39;,&#39;mmm&#39;]:</span>
     
    620628        <span class="n">refI</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">varyI</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s">&#39;:&#39;</span><span class="p">)[</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span>
    621629        <span class="n">ih</span><span class="p">,</span><span class="n">ik</span><span class="p">,</span><span class="n">il</span> <span class="o">=</span> <span class="n">PawleyRef</span><span class="p">[</span><span class="n">refI</span><span class="p">][:</span><span class="mi">3</span><span class="p">]</span>
    622         <span class="n">dspI</span> <span class="o">=</span> <span class="n">PawleyRef</span><span class="p">[</span><span class="n">refI</span><span class="p">][</span><span class="mi">4</span><span class="p">]</span>
     630        <span class="n">dspI</span> <span class="o">=</span> <span class="n">PawleyRef</span><span class="p">[</span><span class="n">refI</span><span class="p">][</span><span class="mi">4</span><span class="o">+</span><span class="n">im</span><span class="p">]</span>
    623631        <span class="k">for</span> <span class="n">varyJ</span> <span class="ow">in</span> <span class="n">pawleyVary</span><span class="p">[</span><span class="n">i</span><span class="o">+</span><span class="mi">1</span><span class="p">:]:</span>
    624632            <span class="n">refJ</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">varyJ</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s">&#39;:&#39;</span><span class="p">)[</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span>
    625633            <span class="n">jh</span><span class="p">,</span><span class="n">jk</span><span class="p">,</span><span class="n">jl</span> <span class="o">=</span> <span class="n">PawleyRef</span><span class="p">[</span><span class="n">refJ</span><span class="p">][:</span><span class="mi">3</span><span class="p">]</span>
    626             <span class="n">dspJ</span> <span class="o">=</span> <span class="n">PawleyRef</span><span class="p">[</span><span class="n">refJ</span><span class="p">][</span><span class="mi">4</span><span class="p">]</span>
     634            <span class="n">dspJ</span> <span class="o">=</span> <span class="n">PawleyRef</span><span class="p">[</span><span class="n">refJ</span><span class="p">][</span><span class="mi">4</span><span class="o">+</span><span class="n">im</span><span class="p">]</span>
    627635            <span class="k">if</span> <span class="n">SGLaue</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;4/m&#39;</span><span class="p">,</span><span class="s">&#39;4/mmm&#39;</span><span class="p">]:</span>
    628636                <span class="n">isum</span> <span class="o">=</span> <span class="n">ih</span><span class="o">**</span><span class="mi">2</span><span class="o">+</span><span class="n">ik</span><span class="o">**</span><span class="mi">2</span>
     
    670678        <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">]</span>
    671679    <span class="k">elif</span> <span class="n">SGData</span><span class="p">[</span><span class="s">&#39;SGLaue&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;4/m&#39;</span><span class="p">,</span><span class="s">&#39;4/mmm&#39;</span><span class="p">]:</span>
    672         <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">]</span>
     680        <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,))</span>
     681        <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">]</span>
    673682    <span class="k">elif</span> <span class="n">SGData</span><span class="p">[</span><span class="s">&#39;SGLaue&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;6/m&#39;</span><span class="p">,</span><span class="s">&#39;6/mmm&#39;</span><span class="p">,</span><span class="s">&#39;3m1&#39;</span><span class="p">,</span> <span class="s">&#39;31m&#39;</span><span class="p">,</span> <span class="s">&#39;3&#39;</span><span class="p">]:</span>
    674         <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">]</span>
     683        <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A3&#39;</span><span class="p">,))</span>
     684        <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A3&#39;</span><span class="p">]</span>
    675685    <span class="k">elif</span> <span class="n">SGData</span><span class="p">[</span><span class="s">&#39;SGLaue&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;3R&#39;</span><span class="p">,</span> <span class="s">&#39;3mR&#39;</span><span class="p">]:</span>
    676         <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A3&#39;</span><span class="p">]</span>                       
     686        <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">,))</span>
     687        <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A3&#39;</span><span class="p">,(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A4&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A5&#39;</span><span class="p">,))</span>
     688        <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A3&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A4&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A5&#39;</span><span class="p">]</span>                       
    677689    <span class="k">elif</span> <span class="n">SGData</span><span class="p">[</span><span class="s">&#39;SGLaue&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;m3m&#39;</span><span class="p">,</span><span class="s">&#39;m3&#39;</span><span class="p">]:</span>
    678         <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,]</span>
     690        <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">,))</span>
     691        <span class="k">return</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A0&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A1&#39;</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A2&#39;</span><span class="p">]</span>
     692        </div>
     693<span class="k">def</span> <span class="nf">modVary</span><span class="p">(</span><span class="n">pfx</span><span class="p">,</span><span class="n">SSGData</span><span class="p">):</span>
     694    <span class="n">vary</span> <span class="o">=</span> <span class="p">[]</span>
     695    <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">item</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">SSGData</span><span class="p">[</span><span class="s">&#39;modSymb&#39;</span><span class="p">]):</span>
     696        <span class="k">if</span> <span class="n">item</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>
     697            <span class="n">vary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;mV</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">i</span><span class="p">))</span>
     698    <span class="k">return</span> <span class="n">vary</span>
    679699       
    680700<span class="c">################################################################################</span>
    681701<span class="c">##### Rigid Body Models and not General.get(&#39;doPawley&#39;)</span>
    682702<span class="c">################################################################################</span>
    683         </div>
     703       
    684704<div class="viewcode-block" id="GetRigidBodyModels"><a class="viewcode-back" href="../GSASIIstruc.html#GSASIIstrIO.GetRigidBodyModels">[docs]</a><span class="k">def</span> <span class="nf">GetRigidBodyModels</span><span class="p">(</span><span class="n">rigidbodyDict</span><span class="p">,</span><span class="n">Print</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">pFile</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
    685705    <span class="s">&#39;needs a doc string&#39;</span>
     
    870890        <span class="n">line</span> <span class="o">=</span> <span class="s">&#39;   name    type  refine?   x         y         z    &#39;</span><span class="o">+</span> \
    871891            <span class="s">&#39;  frac site sym  mult I/A   Uiso     U11     U22     U33     U12     U13     U23&#39;</span>
    872         <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;magnetic&#39;</span><span class="p">:</span>
    873             <span class="n">line</span> <span class="o">+=</span> <span class="s">&#39;   Mx     My     Mz&#39;</span>
    874         <span class="k">elif</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;macromolecular&#39;</span><span class="p">:</span>
     892        <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;macromolecular&#39;</span><span class="p">:</span>
    875893            <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; res no residue chain&#39;</span><span class="o">+</span><span class="n">line</span>
    876894        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
    877         <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;nuclear&#39;</span><span class="p">:</span>
     895        <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;nuclear&#39;</span><span class="p">,</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
    878896            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="mi">135</span><span class="o">*</span><span class="s">&#39;-&#39;</span>
    879897            <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
     
    899917                        <span class="n">line</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%8.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="o">+</span><span class="n">j</span><span class="p">])</span>
    900918                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     919               
     920    <span class="k">def</span> <span class="nf">PrintWaves</span><span class="p">(</span><span class="n">General</span><span class="p">,</span><span class="n">Atoms</span><span class="p">):</span>
     921        <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
     922        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Modulation waves&#39;</span>
     923        <span class="n">names</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;Sfrac&#39;</span><span class="p">:[</span><span class="s">&#39;Fsin&#39;</span><span class="p">,</span><span class="s">&#39;Fcos&#39;</span><span class="p">,</span><span class="s">&#39;Fzero&#39;</span><span class="p">,</span><span class="s">&#39;Fwid&#39;</span><span class="p">],</span><span class="s">&#39;Spos&#39;</span><span class="p">:[</span><span class="s">&#39;Xsin&#39;</span><span class="p">,</span><span class="s">&#39;Ysin&#39;</span><span class="p">,</span><span class="s">&#39;Zsin&#39;</span><span class="p">,</span><span class="s">&#39;Xcos&#39;</span><span class="p">,</span><span class="s">&#39;Ycos&#39;</span><span class="p">,</span><span class="s">&#39;Zcos&#39;</span><span class="p">,</span><span class="s">&#39;Tzero&#39;</span><span class="p">,</span><span class="s">&#39;Xslope&#39;</span><span class="p">,</span><span class="s">&#39;Yslope&#39;</span><span class="p">,</span><span class="s">&#39;Zslope&#39;</span><span class="p">],</span>
     924            <span class="s">&#39;Sadp&#39;</span><span class="p">:[</span><span class="s">&#39;U11sin&#39;</span><span class="p">,</span><span class="s">&#39;U22sin&#39;</span><span class="p">,</span><span class="s">&#39;U33sin&#39;</span><span class="p">,</span><span class="s">&#39;U12sin&#39;</span><span class="p">,</span><span class="s">&#39;U13sin&#39;</span><span class="p">,</span><span class="s">&#39;U23sin&#39;</span><span class="p">,</span><span class="s">&#39;U11cos&#39;</span><span class="p">,</span><span class="s">&#39;U22cos&#39;</span><span class="p">,</span>
     925            <span class="s">&#39;U33cos&#39;</span><span class="p">,</span><span class="s">&#39;U12cos&#39;</span><span class="p">,</span><span class="s">&#39;U13cos&#39;</span><span class="p">,</span><span class="s">&#39;U23cos&#39;</span><span class="p">],</span><span class="s">&#39;Smag&#39;</span><span class="p">:[</span><span class="s">&#39;MXsin&#39;</span><span class="p">,</span><span class="s">&#39;MYsin&#39;</span><span class="p">,</span><span class="s">&#39;MZsin&#39;</span><span class="p">,</span><span class="s">&#39;MXcos&#39;</span><span class="p">,</span><span class="s">&#39;MYcos&#39;</span><span class="p">,</span><span class="s">&#39;MZcos&#39;</span><span class="p">]}</span>
     926        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="mi">135</span><span class="o">*</span><span class="s">&#39;-&#39;</span>
     927        <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
     928            <span class="n">AtomSS</span> <span class="o">=</span> <span class="n">at</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">][</span><span class="s">&#39;SS1&#39;</span><span class="p">]</span>
     929            <span class="k">for</span> <span class="n">Stype</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;Sfrac&#39;</span><span class="p">,</span><span class="s">&#39;Spos&#39;</span><span class="p">,</span><span class="s">&#39;Sadp&#39;</span><span class="p">,</span><span class="s">&#39;Smag&#39;</span><span class="p">]:</span>
     930                <span class="n">Waves</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="n">Stype</span><span class="p">]</span>
     931                <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">Waves</span><span class="p">):</span>
     932                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; atom: </span><span class="si">%s</span><span class="s">, site sym: </span><span class="si">%s</span><span class="s">, type: </span><span class="si">%s</span><span class="s"> wave type: </span><span class="si">%s</span><span class="s">:&#39;</span>    \
     933                        <span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">-</span><span class="mi">1</span><span class="p">],</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">],</span><span class="n">Stype</span><span class="p">,</span><span class="n">AtomSS</span><span class="p">[</span><span class="s">&#39;waveType&#39;</span><span class="p">])</span>
     934                    <span class="n">line</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
     935                    <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">names</span><span class="p">[</span><span class="n">Stype</span><span class="p">]:</span>
     936                        <span class="n">line</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%8s</span><span class="s"> &#39;</span><span class="o">%</span><span class="p">(</span><span class="n">item</span><span class="p">)</span>
     937                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     938                <span class="k">for</span> <span class="n">wave</span> <span class="ow">in</span> <span class="n">Waves</span><span class="p">:</span>                   
     939                    <span class="n">line</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
     940                    <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">wave</span><span class="p">[</span><span class="mi">0</span><span class="p">]:</span>
     941                        <span class="n">line</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%8.4f</span><span class="s"> &#39;</span><span class="o">%</span><span class="p">(</span><span class="n">item</span><span class="p">)</span>
     942                    <span class="n">line</span> <span class="o">+=</span> <span class="s">&#39; Refine? &#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">wave</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
     943                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
    901944       
    902945    <span class="k">def</span> <span class="nf">PrintTexture</span><span class="p">(</span><span class="n">textureData</span><span class="p">):</span>
     
    9931036    <span class="n">AtMults</span> <span class="o">=</span> <span class="p">{}</span>
    9941037    <span class="n">AtIA</span> <span class="o">=</span> <span class="p">{}</span>
     1038    <span class="n">maxSSwave</span> <span class="o">=</span> <span class="p">{}</span>
    9951039    <span class="n">shModels</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;cylindrical&#39;</span><span class="p">,</span><span class="s">&#39;none&#39;</span><span class="p">,</span><span class="s">&#39;shear - 2/m&#39;</span><span class="p">,</span><span class="s">&#39;rolling - mmm&#39;</span><span class="p">]</span>
    9961040    <span class="n">SamSym</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">shModels</span><span class="p">,[</span><span class="s">&#39;0&#39;</span><span class="p">,</span><span class="s">&#39;-1&#39;</span><span class="p">,</span><span class="s">&#39;2/m&#39;</span><span class="p">,</span><span class="s">&#39;mmm&#39;</span><span class="p">]))</span>
     
    10051049        <span class="n">BLtables</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">BLtable</span><span class="p">)</span>
    10061050        <span class="n">Atoms</span> <span class="o">=</span> <span class="n">PhaseData</span><span class="p">[</span><span class="n">name</span><span class="p">][</span><span class="s">&#39;Atoms&#39;</span><span class="p">]</span>
    1007         <span class="n">AtLookup</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">FillAtomLookUp</span><span class="p">(</span><span class="n">Atoms</span><span class="p">)</span>
     1051        <span class="k">if</span> <span class="n">Atoms</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">General</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#39;doPawley&#39;</span><span class="p">):</span>
     1052            <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
     1053            <span class="n">AtLookup</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">FillAtomLookUp</span><span class="p">(</span><span class="n">Atoms</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">8</span><span class="p">)</span>
    10081054        <span class="n">PawleyRef</span> <span class="o">=</span> <span class="n">PhaseData</span><span class="p">[</span><span class="n">name</span><span class="p">]</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#39;Pawley ref&#39;</span><span class="p">,[])</span>
    10091055        <span class="n">SGData</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SGData&#39;</span><span class="p">]</span>
    1010         <span class="n">SGtext</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SGPrint</span><span class="p">(</span><span class="n">SGData</span><span class="p">)</span>
     1056        <span class="n">SGtext</span><span class="p">,</span><span class="n">SGtable</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SGPrint</span><span class="p">(</span><span class="n">SGData</span><span class="p">)</span>
    10111057        <span class="n">cell</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Cell&#39;</span><span class="p">]</span>
    10121058        <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">cell</span><span class="p">[</span><span class="mi">1</span><span class="p">:</span><span class="mi">7</span><span class="p">])</span>
     
    10141060            <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A3&#39;</span><span class="p">:</span><span class="n">A</span><span class="p">[</span><span class="mi">3</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A4&#39;</span><span class="p">:</span><span class="n">A</span><span class="p">[</span><span class="mi">4</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;A5&#39;</span><span class="p">:</span><span class="n">A</span><span class="p">[</span><span class="mi">5</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Vol&#39;</span><span class="p">:</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>
    10151061        <span class="k">if</span> <span class="n">cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]:</span>
    1016             <span class="n">phaseVary</span> <span class="o">+=</span> <span class="n">cellVary</span><span class="p">(</span><span class="n">pfx</span><span class="p">,</span><span class="n">SGData</span><span class="p">)</span>
     1062            <span class="n">phaseVary</span> <span class="o">+=</span> <span class="n">cellVary</span><span class="p">(</span><span class="n">pfx</span><span class="p">,</span><span class="n">SGData</span><span class="p">)</span>       <span class="c">#also fills in symmetry required constraints </span>
     1063        <span class="n">SSGtext</span> <span class="o">=</span> <span class="p">[]</span>    <span class="c">#no superstructure</span>
     1064        <span class="n">im</span> <span class="o">=</span> <span class="mi">0</span>
     1065        <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     1066            <span class="n">im</span> <span class="o">=</span> <span class="mi">1</span>      <span class="c">#refl offset</span>
     1067            <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="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SuperVec&#39;</span><span class="p">]</span>
     1068            <span class="n">phaseDict</span><span class="o">.</span><span class="n">update</span><span class="p">({</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;mV0&#39;</span><span class="p">:</span><span class="n">Vec</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;mV1&#39;</span><span class="p">:</span><span class="n">Vec</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;mV2&#39;</span><span class="p">:</span><span class="n">Vec</span><span class="p">[</span><span class="mi">2</span><span class="p">]})</span>
     1069            <span class="n">SSGData</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SSGData&#39;</span><span class="p">]</span>
     1070            <span class="n">SSGtext</span><span class="p">,</span><span class="n">SSGtable</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SSGPrint</span><span class="p">(</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">)</span>
     1071            <span class="k">if</span> <span class="n">vRef</span><span class="p">:</span>
     1072                <span class="n">phaseVary</span> <span class="o">+=</span> <span class="n">modVary</span><span class="p">(</span><span class="n">pfx</span><span class="p">,</span><span class="n">SSGData</span><span class="p">)</span>       
    10171073        <span class="n">resRBData</span> <span class="o">=</span> <span class="n">PhaseData</span><span class="p">[</span><span class="n">name</span><span class="p">][</span><span class="s">&#39;RBModels&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#39;Residue&#39;</span><span class="p">,[])</span>
    10181074        <span class="k">if</span> <span class="n">resRBData</span><span class="p">:</span>
     
    10311087                   
    10321088        <span class="n">Natoms</span><span class="p">[</span><span class="n">pfx</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span>
     1089        <span class="n">maxSSwave</span><span class="p">[</span><span class="n">pfx</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;Sfrac&#39;</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="s">&#39;Spos&#39;</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="s">&#39;Sadp&#39;</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="s">&#39;Smag&#39;</span><span class="p">:</span><span class="mi">0</span><span class="p">}</span>
    10331090        <span class="k">if</span> <span class="n">Atoms</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">General</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#39;doPawley&#39;</span><span class="p">):</span>
    10341091            <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
    1035             <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;nuclear&#39;</span><span class="p">,</span><span class="s">&#39;macromolecular&#39;</span><span class="p">]:</span>
    1036                 <span class="n">Natoms</span><span class="p">[</span><span class="n">pfx</span><span class="p">]</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">Atoms</span><span class="p">)</span>
    1037                 <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
    1038                     <span class="n">atomIndx</span><span class="p">[</span><span class="n">at</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]]</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="p">,</span><span class="n">i</span><span class="p">]</span>      <span class="c">#lookup table for restraints</span>
    1039                     <span class="n">phaseDict</span><span class="o">.</span><span class="n">update</span><span class="p">({</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Atype:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Afrac:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Amul:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="o">+</span><span class="mi">1</span><span class="p">],</span>
    1040                         <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ax:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ay:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">1</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Az:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">2</span><span class="p">],</span>
    1041                         <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAx:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="mf">0.</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAy:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="mf">0.</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAz:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="mf">0.</span><span class="p">,</span>         <span class="c">#refined shifts for x,y,z</span>
    1042                         <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AI/A:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">],})</span>
     1092            <span class="n">Natoms</span><span class="p">[</span><span class="n">pfx</span><span class="p">]</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">Atoms</span><span class="p">)</span>
     1093            <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
     1094                <span class="n">atomIndx</span><span class="p">[</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">8</span><span class="p">]]</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="p">,</span><span class="n">i</span><span class="p">]</span>      <span class="c">#lookup table for restraints</span>
     1095                <span class="n">phaseDict</span><span class="o">.</span><span class="n">update</span><span class="p">({</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Atype:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Afrac:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Amul:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="o">+</span><span class="mi">1</span><span class="p">],</span>
     1096                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ax:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ay:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">1</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Az:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">2</span><span class="p">],</span>
     1097                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAx:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="mf">0.</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAy:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="mf">0.</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAz:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="mf">0.</span><span class="p">,</span>         <span class="c">#refined shifts for x,y,z</span>
     1098                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AI/A:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">],})</span>
     1099                <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
     1100                    <span class="n">phaseDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AUiso:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span> <span class="o">=</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span>
     1101                <span class="k">else</span><span class="p">:</span>
     1102                    <span class="n">phaseDict</span><span class="o">.</span><span class="n">update</span><span class="p">({</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU11:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU22:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU33:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">4</span><span class="p">],</span>
     1103                        <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU12:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">5</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU13:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">6</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU23:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">7</span><span class="p">]})</span>
     1104                <span class="k">if</span> <span class="s">&#39;F&#39;</span> <span class="ow">in</span> <span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">+</span><span class="mi">1</span><span class="p">]:</span>
     1105                    <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Afrac:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">))</span>
     1106                <span class="k">if</span> <span class="s">&#39;X&#39;</span> <span class="ow">in</span> <span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">+</span><span class="mi">1</span><span class="p">]:</span>
     1107                    <span class="k">try</span><span class="p">:</span>    <span class="c">#patch for sytsym name changes</span>
     1108                        <span class="n">xId</span><span class="p">,</span><span class="n">xCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSxinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])</span>
     1109                    <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
     1110                        <span class="n">Sytsym</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SytSym</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">:</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">SGData</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>
     1111                        <span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">]</span> <span class="o">=</span> <span class="n">Sytsym</span>
     1112                        <span class="n">xId</span><span class="p">,</span><span class="n">xCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSxinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])</span>
     1113                    <span class="n">xId</span><span class="p">,</span><span class="n">xCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSxinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])</span>
     1114                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAx:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAy:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAz:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span>
     1115                    <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[]]</span>
     1116                    <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>
     1117                        <span class="k">if</span> <span class="n">xId</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>                               
     1118                            <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">])</span>
     1119                            <span class="n">equivs</span><span class="p">[</span><span class="n">xId</span><span class="p">[</span><span class="n">j</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">append</span><span class="p">([</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">],</span><span class="n">xCoef</span><span class="p">[</span><span class="n">j</span><span class="p">]])</span>
     1120                    <span class="k">for</span> <span class="n">equiv</span> <span class="ow">in</span> <span class="n">equivs</span><span class="p">:</span>
     1121                        <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">equiv</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
     1122                            <span class="n">name</span> <span class="o">=</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
     1123                            <span class="n">coef</span> <span class="o">=</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
     1124                            <span class="k">for</span> <span class="n">eqv</span> <span class="ow">in</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:]:</span>
     1125                                <span class="n">eqv</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">/=</span> <span class="n">coef</span>
     1126                                <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">name</span><span class="p">,(</span><span class="n">eqv</span><span class="p">,))</span>
     1127                <span class="k">if</span> <span class="s">&#39;U&#39;</span> <span class="ow">in</span> <span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">+</span><span class="mi">1</span><span class="p">]:</span>
    10431128                    <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
    1044                         <span class="n">phaseDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AUiso:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span> <span class="o">=</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span>
     1129                        <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AUiso:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">))</span>
    10451130                    <span class="k">else</span><span class="p">:</span>
    1046                         <span class="n">phaseDict</span><span class="o">.</span><span class="n">update</span><span class="p">({</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU11:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU22:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU33:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">4</span><span class="p">],</span>
    1047                             <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU12:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">5</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU13:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">6</span><span class="p">],</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU23:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">):</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">7</span><span class="p">]})</span>
    1048                     <span class="k">if</span> <span class="s">&#39;F&#39;</span> <span class="ow">in</span> <span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">+</span><span class="mi">1</span><span class="p">]:</span>
    1049                         <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Afrac:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">))</span>
    1050                     <span class="k">if</span> <span class="s">&#39;X&#39;</span> <span class="ow">in</span> <span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">+</span><span class="mi">1</span><span class="p">]:</span>
    10511131                        <span class="k">try</span><span class="p">:</span>    <span class="c">#patch for sytsym name changes</span>
    1052                             <span class="n">xId</span><span class="p">,</span><span class="n">xCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSxinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])</span>
     1132                            <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSuinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])[:</span><span class="mi">2</span><span class="p">]</span>
    10531133                        <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
    10541134                            <span class="n">Sytsym</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SytSym</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">:</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">SGData</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>
    10551135                            <span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">]</span> <span class="o">=</span> <span class="n">Sytsym</span>
    1056                             <span class="n">xId</span><span class="p">,</span><span class="n">xCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSxinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])</span>
    1057                         <span class="n">xId</span><span class="p">,</span><span class="n">xCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSxinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])</span>
    1058                         <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAx:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAy:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;dAz:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span>
    1059                         <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[]]</span>
    1060                         <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>
    1061                             <span class="k">if</span> <span class="n">xId</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>                               
     1136                            <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSuinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])[:</span><span class="mi">2</span><span class="p">]</span>
     1137                        <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSuinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])[:</span><span class="mi">2</span><span class="p">]</span>
     1138                        <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU11:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU22:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU33:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span>
     1139                            <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU12:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU13:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU23:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span>
     1140                        <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[],[],[],[]]</span>
     1141                        <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">6</span><span class="p">):</span>
     1142                            <span class="k">if</span> <span class="n">uId</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>                               
    10621143                                <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">])</span>
    1063                                 <span class="n">equivs</span><span class="p">[</span><span class="n">xId</span><span class="p">[</span><span class="n">j</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">append</span><span class="p">([</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">],</span><span class="n">xCoef</span><span class="p">[</span><span class="n">j</span><span class="p">]])</span>
     1144                                <span class="n">equivs</span><span class="p">[</span><span class="n">uId</span><span class="p">[</span><span class="n">j</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">append</span><span class="p">([</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">],</span><span class="n">uCoef</span><span class="p">[</span><span class="n">j</span><span class="p">]])</span>
    10641145                        <span class="k">for</span> <span class="n">equiv</span> <span class="ow">in</span> <span class="n">equivs</span><span class="p">:</span>
    10651146                            <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">equiv</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
     
    10681149                                <span class="k">for</span> <span class="n">eqv</span> <span class="ow">in</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:]:</span>
    10691150                                    <span class="n">eqv</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">/=</span> <span class="n">coef</span>
    1070                                     <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">name</span><span class="p">,(</span><span class="n">eqv</span><span class="p">,))</span>
    1071                     <span class="k">if</span> <span class="s">&#39;U&#39;</span> <span class="ow">in</span> <span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">+</span><span class="mi">1</span><span class="p">]:</span>
    1072                         <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
    1073                             <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AUiso:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">))</span>
    1074                         <span class="k">else</span><span class="p">:</span>
    1075                             <span class="k">try</span><span class="p">:</span>    <span class="c">#patch for sytsym name changes</span>
    1076                                 <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSuinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])[:</span><span class="mi">2</span><span class="p">]</span>
    1077                             <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
    1078                                 <span class="n">Sytsym</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">SytSym</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">:</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">SGData</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>
    1079                                 <span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">]</span> <span class="o">=</span> <span class="n">Sytsym</span>
    1080                                 <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSuinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])[:</span><span class="mi">2</span><span class="p">]</span>
    1081                             <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetCSuinel</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">])[:</span><span class="mi">2</span><span class="p">]</span>
    1082                             <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU11:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU22:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU33:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span>
    1083                                 <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU12:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU13:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU23:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span>
    1084                             <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[],[],[],[]]</span>
    1085                             <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">6</span><span class="p">):</span>
    1086                                 <span class="k">if</span> <span class="n">uId</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>                               
    1087                                     <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">])</span>
    1088                                     <span class="n">equivs</span><span class="p">[</span><span class="n">uId</span><span class="p">[</span><span class="n">j</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">append</span><span class="p">([</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">],</span><span class="n">uCoef</span><span class="p">[</span><span class="n">j</span><span class="p">]])</span>
    1089                             <span class="k">for</span> <span class="n">equiv</span> <span class="ow">in</span> <span class="n">equivs</span><span class="p">:</span>
    1090                                 <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">equiv</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
    1091                                     <span class="n">name</span> <span class="o">=</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
    1092                                     <span class="n">coef</span> <span class="o">=</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
    1093                                     <span class="k">for</span> <span class="n">eqv</span> <span class="ow">in</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:]:</span>
    1094                                         <span class="n">eqv</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">/=</span> <span class="n">coef</span>
    1095                                     <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span>
    1096 <span class="c">#            elif General[&#39;Type&#39;] == &#39;magnetic&#39;:</span>
    1097 <span class="c">#            elif General[&#39;Type&#39;] == &#39;macromolecular&#39;:</span>
     1151                                <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span>
     1152                <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     1153                    <span class="n">AtomSS</span> <span class="o">=</span> <span class="n">at</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">][</span><span class="s">&#39;SS1&#39;</span><span class="p">]</span>
     1154                    <span class="n">waveType</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="s">&#39;waveType&#39;</span><span class="p">]</span>
     1155                    <span class="n">phaseDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;waveType:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span> <span class="o">=</span> <span class="n">waveType</span>   
     1156                    <span class="k">for</span> <span class="n">Stype</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;Sfrac&#39;</span><span class="p">,</span><span class="s">&#39;Spos&#39;</span><span class="p">,</span><span class="s">&#39;Sadp&#39;</span><span class="p">,</span><span class="s">&#39;Smag&#39;</span><span class="p">]:</span>
     1157                        <span class="n">Waves</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="n">Stype</span><span class="p">]</span>
     1158                        <span class="n">uId</span><span class="p">,</span><span class="n">uCoef</span> <span class="o">=</span> <span class="n">CSI</span><span class="p">[</span><span class="n">Stype</span><span class="p">]</span>
     1159                        <span class="k">for</span> <span class="n">iw</span><span class="p">,</span><span class="n">wave</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Waves</span><span class="p">):</span>
     1160                            <span class="k">if</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1161                                <span class="n">CSI</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetSSfxuinel</span><span class="p">(</span><span class="n">waveType</span><span class="p">,</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">:</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">)</span>
     1162                            <span class="k">else</span><span class="p">:</span>
     1163                                <span class="n">CSI</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GetSSfxuinel</span><span class="p">(</span><span class="s">&#39;Fourier&#39;</span><span class="p">,</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="p">:</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">],</span><span class="n">SGData</span><span class="p">,</span><span class="n">SSGData</span><span class="p">)</span>
     1164                            <span class="n">stiw</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">iw</span><span class="p">)</span>
     1165                            <span class="k">if</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Spos&#39;</span><span class="p">:</span>
     1166                                <span class="k">if</span> <span class="n">waveType</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;ZigZag&#39;</span><span class="p">,</span><span class="s">&#39;Sawtooth&#39;</span><span class="p">]</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1167                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Tzero:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Xslope:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Yslope:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Zslope:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1168                                    <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],</span> <span class="p">[],[],[]]</span>
     1169                                <span class="k">else</span><span class="p">:</span>
     1170                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Xsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ysin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Zsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1171                                        <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Xcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ycos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Zcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1172                                    <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[],</span> <span class="p">[],[],[]]</span>
     1173                            <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Sadp&#39;</span><span class="p">:</span>
     1174                                <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U11sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U22sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U33sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1175                                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U12sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U13sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U23sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1176                                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U11cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U22cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U33cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1177                                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U12cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U13cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;U23cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1178                                <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[],[],[],[],</span> <span class="p">[],[],[],[],[],[]]</span>
     1179                            <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Sfrac&#39;</span><span class="p">:</span>
     1180                                <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[]]</span>
     1181                                <span class="k">if</span> <span class="s">&#39;Crenel&#39;</span> <span class="ow">in</span> <span class="n">waveType</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1182                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Fzero:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Fwid:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1183                                <span class="k">else</span><span class="p">:</span>
     1184                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Fsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Fcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1185                            <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Smag&#39;</span><span class="p">:</span>
     1186                                <span class="n">equivs</span> <span class="o">=</span> <span class="p">[[],[],[],</span> <span class="p">[],[],[]]</span>
     1187                                <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;MXsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;MYsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;MZsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1188                                    <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;MXcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;MYcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;MZcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1189                            <span class="n">phaseDict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="nb">dict</span><span class="p">(</span><span class="nb">zip</span><span class="p">(</span><span class="n">names</span><span class="p">,</span><span class="n">wave</span><span class="p">[</span><span class="mi">0</span><span class="p">])))</span>
     1190                            <span class="k">if</span> <span class="n">wave</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
     1191                                <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="nb">len</span><span class="p">(</span><span class="n">equivs</span><span class="p">)):</span>
     1192                                    <span class="k">if</span> <span class="n">uId</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>                               
     1193                                        <span class="n">phaseVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">])</span>
     1194                                        <span class="n">equivs</span><span class="p">[</span><span class="n">uId</span><span class="p">[</span><span class="n">j</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">append</span><span class="p">([</span><span class="n">names</span><span class="p">[</span><span class="n">j</span><span class="p">],</span><span class="n">uCoef</span><span class="p">[</span><span class="n">j</span><span class="p">]])</span>
     1195                                <span class="k">for</span> <span class="n">equiv</span> <span class="ow">in</span> <span class="n">equivs</span><span class="p">:</span>
     1196                                    <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">equiv</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
     1197                                        <span class="n">name</span> <span class="o">=</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
     1198                                        <span class="n">coef</span> <span class="o">=</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span>
     1199                                        <span class="k">for</span> <span class="n">eqv</span> <span class="ow">in</span> <span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:]:</span>
     1200                                            <span class="n">eqv</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">/=</span> <span class="n">coef</span>
     1201                                        <span class="n">G2mv</span><span class="o">.</span><span class="n">StoreEquivalence</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="n">equiv</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span>
     1202                            <span class="n">maxSSwave</span><span class="p">[</span><span class="n">pfx</span><span class="p">][</span><span class="n">Stype</span><span class="p">]</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="n">maxSSwave</span><span class="p">[</span><span class="n">pfx</span><span class="p">][</span><span class="n">Stype</span><span class="p">],</span><span class="n">iw</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span>
    10981203            <span class="n">textureData</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SH Texture&#39;</span><span class="p">]</span>
    10991204            <span class="k">if</span> <span class="n">textureData</span><span class="p">[</span><span class="s">&#39;Order&#39;</span><span class="p">]:</span>
     
    11151220                <span class="n">PrintBLtable</span><span class="p">(</span><span class="n">BLtable</span><span class="p">)</span>
    11161221                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;&#39;</span>
    1117                 <span class="k">for</span> <span class="n">line</span> <span class="ow">in</span> <span class="n">SGtext</span><span class="p">:</span> <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     1222                <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SSGtext</span><span class="p">):</span>    <span class="c">#if superstructure</span>
     1223                    <span class="k">for</span> <span class="n">line</span> <span class="ow">in</span> <span class="n">SSGtext</span><span class="p">:</span> <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     1224                    <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SSGtable</span><span class="p">):</span>
     1225                        <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">SSGtable</span><span class="p">:</span>
     1226                            <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; </span><span class="si">%s</span><span class="s"> &#39;</span><span class="o">%</span><span class="p">(</span><span class="n">item</span><span class="p">)</span>
     1227                            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>   
     1228                    <span class="k">else</span><span class="p">:</span>
     1229                        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; ( 1)    </span><span class="si">%s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">SSGtable</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
     1230                <span class="k">else</span><span class="p">:</span>
     1231                    <span class="k">for</span> <span class="n">line</span> <span class="ow">in</span> <span class="n">SGtext</span><span class="p">:</span> <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     1232                    <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SGtable</span><span class="p">):</span>
     1233                        <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">SGtable</span><span class="p">:</span>
     1234                            <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; </span><span class="si">%s</span><span class="s"> &#39;</span><span class="o">%</span><span class="p">(</span><span class="n">item</span><span class="p">)</span>
     1235                            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>   
     1236                    <span class="k">else</span><span class="p">:</span>
     1237                        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; ( 1)    </span><span class="si">%s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">SGtable</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
    11181238                <span class="n">PrintRBObjects</span><span class="p">(</span><span class="n">resRBData</span><span class="p">,</span><span class="n">vecRBData</span><span class="p">)</span>
    11191239                <span class="n">PrintAtoms</span><span class="p">(</span><span class="n">General</span><span class="p">,</span><span class="n">Atoms</span><span class="p">)</span>
    1120                 <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Unit cell: a =&#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span><span class="s">&#39; b =&#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="s">&#39; c =&#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">3</span><span class="p">]),</span> \
    1121                     <span class="s">&#39; alpha =&#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">4</span><span class="p">]),</span><span class="s">&#39; beta =&#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">5</span><span class="p">]),</span><span class="s">&#39; gamma =&#39;</span><span class="p">,</span> \
    1122                     <span class="s">&#39;</span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">6</span><span class="p">]),</span><span class="s">&#39; volume =&#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">7</span><span class="p">]),</span><span class="s">&#39; Refine?&#39;</span><span class="p">,</span><span class="n">cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
     1240                <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     1241                    <span class="n">PrintWaves</span><span class="p">(</span><span class="n">General</span><span class="p">,</span><span class="n">Atoms</span><span class="p">)</span>
     1242                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Unit cell: a = </span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span><span class="s">&#39; b = </span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="s">&#39; c = </span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">3</span><span class="p">]),</span> \
     1243                    <span class="s">&#39; alpha = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">4</span><span class="p">]),</span><span class="s">&#39; beta = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">5</span><span class="p">]),</span><span class="s">&#39; gamma = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">6</span><span class="p">]),</span> \
     1244                    <span class="s">&#39; volume = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">7</span><span class="p">]),</span><span class="s">&#39; Refine?&#39;</span><span class="p">,</span><span class="n">cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
     1245                <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SSGtext</span><span class="p">):</span>    <span class="c">#if superstructure</span>
     1246                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Modulation vector: mV0 = </span><span class="si">%.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Vec</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span><span class="s">&#39; mV1 = </span><span class="si">%.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Vec</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span>   \
     1247                        <span class="s">&#39; mV2 = </span><span class="si">%.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Vec</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="s">&#39; max mod. index = </span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">maxH</span><span class="p">),</span><span class="s">&#39; Refine?&#39;</span><span class="p">,</span><span class="n">vRef</span>
    11231248                <span class="n">PrintTexture</span><span class="p">(</span><span class="n">textureData</span><span class="p">)</span>
    11241249                <span class="k">if</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">RestraintDict</span><span class="p">:</span>
     
    11271252                   
    11281253        <span class="k">elif</span> <span class="n">PawleyRef</span><span class="p">:</span>
     1254            <span class="k">if</span> <span class="n">Print</span><span class="p">:</span>
     1255                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Phase name: &#39;</span><span class="p">,</span><span class="n">General</span><span class="p">[</span><span class="s">&#39;Name&#39;</span><span class="p">]</span>
     1256                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="mi">135</span><span class="o">*</span><span class="s">&#39;-&#39;</span>
     1257                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;&#39;</span>
     1258                <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SSGtext</span><span class="p">):</span>    <span class="c">#if superstructure</span>
     1259                    <span class="k">for</span> <span class="n">line</span> <span class="ow">in</span> <span class="n">SSGtext</span><span class="p">:</span> <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     1260                    <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SSGtable</span><span class="p">):</span>
     1261                        <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">SSGtable</span><span class="p">:</span>
     1262                            <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; </span><span class="si">%s</span><span class="s"> &#39;</span><span class="o">%</span><span class="p">(</span><span class="n">item</span><span class="p">)</span>
     1263                            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>   
     1264                    <span class="k">else</span><span class="p">:</span>
     1265                        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; ( 1)    </span><span class="si">%s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">SSGtable</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
     1266                <span class="k">else</span><span class="p">:</span>
     1267                    <span class="k">for</span> <span class="n">line</span> <span class="ow">in</span> <span class="n">SGtext</span><span class="p">:</span> <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
     1268                    <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SGtable</span><span class="p">):</span>
     1269                        <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="n">SGtable</span><span class="p">:</span>
     1270                            <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; </span><span class="si">%s</span><span class="s"> &#39;</span><span class="o">%</span><span class="p">(</span><span class="n">item</span><span class="p">)</span>
     1271                            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>   
     1272                    <span class="k">else</span><span class="p">:</span>
     1273                        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; ( 1)    </span><span class="si">%s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">SGtable</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
     1274                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Unit cell: a = </span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span><span class="s">&#39; b = </span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="s">&#39; c = </span><span class="si">%.5f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">3</span><span class="p">]),</span> \
     1275                    <span class="s">&#39; alpha = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">4</span><span class="p">]),</span><span class="s">&#39; beta = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">5</span><span class="p">]),</span><span class="s">&#39; gamma = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">6</span><span class="p">]),</span> \
     1276                    <span class="s">&#39; volume = </span><span class="si">%.3f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">cell</span><span class="p">[</span><span class="mi">7</span><span class="p">]),</span><span class="s">&#39; Refine?&#39;</span><span class="p">,</span><span class="n">cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
     1277                <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">SSGtext</span><span class="p">):</span>    <span class="c">#if superstructure</span>
     1278                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Modulation vector: mV0 = </span><span class="si">%.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Vec</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span><span class="s">&#39; mV1 = </span><span class="si">%.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Vec</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span>   \
     1279                        <span class="s">&#39; mV2 = </span><span class="si">%.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Vec</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="s">&#39; max mod. index = </span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">maxH</span><span class="p">),</span><span class="s">&#39; Refine?&#39;</span><span class="p">,</span><span class="n">vRef</span>
    11291280            <span class="n">pawleyVary</span> <span class="o">=</span> <span class="p">[]</span>
    11301281            <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">refl</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">PawleyRef</span><span class="p">):</span>
    1131                 <span class="n">phaseDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;PWLref:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span> <span class="o">=</span> <span class="n">refl</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span>
    1132                 <span class="n">pawleyLookup</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">refl</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">2</span><span class="p">])]</span> <span class="o">=</span> <span class="n">i</span>
    1133                 <span class="k">if</span> <span class="n">refl</span><span class="p">[</span><span class="mi">5</span><span class="p">]:</span>
     1282                <span class="n">phaseDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;PWLref:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)]</span> <span class="o">=</span> <span class="n">refl</span><span class="p">[</span><span class="mi">6</span><span class="o">+</span><span class="n">im</span><span class="p">]</span>
     1283                <span class="k">if</span> <span class="n">im</span><span class="p">:</span>
     1284                    <span class="n">pawleyLookup</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">refl</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">3</span><span class="p">])]</span> <span class="o">=</span> <span class="n">i</span>
     1285                <span class="k">else</span><span class="p">:</span>
     1286                    <span class="n">pawleyLookup</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">,</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">refl</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">refl</span><span class="p">[</span><span class="mi">2</span><span class="p">])]</span> <span class="o">=</span> <span class="n">i</span>
     1287                <span class="k">if</span> <span class="n">refl</span><span class="p">[</span><span class="mi">5</span><span class="o">+</span><span class="n">im</span><span class="p">]:</span>
    11341288                    <span class="n">pawleyVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;PWLref:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">))</span>
    1135             <span class="n">GetPawleyConstr</span><span class="p">(</span><span class="n">SGData</span><span class="p">[</span><span class="s">&#39;SGLaue&#39;</span><span class="p">],</span><span class="n">PawleyRef</span><span class="p">,</span><span class="n">pawleyVary</span><span class="p">)</span>      <span class="c">#does G2mv.StoreEquivalence</span>
     1289            <span class="n">GetPawleyConstr</span><span class="p">(</span><span class="n">SGData</span><span class="p">[</span><span class="s">&#39;SGLaue&#39;</span><span class="p">],</span><span class="n">PawleyRef</span><span class="p">,</span><span class="n">im</span><span class="p">,</span><span class="n">pawleyVary</span><span class="p">)</span>      <span class="c">#does G2mv.StoreEquivalence</span>
    11361290            <span class="n">phaseVary</span> <span class="o">+=</span> <span class="n">pawleyVary</span>
    11371291               
    1138     <span class="k">return</span> <span class="n">Natoms</span><span class="p">,</span><span class="n">atomIndx</span><span class="p">,</span><span class="n">phaseVary</span><span class="p">,</span><span class="n">phaseDict</span><span class="p">,</span><span class="n">pawleyLookup</span><span class="p">,</span><span class="n">FFtables</span><span class="p">,</span><span class="n">BLtables</span>
     1292    <span class="k">return</span> <span class="n">Natoms</span><span class="p">,</span><span class="n">atomIndx</span><span class="p">,</span><span class="n">phaseVary</span><span class="p">,</span><span class="n">phaseDict</span><span class="p">,</span><span class="n">pawleyLookup</span><span class="p">,</span><span class="n">FFtables</span><span class="p">,</span><span class="n">BLtables</span><span class="p">,</span><span class="n">maxSSwave</span>
    11391293    </div>
    11401294<div class="viewcode-block" id="cellFill"><a class="viewcode-back" href="../GSASIIstruc.html#GSASIIstrIO.cellFill">[docs]</a><span class="k">def</span> <span class="nf">cellFill</span><span class="p">(</span><span class="n">pfx</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">parmDict</span><span class="p">,</span><span class="n">sigDict</span><span class="p">):</span>
     
    13581512            <span class="n">line</span> <span class="o">+=</span> <span class="s">&#39;   Mx     My     Mz&#39;</span>
    13591513        <span class="k">elif</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;macromolecular&#39;</span><span class="p">:</span>
    1360             <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; res no  residue chain &#39;</span><span class="o">+</span><span class="n">line</span>
     1514            <span class="n">line</span> <span class="o">=</span> <span class="s">&#39; res no residue chain &#39;</span><span class="o">+</span><span class="n">line</span>
    13611515        <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
    13621516        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">line</span>
    1363         <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;nuclear&#39;</span><span class="p">:</span>
    1364             <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="mi">135</span><span class="o">*</span><span class="s">&#39;-&#39;</span>
    1365             <span class="n">fmt</span> <span class="o">=</span> <span class="p">{</span><span class="mi">0</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%7s</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">1</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%7s</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">3</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%10.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">4</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%10.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">5</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%10.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">6</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.3f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">10</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span>
    1366                 <span class="mi">11</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">12</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">13</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">14</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">15</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="mi">16</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">}</span>
    1367             <span class="n">noFXsig</span> <span class="o">=</span> <span class="p">{</span><span class="mi">3</span><span class="p">:[</span><span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="p">],</span><span class="mi">4</span><span class="p">:[</span><span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="p">],</span><span class="mi">5</span><span class="p">:[</span><span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="p">],</span><span class="mi">6</span><span class="p">:[</span><span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%8s</span><span class="s">&#39;</span><span class="p">]}</span>
    1368             <span class="k">for</span> <span class="n">atyp</span> <span class="ow">in</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomTypes&#39;</span><span class="p">]:</span>       <span class="c">#zero composition</span>
    1369                 <span class="n">General</span><span class="p">[</span><span class="s">&#39;NoAtoms&#39;</span><span class="p">][</span><span class="n">atyp</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span>
    1370             <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
    1371                 <span class="n">General</span><span class="p">[</span><span class="s">&#39;NoAtoms&#39;</span><span class="p">][</span><span class="n">at</span><span class="p">[</span><span class="mi">1</span><span class="p">]]</span> <span class="o">+=</span> <span class="n">at</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span><span class="o">*</span><span class="nb">float</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="mi">8</span><span class="p">])</span>     <span class="c">#new composition</span>
    1372                 <span class="n">name</span> <span class="o">=</span> <span class="n">fmt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span><span class="o">+</span><span class="n">fmt</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span><span class="o">+</span><span class="s">&#39;:&#39;</span>
     1517        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="mi">135</span><span class="o">*</span><span class="s">&#39;-&#39;</span>
     1518        <span class="n">fmt</span> <span class="o">=</span> <span class="p">{</span><span class="mi">0</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%7s</span><span class="s">&#39;</span><span class="p">,</span><span class="n">ct</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%7s</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cx</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%10.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cx</span><span class="o">+</span><span class="mi">1</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%10.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cx</span><span class="o">+</span><span class="mi">2</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%10.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.3f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span>
     1519            <span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">3</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">4</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">5</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">6</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">7</span><span class="p">:</span><span class="s">&#39;</span><span class="si">%8.5f</span><span class="s">&#39;</span><span class="p">}</span>
     1520        <span class="n">noFXsig</span> <span class="o">=</span> <span class="p">{</span><span class="n">cx</span><span class="p">:[</span><span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="p">],</span><span class="n">cx</span><span class="o">+</span><span class="mi">1</span><span class="p">:[</span><span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="p">],</span><span class="n">cx</span><span class="o">+</span><span class="mi">2</span><span class="p">:[</span><span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="p">],</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">:[</span><span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span><span class="p">,</span><span class="s">&#39;</span><span class="si">%8s</span><span class="s">&#39;</span><span class="p">]}</span>
     1521        <span class="k">for</span> <span class="n">atyp</span> <span class="ow">in</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomTypes&#39;</span><span class="p">]:</span>       <span class="c">#zero composition</span>
     1522            <span class="n">General</span><span class="p">[</span><span class="s">&#39;NoAtoms&#39;</span><span class="p">][</span><span class="n">atyp</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span>
     1523        <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
     1524            <span class="n">General</span><span class="p">[</span><span class="s">&#39;NoAtoms&#39;</span><span class="p">][</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="p">]]</span> <span class="o">+=</span> <span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">]</span><span class="o">*</span><span class="nb">float</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">5</span><span class="p">])</span>     <span class="c">#new composition</span>
     1525            <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;macromolecular&#39;</span><span class="p">:</span>
     1526                <span class="n">name</span> <span class="o">=</span> <span class="s">&#39; </span><span class="si">%s</span><span class="s"> </span><span class="si">%s</span><span class="s"> </span><span class="si">%s</span><span class="s"> </span><span class="si">%s</span><span class="s">:&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">at</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">at</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">at</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
     1527                <span class="n">valstr</span> <span class="o">=</span> <span class="s">&#39; values:          &#39;</span>
     1528                <span class="n">sigstr</span> <span class="o">=</span> <span class="s">&#39; sig   :          &#39;</span>
     1529            <span class="k">else</span><span class="p">:</span>
     1530                <span class="n">name</span> <span class="o">=</span> <span class="n">fmt</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span><span class="o">+</span><span class="n">fmt</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="p">])</span><span class="o">+</span><span class="s">&#39;:&#39;</span>
    13731531                <span class="n">valstr</span> <span class="o">=</span> <span class="s">&#39; values:&#39;</span>
    13741532                <span class="n">sigstr</span> <span class="o">=</span> <span class="s">&#39; sig   :&#39;</span>
    1375                 <span class="k">for</span> <span class="n">ind</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>
     1533            <span class="k">for</span> <span class="n">ind</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">cx</span><span class="p">,</span><span class="n">cx</span><span class="o">+</span><span class="mi">4</span><span class="p">):</span>
     1534                <span class="n">sigind</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)</span>
     1535                <span class="n">valstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">])</span>                   
     1536                <span class="k">if</span> <span class="n">sigind</span> <span class="ow">in</span> <span class="n">atomsSig</span><span class="p">:</span>
     1537                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">atomsSig</span><span class="p">[</span><span class="n">sigind</span><span class="p">])</span>
     1538                <span class="k">else</span><span class="p">:</span>
     1539                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">noFXsig</span><span class="p">[</span><span class="n">ind</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">noFXsig</span><span class="p">[</span><span class="n">ind</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span>
     1540            <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
     1541                <span class="n">valstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">])</span>
     1542                <span class="k">if</span> <span class="s">&#39;</span><span class="si">%d</span><span class="s">:</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="ow">in</span> <span class="n">atomsSig</span><span class="p">:</span>
     1543                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">atomsSig</span><span class="p">[</span><span class="s">&#39;</span><span class="si">%d</span><span class="s">:</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">)])</span>
     1544                <span class="k">else</span><span class="p">:</span>
     1545                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1546            <span class="k">else</span><span class="p">:</span>
     1547                <span class="n">valstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1548                <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1549                <span class="k">for</span> <span class="n">ind</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">7</span><span class="p">):</span>
    13761550                    <span class="n">sigind</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)</span>
    1377                     <span class="n">valstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">])</span>                   
    1378                     <span class="k">if</span> <span class="n">sigind</span> <span class="ow">in</span> <span class="n">atomsSig</span><span class="p">:</span>
     1551                    <span class="n">valstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">])</span>
     1552                    <span class="k">if</span> <span class="n">sigind</span> <span class="ow">in</span> <span class="n">atomsSig</span><span class="p">:</span>                       
    13791553                        <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">atomsSig</span><span class="p">[</span><span class="n">sigind</span><span class="p">])</span>
    13801554                    <span class="k">else</span><span class="p">:</span>
    1381                         <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">noFXsig</span><span class="p">[</span><span class="n">ind</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">noFXsig</span><span class="p">[</span><span class="n">ind</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span>
    1382                 <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
    1383                     <span class="n">valstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="mi">10</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="mi">10</span><span class="p">])</span>
    1384                     <span class="k">if</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:10&#39;</span> <span class="ow">in</span> <span class="n">atomsSig</span><span class="p">:</span>
    1385                         <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="mi">10</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">atomsSig</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:10&#39;</span><span class="p">])</span>
    1386                     <span class="k">else</span><span class="p">:</span>
    13871555                        <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
    1388                 <span class="k">else</span><span class="p">:</span>
    1389                     <span class="n">valstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
    1390                     <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
    1391                     <span class="k">for</span> <span class="n">ind</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><span class="mi">13</span><span class="p">,</span><span class="mi">14</span><span class="p">,</span><span class="mi">15</span><span class="p">,</span><span class="mi">16</span><span class="p">]:</span>
    1392                         <span class="n">sigind</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)</span>
    1393                         <span class="n">valstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">])</span>
    1394                         <span class="k">if</span> <span class="n">sigind</span> <span class="ow">in</span> <span class="n">atomsSig</span><span class="p">:</span>                       
    1395                             <span class="n">sigstr</span> <span class="o">+=</span> <span class="n">fmt</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">%</span><span class="p">(</span><span class="n">atomsSig</span><span class="p">[</span><span class="n">sigind</span><span class="p">])</span>
    1396                         <span class="k">else</span><span class="p">:</span>
    1397                             <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">8</span><span class="o">*</span><span class="s">&#39; &#39;</span>
    1398                 <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">name</span>
    1399                 <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">valstr</span>
    1400                 <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">sigstr</span>
     1556            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">name</span>
     1557            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">valstr</span>
     1558            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">sigstr</span>
     1559           
     1560    <span class="k">def</span> <span class="nf">PrintWavesAndSig</span><span class="p">(</span><span class="n">General</span><span class="p">,</span><span class="n">Atoms</span><span class="p">,</span><span class="n">wavesSig</span><span class="p">):</span>
     1561        <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
     1562        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39;</span><span class="se">\n</span><span class="s"> Modulation waves&#39;</span>
     1563        <span class="n">names</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;Sfrac&#39;</span><span class="p">:[</span><span class="s">&#39;Fsin&#39;</span><span class="p">,</span><span class="s">&#39;Fcos&#39;</span><span class="p">,</span><span class="s">&#39;Fzero&#39;</span><span class="p">,</span><span class="s">&#39;Fwid&#39;</span><span class="p">],</span><span class="s">&#39;Spos&#39;</span><span class="p">:[</span><span class="s">&#39;Xsin&#39;</span><span class="p">,</span><span class="s">&#39;Ysin&#39;</span><span class="p">,</span><span class="s">&#39;Zsin&#39;</span><span class="p">,</span><span class="s">&#39;Xcos&#39;</span><span class="p">,</span><span class="s">&#39;Ycos&#39;</span><span class="p">,</span><span class="s">&#39;Zcos&#39;</span><span class="p">,</span><span class="s">&#39;Tzero&#39;</span><span class="p">,</span><span class="s">&#39;Xslope&#39;</span><span class="p">,</span><span class="s">&#39;Yslope&#39;</span><span class="p">,</span><span class="s">&#39;Zslope&#39;</span><span class="p">],</span>
     1564            <span class="s">&#39;Sadp&#39;</span><span class="p">:[</span><span class="s">&#39;U11sin&#39;</span><span class="p">,</span><span class="s">&#39;U22sin&#39;</span><span class="p">,</span><span class="s">&#39;U33sin&#39;</span><span class="p">,</span><span class="s">&#39;U12sin&#39;</span><span class="p">,</span><span class="s">&#39;U13sin&#39;</span><span class="p">,</span><span class="s">&#39;U23sin&#39;</span><span class="p">,</span><span class="s">&#39;U11cos&#39;</span><span class="p">,</span><span class="s">&#39;U22cos&#39;</span><span class="p">,</span>
     1565            <span class="s">&#39;U33cos&#39;</span><span class="p">,</span><span class="s">&#39;U12cos&#39;</span><span class="p">,</span><span class="s">&#39;U13cos&#39;</span><span class="p">,</span><span class="s">&#39;U23cos&#39;</span><span class="p">],</span><span class="s">&#39;Smag&#39;</span><span class="p">:[</span><span class="s">&#39;MXsin&#39;</span><span class="p">,</span><span class="s">&#39;MYsin&#39;</span><span class="p">,</span><span class="s">&#39;MZsin&#39;</span><span class="p">,</span><span class="s">&#39;MXcos&#39;</span><span class="p">,</span><span class="s">&#39;MYcos&#39;</span><span class="p">,</span><span class="s">&#39;MZcos&#39;</span><span class="p">]}</span>
     1566        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="mi">135</span><span class="o">*</span><span class="s">&#39;-&#39;</span>
     1567        <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
     1568            <span class="n">AtomSS</span> <span class="o">=</span> <span class="n">at</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">][</span><span class="s">&#39;SS1&#39;</span><span class="p">]</span>
     1569            <span class="n">waveType</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="s">&#39;waveType&#39;</span><span class="p">]</span>
     1570            <span class="k">for</span> <span class="n">Stype</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;Sfrac&#39;</span><span class="p">,</span><span class="s">&#39;Spos&#39;</span><span class="p">,</span><span class="s">&#39;Sadp&#39;</span><span class="p">,</span><span class="s">&#39;Smag&#39;</span><span class="p">]:</span>
     1571                <span class="n">Waves</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="n">Stype</span><span class="p">]</span>
     1572                <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">Waves</span><span class="p">):</span>
     1573                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; atom: </span><span class="si">%s</span><span class="s">, site sym: </span><span class="si">%s</span><span class="s">, type: </span><span class="si">%s</span><span class="s"> wave type: </span><span class="si">%s</span><span class="s">:&#39;</span>    \
     1574                        <span class="o">%</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="o">-</span><span class="mi">1</span><span class="p">],</span><span class="n">at</span><span class="p">[</span><span class="n">cs</span><span class="p">],</span><span class="n">Stype</span><span class="p">,</span><span class="n">waveType</span><span class="p">)</span>
     1575                    <span class="n">line</span> <span class="o">=</span> <span class="s">&#39;&#39;</span>
     1576                    <span class="k">for</span> <span class="n">iw</span><span class="p">,</span><span class="n">wave</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Waves</span><span class="p">):</span>
     1577                        <span class="n">stiw</span> <span class="o">=</span> <span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">iw</span><span class="p">)</span>
     1578                        <span class="n">namstr</span> <span class="o">=</span> <span class="s">&#39;  names :&#39;</span>
     1579                        <span class="n">valstr</span> <span class="o">=</span> <span class="s">&#39;  values:&#39;</span>
     1580                        <span class="n">sigstr</span> <span class="o">=</span> <span class="s">&#39;  esds  :&#39;</span>
     1581                        <span class="k">if</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Spos&#39;</span><span class="p">:</span>
     1582                            <span class="n">nt</span> <span class="o">=</span> <span class="mi">6</span>
     1583                            <span class="n">ot</span> <span class="o">=</span> <span class="mi">0</span>
     1584                            <span class="k">if</span> <span class="n">waveType</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;Sawtooth&#39;</span><span class="p">,</span><span class="s">&#39;ZigZag&#39;</span><span class="p">]</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1585                                <span class="n">nt</span> <span class="o">=</span> <span class="mi">4</span>
     1586                                <span class="n">ot</span> <span class="o">=</span> <span class="mi">6</span>
     1587                            <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="n">nt</span><span class="p">):</span>
     1588                                <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="s">&#39;Spos&#39;</span><span class="p">][</span><span class="n">j</span><span class="o">+</span><span class="n">ot</span><span class="p">]</span>
     1589                                <span class="n">namstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">name</span><span class="p">)</span>
     1590                                <span class="n">valstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wave</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
     1591                                <span class="k">if</span> <span class="n">name</span><span class="o">+</span><span class="n">stiw</span> <span class="ow">in</span> <span class="n">wavesSig</span><span class="p">:</span>
     1592                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wavesSig</span><span class="p">[</span><span class="n">name</span><span class="o">+</span><span class="n">stiw</span><span class="p">])</span>
     1593                                <span class="k">else</span><span class="p">:</span>
     1594                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">12</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1595                        <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Sfrac&#39;</span><span class="p">:</span>
     1596                            <span class="n">ot</span> <span class="o">=</span> <span class="mi">0</span>
     1597                            <span class="k">if</span> <span class="s">&#39;Crenel&#39;</span> <span class="ow">in</span> <span class="n">waveType</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1598                                <span class="n">ot</span> <span class="o">=</span> <span class="mi">2</span>
     1599                            <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">2</span><span class="p">):</span>
     1600                                <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="s">&#39;Sfrac&#39;</span><span class="p">][</span><span class="n">j</span><span class="o">+</span><span class="n">ot</span><span class="p">]</span>
     1601                                <span class="n">namstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="s">&#39;Sfrac&#39;</span><span class="p">][</span><span class="n">j</span><span class="o">+</span><span class="n">ot</span><span class="p">])</span>
     1602                                <span class="n">valstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wave</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
     1603                                <span class="k">if</span> <span class="n">name</span><span class="o">+</span><span class="n">stiw</span> <span class="ow">in</span> <span class="n">wavesSig</span><span class="p">:</span>
     1604                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wavesSig</span><span class="p">[</span><span class="n">name</span><span class="o">+</span><span class="n">stiw</span><span class="p">])</span>
     1605                                <span class="k">else</span><span class="p">:</span>
     1606                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">12</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1607                        <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Sadp&#39;</span><span class="p">:</span>
     1608                            <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">12</span><span class="p">):</span>
     1609                                <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="s">&#39;Sadp&#39;</span><span class="p">][</span><span class="n">j</span><span class="p">]</span>
     1610                                <span class="n">namstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%10s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="s">&#39;Sadp&#39;</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
     1611                                <span class="n">valstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%10.6f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wave</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
     1612                                <span class="k">if</span> <span class="n">name</span><span class="o">+</span><span class="n">stiw</span> <span class="ow">in</span> <span class="n">wavesSig</span><span class="p">:</span>
     1613                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%10.6f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wavesSig</span><span class="p">[</span><span class="n">name</span><span class="o">+</span><span class="n">stiw</span><span class="p">])</span>
     1614                                <span class="k">else</span><span class="p">:</span>
     1615                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">10</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1616                        <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Smag&#39;</span><span class="p">:</span>
     1617                            <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">6</span><span class="p">):</span>
     1618                                <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="s">&#39;Smag&#39;</span><span class="p">][</span><span class="n">j</span><span class="p">]</span>
     1619                                <span class="n">namstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">names</span><span class="p">[</span><span class="s">&#39;Smag&#39;</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
     1620                                <span class="n">valstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wave</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="n">j</span><span class="p">])</span>
     1621                                <span class="k">if</span> <span class="n">name</span><span class="o">+</span><span class="n">stiw</span> <span class="ow">in</span> <span class="n">wavesSig</span><span class="p">:</span>
     1622                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.4f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">wavesSig</span><span class="p">[</span><span class="n">name</span><span class="o">+</span><span class="n">stiw</span><span class="p">])</span>
     1623                                <span class="k">else</span><span class="p">:</span>
     1624                                    <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">12</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1625                               
     1626                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">namstr</span>
     1627                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">valstr</span>
     1628                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">sigstr</span>
     1629       
    14011630               
    14021631    <span class="k">def</span> <span class="nf">PrintRBObjPOAndSig</span><span class="p">(</span><span class="n">rbfx</span><span class="p">,</span><span class="n">rbsx</span><span class="p">):</span>
     
    15401769        <span class="n">SGData</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SGData&#39;</span><span class="p">]</span>
    15411770        <span class="n">Atoms</span> <span class="o">=</span> <span class="n">Phase</span><span class="p">[</span><span class="s">&#39;Atoms&#39;</span><span class="p">]</span>
    1542         <span class="n">AtLookup</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">FillAtomLookUp</span><span class="p">(</span><span class="n">Atoms</span><span class="p">)</span>
     1771        <span class="k">if</span> <span class="n">Atoms</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">General</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#39;doPawley&#39;</span><span class="p">):</span>
     1772            <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
     1773            <span class="n">AtLookup</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">FillAtomLookUp</span><span class="p">(</span><span class="n">Atoms</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">8</span><span class="p">)</span>
    15431774        <span class="n">cell</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Cell&#39;</span><span class="p">]</span>
    15441775        <span class="n">pId</span> <span class="o">=</span> <span class="n">Phase</span><span class="p">[</span><span class="s">&#39;pId&#39;</span><span class="p">]</span>
     
    15811812            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">ptstr</span>
    15821813            <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">sigstr</span>
     1814        <span class="n">ik</span> <span class="o">=</span> <span class="mi">6</span>  <span class="c">#for Pawley stuff below</span>
     1815        <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     1816            <span class="n">ik</span> <span class="o">=</span> <span class="mi">7</span>
     1817            <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="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SuperVec&#39;</span><span class="p">]</span>
     1818            <span class="k">if</span> <span class="n">vRef</span><span class="p">:</span>
     1819                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; New modulation vector:&#39;</span>
     1820                <span class="n">namstr</span> <span class="o">=</span> <span class="s">&#39;  names :&#39;</span>
     1821                <span class="n">ptstr</span> <span class="o">=</span>  <span class="s">&#39;  values:&#39;</span>
     1822                <span class="n">sigstr</span> <span class="o">=</span> <span class="s">&#39;  esds  :&#39;</span>
     1823                <span class="k">for</span> <span class="n">var</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;mV0&#39;</span><span class="p">,</span><span class="s">&#39;mV1&#39;</span><span class="p">,</span><span class="s">&#39;mV2&#39;</span><span class="p">]:</span>
     1824                    <span class="n">namstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12s</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="n">var</span><span class="p">)</span>
     1825                    <span class="n">ptstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.6f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">parmDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="n">var</span><span class="p">])</span>
     1826                    <span class="k">if</span> <span class="n">pfx</span><span class="o">+</span><span class="n">var</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
     1827                        <span class="n">sigstr</span> <span class="o">+=</span> <span class="s">&#39;</span><span class="si">%12.6f</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">sigDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="n">var</span><span class="p">])</span>
     1828                    <span class="k">else</span><span class="p">:</span>
     1829                        <span class="n">sigstr</span> <span class="o">+=</span> <span class="mi">12</span><span class="o">*</span><span class="s">&#39; &#39;</span>
     1830                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">namstr</span>
     1831                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">ptstr</span>
     1832                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">sigstr</span>
    15831833           
    15841834        <span class="n">General</span><span class="p">[</span><span class="s">&#39;Mass&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span>
     
    15871837            <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">refl</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">pawleyRef</span><span class="p">):</span>
    15881838                <span class="n">key</span> <span class="o">=</span> <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;PWLref:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span>
    1589                 <span class="n">refl</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
     1839                <span class="n">refl</span><span class="p">[</span><span class="n">ik</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
    15901840                <span class="k">if</span> <span class="n">key</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
    1591                     <span class="n">refl</span><span class="p">[</span><span class="mi">7</span><span class="p">]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
     1841                    <span class="n">refl</span><span class="p">[</span><span class="n">ik</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">key</span><span class="p">]</span>
    15921842                <span class="k">else</span><span class="p">:</span>
    1593                     <span class="n">refl</span><span class="p">[</span><span class="mi">7</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span>
     1843                    <span class="n">refl</span><span class="p">[</span><span class="n">ik</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span>
    15941844        <span class="k">else</span><span class="p">:</span>
    15951845            <span class="n">VRBIds</span> <span class="o">=</span> <span class="n">RBIds</span><span class="p">[</span><span class="s">&#39;Vector&#39;</span><span class="p">]</span>
     
    16101860                <span class="n">PrintRBObjTorAndSig</span><span class="p">(</span><span class="n">rbsx</span><span class="p">)</span>
    16111861            <span class="n">atomsSig</span> <span class="o">=</span> <span class="p">{}</span>
    1612             <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;nuclear&#39;</span><span class="p">:</span>        <span class="c">#this needs macromolecular variant!</span>
    1613                 <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
    1614                     <span class="n">names</span> <span class="o">=</span> <span class="p">{</span><span class="mi">3</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ax:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">4</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ay:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">5</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Az:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">6</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Afrac:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span>
    1615                         <span class="mi">10</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AUiso:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">11</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU11:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">12</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU22:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">13</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU33:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span>
    1616                         <span class="mi">14</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU12:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">15</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU13:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="mi">16</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU23:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)}</span>
    1617                     <span class="k">for</span> <span class="n">ind</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>
     1862            <span class="n">wavesSig</span> <span class="o">=</span> <span class="p">{}</span>
     1863            <span class="n">cx</span><span class="p">,</span><span class="n">ct</span><span class="p">,</span><span class="n">cs</span><span class="p">,</span><span class="n">cia</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomPtrs&#39;</span><span class="p">]</span>
     1864            <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">at</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Atoms</span><span class="p">):</span>
     1865                <span class="n">names</span> <span class="o">=</span> <span class="p">{</span><span class="n">cx</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ax:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cx</span><span class="o">+</span><span class="mi">1</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Ay:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cx</span><span class="o">+</span><span class="mi">2</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Az:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Afrac:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span>
     1866                    <span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AUiso:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU11:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cia</span><span class="o">+</span><span class="mi">3</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU22:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cia</span><span class="o">+</span><span class="mi">4</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU33:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span>
     1867                    <span class="n">cia</span><span class="o">+</span><span class="mi">5</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU12:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cia</span><span class="o">+</span><span class="mi">6</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU13:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">),</span><span class="n">cia</span><span class="o">+</span><span class="mi">7</span><span class="p">:</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;AU23:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)}</span>
     1868                <span class="k">for</span> <span class="n">ind</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">cx</span><span class="p">,</span><span class="n">cx</span><span class="o">+</span><span class="mi">4</span><span class="p">):</span>
     1869                    <span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]]</span>
     1870                    <span class="k">if</span> <span class="n">ind</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">cx</span><span class="p">,</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">):</span>
     1871                        <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s">&#39;A&#39;</span><span class="p">,</span><span class="s">&#39;dA&#39;</span><span class="p">)</span>
     1872                    <span class="k">else</span><span class="p">:</span>
     1873                        <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span>
     1874                    <span class="k">if</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
     1875                        <span class="n">atomsSig</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">name</span><span class="p">]</span>
     1876                <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
     1877                    <span class="n">at</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]]</span>
     1878                    <span class="k">if</span> <span class="n">names</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
     1879                        <span class="n">atomsSig</span><span class="p">[</span><span class="s">&#39;</span><span class="si">%d</span><span class="s">:</span><span class="si">%d</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">)]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">cia</span><span class="o">+</span><span class="mi">1</span><span class="p">]]</span>
     1880                <span class="k">else</span><span class="p">:</span>
     1881                    <span class="k">for</span> <span class="n">ind</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">cia</span><span class="o">+</span><span class="mi">2</span><span class="p">,</span><span class="n">cia</span><span class="o">+</span><span class="mi">8</span><span class="p">):</span>
    16181882                        <span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]]</span>
    1619                         <span class="k">if</span> <span class="n">ind</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>
    1620                             <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s">&#39;A&#39;</span><span class="p">,</span><span class="s">&#39;dA&#39;</span><span class="p">)</span>
    1621                         <span class="k">else</span><span class="p">:</span>
    1622                             <span class="n">name</span> <span class="o">=</span> <span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span>
    1623                         <span class="k">if</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
    1624                             <span class="n">atomsSig</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">name</span><span class="p">]</span>
    1625                     <span class="k">if</span> <span class="n">at</span><span class="p">[</span><span class="mi">9</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;I&#39;</span><span class="p">:</span>
    1626                         <span class="n">at</span><span class="p">[</span><span class="mi">10</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="mi">10</span><span class="p">]]</span>
    1627                         <span class="k">if</span> <span class="n">names</span><span class="p">[</span><span class="mi">10</span><span class="p">]</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
    1628                             <span class="n">atomsSig</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:10&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="mi">10</span><span class="p">]]</span>
    1629                     <span class="k">else</span><span class="p">:</span>
    1630                         <span class="k">for</span> <span class="n">ind</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><span class="mi">13</span><span class="p">,</span><span class="mi">14</span><span class="p">,</span><span class="mi">15</span><span class="p">,</span><span class="mi">16</span><span class="p">]:</span>
    1631                             <span class="n">at</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]]</span>
    1632                             <span class="k">if</span> <span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
    1633                                 <span class="n">atomsSig</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]]</span>
    1634                     <span class="n">ind</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomTypes&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
    1635                     <span class="n">General</span><span class="p">[</span><span class="s">&#39;Mass&#39;</span><span class="p">]</span> <span class="o">+=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomMass&#39;</span><span class="p">][</span><span class="n">ind</span><span class="p">]</span><span class="o">*</span><span class="n">at</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span><span class="o">*</span><span class="n">at</span><span class="p">[</span><span class="mi">8</span><span class="p">]</span>
     1883                        <span class="k">if</span> <span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
     1884                            <span class="n">atomsSig</span><span class="p">[</span><span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">ind</span><span class="p">)]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">names</span><span class="p">[</span><span class="n">ind</span><span class="p">]]</span>
     1885                <span class="n">ind</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomTypes&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="n">at</span><span class="p">[</span><span class="n">ct</span><span class="p">])</span>
     1886                <span class="n">General</span><span class="p">[</span><span class="s">&#39;Mass&#39;</span><span class="p">]</span> <span class="o">+=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;AtomMass&#39;</span><span class="p">][</span><span class="n">ind</span><span class="p">]</span><span class="o">*</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">3</span><span class="p">]</span><span class="o">*</span><span class="n">at</span><span class="p">[</span><span class="n">cx</span><span class="o">+</span><span class="mi">5</span><span class="p">]</span>
     1887                <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     1888                    <span class="n">AtomSS</span> <span class="o">=</span> <span class="n">at</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">][</span><span class="s">&#39;SS1&#39;</span><span class="p">]</span>
     1889                    <span class="n">waveType</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="s">&#39;waveType&#39;</span><span class="p">]</span>
     1890                    <span class="k">for</span> <span class="n">Stype</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;Sfrac&#39;</span><span class="p">,</span><span class="s">&#39;Spos&#39;</span><span class="p">,</span><span class="s">&#39;Sadp&#39;</span><span class="p">,</span><span class="s">&#39;Smag&#39;</span><span class="p">]:</span>
     1891                        <span class="n">Waves</span> <span class="o">=</span> <span class="n">AtomSS</span><span class="p">[</span><span class="n">Stype</span><span class="p">]</span>
     1892                        <span class="k">for</span> <span class="n">iw</span><span class="p">,</span><span class="n">wave</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">Waves</span><span class="p">):</span>
     1893                            <span class="n">stiw</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">+</span><span class="s">&#39;:&#39;</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">iw</span><span class="p">)</span>
     1894                            <span class="k">if</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Spos&#39;</span><span class="p">:</span>
     1895                                <span class="k">if</span> <span class="n">waveType</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;ZigZag&#39;</span><span class="p">,</span><span class="s">&#39;Sawtooth&#39;</span><span class="p">]</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1896                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;Tzero:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Xslope:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Yslope:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Zslope:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1897                                <span class="k">else</span><span class="p">:</span>
     1898                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;Xsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Ysin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Zsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1899                                        <span class="s">&#39;Xcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Ycos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Zcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1900                            <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Sadp&#39;</span><span class="p">:</span>
     1901                                <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;U11sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U22sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U33sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1902                                    <span class="s">&#39;U12sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U13sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U23sin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1903                                    <span class="s">&#39;U11cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U22cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U33cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1904                                    <span class="s">&#39;U12cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U13cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;U23cos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1905                            <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Sfrac&#39;</span><span class="p">:</span>
     1906                                <span class="k">if</span> <span class="s">&#39;Crenel&#39;</span> <span class="ow">in</span> <span class="n">waveType</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">iw</span><span class="p">:</span>
     1907                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;Fzero:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Fwid:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1908                                <span class="k">else</span><span class="p">:</span>
     1909                                    <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;Fsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;Fcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1910                            <span class="k">elif</span> <span class="n">Stype</span> <span class="o">==</span> <span class="s">&#39;Smag&#39;</span><span class="p">:</span>
     1911                                <span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s">&#39;MXsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;MYsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;MZsin:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span>
     1912                                    <span class="s">&#39;MXcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;MYcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">,</span><span class="s">&#39;MZcos:&#39;</span><span class="o">+</span><span class="n">stiw</span><span class="p">]</span>
     1913                            <span class="k">for</span> <span class="n">iname</span><span class="p">,</span><span class="n">name</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">names</span><span class="p">):</span>
     1914                                <span class="n">AtomSS</span><span class="p">[</span><span class="n">Stype</span><span class="p">][</span><span class="n">iw</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="n">iname</span><span class="p">]</span> <span class="o">=</span> <span class="n">parmDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="n">name</span><span class="p">]</span>
     1915                                <span class="k">if</span> <span class="n">pfx</span><span class="o">+</span><span class="n">name</span> <span class="ow">in</span> <span class="n">sigDict</span><span class="p">:</span>
     1916                                    <span class="n">wavesSig</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">sigDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="n">name</span><span class="p">]</span>
     1917                   
    16361918            <span class="n">PrintAtomsAndSig</span><span class="p">(</span><span class="n">General</span><span class="p">,</span><span class="n">Atoms</span><span class="p">,</span><span class="n">atomsSig</span><span class="p">)</span>
     1919            <span class="k">if</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     1920                <span class="n">PrintWavesAndSig</span><span class="p">(</span><span class="n">General</span><span class="p">,</span><span class="n">Atoms</span><span class="p">,</span><span class="n">wavesSig</span><span class="p">)</span>
     1921           
    16371922       
    16381923        <span class="n">textureData</span> <span class="o">=</span> <span class="n">General</span><span class="p">[</span><span class="s">&#39;SH Texture&#39;</span><span class="p">]</span>   
     
    17722057        <span class="n">cell</span> <span class="o">=</span> <span class="n">Phases</span><span class="p">[</span><span class="n">phase</span><span class="p">][</span><span class="s">&#39;General&#39;</span><span class="p">][</span><span class="s">&#39;Cell&#39;</span><span class="p">][</span><span class="mi">1</span><span class="p">:</span><span class="mi">7</span><span class="p">]</span>
    17732058        <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">cell</span><span class="p">)</span>
     2059        <span class="k">if</span> <span class="n">Phases</span><span class="p">[</span><span class="n">phase</span><span class="p">][</span><span class="s">&#39;General&#39;</span><span class="p">][</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     2060            <span class="n">SSGData</span> <span class="o">=</span> <span class="n">Phases</span><span class="p">[</span><span class="n">phase</span><span class="p">][</span><span class="s">&#39;General&#39;</span><span class="p">][</span><span class="s">&#39;SSGData&#39;</span><span class="p">]</span>
     2061            <span class="n">Vec</span><span class="p">,</span><span class="n">x</span><span class="p">,</span><span class="n">maxH</span> <span class="o">=</span> <span class="n">Phases</span><span class="p">[</span><span class="n">phase</span><span class="p">][</span><span class="s">&#39;General&#39;</span><span class="p">][</span><span class="s">&#39;SuperVec&#39;</span><span class="p">]</span>
    17742062        <span class="n">pId</span> <span class="o">=</span> <span class="n">Phases</span><span class="p">[</span><span class="n">phase</span><span class="p">][</span><span class="s">&#39;pId&#39;</span><span class="p">]</span>
    17752063        <span class="n">histoList</span> <span class="o">=</span> <span class="n">HistoPhase</span><span class="o">.</span><span class="n">keys</span><span class="p">()</span>
     
    18012089                        <span class="n">hapVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="n">item</span><span class="p">)</span>
    18022090                <span class="n">names</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">HStrainNames</span><span class="p">(</span><span class="n">SGData</span><span class="p">)</span>
     2091                <span class="n">HSvals</span> <span class="o">=</span> <span class="p">[]</span>
    18032092                <span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">name</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">names</span><span class="p">):</span>
    18042093                    <span class="n">hapDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">hapData</span><span class="p">[</span><span class="s">&#39;HStrain&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="n">i</span><span class="p">]</span>
     2094                    <span class="n">HSvals</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">hapDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="n">name</span><span class="p">])</span>
    18052095                    <span class="k">if</span> <span class="n">hapData</span><span class="p">[</span><span class="s">&#39;HStrain&#39;</span><span class="p">][</span><span class="mi">1</span><span class="p">][</span><span class="n">i</span><span class="p">]:</span>
    18062096                        <span class="n">hapVary</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">pfx</span><span class="o">+</span><span class="n">name</span><span class="p">)</span>
     2097                <span class="n">DIJS</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">HStrainVals</span><span class="p">(</span><span class="n">HSvals</span><span class="p">,</span><span class="n">SGData</span><span class="p">)</span>
    18072098                <span class="n">controlDict</span><span class="p">[</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;poType&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">hapData</span><span class="p">[</span><span class="s">&#39;Pref.Ori.&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
    18082099                <span class="k">if</span> <span class="n">hapData</span><span class="p">[</span><span class="s">&#39;Pref.Ori.&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span> <span class="o">==</span> <span class="s">&#39;MD&#39;</span><span class="p">:</span>
     
    18662157                    <span class="n">PrintHStrain</span><span class="p">(</span><span class="n">hapData</span><span class="p">[</span><span class="s">&#39;HStrain&#39;</span><span class="p">],</span><span class="n">SGData</span><span class="p">)</span>
    18672158                    <span class="k">if</span> <span class="n">hapData</span><span class="p">[</span><span class="s">&#39;Babinet&#39;</span><span class="p">][</span><span class="s">&#39;BabA&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">]:</span>
    1868                         <span class="n">PrintBabinet</span><span class="p">(</span><span class="n">hapData</span><span class="p">[</span><span class="s">&#39;Babinet&#39;</span><span class="p">])</span>
    1869                 <span class="n">HKLd</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">G2lat</span><span class="o">.</span><span class="n">GenHLaue</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">A</span><span class="p">))</span>
     2159                        <span class="n">PrintBabinet</span><span class="p">(</span><span class="n">hapData</span><span class="p">[</span><span class="s">&#39;Babinet&#39;</span><span class="p">])</span>                       
    18702160                <span class="k">if</span> <span class="n">resetRefList</span><span class="p">:</span>
    18712161                    <span class="n">refList</span> <span class="o">=</span> <span class="p">[]</span>
    18722162                    <span class="n">Uniq</span> <span class="o">=</span> <span class="p">[]</span>
    18732163                    <span class="n">Phi</span> <span class="o">=</span> <span class="p">[]</span>
    1874                     <span class="k">for</span> <span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">d</span> <span class="ow">in</span> <span class="n">HKLd</span><span class="p">:</span>
    1875                         <span class="n">ext</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">uniq</span><span class="p">,</span><span class="n">phi</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GenHKLf</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">],</span><span class="n">SGData</span><span class="p">)</span>
    1876                         <span class="n">mul</span> <span class="o">*=</span> <span class="mi">2</span>      <span class="c"># for powder overlap of Friedel pairs</span>
    1877                         <span class="k">if</span> <span class="n">ext</span><span class="p">:</span>
    1878                             <span class="k">continue</span>
    1879                         <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>
    1880                             <span class="n">pos</span> <span class="o">=</span> <span class="mf">2.0</span><span class="o">*</span><span class="n">asind</span><span class="p">(</span><span class="n">wave</span><span class="o">/</span><span class="p">(</span><span class="mf">2.0</span><span class="o">*</span><span class="n">d</span><span class="p">))</span><span class="o">+</span><span class="n">Zero</span>
    1881                             <span class="k">if</span> <span class="n">limits</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">pos</span> <span class="o">&lt;</span> <span class="n">limits</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
    1882                                 <span class="n">refList</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">d</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">])</span>
    1883                                 <span class="c">#... sig,gam,fotsq,fctsq, phase,icorr,prfo,abs,ext</span>
    1884                                 <span class="n">Uniq</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">uniq</span><span class="p">)</span>
    1885                                 <span class="n">Phi</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">phi</span><span class="p">)</span>
    1886                         <span class="k">elif</span> <span class="s">&#39;T&#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>
    1887                             <span class="n">pos</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><span class="o">*</span><span class="n">d</span><span class="o">+</span><span class="n">inst</span><span class="p">[</span><span class="s">&#39;difA&#39;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span><span class="o">*</span><span class="n">d</span><span class="o">**</span><span class="mi">2</span><span class="o">+</span><span class="n">inst</span><span class="p">[</span><span class="s">&#39;difB&#39;</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span><span class="o">/</span><span class="n">d</span><span class="o">+</span><span class="n">Zero</span>
    1888                             <span class="k">if</span> <span class="n">limits</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">pos</span> <span class="o">&lt;</span> <span class="n">limits</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
    1889                                 <span class="n">wave</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><span class="o">*</span><span class="n">d</span><span class="o">/</span><span class="p">(</span><span class="mf">252.816</span><span class="o">*</span><span class="n">inst</span><span class="p">[</span><span class="s">&#39;fltPath&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span>
    1890                                 <span class="n">refList</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">d</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">])</span>
    1891                                 <span class="c"># ... sig,gam,fotsq,fctsq, phase,icorr,alp,bet,wave, prfo,abs,ext</span>
    1892                                 <span class="n">Uniq</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">uniq</span><span class="p">)</span>
    1893                                 <span class="n">Phi</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">phi</span><span class="p">)</span>
    1894                     <span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Reflection Lists&#39;</span><span class="p">][</span><span class="n">phase</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;RefList&#39;</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">refList</span><span class="p">),</span><span class="s">&#39;FF&#39;</span><span class="p">:{},</span><span class="s">&#39;Type&#39;</span><span class="p">:</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>
     2164                    <span class="k">if</span> <span class="n">Phases</span><span class="p">[</span><span class="n">phase</span><span class="p">][</span><span class="s">&#39;General&#39;</span><span class="p">][</span><span class="s">&#39;Type&#39;</span><span class="p">]</span> <span class="ow">in</span> <span class="p">[</span><span class="s">&#39;modulated&#39;</span><span class="p">,</span><span class="s">&#39;magnetic&#39;</span><span class="p">]:</span>
     2165                        <span class="n">ifSuper</span> <span class="o">=</span> <span class="bp">True</span>
     2166                        <span class="n">HKLd</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">G2lat</span><span class="o">.</span><span class="n">GenSSHLaue</span><span class="p">(</span><span class="n">dmin</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>
     2167                        <span class="n">HKLd</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">sortArray</span><span class="p">(</span><span class="n">HKLd</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="n">reverse</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
     2168                        <span class="k">for</span> <span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">m</span><span class="p">,</span><span class="n">d</span> <span class="ow">in</span> <span class="n">HKLd</span><span class="p">:</span>
     2169                            <span class="n">ext</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">uniq</span><span class="p">,</span><span class="n">phi</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GenHKLf</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">],</span><span class="n">SGData</span><span class="p">)</span>    <span class="c">#is this right for SS refl.??</span>
     2170                            <span class="n">mul</span> <span class="o">*=</span> <span class="mi">2</span>      <span class="c"># for powder overlap of Friedel pairs</span>
     2171                            <span class="k">if</span> <span class="n">m</span> <span class="ow">or</span> <span class="ow">not</span> <span class="n">ext</span><span class="p">:</span>
     2172                                <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>
     2173                                    <span class="n">pos</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">Dsp2pos</span><span class="p">(</span><span class="n">inst</span><span class="p">,</span><span class="n">d</span><span class="p">)</span>
     2174                                    <span class="k">if</span> <span class="n">limits</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">pos</span> <span class="o">&lt;</span> <span class="n">limits</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
     2175                                        <span class="n">refList</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">m</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">d</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">])</span>
     2176                                        <span class="c">#... sig,gam,fotsq,fctsq, phase,icorr,prfo,abs,ext</span>
     2177                                        <span class="n">Uniq</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">uniq</span><span class="p">)</span>
     2178                                        <span class="n">Phi</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">phi</span><span class="p">)</span>
     2179                                <span class="k">elif</span> <span class="s">&#39;T&#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>
     2180                                    <span class="n">pos</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">Dsp2pos</span><span class="p">(</span><span class="n">inst</span><span class="p">,</span><span class="n">d</span><span class="p">)</span>
     2181                                    <span class="k">if</span> <span class="n">limits</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">pos</span> <span class="o">&lt;</span> <span class="n">limits</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
     2182                                        <span class="n">wave</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><span class="o">*</span><span class="n">d</span><span class="o">/</span><span class="p">(</span><span class="mf">252.816</span><span class="o">*</span><span class="n">inst</span><span class="p">[</span><span class="s">&#39;fltPath&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span>
     2183                                        <span class="n">refList</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">m</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">d</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">])</span>
     2184                                        <span class="c"># ... sig,gam,fotsq,fctsq, phase,icorr,alp,bet,wave, prfo,abs,ext</span>
     2185                                        <span class="n">Uniq</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">uniq</span><span class="p">)</span>
     2186                                        <span class="n">Phi</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">phi</span><span class="p">)</span>
     2187                    <span class="k">else</span><span class="p">:</span>
     2188                        <span class="n">ifSuper</span> <span class="o">=</span> <span class="bp">False</span>
     2189                        <span class="n">HKLd</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">G2lat</span><span class="o">.</span><span class="n">GenHLaue</span><span class="p">(</span><span class="n">dmin</span><span class="p">,</span><span class="n">SGData</span><span class="p">,</span><span class="n">A</span><span class="p">))</span>
     2190                        <span class="n">HKLd</span> <span class="o">=</span> <span class="n">G2mth</span><span class="o">.</span><span class="n">sortArray</span><span class="p">(</span><span class="n">HKLd</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="n">reverse</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
     2191                        <span class="k">for</span> <span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">d</span> <span class="ow">in</span> <span class="n">HKLd</span><span class="p">:</span>
     2192                            <span class="n">ext</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">uniq</span><span class="p">,</span><span class="n">phi</span> <span class="o">=</span> <span class="n">G2spc</span><span class="o">.</span><span class="n">GenHKLf</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">],</span><span class="n">SGData</span><span class="p">)</span>
     2193                            <span class="n">mul</span> <span class="o">*=</span> <span class="mi">2</span>      <span class="c"># for powder overlap of Friedel pairs</span>
     2194                            <span class="k">if</span> <span class="n">ext</span><span class="p">:</span>
     2195                                <span class="k">continue</span>
     2196                            <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>
     2197                                <span class="n">pos</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">Dsp2pos</span><span class="p">(</span><span class="n">inst</span><span class="p">,</span><span class="n">d</span><span class="p">)</span>
     2198                                <span class="k">if</span> <span class="n">limits</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">pos</span> <span class="o">&lt;</span> <span class="n">limits</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
     2199                                    <span class="n">refList</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">d</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">])</span>
     2200                                    <span class="c">#... sig,gam,fotsq,fctsq, phase,icorr,prfo,abs,ext</span>
     2201                                    <span class="n">Uniq</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">uniq</span><span class="p">)</span>
     2202                                    <span class="n">Phi</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">phi</span><span class="p">)</span>
     2203                            <span class="k">elif</span> <span class="s">&#39;T&#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>
     2204                                <span class="n">pos</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">Dsp2pos</span><span class="p">(</span><span class="n">inst</span><span class="p">,</span><span class="n">d</span><span class="p">)</span>
     2205                                <span class="k">if</span> <span class="n">limits</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">pos</span> <span class="o">&lt;</span> <span class="n">limits</span><span class="p">[</span><span class="mi">1</span><span class="p">]:</span>
     2206                                    <span class="n">wave</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><span class="o">*</span><span class="n">d</span><span class="o">/</span><span class="p">(</span><span class="mf">252.816</span><span class="o">*</span><span class="n">inst</span><span class="p">[</span><span class="s">&#39;fltPath&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span>
     2207                                    <span class="n">refList</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">h</span><span class="p">,</span><span class="n">k</span><span class="p">,</span><span class="n">l</span><span class="p">,</span><span class="n">mul</span><span class="p">,</span><span class="n">d</span><span class="p">,</span> <span class="n">pos</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">0.0</span><span class="p">,</span><span class="n">wave</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">1.0</span><span class="p">])</span>
     2208                                    <span class="c"># ... sig,gam,fotsq,fctsq, phase,icorr,alp,bet,wave, prfo,abs,ext</span>
     2209                                    <span class="n">Uniq</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">uniq</span><span class="p">)</span>
     2210                                    <span class="n">Phi</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">phi</span><span class="p">)</span>
     2211                    <span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Reflection Lists&#39;</span><span class="p">][</span><span class="n">phase</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;RefList&#39;</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">refList</span><span class="p">),</span><span class="s">&#39;FF&#39;</span><span class="p">:{},</span><span class="s">&#39;Type&#39;</span><span class="p">:</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><span class="s">&#39;Super&#39;</span><span class="p">:</span><span class="n">ifSuper</span><span class="p">}</span>
    18952212            <span class="k">elif</span> <span class="s">&#39;HKLF&#39;</span> <span class="ow">in</span> <span class="n">histogram</span><span class="p">:</span>
    18962213                <span class="n">inst</span> <span class="o">=</span> <span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Instrument Parameters&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
     
    22082525                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; Final refinement RF, RF^2 = </span><span class="si">%.2f%%</span><span class="s">, </span><span class="si">%.2f%%</span><span class="s"> on </span><span class="si">%d</span><span class="s"> reflections&#39;</span>   \
    22092526                        <span class="o">%</span><span class="p">(</span><span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Residuals&#39;</span><span class="p">][</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Rf&#39;</span><span class="p">],</span><span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Residuals&#39;</span><span class="p">][</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Rf^2&#39;</span><span class="p">],</span><span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Residuals&#39;</span><span class="p">][</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Nref&#39;</span><span class="p">])</span>
     2527                    <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; Bragg intensity sum = </span><span class="si">%.3g</span><span class="s">&#39;</span><span class="o">%</span><span class="p">(</span><span class="n">Histogram</span><span class="p">[</span><span class="s">&#39;Residuals&#39;</span><span class="p">][</span><span class="n">pfx</span><span class="o">+</span><span class="s">&#39;sumInt&#39;</span><span class="p">])</span>
    22102528               
    22112529                    <span class="k">if</span> <span class="n">pfx</span><span class="o">+</span><span class="s">&#39;Scale&#39;</span> <span class="ow">in</span> <span class="n">PhFrExtPOSig</span><span class="p">:</span>
     
    25842902                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">ptstr</span>
    25852903                <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="n">sigstr</span>
     2904        <span class="n">sumBk</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">Histogram</span><span class="p">[</span><span class="s">&#39;sumBk&#39;</span><span class="p">])</span>
     2905        <span class="k">print</span> <span class="o">&gt;&gt;</span><span class="n">pFile</span><span class="p">,</span><span class="s">&#39; Background sums: empirical </span><span class="si">%.3g</span><span class="s">, Debye </span><span class="si">%.3g</span><span class="s">, peaks </span><span class="si">%.3g</span><span class="s">, Total </span><span class="si">%.3g</span><span class="s">&#39;</span>    \
     2906            <span class="o">%</span><span class="p">(</span><span class="n">sumBk</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">sumBk</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">sumBk</span><span class="p">[</span><span class="mi">2</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">sumBk</span><span class="p">))</span>
    25862907       
    25872908    <span class="k">def</span> <span class="nf">PrintInstParmsSig</span><span class="p">(</span><span class="n">Inst</span><span class="p">,</span><span class="n">instSig</span><span class="p">):</span>
Note: See TracChangeset for help on using the changeset viewer.