Changeset 40a87fa in sasmodels for sasmodels/convert.py
- Timestamp:
- Aug 8, 2016 11:24:11 AM (8 years ago)
- Branches:
- master, core_shell_microgels, costrafo411, magnetic_model, release_v0.94, release_v0.95, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
- Children:
- 2472141
- Parents:
- 2d65d51
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sasmodels/convert.py
r54bcd4a r40a87fa 63 63 for new, old in mapping.items(): 64 64 if old == new: continue 65 for pd, dot in PD_DOT:65 for underscore, dot in PD_DOT: 66 66 if old+dot in newpars: 67 67 if new is not None: 68 newpars[new+ pd] = pars[old+dot]68 newpars[new+underscore] = pars[old+dot] 69 69 del newpars[old+dot] 70 70 return newpars … … 103 103 new model definition end with sld. 104 104 """ 105 return dict((id, (_unscale(v, 1e-6) if _is_sld(modelinfo, id) else v))105 return dict((id, (_unscale(v, 1e-6) if _is_sld(modelinfo, id) else v)) 106 106 for id, v in pars.items()) 107 107 … … 113 113 """ 114 114 # Bumps style parameter names 115 pd= pars.pop(key+".width", 0.0)116 pd_n= pars.pop(key+".npts", 0)117 if pd != 0.0 and pd_n!= 0:115 width = pars.pop(key+".width", 0.0) 116 n_points = pars.pop(key+".npts", 0) 117 if width != 0.0 and n_points != 0: 118 118 warnings.warn("parameter %s not polydisperse in sasview %s"%(key, name)) 119 119 pars.pop(key+".nsigmas", None) … … 128 128 129 129 for new, old in mapping.items(): 130 for pd, dot in PD_DOT:131 if old and old+ pd== new+dot:130 for underscore, dot in PD_DOT: 131 if old and old+underscore == new+dot: 132 132 continue 133 if new+ pdin newpars:133 if new+underscore in newpars: 134 134 if old is not None: 135 newpars[old+dot] = pars[new+ pd]136 del newpars[new+ pd]135 newpars[old+dot] = pars[new+underscore] 136 del newpars[new+underscore] 137 137 for k in list(newpars.keys()): 138 for pd, dot in PD_DOT[1:]: # skip "" => ""139 if k.endswith( pd):140 newpars[k[:-len( pd)]+dot] = newpars[k]138 for underscore, dot in PD_DOT[1:]: # skip "" => "" 139 if k.endswith(underscore): 140 newpars[k[:-len(underscore)]+dot] = newpars[k] 141 141 del newpars[k] 142 142 return newpars 143 143 144 144 def revert_name(model_info): 145 oldname, oldpars= CONVERSION_TABLE.get(model_info.id, [None, {}])145 oldname, _ = CONVERSION_TABLE.get(model_info.id, [None, {}]) 146 146 return oldname 147 147 … … 180 180 composition_type, parts = model_info.composition 181 181 if composition_type == 'product': 182 P, S = parts183 182 oldpars = {'scale':'scale_factor'} 184 oldpars.update(_get_old_pars( P))185 oldpars.update(_get_old_pars( S))183 oldpars.update(_get_old_pars(parts[0])) 184 oldpars.update(_get_old_pars(parts[1])) 186 185 else: 187 186 raise NotImplementedError("cannot convert to sasview sum") … … 206 205 # Remove magnetic parameters from non-magnetic sasview models 207 206 if name not in MAGNETIC_SASVIEW_MODELS: 208 oldpars = dict((k, v) for k,v in oldpars.items() if ':' not in k)207 oldpars = dict((k, v) for k, v in oldpars.items() if ':' not in k) 209 208 210 209 # If it is a product model P*S, then check the individual forms for special … … 253 252 elif name == 'core_shell_parallelepiped': 254 253 _remove_pd(oldpars, 'rimA', name) 255 elif name in ['mono_gauss_coil', 'poly_gauss_coil']:254 elif name in ['mono_gauss_coil', 'poly_gauss_coil']: 256 255 del oldpars['i_zero'] 257 256 elif name == 'onion':
Note: See TracChangeset
for help on using the changeset viewer.