Changeset 2040
- Timestamp:
- Nov 6, 2015 11:44:24 AM (7 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIImath.py
r2038 r2040 971 971 XmodB = Bx[:,nx:,:,nxs]*np.cos(twopi*tauX[nxs,:,nxs,:]) #ditto 972 972 Xmod = np.sum(XmodA+XmodB+XmodZ,axis=1) #atoms X 3 X 32; sum waves 973 Xmod = np.swapaxes(Xmod,1,2) #agree with J2K ParSup973 Xmod = np.swapaxes(Xmod,1,2) #agrees with J2K ParSup & shape is right 974 974 if Au.shape[1]: 975 975 tauU = np.arange(1.,Au.shape[1]+1)[:,nxs]*glTau #Uwaves x 32 … … 980 980 else: 981 981 HbH = 1.0 982 D = H[:,:,3:]*glTau[nxs,nxs,:] #m*e*tau; refBlk x ops X 32 983 HdotX = np.inner(HP,Xmod)+D[:,:,nxs,:] #refBlk x ops x atoms X 32 984 cosHA = np.sum(Fmod*HbH*np.cos(twopi*HdotX)*glWt,axis=-1) #real part; refBlk X ops x atoms; sum for G-L integration 985 sinHA = np.sum(Fmod*HbH*np.sin(twopi*HdotX)*glWt,axis=-1) #imag part; ditto 982 D = twopi*H[:,:,3:]*glTau[nxs,nxs,:] #m*e*tau; refBlk x ops X 32 983 HdotX = twopi*np.inner(HP,Xmod) #refBlk x ops x atoms X 32 984 HdotXD = HdotX+D[:,:,nxs,:] 985 cosHA = np.sum(Fmod*HbH*np.cos(HdotXD)*glWt,axis=-1) #real part; refBlk X ops x atoms; sum for G-L integration 986 sinHA = np.sum(Fmod*HbH*np.sin(HdotXD)*glWt,axis=-1) #imag part; ditto 986 987 # GSASIIpath.IPyBreak() 987 988 return np.array([cosHA,sinHA]) # 2 x refBlk x SGops x atoms -
trunk/GSASIIphsGUI.py
r2039 r2040 2388 2388 except ValueError: 2389 2389 val = atomData[iatm][-1][SS][item][iwave][0][ival] 2390 Obj.SetValue('%. 4f'%val)2390 Obj.SetValue('%.5f'%val) 2391 2391 atomData[iatm][-1][SS][item][iwave][0][ival] = val 2392 2392 … … 2441 2441 for ival,val in enumerate(wave[0]): 2442 2442 if np.any(CSI[Stype][0][ival]): 2443 waveVal = wx.TextCtrl(waveData,value='%. 4f'%(val),style=wx.TE_PROCESS_ENTER)2443 waveVal = wx.TextCtrl(waveData,value='%.5f'%(val),style=wx.TE_PROCESS_ENTER) 2444 2444 waveVal.Bind(wx.EVT_TEXT_ENTER,OnWaveVal) 2445 2445 waveVal.Bind(wx.EVT_KILL_FOCUS,OnWaveVal) 2446 2446 Indx[waveVal.GetId()] = [iatm,Stype,iwave,ival] 2447 2447 else: 2448 waveVal = wx.TextCtrl(waveData,value='%. 4f'%(val),style=wx.TE_READONLY)2448 waveVal = wx.TextCtrl(waveData,value='%.5f'%(val),style=wx.TE_READONLY) 2449 2449 waveVal.SetBackgroundColour(VERY_LIGHT_GREY) 2450 2450 Waves.Add(waveVal,0,WACV) -
trunk/GSASIIplot.py
r2034 r2040 365 365 zpos = Data['Layer'] 366 366 if '100' in Data['Zone']: 367 HKLtxt = '(% 3d,%3d,%3d)'%(zpos,xpos,ypos)367 HKLtxt = '(%d,%d,%d)'%(zpos,xpos,ypos) 368 368 elif '010' in Data['Zone']: 369 HKLtxt = '(% 3d,%3d,%3d)'%(xpos,zpos,ypos)369 HKLtxt = '(%d,%d,%d)'%(xpos,zpos,ypos) 370 370 elif '001' in Data['Zone']: 371 HKLtxt = '(% 3d,%3d,%3d)'%(xpos,ypos,zpos)371 HKLtxt = '(%d,%d,%d)'%(xpos,ypos,zpos) 372 372 Page.canvas.SetToolTipString(HKLtxt) 373 373 G2frame.G2plotNB.status.SetStatusText('HKL = '+HKLtxt,0) … … 379 379 pos = int(round(event.xdata)),int(round(event.ydata)) 380 380 if '100' in Data['Zone']: 381 Page.canvas.SetToolTipString('(picked:(%3d,%3d,%3d))'%(zpos,pos[0],pos[1]))382 381 hkl = np.array([zpos,pos[0],pos[1]]) 383 382 elif '010' in Data['Zone']: 384 Page.canvas.SetToolTipString('(picked:(%3d,%3d,%3d))'%(pos[0],zpos,pos[1]))385 383 hkl = np.array([pos[0],zpos,pos[1]]) 386 384 elif '001' in Data['Zone']: 387 Page.canvas.SetToolTipString('(picked:(%3d,%3d,%3d))'%(pos[0],pos[1],zpos))388 385 hkl = np.array([pos[0],pos[1],zpos]) 389 386 h,k,l = hkl … … 393 390 HKLtxt = '( %.2f %.3f %.2f %.2f)'%(Fosq,sig,Fcsq,(Fosq-Fcsq)/(scale*sig)) 394 391 G2frame.G2plotNB.status.SetStatusText('Fosq, sig, Fcsq, delFsq/sig = '+HKLtxt,1) 392 393 def OnPick(event): 394 pick = event.artist 395 HKLtext = pick.get_gid() 396 Page.canvas.SetToolTipString(HKLtext) 397 G2frame.G2plotNB.status.SetStatusText('H = '+HKLtext,0) 395 398 396 399 Name = G2frame.PatternTree.GetItemText(G2frame.PatternId) … … 411 414 Page.canvas.mpl_connect('button_press_event', OnSCPress) 412 415 Page.canvas.mpl_connect('motion_notify_event', OnSCMotion) 416 Page.canvas.mpl_connect('pick_event', OnPick) 413 417 Page.canvas.mpl_connect('key_press_event', OnSCKeyPress) 414 418 Page.keyPress = OnSCKeyPress … … 479 483 elif Type == '|DFsq|/sig': 480 484 if sig > 0.: 481 A = (Fosq-Fcsq)/(3*sig)485 A = scale*(Fosq-Fcsq)/(3*sig) 482 486 B = 0 483 487 elif Type == '|DFsq|>sig': 484 488 if sig > 0.: 485 A = (Fosq-Fcsq)/(3*sig)489 A = scale*(Fosq-Fcsq)/(3*sig) 486 490 if abs(A) < 1.0: A = 0 487 491 B = 0 488 492 elif Type == '|DFsq|>3sig': 489 493 if sig > 0.: 490 A = (Fosq-Fcsq)/(3*sig)494 A = scale*(Fosq-Fcsq)/(3*sig) 491 495 if abs(A) < 3.0: A = 0 492 496 B = 0 493 497 if Super: 494 h = H+SuperVec*refl[3] 498 h = H+SuperVec*refl[3] 499 if refl[3]: 500 hid = '(%d,%d,%d,%d)'%(refl[0],refl[1],refl[2],refl[3]) 501 else: 502 hid = '(%d,%d,%d)'%(refl[0],refl[1],refl[2]) 495 503 else: 496 504 h = H 505 hid = '(%d,%d,%d)'%(refl[0],refl[1],refl[2]) 497 506 xy = (h[pzone[izone][0]],h[pzone[izone][1]]) 498 507 if Type in ['|DFsq|/sig','|DFsq|>sig','|DFsq|>3sig']: 499 508 if A > 0.0: 500 Plot.add_artist(Circle(xy,radius=A,ec='g',fc='w' ))509 Plot.add_artist(Circle(xy,radius=A,ec='g',fc='w',picker=1.,gid=hid)) 501 510 else: 502 Plot.add_artist(Circle(xy,radius=-A,ec='r',fc='w' ))511 Plot.add_artist(Circle(xy,radius=-A,ec='r',fc='w',picker=1.,gid=hid)) 503 512 else: 504 513 if A > 0.0 and A > B: 505 514 Plot.add_artist(Circle(xy,radius=A,ec='g',fc='w')) 506 515 if B: 507 Plot.add_artist(Circle(xy,radius=B,ec='b',fc='w' ))516 Plot.add_artist(Circle(xy,radius=B,ec='b',fc='w',picker=1.,gid=hid)) 508 517 if A < B: 509 518 Plot.add_artist(Circle(xy,radius=A,ec='g',fc='w')) -
trunk/GSASIIstrMath.py
r2038 r2040 754 754 else: 755 755 if len(TwinLaw) > 1: 756 refl.T[9] = np.sum(fas[:,:,0] **2,axis=0)+np.sum(fbs[:,:,0]**2,axis=0)#FcT from primary twin element756 refl.T[9] = np.sum(fas[:,:,0],axis=0)**2+np.sum(fbs[:,:,0],axis=0)**2 #FcT from primary twin element 757 757 refl.T[7] = np.sum(TwinFr*np.sum(TwMask[np.newaxis,:,:]*fas,axis=0)**2,axis=-1)+ \ 758 758 np.sum(TwinFr*np.sum(TwMask[np.newaxis,:,:]*fbs,axis=0)**2,axis=-1) #Fc sum over twins 759 759 refl.T[10] = atan2d(fbs[0].T[0],fas[0].T[0]) #ignore f' & f" 760 760 else: 761 refl.T[9] = np.sum(fas **2,axis=0)+np.sum(fbs**2,axis=0)761 refl.T[9] = np.sum(fas,axis=0)**2+np.sum(fbs,axis=0)**2 762 762 refl.T[7] = np.copy(refl.T[9]) 763 763 refl.T[10] = atan2d(fbs[0],fas[0]) #ignore f' & f" … … 898 898 2.*(fbs[0]*dfbdua[0]+fbs[1]*dfbdua[1]) 899 899 else: 900 SA = fas[0]+f bs[1]901 SB = fbs[0]+f as[1]900 SA = fas[0]+fas[1] 901 SB = fbs[0]+fbs[1] 902 902 if nTwin > 1: 903 dFdfr[iref] = [2.*TwMask[it]*( fas[0][it]*dfadfr[0][it]+fas[1][it]*dfadfr[1][it]+fbs[0][it]*dfbdfr[0][it]+fbs[1][it]*dfbdfr[1][it])*Mdata/len(Uniq[it]) for it in range(nTwin)]904 dFdx[iref] = [2.*TwMask[it]*( fas[0][it]*dfadx[it][0]+fas[1][it]*dfadx[it][1]+fbs[0][it]*dfbdx[it][0]+fbs[1][it]*dfbdx[it][1]) for it in range(nTwin)]905 dFdui[iref] = [2.*TwMask[it]*( fas[0][it]*dfadui[it][0]+fas[1][it]*dfadui[it][1]+fbs[0][it]*dfbdui[it][0]+fbs[1][it]*dfbdui[it][1]) for it in range(nTwin)]906 dFdua[iref] = [2.*TwMask[it]*( fas[0][it]*dfadua[it][0]+fas[1][it]*dfadua[it][1]+fbs[0][it]*dfbdua[it][0]+fbs[1][it]*dfbdua[it][1]) for it in range(nTwin)]903 dFdfr[iref] = [2.*TwMask[it]*(SA[it]*dfadfr[0][it]+SA[it]*dfadfr[1][it]+SB[it]*dfbdfr[0][it]+SB[it]*dfbdfr[1][it])*Mdata/len(Uniq[it]) for it in range(nTwin)] 904 dFdx[iref] = [2.*TwMask[it]*(SA[it]*dfadx[it][0]+SA[it]*dfadx[it][1]+SB[it]*dfbdx[it][0]+SB[it]*dfbdx[it][1]) for it in range(nTwin)] 905 dFdui[iref] = [2.*TwMask[it]*(SA[it]*dfadui[it][0]+SA[it]*dfadui[it][1]+SB[it]*dfbdui[it][0]+SB[it]*dfbdui[it][1]) for it in range(nTwin)] 906 dFdua[iref] = [2.*TwMask[it]*(SA[it]*dfadua[it][0]+SA[it]*dfadua[it][1]+SB[it]*dfbdua[it][0]+SB[it]*dfbdua[it][1]) for it in range(nTwin)] 907 907 dFdtw[iref] = np.sum(TwMask*fas,axis=0)**2+np.sum(TwMask*fbs,axis=0)**2 908 908 909 909 else: #these are good for no twin single crystals 910 dFdfr[iref] = 2.*(fas[0]*dfadfr[0]+fas[1]*dfadfr[1]+fbs[0]*dfbdfr[0]+fbs[1]*dfbdfr[1])*Mdata/len(Uniq)911 dFdx[iref] = 2.* (fas[0]*dfadx[0]+fas[1]*dfadx[1]+fbs[0]*dfbdx[0]+fbs[1]*dfbdx[1])912 dFdui[iref] = 2.* (fas[0]*dfadui[0]+fas[1]*dfadui[1]+fbs[0]*dfbdui[0]+fbs[1]*dfbdui[1])913 dFdua[iref] = 2.* (fas[0]*dfadua[0]+fas[1]*dfadua[1]+fbs[0]*dfbdua[0]+fbs[1]*dfbdua[1])914 dFdfl[iref] = - SA*dfadfl-SB*dfbdfl #array(nRef,)910 dFdfr[iref] = (2.*SA*(dfadfr[0]+dfadfr[1])+2.*SB*(dfbdfr[0]+dfbdfr[1]))*Mdata/len(Uniq) 911 dFdx[iref] = 2.*SA*(dfadx[0]+dfadx[1])+2.*SB*(dfbdx[0]+dfbdx[1]) 912 dFdui[iref] = 2.*SA*(dfadui[0]+dfadui[1])+2.*SB*(dfbdui[0]+dfbdui[1]) 913 dFdua[iref] = 2.*SA*(dfadua[0]+dfadua[1])+2.*SB*(dfbdua[0]+dfbdua[1]) 914 dFdfl[iref] = -(fas[0]+fbs[1])*dfadfl-(fbs[0]+fas[1])*dfbdfl #array(nRef,) 915 915 dFdbab[iref] = 2.*fas[0]*np.array([np.sum(dfadba*dBabdA),np.sum(-dfadba*parmDict[phfx+'BabA']*SQfactor*dBabdA)]).T+ \ 916 916 2.*fbs[0]*np.array([np.sum(dfbdba*dBabdA),np.sum(-dfbdba*parmDict[phfx+'BabA']*SQfactor*dBabdA)]).T … … 978 978 SSGMT = np.array([ops[0].T for ops in SSGData['SSGOps']]) 979 979 SSGT = np.array([ops[1] for ops in SSGData['SSGOps']]) 980 eps = SSGMT[:,3,3]980 # eps = SSGMT[:,3,3] 981 981 FFtables = calcControls['FFtables'] 982 982 BLtables = calcControls['BLtables'] … … 994 994 Tdata,Mdata,Fdata,Xdata,dXdata,IAdata,Uisodata,Uijdata = GetAtomFXU(pfx,calcControls,parmDict) 995 995 waveTypes,FSSdata,XSSdata,USSdata,MSSdata = GetAtomSSFXU(pfx,calcControls,parmDict) 996 Smult,TauT = GetSSTauM(SGData['SGOps'],SSGData['SSGOps'],pfx,calcControls,Xdata)996 # Smult,TauT = GetSSTauM(SGData['SGOps'],SSGData['SSGOps'],pfx,calcControls,Xdata) 997 997 # GSASIIpath.IPyBreak() 998 if SGInv:999 TauT = np.hstack((TauT,-TauT))1000 eps = np.concatenate((eps,-eps))998 # if SGInv: 999 # TauT = np.hstack((TauT,-TauT)) 1000 # eps = np.concatenate((eps,-eps)) 1001 1001 modQ = np.array([parmDict[pfx+'mV0'],parmDict[pfx+'mV1'],parmDict[pfx+'mV2']]) 1002 1002 FF = np.zeros(len(Tdata)) … … 1046 1046 UniqP = np.inner(HP.T,SGMT) 1047 1047 Phi = np.inner(H.T,SSGT) 1048 PhiP = np.inner(HP.T,SGT)1048 # PhiP = np.inner(HP.T,SGT) 1049 1049 if SGInv: #if centro - expand HKL sets 1050 1050 Uniq = np.hstack((Uniq,-Uniq)) 1051 1051 Phi = np.hstack((Phi,-Phi)) 1052 1052 UniqP = np.hstack((UniqP,-UniqP)) 1053 PhiP = np.hstack((PhiP,-PhiP))1053 # PhiP = np.hstack((PhiP,-PhiP)) 1054 1054 if 'T' in calcControls[hfx+'histType']: 1055 1055 if 'P' in calcControls[hfx+'histType']: … … 1062 1062 Tindx = np.array([refDict['FF']['El'].index(El) for El in Tdata]) 1063 1063 FF = np.repeat(refDict['FF']['FF'][iBeg:iFin].T[Tindx].T,Uniq.shape[1]*len(TwinLaw),axis=0) 1064 phase = twopi*(np.inner(Uniq[:,:,:3],(dXdata.T+Xdata.T)) +Phi[:,:,nxs])1064 phase = twopi*(np.inner(Uniq[:,:,:3],(dXdata.T+Xdata.T))-Phi[:,:,nxs]) 1065 1065 sinp = np.sin(phase) 1066 1066 cosp = np.cos(phase) … … 1087 1087 else: 1088 1088 if len(TwinLaw) > 1: 1089 refl.T[10] = np.sum(fas[:,:,0] **2,axis=0)+np.sum(fbs[:,:,0]**2,axis=0)#FcT from primary twin element1089 refl.T[10] = np.sum(fas[:,:,0],axis=0)**2+np.sum(fbs[:,:,0],axis=0)**2 #FcT from primary twin element 1090 1090 refl.T[8] = np.sum(TwinFr*np.sum(TwMask[np.newaxis,:,:]*fas,axis=0)**2,axis=-1)+ \ 1091 np.sum(TwinFr*np.sum(TwMask[np.newaxis,:,:]*fbs,axis=0)**2,axis=-1) 1091 np.sum(TwinFr*np.sum(TwMask[np.newaxis,:,:]*fbs,axis=0)**2,axis=-1) #Fc sum over twins 1092 1092 refl.T[11] = atan2d(fbs[0].T[0],fas[0].T[0]) #ignore f' & f" 1093 1093 else: 1094 refl.T[10] = np.sum(fas **2,axis=0)+np.sum(fbs**2,axis=0) #sum of squares1094 refl.T[10] = np.sum(fas,axis=0)**2+np.sum(fbs,axis=0)**2 #square of sums 1095 1095 refl.T[8] = np.copy(refl.T[10]) 1096 1096 refl.T[11] = atan2d(fbs[0],fas[0]) #ignore f' & f" … … 1124 1124 mSize = len(Mdata) #no. atoms 1125 1125 waveTypes,FSSdata,XSSdata,USSdata,MSSdata = GetAtomSSFXU(pfx,calcControls,parmDict) 1126 Smult,TauT = GetSSTauM(SGData['SGOps'],SSGData['SSGOps'],pfx,calcControls,Xdata)1127 if SGInv:1128 TauT = np.hstack((TauT,-TauT))1126 # Smult,TauT = GetSSTauM(SGData['SGOps'],SSGData['SSGOps'],pfx,calcControls,Xdata) 1127 # if SGInv: 1128 # TauT = np.hstack((TauT,-TauT)) 1129 1129 modQ = np.array([parmDict[pfx+'mV0'],parmDict[pfx+'mV1'],parmDict[pfx+'mV2']]) 1130 1130 FF = np.zeros(len(Tdata)) … … 1196 1196 Phi = np.inner(H,SSGT) 1197 1197 UniqP = np.inner(HP,SGMT) 1198 PhiP = np.inner(HP,SGT)1199 1198 if SGInv: #if centro - expand HKL sets 1200 1199 Uniq = np.vstack((Uniq,-Uniq)) 1201 1200 Phi = np.hstack((Phi,-Phi)) 1202 1201 UniqP = np.vstack((UniqP,-UniqP)) 1203 PhiP = np.hstack((PhiP,-PhiP))1204 # GSASIIpath.IPyBreak()1205 1202 phase = twopi*(np.inner(Uniq[:,:3],(dXdata+Xdata).T)+Phi[:,nxs]) 1206 1203 sinp = np.sin(phase) … … 1281 1278 2.*(fbs[0]*dfbdGu[0]+fbs[1]*dfbdGu[1]) 1282 1279 else: 1283 SA = fas[0] -fbs[1]1284 SB = fbs[0]+f as[1]1280 SA = fas[0]+fas[1] 1281 SB = fbs[0]+fbs[1] 1285 1282 if nTwin > 1: 1286 dFdfr[iref] = [2.*TwMask[it]*( fas[0][it]*dfadfr[0][it]+fas[1][it]*dfadfr[1][it]+fbs[0][it]*dfbdfr[0][it]+fbs[1][it]*dfbdfr[1][it])*Mdata/len(Uniq[it]) for it in range(nTwin)]1287 dFdx[iref] = [2.*TwMask[it]*( fas[0][it]*dfadx[it][0]+fas[1][it]*dfadx[it][1]+fbs[0][it]*dfbdx[it][0]+fbs[1][it]*dfbdx[it][1]) for it in range(nTwin)]1288 dFdui[iref] = [2.*TwMask[it]*( fas[0][it]*dfadui[it][0]+fas[1][it]*dfadui[it][1]+fbs[0][it]*dfbdui[it][0]+fbs[1][it]*dfbdui[it][1]) for it in range(nTwin)]1289 dFdua[iref] = [2.*TwMask[it]*( fas[0][it]*dfadua[it][0]+fas[1][it]*dfadua[it][1]+fbs[0][it]*dfbdua[it][0]+fbs[1][it]*dfbdua[it][1]) for it in range(nTwin)]1290 dFdGx[iref] = [2.*TwMask[it]*( fas[0][it]*dfadGx[0]+fas[1][it]*dfadGx[1]+fbs[0][it]*dfbdGx[0]+fbs[1][it]*dfbdGx[1]) for it in range(nTwin)]1291 dFdGu[iref] = [2.*TwMask[it]*( fas[0][it]*dfadGu[0]+fas[1][it]*dfadGu[1]+fbs[0][it]*dfbdGu[0]+fbs[1][it]*dfbdGu[1]) for it in range(nTwin)]1283 dFdfr[iref] = [2.*TwMask[it]*(SA[it]*dfadfr[0][it]+SA[it]*dfadfr[1][it]+SB[it]*dfbdfr[0][it]+SB[it]*dfbdfr[1][it])*Mdata/len(Uniq[it]) for it in range(nTwin)] 1284 dFdx[iref] = [2.*TwMask[it]*(SA[it]*dfadx[it][0]+SA[it]*dfadx[it][1]+SB[it]*dfbdx[it][0]+SB[it]*dfbdx[it][1]) for it in range(nTwin)] 1285 dFdui[iref] = [2.*TwMask[it]*(SA[it]*dfadui[it][0]+SA[it]*dfadui[it][1]+SB[it]*dfbdui[it][0]+SB[it]*dfbdui[it][1]) for it in range(nTwin)] 1286 dFdua[iref] = [2.*TwMask[it]*(SA[it]*dfadua[it][0]+SA[it]*dfadua[it][1]+SB[it]*dfbdua[it][0]+SB[it]*dfbdua[it][1]) for it in range(nTwin)] 1287 dFdGx[iref] = [2.*TwMask[it]*(SA[it]*dfadGx[0]+SA[it]*dfadGx[1]+SB[it]*dfbdGx[0]+SB[it]*dfbdGx[1]) for it in range(nTwin)] 1288 dFdGu[iref] = [2.*TwMask[it]*(SA[it]*dfadGu[0]+SA[it]*dfadGu[1]+SB[it]*dfbdGu[0]+SB[it]*dfbdGu[1]) for it in range(nTwin)] 1292 1289 dFdtw[iref] = np.sum(TwMask*fas,axis=0)**2+np.sum(TwMask*fbs,axis=0)**2 1293 1290 1294 1291 else: #these are good for no twin single crystals 1295 dFdfr[iref] = 2.*( fas[0]*dfadfr[0]+fas[1]*dfadfr[1]+fbs[0]*dfbdfr[0]+fbs[1]*dfbdfr[1])*Mdata/len(Uniq) #array(nRef,nAtom)1296 dFdx[iref] = 2.*( fas[0]*dfadx[0]+fbs[1]*dfbdx[1]+fbs[0]*dfbdx[0]+fas[1]*dfadx[1]) #array(nRef,nAtom,3)1297 dFdui[iref] = 2.*( fas[0]*dfadui[0]+fbs[1]*dfbdui[1]+fbs[0]*dfbdui[0]+fas[1]*dfadui[1]) #array(nRef,nAtom)1298 dFdua[iref] = 2.*( fas[0]*dfadua[0]+fbs[1]*dfbdua[1]+fbs[0]*dfbdua[0]+fas[1]*dfadua[1]) #array(nRef,nAtom,6)1299 dFdfl[iref] = - SA*dfadfl-SB*dfbdfl #array(nRef,)1300 dFdGx[iref] = 2.*( fas[0]*dfadGx[0]+fas[1]*dfadGx[1]+fbs[0]*dfbdGx[0]+fbs[1]*dfbdGx[1]) #array(nRef,natom,nwave,6)1301 dFdGu[iref] = 2.*( fas[0]*dfadGu[0]+fas[1]*dfadGu[1]+fbs[0]*dfbdGu[0]+fbs[1]*dfbdGu[1]) #array(nRef,natom,nwave,6)1292 dFdfr[iref] = 2.*(SA*dfadfr[0]+SA*dfadfr[1]+SB*dfbdfr[0]+SB*dfbdfr[1])*Mdata/len(Uniq) #array(nRef,nAtom) 1293 dFdx[iref] = 2.*(SA*dfadx[0]+SB*dfbdx[1]+SB*dfbdx[0]+SA*dfadx[1]) #array(nRef,nAtom,3) 1294 dFdui[iref] = 2.*(SA*dfadui[0]+SB*dfbdui[1]+SB*dfbdui[0]+SA*dfadui[1]) #array(nRef,nAtom) 1295 dFdua[iref] = 2.*(SA*dfadua[0]+SB*dfbdua[1]+SB*dfbdua[0]+SA*dfadua[1]) #array(nRef,nAtom,6) 1296 dFdfl[iref] = -(fas[0]-SB)*dfadfl-(fbs[0]+fas[1])*dfbdfl #array(nRef,) 1297 dFdGx[iref] = 2.*(SA*dfadGx[0]+SA*dfadGx[1]+SB*dfbdGx[0]+SB*dfbdGx[1]) #array(nRef,natom,nwave,6) 1298 dFdGu[iref] = 2.*(SA*dfadGu[0]+SA*dfadGu[1]+SB*dfbdGu[0]+SB*dfbdGu[1]) #array(nRef,natom,nwave,6) 1302 1299 dFdbab[iref] = 2.*fas[0]*np.array([np.sum(dfadba*dBabdA),np.sum(-dfadba*parmDict[phfx+'BabA']*SQfactor*dBabdA)]).T+ \ 1303 1300 2.*fbs[0]*np.array([np.sum(dfbdba*dBabdA),np.sum(-dfbdba*parmDict[phfx+'BabA']*SQfactor*dBabdA)]).T -
trunk/imports/G2phase.py
r2039 r2040 475 475 if S1[11:15].strip() == '1': 476 476 S2 = file2.readline() 477 Uiso = float(S2[:9])477 Uiso = R2pisq*float(S2[:9])/4. #Biso -> Uiso 478 478 Uij = [0,0,0,0,0,0] 479 479 IA = 'I' -
trunk/imports/G2sfact_CIF.py
r1956 r2040 320 320 self.RefDict['RefList'] = np.array(self.RefDict['RefList']) 321 321 self.errors = 'Error during reading of dataset parameters' 322 Type = 'SXC' 322 323 if blk.get('_diffrn_radiation_probe'): 323 324 if blk['_diffrn_radiation_probe'] == 'neutron': … … 326 327 if blk['_diffrn_radiation.probe'] == 'neutron': 327 328 Type = 'SNC' 328 else:329 Type = 'SXC'330 329 self.RefDict['Type'] = Type 331 330 self.RefDict['Super'] = im
Note: See TracChangeset
for help on using the changeset viewer.