Changeset 1884 for trunk/GSASIIphsGUI.py


Ignore:
Timestamp:
Jun 9, 2015 4:02:06 PM (7 years ago)
Author:
vondreele
Message:

remove some unused imports
add merohedral/pseudomerohedral Twin Laws to G2ddataGUI and G2strIO (not in G2strmath yet).
allow ReImport? atoms to fill otherwise empty Atom List
clarify HKL importers as Shelx HKL 4 & HKL 5 files.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIphsGUI.py

    r1875 r1884  
    2828import wx.lib.scrolledpanel as wxscroll
    2929import matplotlib as mpl
    30 import math
    3130import copy
    3231import time
     
    20792078        atomData = data['Atoms']
    20802079        atomNames = []
     2080        All = False
    20812081        for atom in atomData:
    2082             atomNames.append(atom[:ct+1])
     2082            atomNames.append(''.join(atom[:ct+1]).capitalize())  #eliminate spurious differences
    20832083        for atom in rd.Phase['Atoms']:
    20842084            try:
    2085                 idx = atomNames.index(atom[:ct+1])
     2085                idx = atomNames.index(''.join(atom[:ct+1]).capitalize())  #eliminate spurious differences
    20862086                atId = atom[cia+8]
    20872087                atomData[idx][:-1] = atom[:-1]
    20882088                atomData[idx][cia+8] = atId
    20892089            except ValueError:
    2090                 print atom[:ct+1], 'not in Atom array; not updated'
     2090                if All:
     2091                    atomData.append(atom)
     2092                else:
     2093                    dlg = wx.MessageDialog(G2frame,'Some atoms not in List; do you want to append them all',   \
     2094                        'Unknown atom '+atom[0],wx.YES_NO|wx.ICON_QUESTION)
     2095                    try:
     2096                        result = dlg.ShowModal()
     2097                        if result in [wx.ID_YES,]:
     2098                            All = True
     2099                            atomData.append(atom)
     2100                        else:
     2101                            print atom[:ct+1], 'not in Atom array; not updated'
     2102                    finally:
     2103                        dlg.Destroy()
    20912104        wx.CallAfter(FillAtomsGrid,Atoms)
    20922105       
     
    23192332           
    23202333################################################################################
    2321 #Structure drawing GUI stuff               
     2334#### Structure drawing GUI stuff               
    23222335################################################################################
    23232336
     
    38353848                'Extinction':['Lorentzian','None',
    38363849                {'Tbar':0.1,'Cos2TM':0.955,'Eg':[1.e-7,False],'Es':[1.e-7,False],'Ep':[1.e-7,False]},],
    3837                 'Flack':[0.0,False]}                       
     3850                'Flack':[0.0,False],'Twins':[[np.array([[1,0,0],[0,1,0],[0,0,1]]),[1.0,False]],]}                       
    38383851            UpdateHKLFdata(histoName)
    38393852            data['Histograms'] = UseList
     
    38603873        sourceDict = UseList[hist]
    38613874        if 'HKLF' in sourceDict['Histogram']:
    3862             copyNames = ['Scale','Extinction','Babinet','Flack']
     3875            copyNames = ['Scale','Extinction','Babinet','Flack','Twins']
    38633876        else:  #PWDR 
    38643877            copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet']
     
    38843897            copyNames = ['Scale','Extinction','Babinet','Flack']
    38853898        else:  #PWDR 
    3886             copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet']
     3899            copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet','Twins']
    38873900        babNames = ['BabA','BabU']
    38883901        for name in copyNames:
    3889             if name in ['Scale','Extinction','HStrain','Flack']:
     3902            if name in ['Scale','Extinction','HStrain','Flack','Twins']:
    38903903                if name == 'Extinction' and 'HKLF' in sourceDict['Histogram']:
    38913904                    copyDict[name] = {name:[sourceDict[name][:2]]}
    38923905                    for item in ['Eg','Es','Ep']:
    38933906                        copyDict[name][item] = sourceDict[name][2][item][1]
     3907                elif name == 'Twins':
     3908                    for it,twin in enumerate(sourceDict['Twins']):
     3909                        copyDict[name][it] = twin[1][1]
    38943910                else:
    38953911                    copyDict[name] = sourceDict[name][1]
     
    39193935                        UseList[item]
    39203936                        for name in copyNames:
    3921                             if name in ['Scale','Extinction','HStrain','Flack']:
     3937                            if name in ['Scale','Extinction','HStrain','Flack','Twins']:
    39223938                                if name == 'Extinction' and 'HKLF' in sourceDict['Histogram']:
    39233939                                    UseList[item][name][:2] = copy.deepcopy(sourceDict[name][:2])
    39243940                                    for itm in ['Eg','Es','Ep']:
    39253941                                        UseList[item][name][2][itm][1] = copy.deepcopy(copyDict[name][itm])
     3942                                elif name == 'Twins':
     3943                                    for it,twin in enumerate(sourceDict['Twins']):
     3944                                        UseList[item]['Twins'][it][1][1] = copyDict['Twins'][it]
    39263945                                else:
    39273946                                    UseList[item][name][1] = copy.deepcopy(copyDict[name])
     
    39513970        copyDict = {}
    39523971        if 'HKLF' in sourceDict['Histogram']:
    3953             copyNames = ['Scale','Extinction','Babinet','Flack']
     3972            copyNames = ['Scale','Extinction','Babinet','Flack','Twins']
    39543973        else:  #PWDR 
    39553974            copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet']
Note: See TracChangeset for help on using the changeset viewer.