Skip to content

Commit 17c29ab

Browse files
committed
address zero weights for MIDAS data
1 parent 6729ed7 commit 17c29ab

File tree

3 files changed

+12
-5
lines changed

3 files changed

+12
-5
lines changed

GSASII/GSASIIpwd.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2750,6 +2750,10 @@ def errPeakProfile(values,xdata,ydata,fixback,weights,dataType,parmdict,varylist
27502750
print('Instrumental profile terms cannot be varied '+
27512751
'in Laue Fringe fits:',warn)
27522752

2753+
if sum(w[xBeg:xFin]) == 0:
2754+
print('Unusable data: data weights are zero')
2755+
if dlg: dlg.Destroy()
2756+
return
27532757
while not noFit:
27542758
begin = time.time()
27552759
values = np.array(Dict2Values(parmDict, varyList))
@@ -2765,6 +2769,7 @@ def errPeakProfile(values,xdata,ydata,fixback,weights,dataType,parmdict,varylist
27652769
print (traceback.format_exc())
27662770
else:
27672771
print('peak fit failure')
2772+
if dlg: dlg.Destroy()
27682773
return
27692774
ncyc = int(result[2]['nfev']/2)
27702775
runtime = time.time()-begin

GSASII/GSASIIpwdGUI.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2099,6 +2099,7 @@ def OnBackFit(event):
20992099
back = wx.ComboBox(parent=G2frame.dataWindow,value=data[1]['background PWDR'][0],choices=Choices,
21002100
style=wx.CB_READONLY|wx.CB_DROPDOWN)
21012101
back.Bind(wx.EVT_COMBOBOX,OnBackPWDR)
2102+
back.SetMaxSize((450,-1))
21022103
backSizer.Add(back)
21032104
backSizer.Add(wx.StaticText(G2frame.dataWindow,-1,' multiplier'),0,WACV)
21042105
backMult = G2G.ValidatedTxtCtrl(G2frame.dataWindow,data[1]['background PWDR'],1,nDig=(10,3),OnLeave=AfterChange)

GSASII/imports/G2pwd_MIDAS.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,8 @@ async def zarrAsyncOpen(filename):
6565
store = await zarr.storage.ZipStore.open(filename, mode="r")
6666
fp = zarr.open_group(store, mode='r')
6767
return fp,store
68-
except FileNotFoundError as msg:
68+
# except FileNotFoundError as msg:
69+
except FileNotFoundError:
6970
print (f'cannot read as zarr file: {filename}')
7071
except Exception as msg:
7172
self.errors = f'Exception from zarr module (version={zarr.__version__}):'
@@ -80,8 +81,8 @@ def ContentsValidator(self, filename):
8081
'''
8182
fp, store = self.zarrOpen(filename)
8283
if not fp:
83-
self.errors = f'Exception from zarr module (version={zarr.__version__}):'
84-
self.errors += '\n\t' + str(msg)
84+
self.errors = f'Error from zarr module (version={zarr.__version__}):'
85+
#self.errors += '\n\t' + str(msg)
8586
self.errors += '\nPlease report this'
8687
elif all([(i in fp) for i in self.midassections]): # are expected MIDAS sections present?
8788
self.mode = 'midas'
@@ -228,8 +229,8 @@ def readMidas(self, filename, fpbuffer={}):
228229
# Y(GSAS) = Y-norm / nFrame
229230
# sigma(Y-GSAS) = sigma(Y-norm) / nFrame
230231
# = sqrt( Y-norm / area) / nFrame
231-
# weight(Y-GSAS) is 1/sigma[Y-GSAS]**2 = nFrame**2 * area / Y-norm
232-
w = np.where(y > 0, np.zeros_like(y), nFrame**2 * normalization/ y )
232+
# weight(Y-GSAS) is 1/sigma[Y-GSAS]**2 = nFrame**2 * area / Y(norm)
233+
w = np.where(y <= 0, np.zeros_like(y), nFrame**2 * normalization/ y )
233234
omega = 999. # indicates an error
234235
try:
235236
omega = 0.5 * (

0 commit comments

Comments
 (0)