<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Courier New";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Courier New";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:778141286;
        mso-list-type:hybrid;
        mso-list-template-ids:2091972116 -686668630 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Thanks, Brian, for your reply.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<ol style="margin-top:0in" start="1" type="1">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1">As you pointed out, another thing I tried was to enable the Pref.Ori. parameter using the following command.
<o:p></o:p></li></ol>
<p class="MsoNormal">                <span style="color:#0070C0">gpx.phase(0).getHAPvalues('PWDR Si-Beason_2022-R2_csv.csv')['Pref.Ori.']=['MD', 1.0, True, [0, 0, 1], 0, {}, [], 0.1]
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#0070C0"><o:p> </o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span style="color:black">Then, I refined using the command:<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span style="color:black">               
</span><span style="color:#0070C0">gpx.refine()</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-left:.5in">However, the fit did not seem to converge. On GSASII GUI, the fit converged in less than a minute, so it indicated that something was wrong. Some of the output is as follows:<o:p></o:p></p>
<pre style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all"><span style="color:#0070C0">gpx file saved as C:\Users\ADM\Desktop\57_pXRD_Simulation\pXRD_Simulation_v1-11\data\Tasim.gpx<o:p></o:p></span></pre>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">Hessian Levenberg-Marquardt SVD refinement on 7 variables:<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">initial chi^2 547.6 with 665 obs.<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">Cycle 0: 0.06s, Chi**2: nan for 665 obs., Lambda: 0,  Delta: nan, SVD=0<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">ouch #2 bad SVD inversion; dropping terms for for variable(s) #[0]<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">ouch #2 bad SVD inversion; dropping terms for for variable(s) #[0]<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">ouch #2 bad SVD inversion; dropping terms for for variable(s) #[0]<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">giving up with ouch #2<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">**** Refinement failed with 1 SVD singularities ****<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">Error: 3 Parameter(s) dropped:<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">  0:0:MD, :0:Back;0, :0:Back;1<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">Check covariance matrix for parameter correlation<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">Hessian Levenberg-Marquardt SVD refinement on 7 variables:<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">initial chi^2 nan with 665 obs.<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">ouch #2 bad SVD inversion; dropping terms for for variable(s) #[0]<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">C:/ProgramData/Anaconda3/envs/G2/GSASII\GSASIIstrMath.py:2509: RuntimeWarning: invalid value encountered in sqrt<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">  A = 1.0/np.sqrt((MD*cosP)**2+sinP**2/MD)<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">C:/ProgramData/Anaconda3/envs/G2/GSASII\GSASIImath.py:352: UserWarning: Warning: converting a masked element to nan.<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">  (icycle,time.time()-time0,chisq1,Nobs,lamMax,deltaChi2,Nzeros))<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">C:/ProgramData/Anaconda3/envs/G2/GSASII\GSASIIstrMath.py:2525: RuntimeWarning: invalid value encountered in sqrt<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">  A = 1.0/np.sqrt((MD*cosP)**2+sinP**2/MD)<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">C:/ProgramData/Anaconda3/envs/G2/GSASII\GSASIIstrMain.py:235: UserWarning: Warning: converting a masked element to nan.<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">  printFile.write(' wR = %7.2f%%, chi**2 = %12.6g, GOF = %6.2f\n'%(Rvals['Rwp'],Rvals['chisq'],Rvals['GOF']))<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">C:/ProgramData/Anaconda3/envs/G2/GSASII\GSASIImath.py:230: UserWarning: Warning: converting a masked element to nan.<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">  G2fil.G2Print('initial chi^2 %.5g with %d obs.'%(chisq00,Nobs))<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">ouch #2 bad SVD inversion; dropping terms for for variable(s) #[0]<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">ouch #2 bad SVD inversion; dropping terms for for variable(s) #[0]<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">giving up with ouch #2<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:1.0in;line-height:14.55pt;vertical-align:baseline;word-break:break-all">
<span style="font-size:10.0pt;font-family:"Courier New";color:#0070C0">**** Refinement failed with 1 SVD singularities ****<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<ol style="margin-top:0in" start="2" type="1">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1">The above command is for MD model. I copied from the example provided on the website
<a href="https://gsas-ii.readthedocs.io/">https://gsas-ii.readthedocs.io/</a>. For SH model, what is the equivalent command to do a spherical harmonic model with order 2? When I tied the following, it did NOT work:<o:p></o:p></li></ol>
<p class="MsoNormal">                               <span style="color:red">gpx.phase(0).getHAPvalues('PWDR Si-Beason_2022-R2_csv.csv')['Pref.Ori.']=['SH', 'order':2, 'refine': True]
<o:p></o:p></span></p>
<p class="MsoListParagraph"><o:p> </o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal">Ray<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Toby, Brian H. <toby@anl.gov> <br>
<b>Sent:</b> Thursday, August 18, 2022 2:23 PM<br>
<b>To:</b> Gunawidjaja, Ray <rayg@wsu.edu><br>
<b>Cc:</b> gsas-ii@aps.anl.gov<br>
<b>Subject:</b> Re: [GSAS-II] GSASIIScriptable command to refine the spherical harmonics ('SH') of the preferred orientation ('Pref.Ori.') parameter<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="mso-element:para-border-div;border:solid #FFCACA 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:#FFEB9C">
<p style="background:#FFEB9C;border:none;padding:0in"><b><span style="font-size:10.0pt;color:black">[EXTERNAL EMAIL]</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Hi Ray,  <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">  As of right now, it does not appear that I have written an API to set the model type and parameters for preferred orientation. GSASIIscriptable only is able to turn on and off the refinement flag. This does not mean it can’t be done,
 but it needs some special attention. You can use phase.getHAPvalues() (<a href="https://gsas-ii.readthedocs.io/en/latest/GSASIIscriptable.html#GSASIIscriptable.G2Phase.getHAPvalues">https://gsas-ii.readthedocs.io/en/latest/GSASIIscriptable.html#GSASIIscriptable.G2Phase.getHAPvalues</a>)
 on an .gpx file edited with the GUI to see the dict with all the parameter values so you can see what you want to change and then use .setHAPentryValue (or modify the dict directly) to make the changes. <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   What you want is something that probably should be implemented, but my recollection is that it is not a simple task, as the Laue group for a phase determines now many terms are allowed for a given SH order and that means to implement
 a generalized scripting routine that allows one to set the SH order requires creating access to a bunch of routines currently only implemented in the GUI. I know I am not going to get to that anytime soon, but f important to your work keep asking iand I’ll
 add it to my to do list. <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Brian<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">On Aug 18, 2022, at 1:13 PM, Gunawidjaja, Ray via GSAS-II <<a href="mailto:gsas-ii@aps.anl.gov">gsas-ii@aps.anl.gov</a>> wrote:<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Hello,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I am trying to include preferred orientation refinement into the example script below (<span style="color:red">in red font</span>), but can’t find the right command on the website (<a href="https://gsas-ii.readthedocs.io/en/latest/">https://gsas-ii.readthedocs.io/en/latest/</a>).
 I would like to achieve the same result as selecting the Spherical harmonics Preferred orientation model with, e.g., a harmonic order of 2 in the Data table in GSASII GUI. to Please help.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal">  <span class="apple-converted-space"> </span><span style="color:#0070C0"> from __future__ import division, print_function</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    import os,sys</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    sys.path.insert(0,'/Users/toby/software/G2/GSASII') # needed to "find" GSAS-II modules</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    import GSASIIscriptable as G2sc</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    datadir = "/Users/Scratch/"</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0"> </span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    gpx = G2sc.G2Project(os.path.join(datadir,'test2.gpx'))</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    gpx.histogram(0).add_back_peak(4.5,30000,5000,0)</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">    pardict = {'set': {'Sample Parameters': ['Absorption', 'Contrast', 'DisplaceX'],</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">                       'Background': {'type': 'chebyschev-1', 'refine': True,</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">                                      'peaks':[[0,True]]},</span><o:p></o:p></p>
</div>
<div style="margin-left:10.9pt">
<p class="MsoNormal"><span style="color:#0070C0">                        <span class="apple-converted-space"> </span></span><span style="color:red">'Pref.Ori. ':{ 'type': 'SH', ???????}</span><o:p></o:p></p>
</div>
<div style="margin-left:58.45pt">
<p class="MsoNormal" style="text-indent:13.55pt"><span style="color:#0070C0">}}</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#0070C0">   <span class="apple-converted-space"> </span></span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#0070C0">           gpx.set_refinement(pardict)</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#0070C0"> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I appreciate your help.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Ray<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#0070C0"> </span><o:p></o:p></p>
</div>
</blockquote>
</div>
</div>
<p class="MsoNormal"><span style="font-size:13.5pt;font-family:"Helvetica",sans-serif">_______________________________________________<br>
GSAS-II mailing list<br>
</span><a href="mailto:GSAS-II@aps.anl.gov"><span style="font-size:13.5pt;font-family:"Helvetica",sans-serif">GSAS-II@aps.anl.gov</span></a><span style="font-size:13.5pt;font-family:"Helvetica",sans-serif"><br>
</span><a href="https://mailman.aps.anl.gov/mailman/listinfo/gsas-ii"><span style="font-size:13.5pt;font-family:"Helvetica",sans-serif">https://mailman.aps.anl.gov/mailman/listinfo/gsas-ii</span></a><o:p></o:p></p>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</body>
</html>