Changeset 4135
- Timestamp:
- Sep 4, 2019 3:42:25 PM (4 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIphsGUI.py
r4052 r4135 1712 1712 generalData['Cell'][0] = cellRef.GetValue() 1713 1713 1714 def OnCellChange( event):1715 event.Skip()1714 def OnCellChange(invalid,value,tc): 1715 # event.Skip() 1716 1716 SGData = generalData['SGData'] 1717 1717 laue = SGData['SGLaue'] … … 1719 1719 laue += SGData['SGUniq'] 1720 1720 cell = generalData['Cell'] 1721 Obj = event.GetEventObject() 1721 Obj = tc 1722 # Obj = event.GetEventObject() 1722 1723 ObjId = cellList.index(Obj.GetId()) 1723 1724 try: 1724 value = max(1.0,float( Obj.GetValue()))1725 value = max(1.0,float(tc.GetValue())) 1725 1726 except ValueError: 1726 1727 if ObjId < 3: #bad cell edge - reset … … 1731 1732 cell[1] = cell[2] = cell[3] = value 1732 1733 cell[4] = cell[5] = cell[6] = 90.0 1733 Obj.SetValue( "%.5f"%(cell[1]))1734 Obj.SetValue(cell[1]) 1734 1735 elif laue in ['3R','3mR']: 1735 1736 if ObjId == 0: 1736 1737 cell[1] = cell[2] = cell[3] = value 1737 Obj.SetValue( "%.5f"%(cell[1]))1738 Obj.SetValue(cell[1]) 1738 1739 else: 1739 1740 cell[4] = cell[5] = cell[6] = value 1740 Obj.SetValue( "%.5f"%(cell[4]))1741 Obj.SetValue(cell[4]) 1741 1742 elif laue in ['3','3m1','31m','6/m','6/mmm','4/m','4/mmm']: 1742 1743 cell[4] = cell[5] = 90. … … 1746 1747 if ObjId == 0: 1747 1748 cell[1] = cell[2] = value 1748 Obj.SetValue( "%.5f"%(cell[1]))1749 Obj.SetValue(cell[1]) 1749 1750 else: 1750 1751 cell[3] = value 1751 Obj.SetValue( "%.5f"%(cell[3]))1752 Obj.SetValue(cell[3]) 1752 1753 elif laue in ['mmm']: 1753 1754 cell[ObjId+1] = value 1754 1755 cell[4] = cell[5] = cell[6] = 90. 1755 Obj.SetValue( "%.5f"%(cell[ObjId+1]))1756 Obj.SetValue(cell[ObjId+1]) 1756 1757 elif laue in ['2/m'+'a']: 1757 1758 cell[5] = cell[6] = 90. 1758 1759 if ObjId != 3: 1759 1760 cell[ObjId+1] = value 1760 Obj.SetValue( "%.5f"%(cell[ObjId+1]))1761 Obj.SetValue(cell[ObjId+1]) 1761 1762 else: 1762 1763 cell[4] = value 1763 Obj.SetValue( "%.3f"%(cell[4]))1764 Obj.SetValue(cell[4]) 1764 1765 elif laue in ['2/m'+'b']: 1765 1766 cell[4] = cell[6] = 90. 1766 1767 if ObjId != 3: 1767 1768 cell[ObjId+1] = value 1768 Obj.SetValue( "%.5f"%(cell[ObjId+1]))1769 Obj.SetValue(cell[ObjId+1]) 1769 1770 else: 1770 1771 cell[5] = value 1771 Obj.SetValue( "%.3f"%(cell[5]))1772 Obj.SetValue(cell[5]) 1772 1773 elif laue in ['2/m'+'c']: 1773 1774 cell[4] = cell[5] = 90. 1774 1775 if ObjId != 3: 1775 1776 cell[ObjId+1] = value 1776 Obj.SetValue( "%.5f"%(cell[ObjId+1]))1777 Obj.SetValue(cell[ObjId+1]) 1777 1778 else: 1778 1779 cell[6] = value 1779 Obj.SetValue( "%.3f"%(cell[6]))1780 Obj.SetValue(cell[6]) 1780 1781 else: 1781 1782 cell[ObjId+1] = value 1782 if ObjId < 3: 1783 Obj.SetValue("%.5f"%(cell[1+ObjId])) 1784 else: 1785 Obj.SetValue("%.3f"%(cell[1+ObjId])) 1783 Obj.SetValue(cell[1+ObjId]) 1786 1784 cell[7] = G2lat.calc_V(G2lat.cell2A(cell[1:7])) 1787 1785 volVal.SetValue("%.3f"%(cell[7])) … … 1808 1806 for txt,fmt,ifEdit,Id in useGUI[2]: 1809 1807 cellSizer.Add(wx.StaticText(General,label=txt),0,WACV) 1808 Fmt = (10,5) 1809 if '.3' in fmt: 1810 Fmt = (10,3) 1810 1811 if ifEdit: #a,b,c,etc. 1811 cellVal = wx.TextCtrl(General,value=(fmt%(cell[Id+1])), 1812 style=wx.TE_PROCESS_ENTER) 1813 cellVal.Bind(wx.EVT_TEXT_ENTER,OnCellChange) 1814 cellVal.Bind(wx.EVT_KILL_FOCUS,OnCellChange) 1812 cellVal = G2G.ValidatedTxtCtrl(General,generalData['Cell'],Id+1, 1813 min=0.1,max=500.,nDig=Fmt,OnLeave=OnCellChange) 1815 1814 cellSizer.Add(cellVal,0,WACV) 1816 1815 cellList.append(cellVal.GetId()) … … 2110 2109 modSizer.Add(wx.StaticText(General,label=' Max index: '),0,WACV) 2111 2110 indChoice = ['1','2','3','4','5','6','7'] 2111 if 'Magnetic' in name.capitalize(): #limit to one for now 2112 indChoice = ['1',] 2112 2113 Max = wx.ComboBox(General,-1,value='%d'%(generalData['SuperVec'][2]),choices=indChoice, 2113 2114 style=wx.CB_READONLY|wx.CB_DROPDOWN) … … 5277 5278 waveHead = wx.BoxSizer(wx.HORIZONTAL) 5278 5279 waveHead.Add(wx.StaticText(waveData,label=typeName+' modulation parameters: '),0,WACV) 5279 waveAdd = wx.CheckBox(waveData,label='Add wave? WaveType: ') 5280 waveAdd.Bind(wx.EVT_CHECKBOX, OnAddWave) 5281 Indx[waveAdd.GetId()] = Stype 5282 waveHead.Add(waveAdd,0,WACV) 5283 waveType = wx.ComboBox(waveData,value=waveTyp,choices=waveTypes[Stype], 5284 style=wx.CB_READONLY|wx.CB_DROPDOWN) 5285 Indx[waveType.GetId()] = Stype 5286 waveType.Bind(wx.EVT_COMBOBOX,OnWaveType) 5287 waveHead.Add(waveType,0,WACV) 5280 if Stype == 'Smag' and len(waveBlk): #only allow one magnetic wave - keeps it simple for now 5281 pass 5282 else: 5283 waveAdd = wx.CheckBox(waveData,label='Add wave? WaveType: ') 5284 waveAdd.Bind(wx.EVT_CHECKBOX, OnAddWave) 5285 Indx[waveAdd.GetId()] = Stype 5286 waveHead.Add(waveAdd,0,WACV) 5287 waveType = wx.ComboBox(waveData,value=waveTyp,choices=waveTypes[Stype], 5288 style=wx.CB_READONLY|wx.CB_DROPDOWN) 5289 Indx[waveType.GetId()] = Stype 5290 waveType.Bind(wx.EVT_COMBOBOX,OnWaveType) 5291 waveHead.Add(waveType,0,WACV) 5288 5292 waveSizer.Add(waveHead) 5289 5293 if len(waveBlk): -
trunk/GSASIIpwdGUI.py
r4113 r4135 4416 4416 if ssopt.get('Use',False): #super lattice display 4417 4417 indChoice = ['1','2','3','4',] 4418 if 'MagSpGrp' in SGData: #limit to one for magnetic SS for now 4419 indChoice = ['1',] 4418 4420 SpSg = controls[13] 4419 4421 SGData = G2spc.SpcGroup(SpSg)[1] -
trunk/GSASIIstrMath.py
r4130 r4135 1488 1488 SGMT = np.array([ops[0].T for ops in SGData['SGOps']]) 1489 1489 Ncen = len(SGData['SGCen']) 1490 Nops = len(SGMT)* Ncen*(1+SGData['SGInv'])1490 Nops = len(SGMT)*(1+SGData['SGInv']) 1491 1491 SSGMT = np.array([ops[0].T for ops in SSGData['SSGOps']]) 1492 1492 SSGT = np.array([ops[1] for ops in SSGData['SSGOps']]) … … 1594 1594 sinm = np.sin(phasem) 1595 1595 MF = refDict['FF']['MF'][iBeg:iFin].T[Tindx].T #Nref,Natm 1596 TMcorr = 0.539*(np.reshape(Tiso,Tuij.shape)*Tuij)[:,0,:]*Mdata* MF/(2.*Nops) #Nref,Natm1596 TMcorr = 0.539*(np.reshape(Tiso,Tuij.shape)*Tuij)[:,0,:]*Mdata*Fdata*MF/(2.*Nops) #Nref,Natm 1597 1597 # 1598 1598 HM = np.inner(Bmat,HP.T) #put into cartesian space … … 1606 1606 #for modulated moments --> m != 0 reflections 1607 1607 1608 fams = .5*TMcorr[:,nxs,nxs,:,nxs]*np.array([np.where(H[3,i]!=0,(MmodA*cosm[i,nxs,:,:,nxs]- \1608 fams = TMcorr[:,nxs,nxs,:,nxs]*np.array([np.where(H[3,i]!=0,(MmodA*cosm[i,nxs,:,:,nxs]- \ 1609 1609 np.sign(H[3,i])*MmodB*sinm[i,nxs,:,:,nxs]),0.) for i in range(mRef)]) #Nref,Ntau,Nops,Natm,Mxyz 1610 1610 1611 fbms = .5*TMcorr[:,nxs,nxs,:,nxs]*np.array([np.where(H[3,i]!=0,(MmodA*sinm[i,nxs,:,:,nxs]+ \1611 fbms = TMcorr[:,nxs,nxs,:,nxs]*np.array([np.where(H[3,i]!=0,(MmodA*sinm[i,nxs,:,:,nxs]+ \ 1612 1612 np.sign(H[3,i])*MmodB*cosm[i,nxs,:,:,nxs]),0.) for i in range(mRef)]) #Nref,Ntau,Nops,Natm,Mxyz 1613 1613
Note: See TracChangeset
for help on using the changeset viewer.