Changes in / [d8e81f7:2ed7de0] in sasmodels
- Location:
- sasmodels
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
sasmodels/direct_model.py
rb39bf3b r2ed7de0 61 61 #print("in call_kernel: pars:", list(zip(*mesh))[0]) 62 62 call_details, values, is_magnetic = make_kernel_args(calculator, mesh) 63 print("in call_kernel: values:", values)63 #print("in call_kernel: values:", values) 64 64 return calculator(call_details, values, cutoff, is_magnetic) 65 65 -
sasmodels/model_test.py
rb39bf3b r2ed7de0 247 247 platform=self.platform) 248 248 # run the tests 249 <<<<<<< HEAD250 #self.info = ps_model.info251 #print("SELF.INFO PARAMS!!!",[p.id for p in self.info.parameters.call_parameters])252 #print("PS MODEL PARAMETERS:",[p.id for p in ps_model.info.parameters.call_parameters])253 =======254 >>>>>>> 2ed7de04217c5103c5fd8d7c14e29e04923269d5255 249 results.append(self.run_one(ps_model, ps_test)) 256 250 … … 310 304 """Run a single test case.""" 311 305 user_pars, x, y = test[:3] 312 print("PS MODEL PARAMETERS:",[p.id for p in model.info.parameters.call_parameters])313 306 pars = expand_pars(model.info.parameters, user_pars) 314 307 invalid = invalid_pars(model.info.parameters, pars) -
sasmodels/models/sphere.py
rb39bf3b r2ed7de0 75 75 ["sld_solvent", "1e-6/Ang^2", 6, [-inf, inf], "sld", 76 76 "Solvent scattering length density"], 77 ["radius", "Ang", 45, [0, inf], "volume",77 ["radius", "Ang", 50, [0, inf], "volume", 78 78 "Sphere radius"], 79 79 ] … … 92 92 93 93 tests = [ 94 # [{}, 0.2, 0.726362], 95 # [{"scale": 1., "background": 0., "sld": 6., "sld_solvent": 1., 96 # "radius": 120., "radius_pd": 0.2, "radius_pd_n":45}, 97 # 0.2, 0.2288431], 98 # [{"radius": 120., "radius_pd": 0.02, "radius_pd_n":45}, 99 # 0.2, 792.0646662454202, [1166737.0473152], 120.0, 7246723.820358589, 1.0], # the longer list here checks F1, F2, R_eff, volume, volume_ratio = call_Fq(kernel, pars) 100 # # But note P(Q) = F2/volume, F1 and F2 are vectors, for some reason only F2 needs square brackets 101 # # BUT what is scaling of F1 ??? At low Pd F2 ~ F1^2 ? 102 # [{"@S": "hardsphere"}, 103 # 0.01, 55.881884232102124], # this is current value, not verified elsewhere yet 104 # [{"radius": 120., "radius_pd": 0.2, "radius_pd_n":45}, 105 # 0.2, 1.233304061, [1850806.119736], 120.0, 8087664.1226, 1.0], # the longer list here checks F1, F2, R_eff, volume, volume_ratio = call_Fq(kernel, pars) 106 # [{"@S": "hardsphere"}, 107 # 0.2, 0.14730859242492958], # this is current value, not verified elsewhere yet 108 # [{"@S": "hardsphere"}, 109 # 0.1, 0.7940350343811906], # this is current value, not verified elsewhere yet 110 [{"@S": "hardsphere", 111 "radius": 120., "radius_pd": 0.2, "radius_pd_n":45, 112 "volfraction":0.2, 113 "radius_effective":45.0, # hard sphere structure factor 114 "structure_factor_mode": 1, # decoupling approximation 115 #"effective_radius_type": 1 # equivalent sphere Currently have hardwired model_test to accept radius_effective 116 # direct_model has the name & value BUT does it get passed to S(Q)??? What about volfracion, plus the many parameters used by other S(Q) ? 94 [{}, 0.2, 0.726362], 95 [{"scale": 1., "background": 0., "sld": 6., "sld_solvent": 1., 96 "radius": 120., "radius_pd": 0.2, "radius_pd_n":45}, 97 0.2, 0.2288431], 98 [{"radius": 120., "radius_pd": 0.02, "radius_pd_n":45}, 0.2, 99 # F1, F2, R_eff, volume, volume_ratio = call_Fq(kernel, pars) at q=0.2 100 792.0646662454202, 1166737.0473152, 120.0, 7246723.820358589, 1.0], 101 # But note P(Q) = F2/volume+background, F1 and F2 are vectors 102 # BUT what is scaling of F1 ??? At low Pd F2 ~ F1^2 ? 103 [{"radius": 120., "radius_pd": 0.2, "radius_pd_n":45}, 0.2, 104 # F1, F2, R_eff, volume, volume_ratio = call_Fq(kernel, pars) at q=0.2 105 1.233304061, 1850806.119736, 120.0, 8087664.1226, 1.0], 106 [{"@S": "hardsphere"}, 107 0.01, 55.881884232102124], # current value, not verified elsewhere yet 108 [{"@S": "hardsphere"}, 109 0.2, 0.14730859242492958], # current value, not verified elsewhere yet 110 [{"@S": "hardsphere"}, 111 0.1, 0.7940350343811906], # current value, not verified elsewhere yet 112 [{"@S": "hardsphere", # hard sphere structure factor 113 "structure_factor_mode": 1, # decoupling approximation 114 "radius_effective_mode": 1, 115 # Currently have hardwired model_test to accept radius_effective 116 "radius_effective": 27.0, # equivalent sphere 117 # direct_model has the name & value BUT does it get passed to S(Q)??? 118 # What about volfracion, plus the many parameters used by other S(Q) ? 117 119 # effective_radius_type does NOT appear in the list, has it been stripped out??? 118 }, 0. 01, 0.7940350343881906],119 #[{"@S": "hardsphere", # hard sphere structure factor120 # "structure_factor_mode": 2, # - WHY same result?121 # "effective_radius_type": 2, "radius_effective":23.0 #122 #}, 0.1, 0.7940350343881906]120 }, 0.1, 0.7940350343881906], 121 # [{"@S": "hardsphere", # hard sphere structure factor 122 # "structure_factor_mode": 3, # - WHY same result? 123 # "effective_radius_type": 3, "radius_effective": 23.0 # 124 # }, 0.1, 0.7940350343881906] 123 125 ] 124 # putting None for expected result will pass the test if there are no errors from the routine, but without any check on the value of the result 126 # putting None for expected result will pass the test if there are no errors 127 # from the routine, but without any check on the value of the result -
sasmodels/product.py
rb39bf3b r2ed7de0 282 282 # unless the model doesn't support beta mode, in which case it is first 283 283 have_radius_type = p_info.effective_radius_type is not None 284 #print(p_npars,s_npars)285 284 radius_type_offset = 2+p_npars+s_npars + (1 if have_beta_mode else 0) 286 print(values[radius_type_offset])287 285 radius_type = int(values[radius_type_offset]) if have_radius_type else 0 288 286 … … 342 340 # polydispersity distribution slot in the values array due to 343 341 # implementation details in kernel_iq.c. 344 print("R_eff=%d:%g, volfrac=%g, volume ratio=%g"345 % (radius_type, effective_radius, volfrac, volume_ratio))342 #print("R_eff=%d:%g, volfrac=%g, volume ratio=%g" 343 # % (radius_type, effective_radius, volfrac, volume_ratio)) 346 344 if radius_type > 0: 347 345 # set the value to the model R_eff and set the weight to 1 … … 358 356 359 357 # Combine form factor and structure factor 360 print("beta", beta_mode, F1, F2, S)358 #print("beta", beta_mode, F1, F2, S) 361 359 PS = F2 + F1**2*(S-1) if beta_mode else F2*S 362 360 final_result = combined_scale*PS + background
Note: See TracChangeset
for help on using the changeset viewer.