Changeset 4919 for trunk/GSASIIstrMath.py
- Timestamp:
- Jun 3, 2021 10:12:41 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/GSASIIstrMath.py ¶
r4915 r4919 3206 3206 yb,Histogram['sumBk'] = G2pwd.getBackground(hfx,parmDict,bakType,calcControls[hfx+'histType'],x,fixback) 3207 3207 yc = np.zeros_like(yb) 3208 cw = np.diff(ma.getdata(x))3209 cw = np.append(cw,cw[-1])3208 # cw = np.diff(ma.getdata(x)) 3209 # cw = np.append(cw,cw[-1]) 3210 3210 3211 3211 if 'C' in calcControls[hfx+'histType']: … … 3311 3311 profArgs[iref%ncores].append((refl[5+im],refl,iBeg,iFin,1.)) 3312 3312 else: 3313 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*G2pwd.getFCJVoigt3(refl[5+im],refl[6+im],refl[7+im],shl,ma.getdata(x[iBeg:iFin])) #>90% of time spent here 3313 fp = G2pwd.getFCJVoigt3(refl[5+im],refl[6+im],refl[7+im],shl,ma.getdata(x[iBeg:iFin]))[0] 3314 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*fp #>90% of time spent here 3314 3315 if Ka2: 3315 3316 pos2 = refl[5+im]+lamRatio*tand(refl[5+im]/2.0) # + 360/pi * Dlam/lam * tan(th) … … 3326 3327 profArgs[iref%ncores].append((pos2,refl,iBeg,iFin,kRatio)) 3327 3328 else: 3328 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*kRatio*G2pwd.getFCJVoigt3(pos2,refl[6+im],refl[7+im],shl,ma.getdata(x[iBeg:iFin])) #and here 3329 fp2 = G2pwd.getFCJVoigt3(pos2,refl[6+im],refl[7+im],shl,ma.getdata(x[iBeg:iFin]))[0] 3330 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*kRatio*fp2 #and here 3329 3331 elif 'B' in calcControls[hfx+'histType']: 3330 3332 for iref,refl in enumerate(refDict['RefList']): … … 3364 3366 profArgs[iref%ncores].append((refl[5+im],refl,iBeg,iFin,1.)) 3365 3367 else: 3366 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*G2pwd.getEpsVoigt(refl[5+im],refl[12+im],refl[13+im],refl[6+im]/1.e4,refl[7+im]/100.,ma.getdata(x[iBeg:iFin])) 3368 fp = G2pwd.getEpsVoigt(refl[5+im],refl[12+im],refl[13+im],refl[6+im]/1.e4,refl[7+im]/100.,ma.getdata(x[iBeg:iFin]))[0] 3369 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*fp #*cw[iBeg:iFin] 3367 3370 elif 'T' in calcControls[hfx+'histType']: 3368 3371 for iref,refl in enumerate(refDict['RefList']): … … 3402 3405 profArgs[iref%ncores].append((refl[5+im],refl,iBeg,iFin)) 3403 3406 else: 3404 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*G2pwd.getEpsVoigt(refl[5+im],refl[12+im],refl[13+im],refl[6+im],refl[7+im],ma.getdata(x[iBeg:iFin]))/cw[iBeg:iFin] 3407 fp = G2pwd.getEpsVoigt(refl[5+im],refl[12+im],refl[13+im],refl[6+im],refl[7+im],ma.getdata(x[iBeg:iFin]))[0] 3408 yc[iBeg:iFin] += refl[11+im]*refl[9+im]*fp 3405 3409 # print 'profile calc time: %.3fs'%(time.time()-time0) 3406 3410 if useMP and 'C' in calcControls[hfx+'histType']: … … 3434 3438 if len(args) >= 11: tprc=args[10] 3435 3439 if len(args) >= 12: histogram=args[11] 3440 3436 3441 def cellVaryDerv(pfx,SGData,dpdA): 3437 3442 if SGData['SGLaue'] in ['-1',]: … … 3488 3493 if hfx+'BF mult' in varylist: 3489 3494 dMdv[varylist.index(hfx+'BF mult')] += dMdfb 3490 cw = np.diff(ma.getdata(x))3491 cw = np.append(cw,cw[-1])3495 # cw = np.diff(ma.getdata(x)) 3496 # cw = np.append(cw,cw[-1]) 3492 3497 Ka2 = False #also for TOF! 3493 3498 if 'C' in calcControls[hfx+'histType']: … … 3587 3592 dMdipk = G2pwd.getdFCJVoigt3(refl[5+im],refl[6+im],refl[7+im],shl,ma.getdata(x[iBeg:iFin])) 3588 3593 for i in range(5): 3589 dMdpk[i] += 100.*cw[iBeg:iFin]*refl[11+im]*refl[9+im]*dMdipk[i]3594 dMdpk[i] += refl[11+im]*refl[9+im]*dMdipk[i] 3590 3595 dervDict = {'int':dMdpk[0],'pos':dMdpk[1],'sig':dMdpk[2],'gam':dMdpk[3],'shl':dMdpk[4],'L1/L2':np.zeros_like(dMdpk[0])} 3591 3596 if Ka2: … … 3598 3603 dMdipk2 = G2pwd.getdFCJVoigt3(pos2,refl[6+im],refl[7+im],shl,ma.getdata(x[iBeg2:iFin2])) 3599 3604 for i in range(5): 3600 dMdpk2[i] = 100.*cw[iBeg2:iFin2]*refl[11+im]*refl[9+im]*kRatio*dMdipk2[i]3601 dMdpk2[5] = 100.*cw[iBeg2:iFin2]*refl[11+im]*dMdipk2[0]3605 dMdpk2[i] = refl[11+im]*refl[9+im]*kRatio*dMdipk2[i] 3606 dMdpk2[5] = refl[11+im]*dMdipk2[0] 3602 3607 dervDict2 = {'int':dMdpk2[0],'pos':dMdpk2[1],'sig':dMdpk2[2],'gam':dMdpk2[3],'shl':dMdpk2[4],'L1/L2':dMdpk2[5]*refl[9]} 3603 3608 elif 'T' in calcControls[hfx+'histType']: … … 3619 3624 dMdipk = G2pwd.getdEpsVoigt(refl[5+im],refl[12+im],refl[13+im],refl[6+im]/1.e4,refl[7+im]/100.,ma.getdata(x[iBeg:iFin])) 3620 3625 for i in range(6): 3621 dMdpk[i] = cw[iBeg:iFin]*refl[11+im]*refl[9+im]*dMdipk[i]3626 dMdpk[i] = refl[11+im]*refl[9+im]*dMdipk[i] 3622 3627 dervDict = {'int':dMdpk[0],'pos':dMdpk[1],'alp':dMdpk[2],'bet':dMdpk[3],'sig':dMdpk[4]/1.e4,'gam':dMdpk[5]/100.} 3623 3628 if Phase['General'].get('doPawley'):
Note: See TracChangeset
for help on using the changeset viewer.