Changeset 1875
- Timestamp:
- Jun 2, 2015 2:36:58 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASII.py
r1861 r1875 95 95 'Babinet':{'BabA':[0.0,False],'BabU':[0.0,False]}, 96 96 'Extinction':['Lorentzian','None', {'Tbar':0.1,'Cos2TM':0.955, 97 'Eg':[1.e-10,False],'Es':[1.e-10,False],'Ep':[1.e-10,False]}]} 97 'Eg':[1.e-10,False],'Es':[1.e-10,False],'Ep':[1.e-10,False]}], 98 'Flack':[0.0,False]} 98 99 elif dType == 'SNT': 99 100 return {'Histogram':histoName,'Show':False,'Scale':[1.0,True], -
trunk/GSASIIddataGUI.py
r1837 r1875 396 396 UseList[item]['Babinet']['Bab'+bab][1] = Obj.GetValue() 397 397 398 def OnFlackRef(event): 399 Obj = event.GetEventObject() 400 UseList[G2frame.hist]['Flack'][1] = Obj.GetValue() 401 398 402 def OnBabVal(event): 399 403 Obj = event.GetEventObject() … … 406 410 pass 407 411 Obj.SetValue("%.3f"%(UseList[item]['Babinet']['Bab'+bab][0])) 412 413 def OnFlackVal(event): 414 Obj = event.GetEventObject() 415 try: 416 flack = float(Obj.GetValue()) 417 UseList[G2frame.hist]['Flack'][0] = flack 418 except ValueError: 419 pass 420 Obj.SetValue("%.3f"%(UseList[G2frame.hist]['Flack'][0])) 408 421 409 422 def OnTbarVal(event): … … 784 797 babVal.Bind(wx.EVT_TEXT_ENTER,OnBabVal) 785 798 babVal.Bind(wx.EVT_KILL_FOCUS,OnBabVal) 786 babSizer.Add(babVal,0,WACV |wx.BOTTOM,5)799 babSizer.Add(babVal,0,WACV) 787 800 return babSizer 801 802 def FlackSizer(): 803 flackSizer = wx.BoxSizer(wx.HORIZONTAL) 804 flackRef = wx.CheckBox(DData,wx.ID_ANY,label=' Flack parameter: ') 805 flackRef.SetValue(UseList[G2frame.hist]['Flack'][1]) 806 flackRef.Bind(wx.EVT_CHECKBOX, OnFlackRef) 807 flackSizer.Add(flackRef,0,WACV|wx.LEFT,5) 808 flackVal = wx.TextCtrl(DData,wx.ID_ANY, 809 '%.3f'%(UseList[G2frame.hist]['Flack'][0]),style=wx.TE_PROCESS_ENTER) 810 flackVal.Bind(wx.EVT_TEXT_ENTER,OnFlackVal) 811 flackVal.Bind(wx.EVT_KILL_FOCUS,OnFlackVal) 812 flackSizer.Add(flackVal,0,WACV) 813 return flackSizer 788 814 789 815 def OnSelect(event): … … 816 842 UseList[G2frame.hist]['Babinet'] = {'BabA':[0.0,False],'BabU':[0.0,False]} 817 843 bottomSizer = wx.BoxSizer(wx.VERTICAL) 818 showSizer = wx.BoxSizer(wx.HORIZONTAL)819 844 useData = wx.CheckBox(DData,wx.ID_ANY,label='Use Histogram: '+G2frame.hist+' ?') 820 showSizer.Add(useData,0,WACV|wx.TOP|wx.BOTTOM,5)821 845 useData.Bind(wx.EVT_CHECKBOX, OnUseData) 822 846 useData.SetValue(UseList[G2frame.hist]['Use']) 823 bottomSizer.Add( showSizer,0,WACV|wx.TOP|wx.BOTTOM|wx.LEFT,5)847 bottomSizer.Add(useData,0,WACV|wx.TOP|wx.BOTTOM|wx.LEFT,5) 824 848 825 849 bottomSizer.Add(ScaleSizer(),0,WACV|wx.BOTTOM,5) … … 909 933 bottomSizer.Add(BabSizer(),0,WACV|wx.BOTTOM,5) 910 934 elif G2frame.hist[:4] == 'HKLF': 911 bottomSizer.Add(SCExtSizer(),0,WACV|wx.TOP|wx.BOTTOM,5) 935 #patch 936 if 'Flack' not in UseList[G2frame.hist]: 937 UseList[G2frame.hist]['Flack'] = [0.0,False] 938 #end patch 939 bottomSizer.Add(SCExtSizer(),0,WACV|wx.BOTTOM,5) 912 940 bottomSizer.Add(BabSizer(),0,WACV|wx.BOTTOM,5) 913 941 # if not SGData['SGInv']: #not operational yet - no test data 942 # bottomSizer.Add(FlackSizer(),0,WACV|wx.BOTTOM,5) 914 943 return bottomSizer 915 944 -
trunk/GSASIIobj.py
r1833 r1875 1300 1300 'Es$' : 'Secondary type II extinction', 1301 1301 'Eg$' : 'Secondary type I extinction', 1302 'Flack' : 'Flack parameter', 1302 1303 #Histogram vars (:h:<var>) 1303 1304 'Absorption' : 'Absorption coef.', -
trunk/GSASIIphsGUI.py
r1852 r1875 3800 3800 item, cookie = G2frame.PatternTree.GetNextChild(G2frame.root, cookie) 3801 3801 dlg = G2G.G2MultiChoiceDialog(G2frame, 'Select reflection sets to use', 3802 3802 'Use data',TextList) 3803 3803 try: 3804 3804 if dlg.ShowModal() == wx.ID_OK: … … 3832 3832 histoName = TextList[i] 3833 3833 UseList[histoName] = {'Histogram':histoName,'Show':False,'Scale':[1.0,True], 3834 'Babinet':{'BabA':[0.0,False],'BabU':[0.0,False]}, 3835 'Extinction':['Lorentzian','None', 3836 {'Tbar':0.1,'Cos2TM':0.955,'Eg':[1.e-7,False],'Es':[1.e-7,False],'Ep':[1.e-7,False]},]} 3834 'Babinet':{'BabA':[0.0,False],'BabU':[0.0,False]}, 3835 'Extinction':['Lorentzian','None', 3836 {'Tbar':0.1,'Cos2TM':0.955,'Eg':[1.e-7,False],'Es':[1.e-7,False],'Ep':[1.e-7,False]},], 3837 'Flack':[0.0,False]} 3837 3838 UpdateHKLFdata(histoName) 3838 3839 data['Histograms'] = UseList … … 3859 3860 sourceDict = UseList[hist] 3860 3861 if 'HKLF' in sourceDict['Histogram']: 3861 copyNames = ['Scale','Extinction','Babinet' ]3862 copyNames = ['Scale','Extinction','Babinet','Flack'] 3862 3863 else: #PWDR 3863 3864 copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet'] … … 3881 3882 copyDict = {} 3882 3883 if 'HKLF' in sourceDict['Histogram']: 3883 copyNames = ['Scale','Extinction','Babinet' ]3884 copyNames = ['Scale','Extinction','Babinet','Flack'] 3884 3885 else: #PWDR 3885 3886 copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet'] 3886 3887 babNames = ['BabA','BabU'] 3887 3888 for name in copyNames: 3888 if name in ['Scale','Extinction','HStrain' ]:3889 if name in ['Scale','Extinction','HStrain','Flack']: 3889 3890 if name == 'Extinction' and 'HKLF' in sourceDict['Histogram']: 3890 3891 copyDict[name] = {name:[sourceDict[name][:2]]} … … 3918 3919 UseList[item] 3919 3920 for name in copyNames: 3920 if name in ['Scale','Extinction','HStrain' ]:3921 if name in ['Scale','Extinction','HStrain','Flack']: 3921 3922 if name == 'Extinction' and 'HKLF' in sourceDict['Histogram']: 3922 3923 UseList[item][name][:2] = copy.deepcopy(sourceDict[name][:2]) … … 3950 3951 copyDict = {} 3951 3952 if 'HKLF' in sourceDict['Histogram']: 3952 copyNames = ['Scale','Extinction','Babinet' ]3953 copyNames = ['Scale','Extinction','Babinet','Flack'] 3953 3954 else: #PWDR 3954 3955 copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet'] … … 3974 3975 finally: 3975 3976 dlg.Destroy() 3976 3977 3977 3978 3978 def OnPwdrAdd(event): -
trunk/GSASIIstrIO.py
r1861 r1875 2240 2240 if hapData['Babinet'][bab][1]: 2241 2241 hapVary.append(pfx+bab) 2242 hapDict[pfx+'Flack'] = hapData['Flack'][0] 2243 if hapData['Flack'][1]: 2244 hapVary.append(pfx+'Flack') 2242 2245 if Print: 2243 2246 print >>pFile,'\n Phase: ',phase,' in histogram: ',histogram … … 2252 2255 if hapData['Babinet']['BabA'][0]: 2253 2256 PrintBabinet(hapData['Babinet']) 2257 if not SGData['SGInv']: 2258 print >>pFile,' Flack parameter: %10.3f'%(hapData['Flack'][0]),' Refine?',hapData['Flack'][1] 2254 2259 Histogram['Reflection Lists'] = phase 2255 2260 … … 2481 2486 2482 2487 elif 'HKLF' in histogram: 2483 for item in ['Scale', ]:2488 for item in ['Scale','Flack']: 2484 2489 if parmDict.get(pfx+item): 2485 2490 hapData[item][0] = parmDict[pfx+item] … … 2554 2559 if len(BabSig): 2555 2560 PrintBabinetAndSig(pfx,hapData['Babinet'],BabSig) 2561 if pfx+'Flack' in ScalExtSig: 2562 print >>pFile,' Flack parameter : %10.3f, sig %10.3f'%(hapData['Flack'][0],ScalExtSig[pfx+'Flack']) 2556 2563 2557 2564 ################################################################################ -
trunk/GSASIIstrMath.py
r1874 r1875 856 856 FPP = np.repeat(FPP.T,len(SGT),axis=0) 857 857 Bab = np.repeat(parmDict[phfx+'BabA']*np.exp(-parmDict[phfx+'BabU']*SQfactor),len(SGT)) 858 Flack = 1.-2.*parmDict[phfx+'Flack'] 858 859 Tindx = np.array([refDict['FF']['El'].index(El) for El in Tdata]) 859 860 FF = np.repeat(refDict['FF']['FF'][iBeg:iFin].T[Tindx].T,len(SGT),axis=0) … … 868 869 Tuij = np.where(HbH<1.,np.exp(HbH),1.0).T 869 870 Tcorr = Tiso*Tuij*Mdata*Fdata/len(SGMT) 870 fa = np.array([((FF+FP).T-Bab).T*cosp*Tcorr,-F PP*sinp*Tcorr])871 fa = np.array([((FF+FP).T-Bab).T*cosp*Tcorr,-Flack*FPP*sinp*Tcorr]) 871 872 fa = np.reshape(fa,(2,len(refl),len(SGT),len(Mdata))) #real A,-b 872 873 fas = np.sum(np.sum(fa,axis=2),axis=2) #real sum over atoms & unique hkl 873 fb = np.array([((FF+FP).T-Bab).T*sinp*Tcorr,F PP*cosp*Tcorr])874 fb = np.array([((FF+FP).T-Bab).T*sinp*Tcorr,Flack*FPP*cosp*Tcorr]) 874 875 fb = np.reshape(fb,(2,len(refl),len(SGT),len(Mdata))) #imag -B,+a 875 876 fbs = np.sum(np.sum(fb,axis=2),axis=2) #imag sum over atoms & uniq hkl … … 933 934 Tuij = np.where(HbH<1.,np.exp(HbH),1.0) 934 935 Tcorr = Tiso*Tuij 936 Flack = (1.-2.*parmDict[phfx+'Flack']) 935 937 fot = (FF+FP-Bab)*occ*Tcorr 936 fotp = F PP*occ*Tcorr938 fotp = Flack*FPP*occ*Tcorr 937 939 fa = np.array([fot[:,np.newaxis]*cosp,fotp[:,np.newaxis]*cosp]) #non positions 938 940 fb = np.array([fot[:,np.newaxis]*sinp,-fotp[:,np.newaxis]*sinp])
Note: See TracChangeset
for help on using the changeset viewer.