Changeset 838
- Timestamp:
- Jan 23, 2013 10:15:09 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIstruct.py
r826 r838 3288 3288 if calcControls['F**2']: 3289 3289 if ref[5]/ref[6] >= calcControls['minF/sig']: 3290 w = wtFactor/ref[6] 3290 3291 for j,var in enumerate(varylist): 3291 3292 if var in dFdvDict: 3292 dMdvh[j][iref] = dFdvDict[var][iref]/ref[6]3293 dMdvh[j][iref] = w*dFdvDict[var][iref] 3293 3294 if phfx+'Scale' in varylist: 3294 dMdvh[varylist.index(phfx+'Scale')][iref] = ref[9]/ref[6]3295 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9] 3295 3296 else: 3296 3297 Fo = np.sqrt(ref[5]) … … 3298 3299 sig = ref[6]/(2.0*Fo) 3299 3300 if Fo/sig >= calcControls['minF/sig']: 3301 w = wtFactor/sig 3300 3302 for j,var in enumerate(varylist): 3301 3303 if var in dFdvDict: 3302 dMdvh[j][iref] = dFdvDict[var][iref]/ref[6]3304 dMdvh[j][iref] = w*dFdvDict[var][iref] 3303 3305 if phfx+'Scale' in varylist: 3304 dMdvh[varylist.index(phfx+'Scale')][iref] = ref[9]/ref[6]3306 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9] 3305 3307 else: 3306 3308 continue #skip non-histogram entries … … 3373 3375 if calcControls['F**2']: 3374 3376 if ref[5]/ref[6] >= calcControls['minF/sig']: 3375 wdf[iref] = (ref[5]-ref[7])/ref[6] 3377 w = wtFactor/ref[6] 3378 wdf[iref] = w*(ref[5]-ref[7]) 3376 3379 for j,var in enumerate(varylist): 3377 3380 if var in dFdvDict: 3378 dMdvh[j][iref] = dFdvDict[var][iref]/ref[6]3381 dMdvh[j][iref] = w*dFdvDict[var][iref] 3379 3382 if phfx+'Scale' in varylist: 3380 dMdvh[varylist.index(phfx+'Scale')][iref] = ref[9]/ref[6]3383 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9] 3381 3384 else: 3382 Fo = np.sqrt(ref[5]) 3383 Fc = np.sqrt(ref[7]) 3384 sig = ref[6]/(2.0*Fo) 3385 wdf[iref] = (Fo-Fc)/sig 3386 if Fo/sig >= calcControls['minF/sig']: 3387 for j,var in enumerate(varylist): 3388 if var in dFdvDict: 3389 dMdvh[j][iref] = dFdvDict[var][iref]/ref[6] 3390 if phfx+'Scale' in varylist: 3391 dMdvh[varylist.index(phfx+'Scale')][iref] = ref[9]/ref[6] 3385 if ref[5] > 0.: 3386 Fo = np.sqrt(ref[5]) 3387 Fc = np.sqrt(ref[7]) 3388 sig = ref[6]/(2.0*Fo) 3389 w = wtFactor/sig 3390 wdf[iref] = w*(Fo-Fc) 3391 if Fo/sig >= calcControls['minF/sig']: 3392 for j,var in enumerate(varylist): 3393 if var in dFdvDict: 3394 dMdvh[j][iref] = w*dFdvDict[var][iref] 3395 if phfx+'Scale' in varylist: 3396 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9] 3392 3397 if dlg: 3393 3398 dlg.Update(Histogram['wR'],newmsg='Hessian for histogram %d Rw=%8.3f%s'%(hId,Histogram['wR'],'%'))[0] … … 3480 3485 sumdF2 += abs(ref[5]-ref[7]) 3481 3486 nobs += 1 3482 df[i] = - (ref[5]-ref[7])/ref[6]3483 sumwYo += (ref[5]/ref[6])**23487 df[i] = -np.sqrt(wtFactor)*(ref[5]-ref[7])/ref[6] 3488 sumwYo += wtFactor*(ref[5]/ref[6])**2 3484 3489 else: 3485 3490 Fo = np.sqrt(ref[5]) … … 3492 3497 sumdF2 += abs(ref[5]-ref[7]) 3493 3498 nobs += 1 3494 df[i] = - (Fo-Fc)/sig3495 sumwYo += (Fo/sig)**23499 df[i] = -np.sqrt(wtFactor)*(Fo-Fc)/sig 3500 sumwYo += wtFactor*(Fo/sig)**2 3496 3501 Histogram['Nobs'] = nobs 3497 3502 Histogram['sumwYo'] = sumwYo
Note: See TracChangeset
for help on using the changeset viewer.