Changeset 3070 for trunk/GSASIIpwdGUI.py
- Timestamp:
- Sep 13, 2017 8:53:49 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIpwdGUI.py
r3063 r3070 138 138 ##### Setup routines 139 139 ################################################################################ 140 141 def GetFileBackground(G2frame,xye,Pattern): 142 backfile,mult = Pattern[0]['BackFile'] 143 bxye = np.zeros(len(xye[1])) 144 if backfile: 145 bxye = mult*G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,G2frame.root,backfile))[1][1] 146 return bxye 140 147 141 148 def IsHistogramInAnyPhase(G2frame,histoName): … … 426 433 limits = G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,PatternId, 'Limits'))[1] 427 434 inst,inst2 = G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,PatternId, 'Instrument Parameters')) 428 profile = G2frame.GPXtree.GetItemPyData(PatternId)[1] 435 Pattern = G2frame.GPXtree.GetItemPyData(PatternId) 436 profile = Pattern[1] 437 bxye = GetFileBackground(G2frame,profile,Pattern) 429 438 x0 = profile[0] 430 439 iBeg = np.searchsorted(x0,limits[0]) 431 440 iFin = np.searchsorted(x0,limits[1]) 432 441 x = x0[iBeg:iFin] 433 y0 = profile[1][iBeg:iFin]442 y0 = (profile[1]+bxye)[iBeg:iFin] 434 443 ysig = 1.0*np.std(y0) 435 444 offset = [-1,1] … … 567 576 limits = G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,PatternId, 'Limits'))[1] 568 577 inst,inst2 = G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,PatternId, 'Instrument Parameters')) 569 data = G2frame.GPXtree.GetItemPyData(PatternId)[1] 578 Pattern = G2frame.GPXtree.GetItemPyData(PatternId) 579 data = Pattern[1] 580 fixback = GetFileBackground(G2frame,data,Pattern) 570 581 peaks['sigDict'],result,sig,Rvals,varyList,parmDict,fullvaryList,badVary = G2pwd.DoPeakFit(FitPgm,peaks['peaks'], 571 background,limits,inst,inst2,data, prevVaryList,oneCycle,controls)582 background,limits,inst,inst2,data,fixback,prevVaryList,oneCycle,controls) 572 583 if len(result[0]) != len(fullvaryList): 573 584 dlg.Destroy() … … 611 622 limits = G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,PatternId, 'Limits'))[1] 612 623 inst,inst2 = G2frame.GPXtree.GetItemPyData(G2gd.GetGPXtreeItemId(G2frame,PatternId, 'Instrument Parameters')) 613 data = G2frame.GPXtree.GetItemPyData(PatternId)[1] 624 Pattern = G2frame.GPXtree.GetItemPyData(PatternId) 625 data = Pattern[1] 626 bxye = GetFileBackground(G2frame,data,Pattern) 614 627 dlg = wx.ProgressDialog('Residual','Peak fit Rwp = ',101.0, 615 628 style = wx.PD_ELAPSED_TIME|wx.PD_AUTO_HIDE|wx.PD_REMAINING_TIME|wx.PD_CAN_ABORT) … … 620 633 dlg.SetPosition(wx.Point(screenSize[2]-Size[0]-305,screenSize[1]+5)) 621 634 try: 622 peaks['sigDict'] = G2pwd.DoPeakFit(FitPgm,peaks['peaks'],background,limits,inst,inst2,data, [],oneCycle,controls,dlg)[0]635 peaks['sigDict'] = G2pwd.DoPeakFit(FitPgm,peaks['peaks'],background,limits,inst,inst2,data,bxye,[],oneCycle,controls,dlg)[0] 623 636 finally: 624 637 print 'finished' … … 933 946 Id = G2gd.GetGPXtreeItemId(G2frame,G2frame.root,item) 934 947 G2frame.GPXtree.SetItemPyData( 935 G2gd.GetGPXtreeItemId(G2frame,Id,'Background'),copy. copy(data))948 G2gd.GetGPXtreeItemId(G2frame,Id,'Background'),copy.deepcopy(data)) 936 949 937 950 def OnBkgFit(event): … … 1231 1244 peaksSizer.Add(peaksGrid) 1232 1245 return peaksSizer 1246 1247 def BackFileSizer(): 1248 1249 def OnBackPWDR(event): 1250 data[1]['background PWDR'][0] = back.GetValue() 1251 G2plt.PlotPatterns(G2frame,plotType='PWDR') 1252 1253 fileSizer = wx.BoxSizer(wx.VERTICAL) 1254 fileSizer.Add(wx.StaticText(G2frame.dataWindow,-1,' Fixed background file:'),0,WACV) 1255 if 'background PWDR' not in data[1]: 1256 data[1]['background PWDR'] = ['',-1.] 1257 backSizer = wx.BoxSizer(wx.HORIZONTAL) 1258 Choices = ['',]+G2gd.GetGPXtreeDataNames(G2frame,['PWDR',]) 1259 Source = G2frame.GPXtree.GetItemText(G2frame.PatternId) 1260 Choices.pop(Choices.index(Source)) 1261 back = wx.ComboBox(parent=G2frame.dataWindow,value=data[1]['background PWDR'][0],choices=Choices, 1262 style=wx.CB_READONLY|wx.CB_DROPDOWN) 1263 back.Bind(wx.EVT_COMBOBOX,OnBackPWDR) 1264 backSizer.Add(back) 1265 backSizer.Add(wx.StaticText(G2frame.dataWindow,-1,' multiplier'),0,WACV) 1266 backMult = G2G.ValidatedTxtCtrl(G2frame.dataWindow,data[1]['background PWDR'],1,nDig=(10,3)) 1267 backSizer.Add(backMult,0,WACV) 1268 fileSizer.Add(backSizer) 1269 return fileSizer 1233 1270 1234 1271 # UpdateBackground execution starts here … … 1254 1291 mainSizer.Add((0,5),0) 1255 1292 mainSizer.Add(PeaksSizer()) 1293 mainSizer.Add((0,5),0) 1294 mainSizer.Add(BackFileSizer()) 1256 1295 G2frame.dataWindow.SetDataSize() 1257 1296
Note: See TracChangeset
for help on using the changeset viewer.