Changeset 1615 for trunk/GSASIIstrIO.py


Ignore:
Timestamp:
Dec 21, 2014 8:12:54 AM (7 years ago)
Author:
vondreele
Message:

more work on incommensurate wave input to LS
fix FillAtomLookup? problem in G2restrGUI

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIstrIO.py

    r1614 r1615  
    828828        line = '   name    type  refine?   x         y         z    '+ \
    829829            '  frac site sym  mult I/A   Uiso     U11     U22     U33     U12     U13     U23'
    830         if General['Type'] == 'magnetic':
    831             line += '   Mx     My     Mz'
    832         elif General['Type'] == 'macromolecular':
     830        if General['Type'] == 'macromolecular':
    833831            line = ' res no residue chain'+line
    834832        print >>pFile,line
    835         if General['Type'] == 'nuclear':
     833        if General['Type'] in ['nuclear','modulated','magnetic']:
    836834            print >>pFile,135*'-'
    837835            for i,at in enumerate(Atoms):
     
    857855                        line += '%8.4f'%(at[cia+2+j])
    858856                print >>pFile,line
     857               
     858    def PrintWaves(General,Atoms):
     859        cx,ct,cs,cia = General['AtomPtrs']
     860        print >>pFile,'\n Modulation waves'
     861        names = {'Sfrac':['Fsin','Fcos'],'Spos':['Xsin','Ysin','Zsin','Xcos','Ycos','Zcos'],
     862            'Sadp':['U11sin','U22sin','U33sin','U12sin','U13sin','U23sin','U11cos','U22cos',
     863            'U33cos','U12cos','U13cos','U23cos'],'Smag':['MXsin','MYsin','MZsin','MXcos','MYcos','MZcos']}
     864        print >>pFile,135*'-'
     865        for i,at in enumerate(Atoms):
     866            AtomSS = at[-1]['SS1']
     867            for Stype in ['Sfrac','Spos','Sadp','Smag']:
     868                Waves = AtomSS[Stype]
     869                if len(Waves):
     870                    print >>pFile,' atom: %s, site sym: %s, type: %s wave type: %s:'    \
     871                        %(at[ct-1],at[cs],Stype,AtomSS['waveType'])
     872                    line = ''
     873                    for item in names[Stype]:
     874                        line += '%8s '%(item)
     875                    print >>pFile,line
     876                for wave in Waves:                   
     877                    line = ''
     878                    for item in wave[0]:
     879                        line += '%8.4f '%(item)
     880                    line += ' Refine? '+str(wave[1])
     881                    print >>pFile,line
    859882       
    860883    def PrintTexture(textureData):
     
    11011124                                            eqv[1] /= coef
    11021125                                        G2mv.StoreEquivalence(name,equiv[1:])
    1103                                            
    11041126            textureData = General['SH Texture']
    11051127            if textureData['Order']:
     
    11391161                PrintRBObjects(resRBData,vecRBData)
    11401162                PrintAtoms(General,Atoms)
     1163                if General['Type'] in ['modulated','magnetic']:
     1164                    PrintWaves(General,Atoms)
     1165                raise Exception
    11411166                print >>pFile,'\n Unit cell: a = %.5f'%(cell[1]),' b = %.5f'%(cell[2]),' c = %.5f'%(cell[3]), \
    11421167                    ' alpha = %.3f'%(cell[4]),' beta = %.3f'%(cell[5]),' gamma = %.3f'%(cell[6]), \
Note: See TracChangeset for help on using the changeset viewer.