Changeset 3210


Ignore:
Timestamp:
Dec 29, 2017 12:52:35 PM (4 years ago)
Author:
vondreele
Message:

some fixes for magnetic incommensurate cifs - dealing with 2 different dictionary defns for mcif!

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIphsGUI.py

    r3208 r3210  
    8686        first = text[0].split(':')[-1].strip()
    8787        cents = [0,]
    88         if len(Cents):
     88        if len(Cents) > 1:
    8989            cents = text[-1].split(';')
    9090        for line in text:
     
    9292        ncol = self.table[0].count(',')+2
    9393        for ic,cent in enumerate(cents):
    94             if cent:
     94            if ic:
    9595                cent = cent.strip(' (').strip(')+\n')
    9696                mainSizer.Add(wx.StaticText(self.panel,label=' for (%s)+'%(cent)),0,WACV)
     
    17901790            return magSizer
    17911791           
    1792         def PawleySizer():
    1793            
    1794             def OnPawleyRef(event):
    1795                 generalData['doPawley'] = pawlRef.GetValue()
    1796            
    1797             pawleySizer = wx.BoxSizer(wx.HORIZONTAL)
    1798             pawleySizer.Add(wx.StaticText(General,label=' Pawley controls: '),0,WACV)
    1799             pawlRef = wx.CheckBox(General,-1,label=' Do Pawley refinement?')
    1800             pawlRef.SetValue(generalData['doPawley'])
    1801             pawlRef.Bind(wx.EVT_CHECKBOX,OnPawleyRef)
    1802             pawleySizer.Add(pawlRef,0,WACV)
    1803             pawleySizer.Add(wx.StaticText(General,label=' Pawley dmin: '),0,WACV)
    1804             pawlVal = G2G.ValidatedTxtCtrl(General,generalData,'Pawley dmin',
    1805                 min=0.25,max=20.,nDig=(10,5))
    1806             pawleySizer.Add(pawlVal,0,WACV)
    1807             pawleySizer.Add(wx.StaticText(General,label=' Pawley neg. wt.: '),0,WACV)
    1808             pawlNegWt = G2G.ValidatedTxtCtrl(General,generalData,'Pawley neg wt',
    1809                 min=0.,max=1.,nDig=(10,4))
    1810             pawleySizer.Add(pawlNegWt,0,WACV)
    1811             return pawleySizer
    1812            
    18131792        def ModulatedSizer(name):
    18141793           
     
    18921871            ssSizer.Add(vecSizer)
    18931872            return ssSizer
     1873           
     1874        def PawleySizer():
     1875           
     1876            def OnPawleyRef(event):
     1877                generalData['doPawley'] = pawlRef.GetValue()
     1878           
     1879            pawleySizer = wx.BoxSizer(wx.HORIZONTAL)
     1880            pawleySizer.Add(wx.StaticText(General,label=' Pawley controls: '),0,WACV)
     1881            pawlRef = wx.CheckBox(General,-1,label=' Do Pawley refinement?')
     1882            pawlRef.SetValue(generalData['doPawley'])
     1883            pawlRef.Bind(wx.EVT_CHECKBOX,OnPawleyRef)
     1884            pawleySizer.Add(pawlRef,0,WACV)
     1885            pawleySizer.Add(wx.StaticText(General,label=' Pawley dmin: '),0,WACV)
     1886            pawlVal = G2G.ValidatedTxtCtrl(General,generalData,'Pawley dmin',
     1887                min=0.25,max=20.,nDig=(10,5))
     1888            pawleySizer.Add(pawlVal,0,WACV)
     1889            pawleySizer.Add(wx.StaticText(General,label=' Pawley neg. wt.: '),0,WACV)
     1890            pawlNegWt = G2G.ValidatedTxtCtrl(General,generalData,'Pawley neg wt',
     1891                min=0.,max=1.,nDig=(10,4))
     1892            pawleySizer.Add(pawlNegWt,0,WACV)
     1893            return pawleySizer
    18941894           
    18951895        def MapSizer():
  • trunk/GSASIIplot.py

    r3208 r3210  
    61396139                table = G2frame.atomTable.GetData()
    61406140                for i,atom in enumerate(drawAtoms):
    6141                     table[i][2:5] = atom[2:5]
     6141                    if generalData['Type'] == 'magnetic':
     6142                        table[i][2:8] = atom[2:8]
     6143                    else:
     6144                        table[i][2:5] = atom[2:5]
    61426145                G2frame.atomTable.SetData(table)
    61436146                panel = G2frame.phaseDisplay.GetPage(page).GetChildren()
  • trunk/GSASIIspc.py

    r3208 r3210  
    404404        SGText.append(' The equivalent positions are:\n')
    405405    else:   
    406         SGText.append(' The equivalent positions are:')
     406        SGText.append(' The equivalent positions are:\n')
    407407        SGText.append(' ('+Latt2text(SGData['SGCen'])+')+\n')
    408408    SGTable = []
     
    13851385            return True
    13861386        if SGData.get('SGGray',False):
    1387             if sym[-1] == 's':
     1387            if sym and sym[-1] == 's':
    13881388                sym = sym[:-1]
    13891389                if sym == '':
    13901390                    return True
    13911391            else:
    1392                 return False
     1392                sym += 's'
     1393                return True
    13931394# monoclinic - all done
    13941395        if str(SSGKl) == '[-1]' and sym == 's':
     
    14901491    if len(gensym) and Ngen != len(SSGKl):
    14911492        return 'Wrong number of items in generator symbol '+''.join(gensym),None
    1492     if not checkGen(gensym):
    1493         return 'Generator '+''.join(gensym)+' not consistent with space group '+SGData['SpGrp'],None
     1493#    if not checkGen(gensym):
     1494#        return 'Generator '+''.join(gensym)+' not consistent with space group '+SGData['SpGrp'],None
    14941495    gensym = specialGen(gensym[:Ngen],modsym)
    14951496    genQ = [Fracs[mod] for mod in gensym[:Ngen]]
  • trunk/imports/G2phase_CIF.py

    r3208 r3210  
    371371                if blk.get('_atom_site_moment_Fourier_atom_site_label'):
    372372                    MagFloop = blk.GetLoop('_atom_site_moment_Fourier_atom_site_label')
     373                    MagFdict = dict(MagFloop.items())
     374                    Mnames =  ['_atom_site_moment_fourier_atom_site_label',
     375                               '_atom_site_moment_fourier_axis','_atom_site_moment_fourier_wave_vector_seq_id',
     376                               '_atom_site_moment_fourier_param_sin','_atom_site_moment_fourier_param_cos']
     377                elif blk.get('_atom_site_moment_Fourier.atom_site_label'):
     378                    MagFloop = blk.GetLoop('_atom_site_moment_Fourier.atom_site_label')
    373379                    MagFdict = dict(MagFloop.items())                           
     380                    Mnames =  ['_atom_site_moment_fourier.atom_site_label',
     381                               '_atom_site_moment_fourier.axis','_atom_site_moment_fourier.wave_vector_seq_id',
     382                               '_atom_site_moment_fourier_param.sin','_atom_site_moment_fourier_param.cos']
    374383            self.Phase['Atoms'] = []
    375384            if magnetic:
     
    477486                    if MagFdict:
    478487                        nim = -1
    479                         for i,item in enumerate(MagFdict['_atom_site_moment_fourier_atom_site_label']):
     488                        for i,item in enumerate(MagFdict[Mnames[0]]):
    480489                            if item == atomlist[0]:
    481490                                waveType = 'Fourier'                               
    482                                 ix = ['x','y','z'].index(MagFdict['_atom_site_moment_fourier_axis'][i])
    483                                 im = int(MagFdict['_atom_site_moment_fourier_wave_vector_seq_id'][i])
     491                                ix = ['x','y','z'].index(MagFdict[Mnames[1]][i])
     492                                im = int(MagFdict[Mnames[2]][i])
    484493                                if im != nim:
    485494                                    nim = im
    486                                 val = MagFdict['_atom_site_moment_fourier_param_sin'][i]
     495                                val = MagFdict[Mnames[3]][i]
    487496                                Smag[im-1][ix] = cif.get_number_with_esd(val)[0]
    488                                 val = MagFdict['_atom_site_moment_fourier_param_cos'][i]
     497                                val = MagFdict[Mnames[4]][i]
    489498                                Smag[im-1][ix+3] = cif.get_number_with_esd(val)[0]
    490499                        if nim >= 0:
Note: See TracChangeset for help on using the changeset viewer.