Changeset 2474


Ignore:
Timestamp:
Sep 20, 2016 3:35:05 PM (5 years ago)
Author:
vondreele
Message:

fix spin inversion plot & some refine list issues

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIphsGUI.py

    r2473 r2474  
    248248        if generalData['Type'] == 'magnetic' and not 'Lande g' in generalData:
    249249            generalData['MagDmin'] = 1.0
    250             generalData['Lande g'] = []
     250            generalData['Lande g'] = len(atomData)*[None,]
    251251        generalData['Mydir'] = G2frame.dirname
    252252        badList = {}
    253         for atom in atomData:
     253        for iat,atom in enumerate(atomData):
    254254            atom[ct] = atom[ct].lower().capitalize()              #force to standard form
    255255            if generalData['AtomTypes'].count(atom[ct]):
     
    285285                if generalData['Type'] == 'magnetic':
    286286                    generalData['MagDmin'] = generalData.get('MagDmin',1.0)
    287                     if atom[ct] in atmdata.MagFF:
     287                    try:
     288                        if atom[ct] in atmdata.MagFF and not generalData['Lande g'][iat]:
     289                            generalData['Lande g'][iat] = 2.0
     290                    except IndexError:
    288291                        generalData['Lande g'].append(2.0)
    289                     else:
    290                         generalData['Lande g'].append(None)
    291292        if badList:
    292293            msg = 'Warning: element symbol(s) not found:'
     
    16891690            if 'Mx' in colLabels:
    16901691                colM = colLabels.index('Mx')
     1692                atTypes = generalData['AtomTypes']
     1693                Lande = generalData['Lande g']
     1694                AtInfo = dict(zip(atTypes,Lande))
    16911695            attr = wx.grid.GridCellAttr()
    16921696            attr.IncRef()               #fix from Jim Hester
     
    17381742                        Atoms.SetCellStyle(row,ci,VERY_LIGHT_GREY,True)
    17391743                        Atoms.SetCellTextColour(row,ci,VERY_LIGHT_GREY)
    1740                         if CSI and CSI[1][i]:
     1744                        if CSI and CSI[1][i] and AtInfo and AtInfo[atomData[row][colType]]:
    17411745                            Atoms.SetCellStyle(row,ci,WHITE,False)
    17421746                            Atoms.SetCellTextColour(row,ci,BLACK)
  • trunk/GSASIIplot.py

    r2472 r2474  
    54735473       
    54745474    def RenderMoment(x,y,z,Moment,color,slice=20):
    5475         Dx = Moment/2.
     5475        Dx = 0.5*Moment
    54765476        Z = np.sqrt(np.sum(Dx**2))
    54775477        if Z:
     
    57685768                if SpnFlp[OpNum] < 0:
    57695769                    color = Rd/255.
     5770                    Moment *= -1.
    57705771                RenderMoment(x,y,z,Moment,color)                   
    57715772
  • trunk/GSASIIstrIO.py

    r2473 r2474  
    938938        cx,ct,cs,cia = General['AtomPtrs']
    939939        cmx = cx+4
     940        AtInfo = dict(zip(General['AtomTypes'],General['Lande g']))
    940941        print >>pFile,'\n Magnetic moments:'
    941942        line = '   name    type  refine?  Mx        My        Mz    '
     
    943944        print >>pFile,135*'-'
    944945        for i,at in enumerate(Atoms):
    945             line = '%7s'%(at[ct-1])+'%7s'%(at[ct])+'%7s'%(at[ct+1])+'%10.5f'%(at[cmx])+'%10.5f'%(at[cmx+1])+ \
    946                 '%10.5f'%(at[cmx+2])
    947             print >>pFile,line
     946            if AtInfo[at[ct]]:
     947                line = '%7s'%(at[ct-1])+'%7s'%(at[ct])+'%7s'%(at[ct+1])+'%10.5f'%(at[cmx])+'%10.5f'%(at[cmx+1])+ \
     948                    '%10.5f'%(at[cmx+2])
     949                print >>pFile,line
    948950       
    949951               
     
    16281630        cx,ct,cs,cia = General['AtomPtrs']
    16291631        cmx = cx+4
     1632        AtInfo = dict(zip(General['AtomTypes'],General['Lande g']))
    16301633        print >>pFile,line
    16311634        print >>pFile,135*'-'
     
    16331636        noFXsig = {cmx:[10*' ','%10s'],cmx+1:[10*' ','%10s'],cmx+2:[10*' ','%10s']}
    16341637        for i,at in enumerate(Atoms):
    1635             name = fmt[0]%(at[ct-1])+fmt[1]%(at[ct])+':'
    1636             valstr = ' values:'
    1637             sigstr = ' sig   :'
    1638             for ind in range(cmx,cmx+3):
    1639                 sigind = str(i)+':'+str(ind)
    1640                 valstr += fmt[ind]%(at[ind])                   
    1641                 if sigind in atomsSig:
    1642                     sigstr += fmt[ind]%(atomsSig[sigind])
    1643                 else:
    1644                     sigstr += noFXsig[ind][1]%(noFXsig[ind][0])
    1645             print >>pFile,name
    1646             print >>pFile,valstr
    1647             print >>pFile,sigstr
     1638            if AtInfo[at[ct]]:
     1639                name = fmt[0]%(at[ct-1])+fmt[1]%(at[ct])+':'
     1640                valstr = ' values:'
     1641                sigstr = ' sig   :'
     1642                for ind in range(cmx,cmx+3):
     1643                    sigind = str(i)+':'+str(ind)
     1644                    valstr += fmt[ind]%(at[ind])                   
     1645                    if sigind in atomsSig:
     1646                        sigstr += fmt[ind]%(atomsSig[sigind])
     1647                    else:
     1648                        sigstr += noFXsig[ind][1]%(noFXsig[ind][0])
     1649                print >>pFile,name
     1650                print >>pFile,valstr
     1651                print >>pFile,sigstr
    16481652           
    16491653    def PrintWavesAndSig(General,Atoms,wavesSig):
Note: See TracChangeset for help on using the changeset viewer.