Changeset 3718


Ignore:
Timestamp:
Nov 5, 2018 5:30:35 AM (3 years ago)
Author:
toby
Message:

restore lost Hold list; new tutorials; cleanup naming in constraint docs

Files:
41 added
30 edited

Legend:

Unmodified
Added
Removed
  • Tutorials/CWInstDemo/FindProfParamCW.htm

    r3569 r3718  
    2525  <o:Author>Brian Toby</o:Author>
    2626  <o:LastAuthor>Brian Toby</o:LastAuthor>
    27   <o:Revision>4</o:Revision>
    28   <o:TotalTime>308</o:TotalTime>
     27  <o:Revision>6</o:Revision>
     28  <o:TotalTime>372</o:TotalTime>
    2929  <o:Created>2018-04-21T19:50:00Z</o:Created>
    30   <o:LastSaved>2018-08-23T20:44:00Z</o:LastSaved>
    31   <o:Pages>13</o:Pages>
    32   <o:Words>2546</o:Words>
    33   <o:Characters>14518</o:Characters>
     30  <o:LastSaved>2018-11-04T06:56:00Z</o:LastSaved>
     31  <o:Pages>15</o:Pages>
     32  <o:Words>3160</o:Words>
     33  <o:Characters>18013</o:Characters>
    3434  <o:Company>Argonne National Laboratory</o:Company>
    35   <o:Lines>120</o:Lines>
    36   <o:Paragraphs>34</o:Paragraphs>
    37   <o:CharactersWithSpaces>17030</o:CharactersWithSpaces>
     35  <o:Lines>150</o:Lines>
     36  <o:Paragraphs>42</o:Paragraphs>
     37  <o:CharactersWithSpaces>21131</o:CharactersWithSpaces>
    3838  <o:Version>14.0</o:Version>
    3939 </o:DocumentProperties>
     
    382382        mso-generic-font-family:auto;
    383383        mso-font-pitch:variable;
    384         mso-font-signature:-536870145 1791491579 18 0 131231 0;}
     384        mso-font-signature:1 134676480 16 0 131072 0;}
    385385@font-face
    386386        {font-family:"\FF2D\FF33 \30B4\30B7\30C3\30AF";
     
    520520        {mso-style-noshow:yes;
    521521        mso-style-priority:99;
     522        mso-margin-top-alt:auto;
     523        margin-right:0in;
     524        mso-margin-bottom-alt:auto;
     525        margin-left:0in;
     526        mso-pagination:widow-orphan;
    522527        font-size:10.0pt;
    523528        font-family:Times;
     
    717722</style>
    718723<![endif]--><!--[if gte mso 9]><xml>
    719  <o:shapedefaults v:ext="edit" spidmax="1074"/>
     724 <o:shapedefaults v:ext="edit" spidmax="1026"/>
    720725</xml><![endif]--><!--[if gte mso 9]><xml>
    721726 <o:shapelayout v:ext="edit">
     
    733738<p class=MsoNormal><o:p>&nbsp;</o:p></p>
    734739
    735 <p class=MsoNormal>A video version of this tutorial is available at <span
    736 style='mso-field-code:" HYPERLINK \0022https\:\/\/anl\.box\.com\/v\/FindProfParamCW\0022 \\t \0022_blank\0022 "'><span
    737 class=MsoHyperlink><b>https://anl.box.com/v/FindProfParamCW</b></span></span></p>
    738 
    739 <p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
    740 
    741 <p class=MsoNormal><span style='font-size:14.0pt'>The goal of this exercise is to
    742 determine approximate instrument profile parameters by a quick peak fit to a
     740<p class=MsoNormal>A video version of the first two parts of this tutorial is
     741available at <a href="https://anl.box.com/v/FindProfParamCW"><b>https://anl.box.com/v/FindProfParamCW</b></a></p>
     742
     743<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     744
     745<p class=MsoNormal><span style='font-size:14.0pt'>The goal of this exercise is
     746to determine approximate instrument profile parameters by a quick peak fit to a
    743747sample with a lab diffractometer. Ideally, one should use a material or mixture
    744748of materials that has peaks over the entire range where you collect data and
     
    755759style='font-size:14.0pt'>Note</span></b><span style='font-size:14.0pt'> that it
    756760is highly recommended to collect reference data to a much higher 2theta angle
    757 than here. What is done here serves as an example, and is sufficient only if
    758 one will never collect and use data above 70 degrees (unlikely!). <o:p></o:p></span></p>
     761than here. What is done in this part serves as an example, and is sufficient
     762only if one will never collect and use data above 70 degrees (unlikely!). <o:p></o:p></span></p>
    759763
    760764<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     
    774778mso-layout-grid-align:none;text-autospace:none'><span style='font-size:14.0pt'>Use
    775779<b style='mso-bidi-font-weight:normal'>Import/Powder Data/from <span
    776 class=SpellE>Brucker</span> RAW file</b> to read </span><span style='font-size:
     780class=SpellE>Bruker</span> RAW file</b> to read </span><span style='font-size:
    77778114.0pt;font-family:Courier'>file </span><span style='font-size:14.0pt;
    778782font-family:Courier;mso-bidi-font-family:"Menlo Regular";color:black;
     
    782786directory (download from <a
    783787href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/CWInstDemo/data/">https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/CWInstDemo/data/</a>).
    784 After selecting this file, answer yes to "Is this the file you want?"<o:p></o:p></span></p>
     788After selecting this file, answer yes to &quot;Is this the file you want?&quot;<o:p></o:p></span></p>
    785789
    786790<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     
    792796
    793797<p class=MsoNormal><span style='font-size:14.0pt'>The next dialog to appear is
    794 titled, "Choose inst. <span class=SpellE>Param</span> file for LaB6_Jan2018.raw
    795 Scan 1 (or Cancel for default)" since we do not have a set of parameters to
    796 read, we must use a default set. <b style='mso-bidi-font-weight:normal'>Press
    797 Cancel</b>.<o:p></o:p></span></p>
     798titled, &quot;Choose inst. <span class=SpellE>Param</span> file for
     799LaB6_Jan2018.raw Scan 1 (or Cancel for default)&quot; since we do not have a
     800set of parameters to read, we must use a default set. <b style='mso-bidi-font-weight:
     801normal'>Press Cancel</b>.<o:p></o:p></span></p>
    798802
    799803<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     
    858862normal'>Click on the Limits</b> data tree item, and either change the <span
    859863class=SpellE>Tmin</span> value from 10 to 20 or in the plot <b
    860 style='mso-bidi-font-weight:normal'>"drag" the green line to the right</b> to
    861 approximately 20 degrees. <o:p></o:p></span></p>
     864style='mso-bidi-font-weight:normal'>&quot;drag&quot; the green line to the
     865right</b> to approximately 20 degrees. <o:p></o:p></span></p>
    862866
    863867<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    877881
    878882<p class=MsoNormal><span style='font-size:14.0pt'>To define peaks, <b
    879 style='mso-bidi-font-weight:normal'>click on the "Peak List</b>" data tree item.
    880 Note that as below, the peak list is initially empty. <o:p></o:p></span></p>
     883style='mso-bidi-font-weight:normal'>click on the &quot;Peak List</b>&quot; data
     884tree item. Note that as below, the peak list is initially empty. <o:p></o:p></span></p>
    881885
    882886<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    893897style='font-size:14.0pt'>Move</span></b><span style='font-size:14.0pt'> the
    894898mouse to any of the data points close to the <b style='mso-bidi-font-weight:
    895 normal'>top of the first peak and click </b>the left mouse button. A line will
    896 be drawn through the peak and the position will be added to the peak table and
    897 a line marking this is added to the plot, as below. <o:p></o:p></span></p>
     899normal'>top of the first peak and click </b>the left mouse button. A line will be
     900drawn through the peak and the position will be added to the peak table and a
     901line marking this is added to the plot, as below. <o:p></o:p></span></p>
    898902
    899903<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    910914style='font-size:14.0pt'>Repeat this for all 8 peaks</span></b><span
    911915style='font-size:14.0pt'> in the pattern. Note that if a peak is entered in the
    912 wrong place <span class=GramE>it can be moved by "dragging" it with the mouse</span>,
    913 or use a right-click to delete it. Be careful to make sure two peaks are not
    914 entered in the same place by accident<span class=GramE>,.</span><o:p></o:p></span></p>
     916wrong place <span class=GramE>it can be moved by &quot;dragging&quot; it with
     917the mouse</span>, or use a right-click to delete it. Be careful to make sure
     918two peaks are not entered in the same place by accident.<o:p></o:p></span></p>
    915919
    916920<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    988992style='font-size:14.0pt'><span style="mso-spacerun:yes">&nbsp;</span><o:p></o:p></span></p>
    989993
    990 <p class=MsoNormal><span style='font-size:14.0pt'>Select "vary all" and press
    991 OK. Now all peak positions and areas will be refined.<o:p></o:p></span></p>
     994<p class=MsoNormal><span style='font-size:14.0pt'>Select &quot;vary all&quot;
     995and press OK. Now all peak positions and areas will be refined.<o:p></o:p></span></p>
    992996
    993997<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    10051009<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
    10061010
    1007 <p class=MsoNormal><span style='font-size:14.0pt'>The fit improves
    1008 significantly, as below, but further improvements are needed. <o:p></o:p></span></p>
     1011<p class=MsoNormal><span style='font-size:14.0pt'>The fit improves significantly,
     1012as below, but further improvements are needed. <o:p></o:p></span></p>
    10091013
    10101014<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    10181022<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
    10191023
    1020 <h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step 7:
    1021 Refine peak areas, heights and widths (optional)<o:p></o:p></span></h3>
     1024<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     10257: Refine peak areas, heights and widths (optional)<o:p></o:p></span></h3>
    10221026
    10231027<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     
    11281132<p class=MsoNormal><span style='font-size:14.0pt'>Note that these U, V &amp; W
    11291133values will be used to set the Gaussian peak widths for those peaks where sigma
    1130 is not being refined and likewise X, Y &amp; Z will be used to determine the
    1131 Lorentzian widths where gamma is not refined for that peak. If we had any peaks
    1132 that were not consistent with the width of the others, we might choose to
    1133 continue to refine their sigma &amp; gamma values so they would not affect U, <span
    1134 class=GramE>V,É,</span> but here we will refine U, V, W, X &amp; Y against all
    1135 peaks. Select the <b style='mso-bidi-font-weight:normal'>Peak List data</b>
    1136 tree item and <b style='mso-bidi-font-weight:normal'>remove refinement of sigma
     1134is not being refined and likewise X, Y &amp; Z will be used to determine the Lorentzian
     1135widths where gamma is not refined for that peak. If we had any peaks that were
     1136not consistent with the width of the others, we might choose to continue to
     1137refine their individual profile terms (sigma &amp; gamma), if that is done the
     1138peaks varied individually would be excluded from the U, V, W, X &amp; Y
     1139refinements. Here we will refine U, V, W, X &amp; Y against all peaks. To do
     1140this, select the <b style='mso-bidi-font-weight:normal'>Peak List data</b> tree
     1141item and <b style='mso-bidi-font-weight:normal'>remove refinement of sigma
    11371142&amp; gamma</b> for all peaks by double-clicking on the refine column headers
    1138 for each and select "N &#8211; vary none" so that the table appears as below:<o:p></o:p></span></p>
     1143for each and select &quot;N &#8211; vary none&quot; so that the table appears
     1144as below:<o:p></o:p></span></p>
    11391145
    11401146<p class=MsoNormal><span style='font-size:14.0pt'><!--[if gte vml 1]><v:shape
     
    12731279<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span
    12741280style='font-size:14.0pt'>These profile terms are more than adequate for most
    1275 structural fitting problems, but it should be noted that these values are not
    1276 sufficient to obtain quantitative measurements of <span class=SpellE>microstrain</span>
     1281structural fitting problems, but it should be noted that these values are not sufficient
     1282to obtain quantitative measurements of <span class=SpellE>microstrain</span>
    12771283and/or crystallite size. To obtain even better terms the instrument profile is
    12781284best determined by a Rietveld fit for (with a standard where <span
     
    13051311to the prompt to save the current project (No would not hurt.) As before, <span
    13061312class=GramE>use <b style='mso-bidi-font-weight:normal'>Import/Powder Data/from <span
    1307 class=SpellE>Brucker</span> RAW file</b> to read <span style='font-family:Courier'>file</span></span></span><span
     1313class=SpellE>Bruker</span> RAW file</b> to read <span style='font-family:Courier'>file</span></span></span><span
    13081314style='font-size:14.0pt;font-family:Courier'> </span><span style='font-size:
    1309131514.0pt;font-family:Courier;mso-bidi-font-family:"Menlo Regular";color:black;
     
    13131319directory (downloaded already from <a
    13141320href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/CWInstDemo/data/">https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/CWInstDemo/data/</a>).
    1315 After selecting this file, answer yes to "Is this the file you want?"<o:p></o:p></span></p>
     1321After selecting this file, answer yes to &quot;Is this the file you want?&quot;<o:p></o:p></span></p>
    13161322
    13171323<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     
    13231329
    13241330<p class=MsoNormal><span style='font-size:14.0pt'>The next dialog to appear is
    1325 titled, "Choose inst. <span class=SpellE>Param</span> file for LaB6_Jan2018.raw
    1326 Scan 1 unlike before, we do have profile terms to read, from the file created
    1327 in Step 10, above. Select the file written before (such as &lt;<span
    1328 class=SpellE><i style='mso-bidi-font-style:normal'>MyInstrument</i></span><i
     1331titled, &quot;Choose inst. <span class=SpellE>Param</span> file for
     1332LaB6_Jan2018.raw Scan 1 unlike before, we do have profile terms to read, from
     1333the file created in Step 10, above. Select the file written before (such as
     1334&lt;<span class=SpellE><i style='mso-bidi-font-style:normal'>MyInstrument</i></span><i
    13291335style='mso-bidi-font-style:normal'>&gt;</i>20-<span class=GramE>70deg.instparm
    13301336)</span> and <b style='mso-bidi-font-weight:normal'>press OK</b>.<span
     
    15101516style='font-size:14.0pt'><o:p></o:p></span></p>
    15111517
    1512 <p class=MsoNormal><span style='font-size:14.0pt'>Nothing needs to be changed of
    1513 the new parameters added here:<o:p></o:p></span></p>
     1518<p class=MsoNormal><span style='font-size:14.0pt'>Nothing needs to be changed
     1519of the new parameters added here:<o:p></o:p></span></p>
    15141520
    15151521<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     
    16741680<p class=MsoNormal><span style='font-size:14.0pt'>Use the <b style='mso-bidi-font-weight:
    16751681normal'>Calculate/Refine</b> menu item to start another refinement.<span
    1676 style="mso-spacerun:yes">&nbsp; </span>A warning message that "Steepest
    1677 Descents dominates" this is because a high degree of parameter correlation
     1682style="mso-spacerun:yes">&nbsp; </span>A warning message that &quot;Steepest
     1683Descents dominates&quot; this is because a high degree of parameter correlation
    16781684occurs as the reflection intensities change. The fit does not improve very much
    16791685if <b style='mso-bidi-font-weight:normal'>Calculate/Refine</b> is used a second
     
    17301736refinement cycle brings the <span class=SpellE>Rw</span> to circa 5.8%. The fit
    17311737improves dramatically and <span class=SpellE>microstrain</span> refines to a
    1732 non-physical negative value. This is because our somewhat na•ve approach above
     1738non-physical negative value. This is because our somewhat naive approach above
    17331739assumed no sample broadening. <o:p></o:p></span></p>
    17341740
     
    17381744style='font-size:14.0pt'>This shows why if you are planning to measure <span
    17391745class=SpellE>microstrain</span> and/or crystallite size quantitatively, you
    1740 should determine instrument profile using a Rietveld fit with a standard with known
    1741 values for the <span class=SpellE>microstrain</span> and size. Fix the size and
    1742 <span class=SpellE>microstrain</span> to the known values when fitting the data
    1743 from the standard. <o:p></o:p></span></i></p>
     1746should determine instrument profile using a Rietveld fit with a standard with
     1747known values for the <span class=SpellE>microstrain</span> and size. Fix the
     1748size and <span class=SpellE>microstrain</span> to the known values when fitting
     1749the data from the standard. <o:p></o:p></span></i></p>
    17441750
    17451751<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     
    17901796 <v:imagedata src="FindProfParamCW_files/image091.png" o:title=""/>
    17911797</v:shape><![endif]--><![if !vml]><img border=0 width=533 height=397
    1792 src="FindProfParamCW_files/image092.png" v:shapes="Picture_x0020_48"><![endif]></span><span
     1798src="FindProfParamCW_files/image092.png" v:shapes="Picture_x0020_48"><![endif]><o:p></o:p></span></p>
     1799
     1800<h1>Part 3: Fitting data over a wider range<o:p></o:p></h1>
     1801
     1802<p class=MsoNormal><o:p>&nbsp;</o:p></p>
     1803
     1804<p class=MsoNormal><span style='font-size:14.0pt'>In this section we fit a
     1805pattern with a wider range of data. This proceeds quite simply. <o:p></o:p></span></p>
     1806
     1807<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     18083.1: Start new project and read in data<o:p></o:p></span></h3>
     1809
     1810<p class=MsoNormal><o:p>&nbsp;</o:p></p>
     1811
     1812<p class=MsoNormal><span style='font-size:14.0pt'>Restart GSAS-II or use the
     1813File/New <span class=GramE>Project<span style="mso-spacerun:yes">&nbsp;
     1814</span>to</span> create a new empty project. <o:p></o:p></span></p>
     1815
     1816<p class=MsoNormal style='mso-pagination:none;tab-stops:28.0pt 56.0pt 84.0pt 112.0pt 140.0pt 168.0pt 196.0pt 224.0pt 3.5in 280.0pt 308.0pt 336.0pt;
     1817mso-layout-grid-align:none;text-autospace:none'><span style='font-size:14.0pt'>Use
     1818<b style='mso-bidi-font-weight:normal'>Import/Powder Data/from GSAS powder data
     1819file</b> to read </span><span style='font-size:14.0pt;font-family:Courier'>file
     1820NIST660CBI.gsas</span><span style='font-size:14.0pt;font-family:"Menlo Regular";
     1821color:black;mso-fareast-language:EN-US'> </span><span style='font-size:14.0pt'>from
     1822the Tutorials <span class=SpellE>CWInstDemo</span>/data directory (download
     1823from <a
     1824href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/CWInstDemo/data/">https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/CWInstDemo/data/</a>).
     1825After selecting this file, answer yes to &quot;Is this the file you want?<span
     1826class=GramE>&quot;.</span> As before, use Cancel to select the default <span
     1827class=SpellE>CuKa</span> lab data instrument parameters. <o:p></o:p></span></p>
     1828
     1829<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     18303.2: Change Data Range<o:p></o:p></span></h3>
     1831
     1832<p class=MsoNormal><o:p>&nbsp;</o:p></p>
     1833
     1834<p class=MsoNormal><span style='font-size:14.0pt'>Since the background is quite
     1835curved at lower angles, reducing the angular range to be fit will require fewer
     1836background terms. Select Limits in the data tree and then set <span
     1837class=SpellE>Tmin</span> to 20.<span style="mso-spacerun:yes">&nbsp;
     1838</span>Then select Background in the tree and change the number of background
     1839parameters to 8. <o:p></o:p></span></p>
     1840
     1841<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     18423.3: Add Peaks<o:p></o:p></span></h3>
     1843
     1844<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1845
     1846<p class=MsoNormal><span style='font-size:14.0pt'>Select Peak List from the
     1847tree allows adding peaks. Zooming in on the lower portion of the pattern makes
     1848it easier to see all the peaks. Be sure to click on magnification icon a second
     1849time to turn off zoom mode. Then click on a point for each of the 20 peaks in
     1850the pattern. You should have a plot that looks like this: <o:p></o:p></span></p>
     1851
     1852<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     1853mso-no-proof:yes'><!--[if gte vml 1]><v:shape id="_x0000_i1075" type="#_x0000_t75"
     1854 style='width:375pt;height:330pt;visibility:visible;mso-wrap-style:square'>
     1855 <v:imagedata src="FindProfParamCW_files/image093.png" o:title=""/>
     1856</v:shape><![endif]--><![if !vml]><img border=0 width=377 height=332
     1857src="FindProfParamCW_files/image094.png" v:shapes="_x0000_i1075"><![endif]></span><span
     1858style='font-size:14.0pt'><o:p></o:p></span></p>
     1859
     1860<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     18613.3: Fit Peaks<o:p></o:p></span></h3>
     1862
     1863<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1864
     1865<p class=MsoNormal><span style='font-size:14.0pt'>As the peaks are initially
     1866added to the table, the refine flag is set for the peak intensity. Fit the
     1867individual peak intensities by using Peak Fitting/<span class=SpellE>Peakfit</span>
     1868menu command. Provide a file name and the <span class=SpellE>Rwp</span> drops
     1869to ~40% with a reasonable background level, but not good peak shapes. <o:p></o:p></span></p>
     1870
     1871<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1872
     1873<p class=MsoNormal><span style='font-size:14.0pt'>Select the Instrument
     1874Parameter tree item, select the refinement flag for U, V, W, X, Y and SH/L,
     1875then select the Peak List tree entry again and use the Peak Fitting/<span
     1876class=SpellE>Peakfit</span> menu command. The fit improves a bit, but since the
     1877peak positions have not been refined, a good fit is not to be expected. Click
     1878on the refine column heading to the immediate right of the peak positions, then
     1879select ÒY &#8211; vary allÓ and again use the Peak Fitting/<span class=SpellE>Peakfit</span>
     1880menu command. The fit improves significantly with an <span class=SpellE>Rwp</span>
     1881value of ~8%. The fit shows very small difference plot:<o:p></o:p></span></p>
     1882
     1883<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1884
     1885<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     1886mso-no-proof:yes'><!--[if gte vml 1]><v:shape id="_x0000_i1074" type="#_x0000_t75"
     1887 style='width:348pt;height:247pt;visibility:visible;mso-wrap-style:square'>
     1888 <v:imagedata src="FindProfParamCW_files/image095.png" o:title=""/>
     1889</v:shape><![endif]--><![if !vml]><img border=0 width=350 height=249
     1890src="FindProfParamCW_files/image096.png" v:shapes="_x0000_i1074"><![endif]></span><span
     1891style='font-size:14.0pt'><span style="mso-spacerun:yes">&nbsp;</span><o:p></o:p></span></p>
     1892
     1893<p class=MsoNormal><span style='font-size:14.0pt'>However, pressing the w key
     1894in the plot window changes the plot appearance and it can be seen that the fit
     1895at low angle is significantly worse than at high angle. This suggests that log
     1896angle asymmetry may not be well fit. <o:p></o:p></span></p>
     1897
     1898<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     1899mso-no-proof:yes'><!--[if gte vml 1]><v:shape id="_x0000_i1073" type="#_x0000_t75"
     1900 style='width:338pt;height:232pt;visibility:visible;mso-wrap-style:square'>
     1901 <v:imagedata src="FindProfParamCW_files/image097.png" o:title=""/>
     1902</v:shape><![endif]--><![if !vml]><img border=0 width=340 height=234
     1903src="FindProfParamCW_files/image098.png" v:shapes="_x0000_i1073"><![endif]></span><span
     1904style='font-size:14.0pt'><o:p></o:p></span></p>
     1905
     1906<p class=MsoNormal><span style='font-size:14.0pt'>To improve this, we can force
     1907the SH/L value to be larger. Instead of the local minimum that was found with
     1908SH/L of ~0.003, we can select the Instrument Parameter tree item and set SH/L
     1909to a larger value, say 0.03. Then select the Peak List tree entry again and use
     1910the Peak Fitting/<span class=SpellE>Peakfit</span> menu command. <span
     1911class=GramE>The<span style="mso-spacerun:yes">&nbsp; </span><span class=SpellE>Rwp</span></span>
     1912improves somewhat, to circa 5%, but now the difference plot is greatly improved
     1913at low angle with SH/L increasing to 0.063:<o:p></o:p></span></p>
     1914
     1915<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     1916mso-no-proof:yes'><!--[if gte vml 1]><v:shape id="Picture_x0020_50" o:spid="_x0000_i1072"
     1917 type="#_x0000_t75" style='width:344pt;height:241pt;visibility:visible;
     1918 mso-wrap-style:square'>
     1919 <v:imagedata src="FindProfParamCW_files/image099.png" o:title=""/>
     1920</v:shape><![endif]--><![if !vml]><img border=0 width=346 height=243
     1921src="FindProfParamCW_files/image100.png" v:shapes="Picture_x0020_50"><![endif]></span><span
     1922style='font-size:14.0pt'><o:p></o:p></span></p>
     1923
     1924<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     19253.4: Save Instrument Parameters<o:p></o:p></span></h3>
     1926
     1927<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1928
     1929<p class=MsoNormal><span style='font-size:14.0pt'>Select the Instrument
     1930Parameter tree entry and then use the Operations/Save ProfileÉ menu command to
     1931write a file. This can be used as the starting point for future refinements.
     1932The plot shown at this point compares the mostly meaningless default starting
     1933profile terms (as solid lines) to the fit here (as dashed lines). Using Operations/Load
     1934ProfileÉ resets the default values to the current refinement parameters, which
     1935makes for a simpler plot. <o:p></o:p></span></p>
     1936
     1937<h3><span style='font-size:14.0pt;mso-bidi-font-family:"Times New Roman"'>Step
     19383.5: Compare individual peaks widths to fit profile<o:p></o:p></span></h3>
     1939
     1940<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1941
     1942<p class=MsoNormal><span style='font-size:14.0pt'>While the Instrument
     1943Parameter tree entry is selected, turn off refinement of the U, V, W X, and Y refinement
     1944flags (SH/L can be left to continue to refine) and then select the Peak List
     1945tree entry. <span style="mso-spacerun:yes">&nbsp;</span>Double-click on the
     1946refine headings for the sigma and gamma columns to refine the individual peak widths
     1947and again and use the Peak Fitting/<span class=SpellE>Peakfit</span> menu
     1948command. The fit quality does not change very significantly, and selecting the Instrument
     1949Parameter tree entry generates a plot that shows that the individual peak fits
     1950are quite close to the fitted curves. <o:p></o:p></span></p>
     1951
     1952<p class=MsoNormal><span style='font-size:14.0pt'><o:p>&nbsp;</o:p></span></p>
     1953
     1954<p class=MsoNormal><span style='font-size:14.0pt;mso-fareast-language:EN-US;
     1955mso-no-proof:yes'><!--[if gte vml 1]><v:shape id="Picture_x0020_51" o:spid="_x0000_i1071"
     1956 type="#_x0000_t75" style='width:330pt;height:236pt;visibility:visible;
     1957 mso-wrap-style:square'>
     1958 <v:imagedata src="FindProfParamCW_files/image101.png" o:title=""/>
     1959</v:shape><![endif]--><![if !vml]><img border=0 width=332 height=238
     1960src="FindProfParamCW_files/image102.png" v:shapes="Picture_x0020_51"><![endif]></span><span
    17931961style='font-size:14.0pt'><o:p></o:p></span></p>
    17941962
  • Tutorials/CWInstDemo/FindProfParamCW_files/filelist.xml

    r3354 r3718  
    9494 <o:File HRef="image091.png"/>
    9595 <o:File HRef="image092.png"/>
     96 <o:File HRef="image093.png"/>
     97 <o:File HRef="image094.png"/>
     98 <o:File HRef="image095.png"/>
     99 <o:File HRef="image096.png"/>
     100 <o:File HRef="image097.png"/>
     101 <o:File HRef="image098.png"/>
     102 <o:File HRef="image099.png"/>
     103 <o:File HRef="image100.png"/>
     104 <o:File HRef="image101.png"/>
     105 <o:File HRef="image102.png"/>
    96106 <o:File HRef="filelist.xml"/>
    97107</xml>
  • Tutorials/FitPeaks/Fit Peaks.htm

    r3569 r3718  
    17221722style='font-family:"Calibri",sans-serif;mso-ascii-theme-font:minor-latin;
    17231723mso-hansi-theme-font:minor-latin;mso-bidi-theme-font:minor-latin'>Calculate/Refine</span></b>
    1724 menu item; that it to be used for Rietveld/Pawley refinements. You will be
     1724menu item; that should used for Rietveld/Pawley refinements. You will be
    17251725asked to save the current project before the fit will proceed; change directory
    17261726if desired and provide a suitable name (we assume <b style='mso-bidi-font-weight:
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image001.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image011.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image028.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image032.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image042.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image046.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image048.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image052.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image054.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image056.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image058.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image060.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image064.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image066.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image068.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image070.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image072.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image074.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image076.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image078.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image080.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image082.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image084.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • Tutorials/Magnetic-I/Magnetic Structures-I_files/image086.png

    • Property svn:mime-type changed from text/html to application/octet-stream
  • trunk/GSASIIctrlGUI.py

    r3714 r3718  
    51495149     '''This shows how to determine profile parameters by fitting individual peaks
    51505150        with data collected on a standard using a lab diffractometer.'''],
    5151      
     5151    ['FPAfit', 'FPAfit.htm',  'Determining Profile Parameters with Fundamental Parameters',
     5152     '''This shows how to determine profile parameters by fitting
     5153     peaks that are computed using the NIST Fundamental Parameters Python
     5154     code.
     5155     Input is formulated to use FPA values similar to those in Topas.'''],     
    51525156    ['TOF Calibration', 'Calibration of a TOF powder diffractometer.htm', 'Calibration of a Neutron TOF diffractometer',
    51535157     '''This uses the fitted positions of all visible peaks in a pattern of NIST SRM 660b La11B6
  • trunk/GSASIImapvars.py

    r3713 r3718  
    3131references
    3232to numbered objects are resolved using the appropriate random ids and the
    33 variable object is expressed as a string of form ``ph:hst:VARNAM:at``.
     33parameter object is converted to a string of form ``ph:hst:VARNAM:at``.
    3434
    3535Alternate parameters (New Var)
     
    5555degree of freedom where parameter Px and Py, etc. are varied to keep
    5656their ratio
    57 fixed according the expression. A new variable is assigned to each degree of
     57fixed according the expression. A new variable parameter is assigned to each degree of
    5858freedom when refined. An example where this can be valuable is when
    5959two parameters, P1 and P2, have similar values and are highly correlated. It is often better to create a new variable, Ps = P1 + P2, and refine Ps.
     
    8181a formula, but this can be expanded if needed.
    8282
    83 These equations set an interdependence between variables.
     83These equations set an interdependence between parameters.
    8484Common uses of parameter constraints are to set rules that decrease the number of parameters,
    8585such as restricting the sum of fractional occupancies for atoms that share
     
    154154^^^^^^^^^^^^^^^^^^^^^^^^
    155155
    156 When variables are refined where a single refinement flag determines that several variables
     156When parameters are refined where a single refinement flag determines that several variables
    157157are refined at the same time (examples are: cell parameters, atom positions, anisotropic
    158158displacement parameters, magnetic moments,...) it can be useful to specify that a
    159159specific parameter should not be varied. These will most commonly be generated due to symmetry,
    160 but under specific conditions, there may be other good reasons to constrain a variable.
     160but under specific conditions, there may be other good reasons to constrain a parameter.
    161161
    162162A "Hold" constraint is stored as described for type "h" in the
     
    361361
    362362Rows in the matrix corresponding to "New Var" constraints and those that
    363 were generated by the Gram-Schmidt process are provided with variable names
     363were generated by the Gram-Schmidt process are provided with parameter names
    364364(this can be specified if a "New Var" entry by using a ``"_name"`` element
    365365in the constraint dict, but at present this is not implemented.) Names are
     
    488488
    489489fixedVarList:
    490      a list of variables that have been 'fixed'
     490     a list of parameters that have been 'fixed'
    491491     by defining them as equal to a constant (::var: = 0). Note that
    492      the constant value is ignored at present. These variables are
     492     the constant value is ignored at present. These parameters are
    493493     later removed from varyList which prevents them from being refined.
    494494     Unlikely to be used externally.
     
    504504     
    505505problemVars:
    506      a list containing variables that show up in constraints producing errors
     506     a list containing parameters that show up in constraints producing errors
    507507
    508508
     
    548548'''
    549549fixedVarList = []
    550 '''List of variables that should not be refined.
     550'''List of parameters that should not be refined.
    551551'''
    552552symGenList = []
     
    554554'''
    555555problemVars = []
    556 '''a list of variables causing errors
     556'''a list of parameters causing errors
    557557'''
    558558dependentVars = []
     
    561561'A list of dependent variables, taken from (:data:`indParmList`).'
    562562genVarLookup = {}
    563 'provides a list of variables that are related to each generated variable'
     563'provides a list of parameters that are related to each generated parameter'
    564564paramPrefix = "::constr"
    565565'A prefix for generated parameter names'
     
    586586
    587587def VarKeys(constr):
    588     """Finds the keys in a constraint that represent variables
     588    """Finds the keys in a constraint that represent parameters
    589589    e.g. eliminates any that start with '_'
    590590
     
    687687    # varied, create a warning message.
    688688    for group,varlist in zip(groups,parmlist):
    689         if len(varlist) == 1: continue
     689        if len(varlist) == 1:   # process fixed (held) variables
     690            var = varlist[0]
     691            if var not in fixedVarList:
     692                fixedVarList.append(var)
     693            continue
    690694        for rel in group:
    691695            varied = 0
     
    694698                if var.startswith('_'): continue
    695699                if not re.match('[0-9]*:[0-9\*]*:',var):
    696                     warnmsg += "\nVariable "+str(var)+" does not begin with a ':'"
     700                    warnmsg += "\nParameter "+str(var)+" does not begin with a ':'"
    697701                if var in varyList:
    698702                    varied += 1
     
    705709                    errmsg += _FormatConstraint(constrDict[rel],fixedList[rel])+"\n"
    706710            if varied > 0 and varied != len(VarKeys(constrDict[rel])):
    707                 warnmsg += "\nNot all variables refined in constraint:\n\t"
     711                warnmsg += "\nNot all parameters refined in constraint:\n\t"
    708712                warnmsg += _FormatConstraint(constrDict[rel],fixedList[rel])
    709713                warnmsg += '\nNot refined: ' + notvaried + '\n'
     
    714718    # non-singular square matrix
    715719    for group,varlist in zip(groups,parmlist):
    716         if len(varlist) == 1: continue # a constraint group with a single variable can be ignored
     720        if len(varlist) == 1: continue # a constraint group with a single parameter can be ignored
    717721        if len(varlist) < len(group): # too many relationships -- no can do
    718722            errmsg += "\nOver-constrained input. "
    719723            errmsg += "There are more constraints " + str(len(group))
    720             errmsg += "\n\tthan variables " + str(len(varlist)) + "\n"
     724            errmsg += "\n\tthan parameters " + str(len(varlist)) + "\n"
    721725            for rel in group:
    722726                errmsg += _FormatConstraint(constrDict[rel],fixedList[rel])
     
    744748        mapvar = []
    745749        group = group[:]
    746         # scan through all generated and input variables
    747         # Check again for inconsistent variable use
    748         # for new variables -- where varied and unvaried parameters get grouped
     750        # scan through all generated and input parameters
     751        # Check again for inconsistent parameter use
     752        # for new parameters -- where varied and unvaried parameters get grouped
    749753        # together. I don't think this can happen when not flagged before, but
    750754        # it does not hurt to check again.
     
    764768                fixedval = None
    765769            if fixedval is None:
    766                 varname = paramPrefix + str(consNum) # assign a name to a variable
     770                varname = paramPrefix + str(consNum) # assign a name to a parameter
    767771                mapvar.append(varname)
    768772                consNum += 1
     
    770774                mapvar.append(fixedval)
    771775            if varied > 0 and notvaried != '':
    772                 warnmsg += "\nNot all variables refined in generated constraint"
     776                warnmsg += "\nNot all parameters refined in generated constraint"
    773777                warnmsg += '\nPlease report this unexpected error\n'
    774778                for rel in group:
     
    793797    '''Takes a list of relationship entries comprising a group of
    794798    constraints and builds the relationship lists and their inverse
    795     and stores them in global variables Also checks for internal
     799    and stores them in global parameters Also checks for internal
    796800    conflicts or inconsistencies in parameter/variable definitions.
    797801
     
    810814
    811815    :param int SeqHist: number of current histogram, when used in a sequential
    812       refinement. None (default) otherwise. Wildcard variable names are
     816      refinement. None (default) otherwise. Wildcard parameter names are
    813817      set to the current histogram, when found if not None.
    814818    '''
     
    818822    shortmsg = ''
    819823    changed = False
     824   
    820825    # Process the equivalences
    821826    #    If there are conflicting parameters, move them into constraints. This
     
    840845    groups,parmlist = GroupConstraints(constrDict)
    841846    for group,varlist in zip(groups,parmlist):
    842         if len(varlist) == 1: continue
     847        if len(varlist) == 1:   # process fixed (held) variables
     848            var = varlist[0]
     849            if var not in fixedVarList:
     850                fixedVarList.append(var)
     851            continue
    843852        for rel in group:
    844853            varied = 0
     
    868877            #if unused > 0:# and unused != len(VarKeys(constrDict[rel])):
    869878            if unused > 0 and unused != len(VarKeys(constrDict[rel])):
    870                 #msg += "\nSome (but not all) variables in constraint are not defined:\n\t"
     879                #msg += "\nSome (but not all) parameters in constraint are not defined:\n\t"
    871880                #msg += _FormatConstraint(constrDict[rel],fixedList[rel])
    872881                #msg += '\nNot used: ' + notused + '\n'
    873882                shortmsg += notused+" not used in constraint "+_FormatConstraint(constrDict[rel],fixedList[rel])
    874883            elif varied > 0 and varied != len(VarKeys(constrDict[rel])):
    875                 #msg += "\nNot all variables refined in constraint:\n\t"
     884                #msg += "\nNot all parameters refined in constraint:\n\t"
    876885                #msg += _FormatConstraint(constrDict[rel],fixedList[rel])
    877886                #msg += '\nNot refined: ' + notvaried + '\n'
     
    899908    for group,varlist in zip(groups,parmlist):
    900909        if len(varlist) == 1: continue
    901         # for constraints, if all included variables are refined,
     910        # for constraints, if all included parameters are refined,
    902911        # set the VaryFree flag, and remaining degrees of freedom will be
    903         # varied (since consistency was checked, if any one variable is
     912        # varied (since consistency was checked, if any one parameter is
    904913        # refined, then assume that all are)
    905         varsList = [] # make a list of all the referenced variables as well
     914        varsList = [] # make a list of all the referenced parameters as well
    906915        VaryFree = False
    907916        for rel in group:
     
    919928            msg = 'too many relationships'
    920929            break
    921         # Since we checked before, if any variables are unused, then all must be.
     930        # Since we checked before, if any parameters are unused, then all must be.
    922931        # If so, this set of relationships can be ignored
    923932        if unused:
    924             if debug: print('Constraint ignored (all variables undefined)')
     933            if debug: print('Constraint ignored (all parameters undefined)')
    925934            if debug: print ('    '+_FormatConstraint(constrDict[rel],fixedList[rel]))
    926935            continue
     
    953962                varname = ''
    954963                fixedval = None
    955             if fixedval is None: # this is a new variable, not a constraint
     964            if fixedval is None: # this is a new parameter, not a constraint
    956965                if not varname:
    957966                    varname = paramPrefix + str(consNum) # no assigned name, create one
    958967                    consNum += 1
    959968                mapvar.append(varname)
    960                 genVarLookup[varname] = varlist # save list of variables related to this new var
     969                genVarLookup[varname] = varlist # save list of parameters related to this new var
    961970                # vary the new relationship if it is a degree of freedom in
    962971                # a set of contraint equations or if a New Var is flagged to be varied.
     
    964973                    unused = False
    965974                    varyList.append(varname)
    966                     # fix (prevent varying) of all the variables inside the constraint group
     975                    # fix (prevent varying) of all the parameters inside the constraint group
    967976                    # (dependent vars)
    968977                    for var in varsList:
     
    971980                unused = False
    972981                mapvar.append(fixedval)
    973         if unused: # skip over constraints that don't matter (w/o fixed value or any refined variables)
    974             if debug: print('Constraint ignored (all variables unrefined)')
     982        if unused: # skip over constraints that don't matter (w/o fixed value or any refined parameters)
     983            if debug: print('Constraint ignored (all parameters unrefined)')
    975984            if debug: print ('   '+_FormatConstraint(constrDict[rel],fixedList[rel]))
    976985            continue
     
    11321141    errmsg = ''
    11331142    problemVars = []
    1134     # process fixed variables (holds)
     1143    # process fixed parameters (holds)
    11351144    fixVlist = [] # list of Fixed vars
    11361145    constrVars = [] # list of vars in constraint expressions
     
    11481157    multdepVarList = []
    11491158    dropVarList = []
    1150     translateTable = {} # lookup table for wildcard referenced variables
     1159    translateTable = {} # lookup table for wildcard referenced parameters
    11511160    for varlist,mapvars,multarr,invmultarr in zip(
    11521161        dependentParmList,indParmList,arrayList,invarrayList):
     
    11681177                    notvaried += mv
    11691178                if parmDict is not None and mv not in parmDict:
    1170                     print ("Dropping equivalence for variable "+str(mv)+". Not defined in this refinement")
     1179                    print ("Dropping equivalence for parameter "+str(mv)+". Not defined in this refinement")
    11711180                    if mv not in dropVarList: dropVarList.append(mv)
    11721181                if mv not in indepVarList: indepVarList.append(mv)
     
    11881197                    notvaried += v
    11891198                if v in indepVarList:
    1190                     errmsg += '\nVariable '+v+' is used to set values in a constraint before its value is set in another constraint\n'
     1199                    errmsg += '\nParameter '+v+' is used to set values in a constraint before its value is set in another constraint\n'
    11911200                    if v not in problemVars: problemVars.append(v)
    11921201                if v in depVarList:
     
    11951204                    depVarList.append(v)
    11961205            if varied > 0 and varied != len(varlist)+1:
    1197                 warnmsg += "\nNot all variables refined in equivalence:\n\t"
     1206                warnmsg += "\nNot all parameters refined in equivalence:\n\t"
    11981207                s = ""
    11991208                for v in varlist:
     
    13801389
    13811390def GetDependentVars():
    1382     '''Return a list of dependent variables: e.g. variables that are
    1383     constrained in terms of other variables
    1384 
    1385     :returns: a list of variable names
     1391    '''Return a list of dependent variables: e.g. parameters that are
     1392    constrained in terms of other parameters
     1393
     1394    :returns: a list of parameter names
    13861395
    13871396    '''
     
    13901399
    13911400def GetIndependentVars():
    1392     '''Return a list of independent variables: e.g. variables that are
    1393     created by constraints of other variables
    1394 
    1395     :returns: a list of variable names
     1401    '''Return a list of independent variables: e.g. parameters that are
     1402    slaved to other parameters by constraints
     1403
     1404    :returns: a list of parameter names
    13961405
    13971406    '''
     
    14001409
    14011410def PrintIndependentVars(parmDict,varyList,sigDict,PrintAll=False,pFile=None):
    1402     '''Print the values and uncertainties on the independent variables'''
     1411    '''Print the values and uncertainties on the independent parameters'''
    14031412    global dependentParmList,arrayList,invarrayList,indParmList,fixedDict
    14041413    printlist = []
     
    14141423    s3 = ''
    14151424    pFile.write(130*'-'+'\n')
    1416     pFile.write("Variables generated by constraints\n")
     1425    pFile.write("Parameters generated by constraints\n")
    14171426    printlist.append(3*[None])
    14181427    for name,val,esd in printlist:
     
    14931502    s = ''
    14941503    if len(fixedVarList) > 0:
    1495         s += 'Fixed Variables:\n'
     1504        s += 'Fixed Parameters:\n'
    14961505        for v in fixedVarList:
    14971506            s += '    ' + v + '\n'
    14981507    if not inputOnly:
    1499         s += 'User-supplied variable mapping relations:\n'
     1508        s += 'User-supplied parameter mapping relations:\n'
    15001509    symout = ''
    15011510    global dependentParmList,arrayList,invarrayList,indParmList,fixedDict,symGenList
     
    15361545        s += 'Symmetry-generated relations:\n' + symout
    15371546    if inputOnly: return s
    1538     s += 'Inverse variable mapping relations:\n'
     1547    s += 'Inverse parameter mapping relations:\n'
    15391548    for varlist,mapvars,invmultarr in zip(dependentParmList,indParmList,invarrayList):
    15401549        for i,mv in enumerate(varlist):
     
    16031612    for varlist,mapvars,multarr,invmultarr in zip(dependentParmList,indParmList,arrayList,invarrayList):
    16041613        for i,name in enumerate(mapvars):
    1605             # grouped variables: need to add in the derv. w/r
     1614            # grouped parameters: need to add in the derv. w/r
    16061615            # dependent variables to the independent ones
    16071616            if name not in varyList: continue # skip if independent var not varied
     
    16281637    defined using :func:`StoreEquivalence`,
    16291638    :func:`GroupConstraints` and :func:`GenerateConstraints` and
    1630     before any variable refinement is done. This completes the parameter
     1639    before any parameter refinement is done. This completes the parameter
    16311640    dictionary by defining independent parameters and it satisfies the
    16321641    constraint equations in the initial parameters
     
    16571666                            np.dot(multarr,np.array(valuelist)))
    16581667                        )
    1659     # now remove fixed variables from the varyList
     1668    # now remove fixed parameters from the varyList
    16601669    global fixedVarList
    16611670    for item in fixedVarList:
  • trunk/help/Tutorials.html

    r3637 r3718  
    5959 [link: <A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/Magnetic-IV/data">Exercise files</A>].
    6060<blockquote><I>Analysis of a Type IV antiferromagnet with a lattice centering change using Bilbao k-SUBGROUPSMAG from CW neutron powder data</I></blockquote>
     61<LI><A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/Magnetic-V/Magnetic-V.htm">Magnetic Structure Analysis-V</A>
     62 [link: <A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/Magnetic-V/data">Exercise files</A>].
     63<blockquote><I>Analysis of a complex Type IV antiferromagnet with two propagation vectorse using Bilbao k-SUBGROUPSMAG from TOF neutron powder data</I></blockquote>
    6164</UL><h4>Parametric sequential fitting</H4><UL>
    6265<LI><A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/SeqRefine/SequentialTutorial.htm">Sequential refinement of multiple datasets</A>
     
    114117<blockquote><I>This shows how to determine profile parameters by fitting individual peaks
    115118        with data collected on a standard using a lab diffractometer.</I></blockquote>
     119<LI><A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/FPAfit/FPAfit.htm">Determining Profile Parameters with Fundamental Parameters</A>
     120 [no example data or video].
     121<blockquote><I>This shows how to determine profile parameters by fitting
     122     peaks that are computed using the NIST Fundamental Parameters Python
     123     code.
     124     Input is formulated to use FPA values similar to those in Topas.</I></blockquote>
    116125<LI><A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/TOF Calibration/Calibration of a TOF powder diffractometer.htm">Calibration of a Neutron TOF diffractometer</A>
    117126 [links: <A href="https://anl.box.com/v/CalibrationofaTOFpowderdiffrac">video</A>, <A href="https://subversion.xray.aps.anl.gov/pyGSAS/Tutorials/TOF Calibration/data">Exercise files</A>].
Note: See TracChangeset for help on using the changeset viewer.