Changeset 1998 for sphinxdocs/build/html/_modules/GSASII.html
- Timestamp:
- Oct 10, 2015 9:59:34 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified sphinxdocs/build/html/_modules/GSASII.html ¶
r1832 r1998 53 53 <span class="c">#GSASII</span> 54 54 <span class="c">########### SVN repository information ###################</span> 55 <span class="c"># $Date: 2015- 05-01 18:38:23 -0500 (Fri, 01 May2015) $</span>55 <span class="c"># $Date: 2015-10-10 11:58:12 -0500 (Sat, 10 Oct 2015) $</span> 56 56 <span class="c"># $Author: toby $</span> 57 <span class="c"># $Revision: 1 831$</span>57 <span class="c"># $Revision: 1997 $</span> 58 58 <span class="c"># $URL: https://subversion.xray.aps.anl.gov/pyGSAS/trunk/GSASII.py $</span> 59 <span class="c"># $Id: GSASII.py 1 831 2015-05-01 23:38:23Z toby $</span>59 <span class="c"># $Id: GSASII.py 1997 2015-10-10 16:58:12Z toby $</span> 60 60 <span class="c">########### SVN repository information ###################</span> 61 61 <span class="sd">'''</span> … … 115 115 <span class="c"># load the GSAS routines</span> 116 116 <span class="kn">import</span> <span class="nn">GSASIIpath</span> 117 <span class="n">GSASIIpath</span><span class="o">.</span><span class="n">SetVersionNumber</span><span class="p">(</span><span class="s">"$Revision: 1 831$"</span><span class="p">)</span>117 <span class="n">GSASIIpath</span><span class="o">.</span><span class="n">SetVersionNumber</span><span class="p">(</span><span class="s">"$Revision: 1997 $"</span><span class="p">)</span> 118 118 <span class="kn">import</span> <span class="nn">GSASIIIO</span> <span class="kn">as</span> <span class="nn">G2IO</span> 119 119 <span class="kn">import</span> <span class="nn">GSASIIgrid</span> <span class="kn">as</span> <span class="nn">G2gd</span> … … 122 122 <span class="kn">import</span> <span class="nn">GSASIIpwd</span> <span class="kn">as</span> <span class="nn">G2pwd</span> 123 123 <span class="kn">import</span> <span class="nn">GSASIIpwdGUI</span> <span class="kn">as</span> <span class="nn">G2pdG</span> 124 <span class="kn">import</span> <span class="nn">GSASIIphsGUI</span> <span class="kn">as</span> <span class="nn">G2phsG</span> 124 125 <span class="kn">import</span> <span class="nn">GSASIIspc</span> <span class="kn">as</span> <span class="nn">G2spc</span> 125 126 <span class="kn">import</span> <span class="nn">GSASIIstrMain</span> <span class="kn">as</span> <span class="nn">G2stMn</span> … … 145 146 <span class="s">'Babinet'</span><span class="p">:{</span><span class="s">'BabA'</span><span class="p">:[</span><span class="mf">0.0</span><span class="p">,</span><span class="bp">False</span><span class="p">],</span><span class="s">'BabU'</span><span class="p">:[</span><span class="mf">0.0</span><span class="p">,</span><span class="bp">False</span><span class="p">]},</span> 146 147 <span class="s">'Extinction'</span><span class="p">:[</span><span class="s">'Lorentzian'</span><span class="p">,</span><span class="s">'None'</span><span class="p">,</span> <span class="p">{</span><span class="s">'Tbar'</span><span class="p">:</span><span class="mf">0.1</span><span class="p">,</span><span class="s">'Cos2TM'</span><span class="p">:</span><span class="mf">0.955</span><span class="p">,</span> 147 <span class="s">'Eg'</span><span class="p">:[</span><span class="mf">1.e-10</span><span class="p">,</span><span class="bp">False</span><span class="p">],</span><span class="s">'Es'</span><span class="p">:[</span><span class="mf">1.e-10</span><span class="p">,</span><span class="bp">False</span><span class="p">],</span><span class="s">'Ep'</span><span class="p">:[</span><span class="mf">1.e-10</span><span class="p">,</span><span class="bp">False</span><span class="p">]}]}</span> 148 <span class="s">'Eg'</span><span class="p">:[</span><span class="mf">1.e-10</span><span class="p">,</span><span class="bp">False</span><span class="p">],</span><span class="s">'Es'</span><span class="p">:[</span><span class="mf">1.e-10</span><span class="p">,</span><span class="bp">False</span><span class="p">],</span><span class="s">'Ep'</span><span class="p">:[</span><span class="mf">1.e-10</span><span class="p">,</span><span class="bp">False</span><span class="p">]}],</span> 149 <span class="s">'Flack'</span><span class="p">:[</span><span class="mf">0.0</span><span class="p">,</span><span class="bp">False</span><span class="p">]}</span> 148 150 <span class="k">elif</span> <span class="n">dType</span> <span class="o">==</span> <span class="s">'SNT'</span><span class="p">:</span> 149 151 <span class="k">return</span> <span class="p">{</span><span class="s">'Histogram'</span><span class="p">:</span><span class="n">histoName</span><span class="p">,</span><span class="s">'Show'</span><span class="p">:</span><span class="bp">False</span><span class="p">,</span><span class="s">'Scale'</span><span class="p">:[</span><span class="mf">1.0</span><span class="p">,</span><span class="bp">True</span><span class="p">],</span> … … 228 230 <span class="n">help</span><span class="o">=</span><span class="s">''</span><span class="p">,</span><span class="nb">id</span><span class="o">=</span><span class="n">wx</span><span class="o">.</span><span class="n">ID_ANY</span><span class="p">,</span> 229 231 <span class="n">kind</span><span class="o">=</span><span class="n">wx</span><span class="o">.</span><span class="n">ITEM_NORMAL</span><span class="p">,</span> 230 <span class="n">text</span><span class="o">=</span><span class="s">'Add phase'</span><span class="p">)</span>232 <span class="n">text</span><span class="o">=</span><span class="s">'Add new phase'</span><span class="p">)</span> 231 233 <span class="bp">self</span><span class="o">.</span><span class="n">Bind</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">EVT_MENU</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">OnAddPhase</span><span class="p">,</span> <span class="nb">id</span><span class="o">=</span><span class="n">item</span><span class="o">.</span><span class="n">GetId</span><span class="p">())</span> 232 234 <span class="n">item</span> <span class="o">=</span> <span class="n">parent</span><span class="o">.</span><span class="n">Append</span><span class="p">(</span> … … 332 334 <span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span> 333 335 <span class="k">print</span> <span class="s">'Import_'</span><span class="o">+</span><span class="n">errprefix</span><span class="o">+</span><span class="s">': Attribute Error '</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> 334 <span class="k">pass</span> 335 <span class="k">except</span> <span class="ne">ImportError</span><span class="p">:</span> 336 <span class="k">print</span> <span class="s">'Import_'</span><span class="o">+</span><span class="n">errprefix</span><span class="o">+</span><span class="s">': Error importing file '</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> 337 <span class="k">pass</span> 336 <span class="c">#except ImportError:</span> 337 <span class="c"># print 'Import_'+errprefix+': Error importing file '+str(filename)</span> 338 <span class="k">except</span> <span class="ne">Exception</span><span class="p">,</span><span class="n">errmsg</span><span class="p">:</span> 339 <span class="k">print</span><span class="p">(</span><span class="s">'</span><span class="se">\n</span><span class="s">Import_'</span><span class="o">+</span><span class="n">errprefix</span><span class="o">+</span><span class="s">': Error importing file '</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">filename</span><span class="p">))</span> 340 <span class="k">print</span><span class="p">(</span><span class="s">'Error message: '</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">errmsg</span><span class="p">)</span><span class="o">+</span><span class="s">'</span><span class="se">\n</span><span class="s">'</span><span class="p">)</span> 338 341 <span class="k">if</span> <span class="n">fp</span><span class="p">:</span> <span class="n">fp</span><span class="o">.</span><span class="n">close</span><span class="p">()</span> 339 342 … … 745 748 <span class="n">H</span> <span class="o">=</span> <span class="n">hkl</span> 746 749 <span class="n">ref</span><span class="p">[</span><span class="mi">4</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="mf">1.</span><span class="o">/</span><span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsq2</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">G</span><span class="p">))</span> 747 <span class="n">iabsnt</span> <span class="p">,</span><span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</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">SGData</span><span class="p">)</span>750 <span class="n">iabsnt</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">SGData</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span> 748 751 <span class="k">if</span> <span class="n">iabsnt</span><span class="p">:</span> <span class="c">#flag space gp. absences</span> 749 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 752 <span class="k">if</span> <span class="n">Super</span><span class="p">:</span> 753 <span class="k">if</span> <span class="ow">not</span> <span class="n">ref</span><span class="p">[</span><span class="mi">2</span><span class="o">+</span><span class="n">Super</span><span class="p">]:</span> 754 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 755 <span class="k">else</span><span class="p">:</span> 756 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="mi">1</span> <span class="c">#twin id?</span> 757 <span class="k">else</span><span class="p">:</span> 758 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 750 759 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">]</span> <span class="o">=</span> <span class="n">SetDefaultDData</span><span class="p">(</span><span class="n">reflData</span><span class="p">[</span><span class="s">'Type'</span><span class="p">],</span><span class="n">histoName</span><span class="p">)</span> 751 760 <span class="k">elif</span> <span class="n">histoName</span> <span class="ow">in</span> <span class="n">PWDRlist</span><span class="p">:</span> … … 753 762 <span class="n">refList</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetItemPyData</span><span class="p">(</span> 754 763 <span class="n">G2gd</span><span class="o">.</span><span class="n">GetPatternTreeItemId</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">Id</span><span class="p">,</span><span class="s">'Reflection Lists'</span><span class="p">))</span> 755 <span class="n">refList</span><span class="p">[</span><span class="n">generalData</span><span class="p">[</span><span class="s">'Name'</span><span class="p">]]</span> <span class="o">=</span> <span class="p"> []</span>764 <span class="n">refList</span><span class="p">[</span><span class="n">generalData</span><span class="p">[</span><span class="s">'Name'</span><span class="p">]]</span> <span class="o">=</span> <span class="p">{}</span> 756 765 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">]</span> <span class="o">=</span> <span class="n">SetDefaultDData</span><span class="p">(</span><span class="s">'PWDR'</span><span class="p">,</span><span class="n">histoName</span><span class="p">,</span><span class="n">NShkl</span><span class="o">=</span><span class="n">NShkl</span><span class="p">,</span><span class="n">NDij</span><span class="o">=</span><span class="n">NDij</span><span class="p">)</span> 757 766 <span class="k">else</span><span class="p">:</span> … … 826 835 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="n">Sub</span><span class="p">,</span><span class="n">copy</span><span class="o">.</span><span class="n">copy</span><span class="p">(</span><span class="n">rd</span><span class="o">.</span><span class="n">Parameters</span><span class="p">))</span> 827 836 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span> 828 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Reflection List'</span><span class="p">), [])</span> <span class="c">#dummy entry for GUI use</span>837 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Reflection List'</span><span class="p">),{})</span> <span class="c">#dummy entry for GUI use</span> 829 838 <span class="n">newHistList</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">HistName</span><span class="p">)</span> 830 839 <span class="k">else</span><span class="p">:</span> … … 839 848 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="n">Sub</span><span class="p">,</span><span class="n">rd</span><span class="o">.</span><span class="n">Parameters</span><span class="p">)</span> 840 849 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span> 841 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Reflection List'</span><span class="p">), [])</span> <span class="c">#dummy entry for GUI use</span>850 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Reflection List'</span><span class="p">),{})</span> <span class="c">#dummy entry for GUI use</span> 842 851 <span class="n">newHistList</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">HistName</span><span class="p">)</span> 843 852 … … 882 891 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">]</span> <span class="o">=</span> <span class="n">SetDefaultDData</span><span class="p">(</span><span class="n">reflData</span><span class="p">[</span><span class="s">'Type'</span><span class="p">],</span><span class="n">histoName</span><span class="p">)</span> 883 892 <span class="n">G</span><span class="p">,</span><span class="n">g</span> <span class="o">=</span> <span class="n">G2lat</span><span class="o">.</span><span class="n">cell2Gmat</span><span class="p">(</span><span class="n">generalData</span><span class="p">[</span><span class="s">'Cell'</span><span class="p">][</span><span class="mi">1</span><span class="p">:</span><span class="mi">7</span><span class="p">])</span> 893 <span class="k">if</span> <span class="s">'TwMax'</span> <span class="ow">in</span> <span class="n">reflData</span><span class="p">:</span> <span class="c">#nonmerohedral twins present</span> 894 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">][</span><span class="s">'Twins'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 895 <span class="k">for</span> <span class="n">iT</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">reflData</span><span class="p">[</span><span class="s">'TwMax'</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="mi">1</span><span class="p">):</span> 896 <span class="k">if</span> <span class="n">iT</span> <span class="ow">in</span> <span class="n">reflData</span><span class="p">[</span><span class="s">'TwMax'</span><span class="p">][</span><span class="mi">1</span><span class="p">]:</span> 897 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">][</span><span class="s">'Twins'</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="bp">False</span><span class="p">,</span><span class="mf">0.0</span><span class="p">])</span> 898 <span class="k">else</span><span class="p">:</span> 899 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">][</span><span class="s">'Twins'</span><span class="p">]</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">np</span><span class="o">.</span><span class="n">array</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="mi">0</span><span class="p">],[</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">0</span><span class="p">],[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">]]),[</span><span class="mf">1.0</span><span class="p">,</span><span class="bp">False</span><span class="p">,</span><span class="n">reflData</span><span class="p">[</span><span class="s">'TwMax'</span><span class="p">][</span><span class="mi">0</span><span class="p">]]])</span> 900 <span class="k">else</span><span class="p">:</span> <span class="c">#no nonmerohedral twins</span> 901 <span class="n">UseList</span><span class="p">[</span><span class="n">histoName</span><span class="p">][</span><span class="s">'Twins'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[[</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([[</span><span class="mi">1</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">],[</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">0</span><span class="p">],[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">]]),[</span><span class="mf">1.0</span><span class="p">,</span><span class="bp">False</span><span class="p">,</span><span class="mi">0</span><span class="p">]],]</span> 884 902 <span class="k">for</span> <span class="n">iref</span><span class="p">,</span><span class="n">ref</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">reflData</span><span class="p">[</span><span class="s">'RefList'</span><span class="p">]):</span> 885 903 <span class="n">hkl</span> <span class="o">=</span> <span class="n">ref</span><span class="p">[:</span><span class="mi">3</span><span class="p">]</span> … … 889 907 <span class="n">H</span> <span class="o">=</span> <span class="n">hkl</span> 890 908 <span class="n">ref</span><span class="p">[</span><span class="mi">4</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="mf">1.</span><span class="o">/</span><span class="n">G2lat</span><span class="o">.</span><span class="n">calc_rDsq2</span><span class="p">(</span><span class="n">H</span><span class="p">,</span><span class="n">G</span><span class="p">))</span> 891 <span class="n">iabsnt</span><span class="p">,</span><span class="n"> ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</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">SGData</span><span class="p">)</span>909 <span class="n">iabsnt</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">SGData</span><span class="p">)</span> 892 910 <span class="k">if</span> <span class="n">iabsnt</span><span class="p">:</span> <span class="c">#flag space gp. absences</span> 893 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 911 <span class="k">if</span> <span class="n">Super</span><span class="p">:</span> 912 <span class="k">if</span> <span class="ow">not</span> <span class="n">ref</span><span class="p">[</span><span class="mi">2</span><span class="o">+</span><span class="n">Super</span><span class="p">]:</span> 913 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 914 <span class="k">else</span><span class="p">:</span> 915 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="o">+</span><span class="n">Super</span><span class="p">]</span> <span class="o">=</span> <span class="mi">1</span> <span class="c">#twin id?</span> 916 <span class="k">else</span><span class="p">:</span> 917 <span class="n">ref</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 894 918 <span class="n">wx</span><span class="o">.</span><span class="n">EndBusyCursor</span><span class="p">()</span> 895 919 … … 1376 1400 <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">0</span><span class="p">][:</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">cw</span><span class="o">/</span><span class="mf">2.</span> 1377 1401 <span class="k">if</span> <span class="n">rd</span><span class="o">.</span><span class="n">GSAS</span><span class="p">:</span> <span class="c">#NB: old GSAS wanted intensities*CW even if normalized!</span> 1378 <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">/</span><span class="n">cw</span><span class="p">[:</span><span class="nb">len</span><span class="p">(</span><span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">])]</span> 1379 <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">*</span><span class="n">cw</span><span class="p">[:</span><span class="nb">len</span><span class="p">(</span><span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">])]</span><span class="o">**</span><span class="mi">2</span> <span class="c">#1/var=w at this point</span> 1402 <span class="n">npts</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span><span class="nb">len</span><span class="p">(</span><span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span><span class="nb">len</span><span class="p">(</span><span class="n">cw</span><span class="p">))</span> 1403 <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">][:</span><span class="n">npts</span><span class="p">]</span><span class="o">/</span><span class="n">cw</span><span class="p">[:</span><span class="n">npts</span><span class="p">]</span> 1404 <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">2</span><span class="p">][:</span><span class="n">npts</span><span class="p">]</span><span class="o">*</span><span class="n">cw</span><span class="p">[:</span><span class="n">npts</span><span class="p">]</span><span class="o">**</span><span class="mi">2</span> <span class="c">#1/var=w at this point</span> 1380 1405 <span class="k">else</span><span class="p">:</span> <span class="c">#NB: from topas/fullprof type files</span> 1381 1406 <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">rd</span><span class="o">.</span><span class="n">powderdata</span><span class="p">[</span><span class="mi">1</span><span class="p">][:</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> … … 1644 1669 <span class="n">refList</span><span class="p">[</span><span class="n">generalData</span><span class="p">[</span><span class="s">'Name'</span><span class="p">]]</span> <span class="o">=</span> <span class="p">[]</span> 1645 1670 <span class="k">return</span> <span class="c"># success</span> 1671 </div> 1672 <div class="viewcode-block" id="GSASII.OnPreferences"><a class="viewcode-back" href="../GSASII.html#GSASII.GSASII.OnPreferences">[docs]</a> <span class="k">def</span> <span class="nf">OnPreferences</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">event</span><span class="p">):</span> 1673 <span class="s">'Edit the GSAS-II configuration variables'</span> 1674 <span class="n">dlg</span> <span class="o">=</span> <span class="n">G2G</span><span class="o">.</span><span class="n">SelectConfigSetting</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> 1675 <span class="n">dlg</span><span class="o">.</span><span class="n">ShowModal</span><span class="p">()</span> <span class="o">==</span> <span class="n">wx</span><span class="o">.</span><span class="n">ID_OK</span> 1676 <span class="n">dlg</span><span class="o">.</span><span class="n">Destroy</span><span class="p">()</span> 1646 1677 </div> 1647 1678 <span class="k">def</span> <span class="nf">_Add_ImportMenu_smallangle</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">parent</span><span class="p">):</span> … … 1921 1952 <span class="n">filelist</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> 1922 1953 <span class="n">filelist</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="nb">set</span><span class="p">(</span><span class="n">filelist</span><span class="p">)))</span> <span class="c"># remove duplicates</span> 1923 <span class=" n">exporterlist</span> <span class="o">=</span> <span class="p">[]</span>1954 <span class="bp">self</span><span class="o">.</span><span class="n">exporterlist</span> <span class="o">=</span> <span class="p">[]</span> 1924 1955 <span class="c"># go through the routines and import them, saving objects that</span> 1925 1956 <span class="c"># have export routines (method Exporter)</span> … … 1940 1971 <span class="k">else</span><span class="p">:</span> 1941 1972 <span class="n">exporter</span> <span class="o">=</span> <span class="n">clss</span><span class="p">[</span><span class="mi">1</span><span class="p">](</span><span class="bp">self</span><span class="p">)</span> <span class="c"># create an export instance</span> 1942 <span class=" n">exporterlist</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">exporter</span><span class="p">)</span>1973 <span class="bp">self</span><span class="o">.</span><span class="n">exporterlist</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">exporter</span><span class="p">)</span> 1943 1974 <span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span> 1944 1975 <span class="k">print</span> <span class="s">'Import_'</span><span class="o">+</span><span class="n">errprefix</span><span class="o">+</span><span class="s">': Attribute Error'</span><span class="o">+</span><span class="nb">str</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span> … … 1949 1980 <span class="k">if</span> <span class="n">fp</span><span class="p">:</span> <span class="n">fp</span><span class="o">.</span><span class="n">close</span><span class="p">()</span> 1950 1981 <span class="c"># Add submenu item(s) for each Exporter by its self-declared type (can be more than one)</span> 1951 <span class="k">for</span> <span class="n">obj</span> <span class="ow">in</span> <span class=" n">exporterlist</span><span class="p">:</span>1982 <span class="k">for</span> <span class="n">obj</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">exporterlist</span><span class="p">:</span> 1952 1983 <span class="c">#print 'exporter',obj</span> 1953 1984 <span class="k">for</span> <span class="n">typ</span> <span class="ow">in</span> <span class="n">obj</span><span class="o">.</span><span class="n">exporttype</span><span class="p">:</span> … … 2044 2075 <span class="bp">self</span><span class="o">.</span><span class="n">_Add_ImportMenu_Sfact</span><span class="p">(</span><span class="n">Import</span><span class="p">)</span> 2045 2076 <span class="bp">self</span><span class="o">.</span><span class="n">_Add_ImportMenu_smallangle</span><span class="p">(</span><span class="n">Import</span><span class="p">)</span> 2077 <span class="n">item</span> <span class="o">=</span> <span class="n">File</span><span class="o">.</span><span class="n">Append</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">ID_PREFERENCES</span><span class="p">,</span> <span class="n">text</span> <span class="o">=</span> <span class="s">"&Preferences"</span><span class="p">)</span> 2078 <span class="bp">self</span><span class="o">.</span><span class="n">Bind</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">EVT_MENU</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">OnPreferences</span><span class="p">,</span> <span class="n">item</span><span class="p">)</span> 2079 2046 2080 <span class="c">#======================================================================</span> 2047 2081 <span class="c"># Code to help develop/debug an importer, much is hard-coded below</span> … … 2373 2407 <span class="n">dlg</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">FileDialog</span><span class="p">(</span> 2374 2408 <span class="bp">self</span><span class="p">,</span> <span class="s">'Choose image files'</span><span class="p">,</span> <span class="s">'.'</span><span class="p">,</span> <span class="s">''</span><span class="p">,</span> 2375 <span class="s">'Any supported image file (*.edf;*.tif;*.tiff;*.mar*;*.ge*;*.avg;*.sum;*.img;*. G2img;*.png)|'</span>2376 <span class="s">'*.edf;*.tif;*.tiff;*.mar*;*.ge*;*.avg;*.sum;*.img;*. G2img;*.png;*.zip|'</span>2409 <span class="s">'Any supported image file (*.edf;*.tif;*.tiff;*.mar*;*.ge*;*.avg;*.sum;*.img;*.stl;*.G2img;*.png)|'</span> 2410 <span class="s">'*.edf;*.tif;*.tiff;*.mar*;*.ge*;*.avg;*.sum;*.img;*.stl;*.G2img;*.png;*.zip|'</span> 2377 2411 <span class="s">'European detector file (*.edf)|*.edf|'</span> 2378 2412 <span class="s">'Any detector tif (*.tif;*.tiff)|*.tif;*.tiff|'</span> … … 2380 2414 <span class="s">'GE Image (*.ge*;*.avg;*.sum)|*.ge*;*.avg;*.sum|'</span> 2381 2415 <span class="s">'ADSC Image (*.img)|*.img|'</span> 2416 <span class="s">'Rigaku R-Axis IV (*.stl)|*.stl|'</span> 2382 2417 <span class="s">'GSAS-II Image (*.G2img)|*.G2img|'</span> 2383 2418 <span class="s">'Portable Network Graphics image (*.png)|*.png|'</span> … … 2390 2425 <span class="n">imagefiles</span><span class="o">.</span><span class="n">sort</span><span class="p">()</span> 2391 2426 <span class="k">for</span> <span class="n">imagefile</span> <span class="ow">in</span> <span class="n">imagefiles</span><span class="p">:</span> 2392 <span class="c"># if a zip file, open and extract</span> 2393 <span class="k">if</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">splitext</span><span class="p">(</span><span class="n">imagefile</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="o">==</span> <span class="s">'.zip'</span><span class="p">:</span> 2394 <span class="n">extractedfile</span> <span class="o">=</span> <span class="n">G2IO</span><span class="o">.</span><span class="n">ExtractFileFromZip</span><span class="p">(</span><span class="n">imagefile</span><span class="p">,</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span> 2395 <span class="k">if</span> <span class="n">extractedfile</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span> <span class="ow">and</span> <span class="n">extractedfile</span> <span class="o">!=</span> <span class="n">imagefile</span><span class="p">:</span> 2396 <span class="n">imagefile</span> <span class="o">=</span> <span class="n">extractedfile</span> 2397 <span class="n">Comments</span><span class="p">,</span><span class="n">Data</span><span class="p">,</span><span class="n">Npix</span><span class="p">,</span><span class="n">Image</span> <span class="o">=</span> <span class="n">G2IO</span><span class="o">.</span><span class="n">GetImageData</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">imagefile</span><span class="p">)</span> 2398 <span class="k">if</span> <span class="n">Comments</span><span class="p">:</span> 2399 <span class="n">Id</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'IMG '</span><span class="o">+</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">basename</span><span class="p">(</span><span class="n">imagefile</span><span class="p">))</span> 2400 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Comments'</span><span class="p">),</span><span class="n">Comments</span><span class="p">)</span> 2401 <span class="n">Imax</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">amax</span><span class="p">(</span><span class="n">Image</span><span class="p">)</span> 2402 <span class="n">Imin</span> <span class="o">=</span> <span class="nb">max</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="n">np</span><span class="o">.</span><span class="n">amin</span><span class="p">(</span><span class="n">Image</span><span class="p">))</span> <span class="c">#force positive</span> 2403 <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">imageDefault</span><span class="p">:</span> 2404 <span class="n">Data</span> <span class="o">=</span> <span class="n">copy</span><span class="o">.</span><span class="n">copy</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">imageDefault</span><span class="p">)</span> 2405 <span class="n">Data</span><span class="p">[</span><span class="s">'showLines'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">True</span> 2406 <span class="n">Data</span><span class="p">[</span><span class="s">'ring'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 2407 <span class="n">Data</span><span class="p">[</span><span class="s">'rings'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 2408 <span class="n">Data</span><span class="p">[</span><span class="s">'cutoff'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">10</span> 2409 <span class="n">Data</span><span class="p">[</span><span class="s">'pixLimit'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">20</span> 2410 <span class="n">Data</span><span class="p">[</span><span class="s">'edgemin'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">100000000</span> 2411 <span class="n">Data</span><span class="p">[</span><span class="s">'calibdmin'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.5</span> 2412 <span class="n">Data</span><span class="p">[</span><span class="s">'calibskip'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 2413 <span class="n">Data</span><span class="p">[</span><span class="s">'ellipses'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 2414 <span class="n">Data</span><span class="p">[</span><span class="s">'calibrant'</span><span class="p">]</span> <span class="o">=</span> <span class="s">''</span> 2415 <span class="n">Data</span><span class="p">[</span><span class="s">'GonioAngles'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mf">0.</span><span class="p">,</span><span class="mf">0.</span><span class="p">,</span><span class="mf">0.</span><span class="p">]</span> 2416 <span class="n">Data</span><span class="p">[</span><span class="s">'DetDepthRef'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2417 <span class="k">else</span><span class="p">:</span> 2418 <span class="n">Data</span><span class="p">[</span><span class="s">'type'</span><span class="p">]</span> <span class="o">=</span> <span class="s">'PWDR'</span> 2419 <span class="n">Data</span><span class="p">[</span><span class="s">'color'</span><span class="p">]</span> <span class="o">=</span> <span class="s">'Paired'</span> 2420 <span class="n">Data</span><span class="p">[</span><span class="s">'tilt'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.0</span> 2421 <span class="n">Data</span><span class="p">[</span><span class="s">'rotation'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.0</span> 2422 <span class="n">Data</span><span class="p">[</span><span class="s">'showLines'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2423 <span class="n">Data</span><span class="p">[</span><span class="s">'ring'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 2424 <span class="n">Data</span><span class="p">[</span><span class="s">'rings'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 2425 <span class="n">Data</span><span class="p">[</span><span class="s">'cutoff'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">10</span> 2426 <span class="n">Data</span><span class="p">[</span><span class="s">'pixLimit'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">20</span> 2427 <span class="n">Data</span><span class="p">[</span><span class="s">'calibdmin'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.5</span> 2428 <span class="n">Data</span><span class="p">[</span><span class="s">'calibskip'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span> 2429 <span class="n">Data</span><span class="p">[</span><span class="s">'edgemin'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">100000000</span> 2430 <span class="n">Data</span><span class="p">[</span><span class="s">'ellipses'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 2431 <span class="n">Data</span><span class="p">[</span><span class="s">'GonioAngles'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mf">0.</span><span class="p">,</span><span class="mf">0.</span><span class="p">,</span><span class="mf">0.</span><span class="p">]</span> 2432 <span class="n">Data</span><span class="p">[</span><span class="s">'DetDepth'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.</span> 2433 <span class="n">Data</span><span class="p">[</span><span class="s">'DetDepthRef'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2434 <span class="n">Data</span><span class="p">[</span><span class="s">'calibrant'</span><span class="p">]</span> <span class="o">=</span> <span class="s">''</span> 2435 <span class="n">Data</span><span class="p">[</span><span class="s">'IOtth'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mf">2.0</span><span class="p">,</span><span class="mf">5.0</span><span class="p">]</span> 2436 <span class="n">Data</span><span class="p">[</span><span class="s">'LRazimuth'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="mi">135</span><span class="p">,</span><span class="mi">225</span><span class="p">]</span> 2437 <span class="n">Data</span><span class="p">[</span><span class="s">'azmthOff'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.0</span> 2438 <span class="n">Data</span><span class="p">[</span><span class="s">'outChannels'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">2500</span> 2439 <span class="n">Data</span><span class="p">[</span><span class="s">'outAzimuths'</span><span class="p">]</span> <span class="o">=</span> <span class="mi">1</span> 2440 <span class="n">Data</span><span class="p">[</span><span class="s">'centerAzm'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2441 <span class="n">Data</span><span class="p">[</span><span class="s">'fullIntegrate'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2442 <span class="n">Data</span><span class="p">[</span><span class="s">'setRings'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2443 <span class="n">Data</span><span class="p">[</span><span class="s">'background image'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="s">''</span><span class="p">,</span><span class="o">-</span><span class="mf">1.0</span><span class="p">]</span> 2444 <span class="n">Data</span><span class="p">[</span><span class="s">'dark image'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="s">''</span><span class="p">,</span><span class="o">-</span><span class="mf">1.0</span><span class="p">]</span> 2445 <span class="n">Data</span><span class="p">[</span><span class="s">'Flat Bkg'</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.0</span> 2446 <span class="n">Data</span><span class="p">[</span><span class="s">'setDefault'</span><span class="p">]</span> <span class="o">=</span> <span class="bp">False</span> 2447 <span class="n">Data</span><span class="p">[</span><span class="s">'range'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[(</span><span class="n">Imin</span><span class="p">,</span><span class="n">Imax</span><span class="p">),[</span><span class="n">Imin</span><span class="p">,</span><span class="n">Imax</span><span class="p">]]</span> 2448 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Image Controls'</span><span class="p">),</span><span class="n">Data</span><span class="p">)</span> 2449 <span class="n">Masks</span> <span class="o">=</span> <span class="p">{</span><span class="s">'Points'</span><span class="p">:[],</span><span class="s">'Rings'</span><span class="p">:[],</span><span class="s">'Arcs'</span><span class="p">:[],</span><span class="s">'Polygons'</span><span class="p">:[],</span><span class="s">'Frames'</span><span class="p">:[],</span><span class="s">'Thresholds'</span><span class="p">:[(</span><span class="n">Imin</span><span class="p">,</span><span class="n">Imax</span><span class="p">),[</span><span class="n">Imin</span><span class="p">,</span><span class="n">Imax</span><span class="p">]]}</span> 2450 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Masks'</span><span class="p">),</span><span class="n">Masks</span><span class="p">)</span> 2451 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">AppendItem</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">text</span><span class="o">=</span><span class="s">'Stress/Strain'</span><span class="p">),</span> 2452 <span class="p">{</span><span class="s">'Type'</span><span class="p">:</span><span class="s">'True'</span><span class="p">,</span><span class="s">'d-zero'</span><span class="p">:[],</span><span class="s">'Sample phi'</span><span class="p">:</span><span class="mf">0.0</span><span class="p">,</span><span class="s">'Sample z'</span><span class="p">:</span><span class="mf">0.0</span><span class="p">,</span><span class="s">'Sample load'</span><span class="p">:</span><span class="mf">0.0</span><span class="p">})</span> 2453 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="n">Id</span><span class="p">,[</span><span class="n">Npix</span><span class="p">,</span><span class="n">imagefile</span><span class="p">])</span> 2454 <span class="bp">self</span><span class="o">.</span><span class="n">PickId</span> <span class="o">=</span> <span class="n">Id</span> 2455 <span class="bp">self</span><span class="o">.</span><span class="n">PickIdText</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">GetTreeItemsList</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">PickId</span><span class="p">)</span> 2456 <span class="bp">self</span><span class="o">.</span><span class="n">Image</span> <span class="o">=</span> <span class="n">Id</span> 2457 <span class="n">os</span><span class="o">.</span><span class="n">chdir</span><span class="p">(</span><span class="n">dlg</span><span class="o">.</span><span class="n">GetDirectory</span><span class="p">())</span> <span class="c"># to get Mac/Linux to change directory! </span> 2458 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SelectItem</span><span class="p">(</span><span class="n">G2gd</span><span class="o">.</span><span class="n">GetPatternTreeItemId</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="n">Id</span><span class="p">,</span><span class="s">'Image Controls'</span><span class="p">))</span> <span class="c">#show last one</span> 2427 <span class="n">G2IO</span><span class="o">.</span><span class="n">ReadLoadImage</span><span class="p">(</span><span class="n">imagefile</span><span class="p">,</span><span class="bp">self</span><span class="p">)</span> 2428 <span class="n">os</span><span class="o">.</span><span class="n">chdir</span><span class="p">(</span><span class="n">dlg</span><span class="o">.</span><span class="n">GetDirectory</span><span class="p">())</span> <span class="c"># to get Mac/Linux to change directory!</span> 2429 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SelectItem</span><span class="p">(</span><span class="n">G2gd</span><span class="o">.</span><span class="n">GetPatternTreeItemId</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="bp">self</span><span class="o">.</span><span class="n">Image</span><span class="p">,</span><span class="s">'Image Controls'</span><span class="p">))</span> <span class="c">#show last image to be read</span> 2459 2430 <span class="k">finally</span><span class="p">:</span> 2460 2431 <span class="n">path</span> <span class="o">=</span> <span class="n">dlg</span><span class="o">.</span><span class="n">GetDirectory</span><span class="p">()</span> <span class="c"># to get Mac/Linux to change directory!</span> … … 2464 2435 <div class="viewcode-block" id="GSASII.CheckNotebook"><a class="viewcode-back" href="../GSASII.html#GSASII.GSASII.CheckNotebook">[docs]</a> <span class="k">def</span> <span class="nf">CheckNotebook</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> 2465 2436 <span class="sd">'''Make sure the data tree has the minimally expected controls.</span> 2466 <span class="sd"> (BHT) correct?</span>2467 2437 <span class="sd"> '''</span> 2468 2438 <span class="k">if</span> <span class="ow">not</span> <span class="n">G2gd</span><span class="o">.</span><span class="n">GetPatternTreeItemId</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span><span class="s">'Notebook'</span><span class="p">):</span> … … 2877 2847 <span class="k">del</span><span class="p">(</span><span class="n">refList</span><span class="p">[</span><span class="n">item</span><span class="p">])</span> 2878 2848 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="n">Id</span><span class="p">,</span><span class="n">refList</span><span class="p">)</span> 2849 <span class="k">elif</span> <span class="s">'HKLF'</span> <span class="ow">in</span> <span class="n">name</span><span class="p">:</span> 2850 <span class="n">data</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetItemPyData</span><span class="p">(</span><span class="n">item</span><span class="p">)</span> 2851 <span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span> 2852 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemPyData</span><span class="p">(</span><span class="n">item</span><span class="p">,</span><span class="n">data</span><span class="p">)</span> 2853 2879 2854 <span class="n">item</span><span class="p">,</span> <span class="n">cookie</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetNextChild</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">cookie</span><span class="p">)</span> 2880 2855 <span class="k">finally</span><span class="p">:</span> … … 2991 2966 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">DeleteChildren</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">)</span> 2992 2967 <span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span> <span class="o">=</span> <span class="s">''</span> 2993 <span class=" k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span>2968 <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span> 2994 2969 <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">G2plotNB</span><span class="o">.</span><span class="n">plotList</span><span class="p">:</span> 2995 2970 <span class="bp">self</span><span class="o">.</span><span class="n">G2plotNB</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span> … … 3077 3052 <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span><span class="p">:</span> 3078 3053 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemText</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span><span class="s">'Loaded Data: '</span><span class="o">+</span><span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span><span class="p">)</span> 3054 <span class="bp">self</span><span class="o">.</span><span class="n">CheckNotebook</span><span class="p">()</span> 3079 3055 <span class="n">G2IO</span><span class="o">.</span><span class="n">ProjFileSave</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> 3080 3056 <span class="k">else</span><span class="p">:</span> … … 3093 3069 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SetItemText</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span><span class="s">'Saving project as'</span><span class="o">+</span><span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span><span class="p">)</span> 3094 3070 <span class="bp">self</span><span class="o">.</span><span class="n">SetTitle</span><span class="p">(</span><span class="s">"GSAS-II data tree: "</span><span class="o">+</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span><span class="p">)[</span><span class="mi">1</span><span class="p">])</span> 3071 <span class="bp">self</span><span class="o">.</span><span class="n">CheckNotebook</span><span class="p">()</span> 3095 3072 <span class="n">G2IO</span><span class="o">.</span><span class="n">ProjFileSave</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> 3096 3073 <span class="n">os</span><span class="o">.</span><span class="n">chdir</span><span class="p">(</span><span class="n">dlg</span><span class="o">.</span><span class="n">GetDirectory</span><span class="p">())</span> <span class="c"># to get Mac/Linux to change directory!</span> … … 3135 3112 <span class="k">for</span> <span class="n">peak</span> <span class="ow">in</span> <span class="n">peaks</span><span class="p">:</span> 3136 3113 <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">peak</span><span class="p">)</span> <span class="o">==</span> <span class="mi">8</span><span class="p">:</span> <span class="c">#CW</span> 3137 <span class="n">FWHM</span> <span class="o">=</span> <span class=" n">G2pwd</span><span class="o">.</span><span class="n">getgamFW</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">])</span>3114 <span class="n">FWHM</span> <span class="o">=</span> <span class="mf">2.</span><span class="o">*</span><span class="n">G2pwd</span><span class="o">.</span><span class="n">getgamFW</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">])</span> <span class="c">#to get delta-2-theta in deg. from Gam(peak)</span> 3138 3115 <span class="nb">file</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">"</span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%12.2f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="se">\n</span><span class="s">"</span> <span class="o">%</span> \ 3139 3116 <span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">peak</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">sqrt</span><span class="p">(</span><span class="nb">max</span><span class="p">(</span><span class="mf">0.0001</span><span class="p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">]))</span><span class="o">/</span><span class="mf">100.</span><span class="p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span><span class="o">/</span><span class="mf">100.</span><span class="p">,</span><span class="n">FWHM</span><span class="o">/</span><span class="mf">100.</span><span class="p">))</span> <span class="c">#convert to deg</span> 3140 3117 <span class="k">else</span><span class="p">:</span> <span class="c">#TOF - more cols</span> 3141 <span class="n">FWHM</span> <span class="o">=</span> <span class=" n">G2pwd</span><span class="o">.</span><span class="n">getgamFW</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">10</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">])</span>3118 <span class="n">FWHM</span> <span class="o">=</span> <span class="mf">2.</span><span class="o">*</span><span class="n">G2pwd</span><span class="o">.</span><span class="n">getgamFW</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">10</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">])</span> <span class="c">#to get delta-TOF from Gam(peak)</span> 3142 3119 <span class="nb">file</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">"</span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%12.2f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="si">%10.3f</span><span class="se">\n</span><span class="s">"</span> <span class="o">%</span> \ 3143 <span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n"> peak</span><span class="p">[</span><span class="mi">4</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">10</span><span class="p">],</span><span class="n">FWHM</span><span class="p">))</span>3120 <span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">peak</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">sqrt</span><span class="p">(</span><span class="nb">max</span><span class="p">(</span><span class="mf">0.0001</span><span class="p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">])),</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">10</span><span class="p">],</span><span class="n">FWHM</span><span class="p">))</span> 3144 3121 <span class="n">item2</span><span class="p">,</span> <span class="n">cookie2</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetNextChild</span><span class="p">(</span><span class="n">item</span><span class="p">,</span> <span class="n">cookie2</span><span class="p">)</span> 3145 3122 <span class="n">item</span><span class="p">,</span> <span class="n">cookie</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetNextChild</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">cookie</span><span class="p">)</span> … … 3174 3151 <span class="nb">file</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">'</span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">'</span><span class="o">%</span><span class="p">(</span><span class="s">' h k l m d-space 2-theta wid F**2'</span><span class="p">))</span> 3175 3152 <span class="k">for</span> <span class="n">peak</span> <span class="ow">in</span> <span class="n">peaks</span><span class="p">[</span><span class="s">'RefList'</span><span class="p">]:</span> 3176 <span class="n">FWHM</span> <span class="o">=</span> <span class=" n">G2pwd</span><span class="o">.</span><span class="n">getgamFW</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">])</span><span class="o">/</span><span class="mf">50.</span> <span class="c">#to get delta-2-theta in deg.</span>3153 <span class="n">FWHM</span> <span class="o">=</span> <span class="mf">2.</span><span class="o">*</span><span class="n">G2pwd</span><span class="o">.</span><span class="n">getgamFW</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">7</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">6</span><span class="p">])</span> 3177 3154 <span class="k">if</span> <span class="s">'T'</span> <span class="ow">in</span> <span class="n">peaks</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">'Type'</span><span class="p">,</span><span class="s">'PXC'</span><span class="p">):</span> 3178 3155 <span class="nb">file</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">" </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.2f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="se">\n</span><span class="s">"</span> <span class="o">%</span> \ … … 3180 3157 <span class="k">else</span><span class="p">:</span> 3181 3158 <span class="nb">file</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">" </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%3d</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.5f</span><span class="s"> </span><span class="si">%10.3f</span><span class="s"> </span><span class="se">\n</span><span class="s">"</span> <span class="o">%</span> \ 3182 <span class="p">(</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]),</span><span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">5</span><span class="p">],</span><span class="n">FWHM</span><span class=" p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]))</span>3159 <span class="p">(</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">1</span><span class="p">]),</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">2</span><span class="p">]),</span><span class="nb">int</span><span class="p">(</span><span class="n">peak</span><span class="p">[</span><span class="mi">3</span><span class="p">]),</span><span class="n">peak</span><span class="p">[</span><span class="mi">4</span><span class="p">],</span><span class="n">peak</span><span class="p">[</span><span class="mi">5</span><span class="p">],</span><span class="n">FWHM</span><span class="o">/</span><span class="mf">100.</span><span class="p">,</span><span class="n">peak</span><span class="p">[</span><span class="mi">8</span><span class="p">]))</span> 3183 3160 <span class="n">item2</span><span class="p">,</span> <span class="n">cookie2</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetNextChild</span><span class="p">(</span><span class="n">item</span><span class="p">,</span> <span class="n">cookie2</span><span class="p">)</span> 3184 3161 <span class="n">item</span><span class="p">,</span> <span class="n">cookie</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetNextChild</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">cookie</span><span class="p">)</span> … … 3531 3508 <span class="n">dlg</span><span class="o">.</span><span class="n">Destroy</span><span class="p">()</span> 3532 3509 <span class="k">return</span> 3533 3534 3510 <span class="bp">self</span><span class="o">.</span><span class="n">OnFileSave</span><span class="p">(</span><span class="n">event</span><span class="p">)</span> 3535 3511 <span class="c"># check that constraints are OK here</span> 3536 3512 <span class="n">errmsg</span><span class="p">,</span> <span class="n">warnmsg</span> <span class="o">=</span> <span class="n">G2stIO</span><span class="o">.</span><span class="n">ReadCheckConstraints</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span><span class="p">)</span> 3537 3513 <span class="k">if</span> <span class="n">errmsg</span><span class="p">:</span> 3538 <span class="bp">self</span><span class="o">.</span><span class="n">ErrorDialog</span><span class="p">(</span><span class="s">'Constraint Error'</span><span class="p">,</span> 3539 <span class="s">'Error in constraints. Refinement not possible.'</span><span class="o">+</span> 3540 <span class="s">'</span><span class="se">\n</span><span class="s">See console error message for details.'</span><span class="p">)</span> 3514 <span class="bp">self</span><span class="o">.</span><span class="n">ErrorDialog</span><span class="p">(</span><span class="s">'Refinement error'</span><span class="p">,</span><span class="n">errmsg</span><span class="p">)</span> 3541 3515 <span class="k">return</span> 3542 3516 <span class="k">if</span> <span class="n">warnmsg</span><span class="p">:</span> 3543 3517 <span class="k">print</span><span class="p">(</span><span class="s">'Conflict between refinment flag settings and constraints:</span><span class="se">\n</span><span class="s">'</span><span class="o">+</span> 3544 3518 <span class="n">warnmsg</span><span class="o">+</span><span class="s">'</span><span class="se">\n</span><span class="s">Refinement not possible'</span><span class="p">)</span> 3545 3519 <span class="bp">self</span><span class="o">.</span><span class="n">ErrorDialog</span><span class="p">(</span><span class="s">'Refinement Flag Error'</span><span class="p">,</span> 3546 <span class="s">'Conflict between refinement flag settings and constraints:</span><span class="se">\n</span><span class="s">'</span><span class="o">+</span> 3547 <span class="n">warnmsg</span><span class="o">+</span> 3548 <span class="s">'</span><span class="se">\n</span><span class="s">Refinement not possible'</span><span class="p">)</span> 3520 <span class="s">'Conflict between refinement flag settings and constraints:</span><span class="se">\n</span><span class="s">'</span><span class="o">+</span> 3521 <span class="n">warnmsg</span><span class="o">+</span><span class="s">'</span><span class="se">\n</span><span class="s">Refinement not possible'</span><span class="p">)</span> 3549 3522 <span class="k">return</span> 3550 3523 <span class="n">dlg</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">ProgressDialog</span><span class="p">(</span><span class="s">'Residual'</span><span class="p">,</span><span class="s">'All data Rw ='</span><span class="p">,</span><span class="mf">101.0</span><span class="p">,</span> … … 3578 3551 <span class="n">Id</span> <span class="o">=</span> <span class="mi">0</span> 3579 3552 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">DeleteChildren</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">)</span> 3580 <span class=" k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span>3581 <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">G2plotNB</span><span class="o">.</span><span class="n">plotList</span><span class="p">:</span>3582 <span class="bp">self</span><span class="o">.</span><span class="n">G2plotNB</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span>3553 <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span> 3554 <span class="c"># if self.G2plotNB.plotList:</span> 3555 <span class="c"># self.G2plotNB.clear()</span> 3583 3556 <span class="n">G2IO</span><span class="o">.</span><span class="n">ProjFileOpen</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> 3584 3557 <span class="n">item</span><span class="p">,</span> <span class="n">cookie</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetFirstChild</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">)</span> … … 3588 3561 <span class="n">Id</span> <span class="o">=</span> <span class="n">item</span> 3589 3562 <span class="n">item</span><span class="p">,</span> <span class="n">cookie</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetNextChild</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">cookie</span><span class="p">)</span> 3590 <span class="k">if</span> <span class="n">Id</span><span class="p">:</span>3591 <span class="bp">self</span><span class="o">.</span><span class="n">PickIdText</span> <span class="o">=</span> <span class="bp">None</span> <span class="c">#force reload of PickId contents</span>3592 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SelectItem</span><span class="p">(</span><span class="n">Id</span><span class="p">)</span>3593 3563 <span class="k">if</span> <span class="n">parentName</span><span class="p">:</span> 3594 3564 <span class="n">parentId</span> <span class="o">=</span> <span class="n">G2gd</span><span class="o">.</span><span class="n">GetPatternTreeItemId</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">parentName</span><span class="p">)</span> … … 3599 3569 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SelectItem</span><span class="p">(</span><span class="n">itemId</span><span class="p">)</span> 3600 3570 <span class="k">if</span> <span class="s">'Phases'</span> <span class="ow">in</span> <span class="n">parentName</span><span class="p">:</span> 3571 <span class="n">data</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">GetItemPyData</span><span class="p">(</span><span class="n">itemId</span><span class="p">)</span> 3572 <span class="k">if</span> <span class="n">data</span><span class="p">[</span><span class="s">'Drawing'</span><span class="p">]:</span> 3573 <span class="n">data</span><span class="p">[</span><span class="s">'Drawing'</span><span class="p">][</span><span class="s">'Atoms'</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 3574 <span class="bp">self</span><span class="o">.</span><span class="n">dataDisplay</span><span class="o">.</span><span class="n">SetSelection</span><span class="p">(</span><span class="mi">4</span><span class="p">)</span> <span class="c">#location of Drawing Data</span> 3601 3575 <span class="bp">self</span><span class="o">.</span><span class="n">dataDisplay</span><span class="o">.</span><span class="n">SetSelection</span><span class="p">(</span><span class="n">tabId</span><span class="p">)</span> 3576 <span class="k">elif</span> <span class="n">Id</span><span class="p">:</span> 3577 <span class="bp">self</span><span class="o">.</span><span class="n">PickIdText</span> <span class="o">=</span> <span class="bp">None</span> <span class="c">#force reload of PickId contents</span> 3578 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">SelectItem</span><span class="p">(</span><span class="n">Id</span><span class="p">)</span> 3579 3602 3580 <span class="k">finally</span><span class="p">:</span> 3603 3581 <span class="n">dlg2</span><span class="o">.</span><span class="n">Destroy</span><span class="p">()</span> … … 3619 3597 <span class="n">errmsg</span><span class="p">,</span> <span class="n">warnmsg</span> <span class="o">=</span> <span class="n">G2stIO</span><span class="o">.</span><span class="n">ReadCheckConstraints</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">GSASprojectfile</span><span class="p">)</span> 3620 3598 <span class="k">if</span> <span class="n">errmsg</span><span class="p">:</span> 3621 <span class="bp">self</span><span class="o">.</span><span class="n">ErrorDialog</span><span class="p">(</span><span class="s">'Constraint Error'</span><span class="p">,</span> 3622 <span class="s">'Error in constraints:</span><span class="se">\n</span><span class="s">'</span><span class="o">+</span><span class="n">errmsg</span><span class="o">+</span> 3623 <span class="s">'</span><span class="se">\n</span><span class="s">Refinement not possible'</span><span class="p">)</span> 3599 <span class="bp">self</span><span class="o">.</span><span class="n">ErrorDialog</span><span class="p">(</span><span class="s">'Refinement error'</span><span class="p">,</span><span class="n">errmsg</span><span class="p">)</span> 3624 3600 <span class="k">return</span> 3625 3601 <span class="k">if</span> <span class="n">warnmsg</span><span class="p">:</span> … … 3650 3626 <span class="bp">self</span><span class="o">.</span><span class="n">PickIdText</span> <span class="o">=</span> <span class="bp">None</span> <span class="c">#force reload of PickId contents</span> 3651 3627 <span class="bp">self</span><span class="o">.</span><span class="n">PatternTree</span><span class="o">.</span><span class="n">DeleteChildren</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">root</span><span class="p">)</span> 3652 <span class="k">if</span> <span class=" bp">self</span><span class="o">.</span><span class="n">HKL</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span>3628 <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">HKL</span><span class="p">):</span> <span class="bp">self</span><span class="o">.</span><span class="n">HKL</span> <span class="o">=</span> <span class="p">[]</span> 3653 3629 <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">G2plotNB</span><span class="o">.</span><span class="n">plotList</span><span class="p">:</span> 3654 3630 <span class="bp">self</span><span class="o">.</span><span class="n">G2plotNB</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span> … … 3686 3662 <span class="k">if</span> <span class="s">'2.7'</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">version</span><span class="p">[:</span><span class="mi">5</span><span class="p">]:</span> 3687 3663 <span class="n">dlg</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">MessageDialog</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> 3688 <span class="s">'GSAS-II requires Python 2.7.x</span><span class="se">\n</span><span class="s"> Yours is '</span><span class="o">+</span><span class="n">sys</span><span class="o">.</span><span class="n">version</span><span class=" p">[:</span><span class="mi">5</span><span class="p">],</span>3664 <span class="s">'GSAS-II requires Python 2.7.x</span><span class="se">\n</span><span class="s"> Yours is '</span><span class="o">+</span><span class="n">sys</span><span class="o">.</span><span class="n">version</span><span class="o">.</span><span class="n">split</span><span class="p">()[</span><span class="mi">0</span><span class="p">],</span> 3689 3665 <span class="s">'Python version error'</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">OK</span><span class="p">)</span> 3690 3666 <span class="k">try</span><span class="p">:</span> … … 3696 3672 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">Show</span><span class="p">()</span> 3697 3673 <span class="bp">self</span><span class="o">.</span><span class="n">SetTopWindow</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="p">)</span> 3674 <span class="c"># save the current package versions</span> 3675 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">PackageVersions</span> <span class="o">=</span> <span class="p">[]</span> 3676 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">PackageVersions</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="s">'Python'</span><span class="p">,</span><span class="n">sys</span><span class="o">.</span><span class="n">version</span><span class="o">.</span><span class="n">split</span><span class="p">()[</span><span class="mi">0</span><span class="p">]])</span> 3677 <span class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span class="p">(</span><span class="n">wx</span><span class="p">,</span><span class="n">mpl</span><span class="p">,</span><span class="n">np</span><span class="p">,</span><span class="n">sp</span><span class="p">,</span><span class="n">ogl</span><span class="p">):</span> 3678 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">PackageVersions</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">p</span><span class="o">.</span><span class="n">__name__</span><span class="p">,</span><span class="n">p</span><span class="o">.</span><span class="n">__version__</span><span class="p">])</span> 3679 <span class="k">try</span><span class="p">:</span> 3680 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">PackageVersions</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">Image</span><span class="o">.</span><span class="n">__name__</span><span class="p">,</span><span class="n">Image</span><span class="o">.</span><span class="n">VERSION</span><span class="p">])</span> 3681 <span class="k">except</span><span class="p">:</span> 3682 <span class="k">try</span><span class="p">:</span> 3683 <span class="kn">from</span> <span class="nn">PIL</span> <span class="kn">import</span> <span class="n">PILLOW_VERSION</span> 3684 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">PackageVersions</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="n">Image</span><span class="o">.</span><span class="n">__name__</span><span class="p">,</span><span class="n">PILLOW_VERSION</span><span class="p">])</span> 3685 <span class="k">except</span><span class="p">:</span> 3686 <span class="k">pass</span> 3687 <span class="bp">self</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="n">PackageVersions</span><span class="o">.</span><span class="n">append</span><span class="p">([</span><span class="s">' Platform'</span><span class="p">,</span><span class="n">sys</span><span class="o">.</span><span class="n">platform</span><span class="o">+</span><span class="s">' '</span><span class="o">+</span><span class="n">platform</span><span class="o">.</span><span class="n">architecture</span><span class="p">()[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="s">' '</span><span class="o">+</span><span class="n">platform</span><span class="o">.</span><span class="n">machine</span><span class="p">()])</span> 3688 3689 <span class="c"># self.main.PackageVersions = {}</span> 3690 <span class="c"># self.main.PackageVersions['Python'] = sys.version.split()[0]</span> 3691 <span class="c"># for p in (wx,mpl,np,sp,ogl):</span> 3692 <span class="c"># self.main.PackageVersions[p.__name__] = p.__version__</span> 3693 <span class="c"># try:</span> 3694 <span class="c"># self.main.PackageVersions[Image.__name__] = Image.VERSION</span> 3695 <span class="c"># except:</span> 3696 <span class="c"># try:</span> 3697 <span class="c"># from PIL import PILLOW_VERSION</span> 3698 <span class="c"># self.main.PackageVersions[Image.__name__] = PILLOW_VERSION</span> 3699 <span class="c"># except:</span> 3700 <span class="c"># pass</span> 3701 <span class="c"># self.main.PackageVersions[' Platform'] = sys.platform+' '+platform.architecture()[0]+' '+platform.machine()</span> 3698 3702 <span class="c"># DEBUG: jump to sequential results</span> 3699 3703 <span class="c">#Id = G2gd.GetPatternTreeItemId(self.main,self.main.root,'Sequential results')</span> … … 3712 3716 <span class="c"># self.main.OnFileOpen(None,filename)</span> 3713 3717 <span class="c"># removed because this gets triggered when a file is on the command line in canopy 1.4 -- not likely used anyway</span> 3714 </div></div>3718 </div></div> 3715 3719 <div class="viewcode-block" id="main"><a class="viewcode-back" href="../GSASII.html#GSASII.main">[docs]</a><span class="k">def</span> <span class="nf">main</span><span class="p">():</span> 3716 3720 <span class="sd">'''Start up the GSAS-II application'''</span> … … 3728 3732 <span class="c"># print versions</span> 3729 3733 <span class="k">print</span> <span class="s">"Python module versions loaded:"</span> 3730 <span class="k">print</span> <span class="s">"python: "</span><span class="p">,</span><span class="n">sys</span><span class="o">.</span><span class="n">version</span><span class=" p">[:</span><span class="mi">5</span><span class="p">]</span>3734 <span class="k">print</span> <span class="s">"python: "</span><span class="p">,</span><span class="n">sys</span><span class="o">.</span><span class="n">version</span><span class="o">.</span><span class="n">split</span><span class="p">()[</span><span class="mi">0</span><span class="p">]</span> 3731 3735 <span class="k">print</span> <span class="s">"wxpython: "</span><span class="p">,</span><span class="n">wx</span><span class="o">.</span><span class="n">__version__</span> 3732 3736 <span class="k">print</span> <span class="s">"matplotlib: "</span><span class="p">,</span><span class="n">mpl</span><span class="o">.</span><span class="n">__version__</span>
Note: See TracChangeset
for help on using the changeset viewer.