Changeset 3591
- Timestamp:
- Sep 11, 2018 4:13:58 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIlattice.py
r3590 r3591 357 357 cba = np.rot90(np.eye(3)) 358 358 cba[0,2] *= -1 #makes -cba 359 Mats = {'abc':abc,'cab':np.roll(abc, 2,1),'bca':np.roll(abc,1,1),360 'acb':np.roll(cba,1,1),'bac':np.roll(cba,2,1),'cba':cba} 361 BNS = {'A':{'abc':'A','cab':'C','bca':'B','acb':' B','bac':'C','cba':'A'},359 Mats = {'abc':abc,'cab':np.roll(abc,1,1),'bca':np.roll(abc,2,1), 360 'acb':np.roll(cba,1,1),'bac':np.roll(cba,2,1),'cba':cba} #ok 361 BNS = {'A':{'abc':'A','cab':'C','bca':'B','acb':'A','bac':'B','cba':'C'}, 362 362 'B':{'abc':'B','cab':'A','bca':'C','acb':'C','bac':'A','cba':'B'}, 363 'C':{'abc':'C','cab':'B','bca':'A','acb':' A','bac':'B','cba':'C'},364 'a':{'abc':'a','cab':'c','bca':'b','acb':' b','bac':'c','cba':'a'},363 'C':{'abc':'C','cab':'B','bca':'A','acb':'B','bac':'C','cba':'A'}, 364 'a':{'abc':'a','cab':'c','bca':'b','acb':'a','bac':'b','cba':'c'}, #Ok 365 365 'b':{'abc':'b','cab':'a','bca':'c','acb':'c','bac':'a','cba':'b'}, 366 'c':{'abc':'c','cab':'b','bca':'a','acb':' a','bac':'b','cba':'c'},366 'c':{'abc':'c','cab':'b','bca':'a','acb':'b','bac':'c','cba':'a'}, 367 367 'S':{'abc':'S','cab':'S','bca':'S','acb':'S','bac':'S','cba':'S'}, 368 368 } 369 Fives = {'ababc':'abc','bcbca':'cba','acacb':'acb'}370 369 Trans = Phase['Trans'] 371 370 Uvec = Phase['Uvec'] … … 377 376 spn = SGData['SGSpin'] 378 377 if 'ortho' in SGData['SGSys']: 379 # transText = G2spc.Trans2Text(nl.inv(Trans.T)) 380 transText = G2spc.Trans2Text(Trans.T) 381 lattSym = '' 382 for fld in transText.split(','): 383 if 'a' in fld: lattSym += 'a' 384 if 'b' in fld: lattSym += 'b' 385 if 'c' in fld: lattSym += 'c' 386 if len(lattSym) == 5: 387 print(transText,lattSym) 388 lattSym = Fives[lattSym] 389 # return None 378 lattSym = G2spc.getlattSym(Trans) 390 379 SpGrp = SGData['SpGrp'] 391 NUvec = np.inner(np.abs(Mats[lattSym]),Uvec) 392 NTrans = np.inner(Mats[lattSym],Trans.T) 393 spn[1:4] = np.inner(Mats[lattSym],spn[1:4]) 394 if lattSym != 'abc' and SpGrp in G2spc.altSettingOrtho: 395 NSG = G2spc.altSettingOrtho[SpGrp].get(lattSym,SpGrp).replace("'",'').split(' ') 380 NUvec = np.inner(Uvec,Mats[lattSym]) #ok 381 NTrans = np.inner(Mats[lattSym],Trans.T) #ok 382 spn[1:4] = np.inner(np.abs(Mats[lattSym]),spn[1:4]) #ok 383 SGsym = G2spc.getlattSym(Mats[lattSym]) 384 385 if lattSym != 'abc': 386 NSG = G2spc.altSettingOrtho[SpGrp].get(SGsym,SpGrp).replace("'",'').split(' ') 396 387 Bns = '' 397 388 if bns: -
trunk/GSASIIphsGUI.py
r3590 r3591 572 572 self.panel = wx.Panel(self) 573 573 Indx = {} 574 Mstr = [' Mx ',' My ',' Mz']574 Mstr = [' Mx',' My',' Mz'] 575 575 mainSizer = wx.BoxSizer(wx.VERTICAL) 576 576 577 mainSizer.Add(wx.StaticText(self.panel,label=' Name, x, y, z, allowed moments :'),0,WACV)577 mainSizer.Add(wx.StaticText(self.panel,label=' Name, x, y, z, allowed moments, mag. site sym:'),0,WACV) 578 578 atmSizer = wx.FlexGridSizer(0,2,5,5) 579 579 for iuse,[use,atom,mxyz] in enumerate(zip(self.Use,self.Atoms,self.atMxyz)): 580 mstr = [' __ ',' __ ',' __']581 for i,mx in enumerate(mxyz ):580 mstr = [' ---',' ---',' ---'] 581 for i,mx in enumerate(mxyz[1]): 582 582 if mx: 583 583 mstr[i] = Mstr[i] … … 587 587 useChk.Bind(wx.EVT_CHECKBOX, OnUseChk) 588 588 atmSizer.Add(useChk,0,WACV) 589 text = ' %5s %10.5f %10.5f %10.5f %4s %4s %4s '%(atom[0],atom[3],atom[4],atom[5],mstr[0],mstr[1],mstr[2])589 text = ' %5s %10.5f %10.5f %10.5f (%s,%s,%s) %s '%(atom[0],atom[3],atom[4],atom[5],mstr[0],mstr[1],mstr[2],mxyz[0]) 590 590 atmSizer.Add(wx.StaticText(self.panel,label=text),0,WACV) 591 591 mainSizer.Add(atmSizer) … … 2415 2415 SytSym,Mul,Nop,dupDir = G2spc.SytSym(atom[3:6],SGData) 2416 2416 CSI = G2spc.GetCSpqinel(SGData['SpnFlp'],dupDir) 2417 atMxyz.append(CSI[0]) 2417 MagSytSym = G2spc.MagSytSym(SytSym,dupDir,SGData) 2418 atMxyz.append([MagSytSym,CSI[0]]) 2418 2419 dlg = UseMagAtomDialog(G2frame,SGData['MagSpGrp'],Atoms,atCodes,atMxyz,ifDelete=False) 2419 2420 try: 2420 if dlg.ShowModal() == wx.ID_YES: 2421 opt = dlg.ShowModal() 2422 if opt == wx.ID_YES: 2421 2423 newPhase['Atoms'],atCodes = dlg.GetSelection() 2422 2424 generalData['Lande g'] = len(generalData['AtomTypes'])*[2.,] 2423 2425 break 2426 else: 2427 return 2424 2428 finally: 2425 2429 dlg.Destroy() … … 2489 2493 Atms.append(atom) 2490 2494 AtCods.append(atCodes[ia]) 2491 atMxyz.append(CSI[0]) 2495 MagSytSym = G2spc.MagSytSym(SytSym,dupDir,SGData) 2496 atMxyz.append([MagSytSym,CSI[0]]) 2492 2497 dlg = UseMagAtomDialog(G2frame,magchoice['Name'],Atms,AtCods,atMxyz,ifDelete=True) 2493 2498 try: -
trunk/GSASIIpwdGUI.py
r3590 r3591 3488 3488 xyzs = G2spc.GenAtom(matm[3:6],SGData,False,Move=True) 3489 3489 for x in xyzs: 3490 # xyz = np.inner((x[0]-Uvec),invTrans.T)3491 3490 xyz = G2lat.TransformXYZ(x[0]-Uvec,invTrans.T,np.zeros(3))%1. 3492 3491 SytSym,Mul,Nop,dupDir = G2spc.SytSym(xyz,phase['SGData']) -
trunk/GSASIIspc.py
r3589 r3591 1116 1116 Text = Text.replace('1.0','').replace('.0','').replace('0.5','1/2') 1117 1117 return Text[:-1] 1118 1119 def getlattSym(Trans): 1120 Fives = {'ababc':'abc','bcbca':'cba','acacb':'acb'} 1121 transText = Trans2Text(Trans) 1122 lattSym = '' 1123 for fld in transText.split(','): 1124 if 'a' in fld: lattSym += 'a' 1125 if 'b' in fld: lattSym += 'b' 1126 if 'c' in fld: lattSym += 'c' 1127 if len(lattSym) == 5: 1128 lattSym = Fives[lattSym] 1129 return lattSym 1130 1118 1131 1119 1132 def Text2MT(mcifOpr,CIF=True):
Note: See TracChangeset
for help on using the changeset viewer.