Changeset 3169
- Timestamp:
- Nov 30, 2017 4:01:26 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/imports/G2phase_CIF.py
r3168 r3169 72 72 '_chemical_formula_sum' 73 73 ) 74 cf = G2obj.ReadCIF(filename) 74 try: 75 cf = G2obj.ReadCIF(filename) 76 except: 77 msg = 'Unreadable cif file' 78 self.errors = msg 79 self.warnings += msg 80 return False 75 81 # scan blocks for structural info 76 82 self.errors = 'Error during scan of blocks for datasets' … … 93 99 choice[-1] += blknm + ': ' 94 100 for i in phasenamefields: # get a name for the phase 95 name = cf[blknm].get(i ).strip()101 name = cf[blknm].get(i,'phase name').strip() 96 102 if name is None or name == '?' or name == '.': 97 103 continue … … 134 140 if not SpGrp: 135 141 SpGrp = blk.get("_parent_space_group.name_H-M",'') 136 magnetic = True 137 self.Phase['General']['Type'] = 'magnetic' 138 self.Phase['General']['AtomPtrs'] = [3,1,10,12] 142 if SpGrp: 143 magnetic = True 144 self.Phase['General']['Type'] = 'magnetic' 145 self.Phase['General']['AtomPtrs'] = [3,1,10,12] 139 146 if Super: 140 147 sspgrp = blk.get("_space_group_ssg_name",'').split('(') … … 179 186 waveloop = blk.GetLoop('_cell_wave_vector_seq_id') 180 187 waveDict = dict(waveloop.items()) 181 SuperVec = [[float(waveDict['_cell_wave_vector_x'][0] ),182 float(waveDict['_cell_wave_vector_y'][0] ),183 float(waveDict['_cell_wave_vector_z'][0] )],False,4]188 SuperVec = [[float(waveDict['_cell_wave_vector_x'][0].replace('?','0')), 189 float(waveDict['_cell_wave_vector_y'][0].replace('?','0')), 190 float(waveDict['_cell_wave_vector_z'][0].replace('?','0'))],False,4] 184 191 # read in atoms 185 192 self.errors = 'Error during reading of atoms' … … 334 341 nim = -1 335 342 Sadp = np.zeros((4,12)) 336 for i,item in enumerate(UijFdict['_atom_site_ U_fourier_atom_site_label']):343 for i,item in enumerate(UijFdict['_atom_site_u_fourier_atom_site_label']): 337 344 if item == atomlist[0]: 338 ix = ['U11','U22','U33','U12','U13','U23'].index(UijFdict['_atom_site_ U_fourier_tens_elem'][i])339 im = int(UijFdict['_atom_site_ U_fourier_wave_vector_seq_id'][i])345 ix = ['U11','U22','U33','U12','U13','U23'].index(UijFdict['_atom_site_u_fourier_tens_elem'][i]) 346 im = int(UijFdict['_atom_site_u_fourier_wave_vector_seq_id'][i]) 340 347 if im != nim: 341 348 nim = im 342 val = UijFdict['_atom_site_ U_fourier_param_sin'][i]349 val = UijFdict['_atom_site_u_fourier_param_sin'][i] 343 350 Sadp[im-1][ix] = cif.get_number_with_esd(val)[0] 344 val = UijFdict['_atom_site_ U_fourier_param_cos'][i]351 val = UijFdict['_atom_site_u_fourier_param_cos'][i] 345 352 Sadp[im-1][ix+6] = cif.get_number_with_esd(val)[0] 346 353 if nim >= 0:
Note: See TracChangeset
for help on using the changeset viewer.