Changes in / [a006b63:ea7ffce] in sasmodels
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
example/sesansfit.py
r0ac3db5 re806077 6 6 7 7 8 if True: # fix when data loader exists 9 # from sas.dataloader.readers\ 10 from sas.dataloader.loader import Loader 11 loader=Loader() 12 data=loader.load('testsasview1.ses') 13 14 # data = load_sesans('mydatfile.pz') 15 # sans_data = load_sans('mysansfile.xml') 16 8 radius = 1000 9 if False: # fix when data loader exists 10 from sasmodels.dataloader import load_sesans, load_sans 11 data = load_sesans('mydatfile.pz') 12 sans_data = load_sans('mysansfile.xml') 17 13 else: 18 14 SElength = np.linspace(0, 2400, 61) # [A] … … 20 16 err_data = np.ones_like(SElength)*0.03 21 17 22 class S ESANSData1D:18 class SesansData: 23 19 #q_zmax = 0.23 # [A^-1] 24 zacceptance = 0.1 # [A^-1] 25 lam = 2e-10 # [m] 20 q_zmax = 0.1 # [A^-1] 21 SElength = np.linspace(0, 2400, 61) # [A] 22 Rmax = 3*radius # [A] 23 wavelength = 2e-10 # [m] 26 24 thickness = 0.2 # [cm] 27 x= SElength28 y= data29 dy= err_data25 SElength = SElength 26 data = data 27 err_data = err_data 30 28 data = SesansData() 31 print dir(data)32 33 radius = 100034 data.Rmax = 3*radius # [A]35 29 36 30 phi = Parameter(0.1, name="phi") -
sasmodels/bumps_model.py
r0ac3db5 rc97724e 217 217 def _plot_sesans(data, theory, view): 218 218 import matplotlib.pyplot as plt 219 resid = (theory - data. y)/data.dy219 resid = (theory - data.data)/data.err_data 220 220 plt.subplot(121) 221 plt.errorbar(data. x, data.y, yerr=data.dy)222 plt.plot(data. x, theory, '-', hold=True)221 plt.errorbar(data.SElength, data.data, yerr=data.err_data) 222 plt.plot(data.SElength, theory, '-', hold=True) 223 223 plt.xlabel('spin echo length (A)') 224 224 plt.ylabel('polarization') 225 225 plt.subplot(122) 226 plt.plot(data. x, resid, 'x')226 plt.plot(data.SElength, resid, 'x') 227 227 plt.xlabel('spin echo length (A)') 228 228 plt.ylabel('residuals') … … 267 267 self.model = model 268 268 self.cutoff = cutoff 269 # TODO if isinstance(data,SESANSData1D) 270 if hasattr(data, 'lam'): 269 if hasattr(data, 'SElength'): 271 270 self.data_type = 'sesans' 272 271 elif hasattr(data, 'qx_data'): … … 279 278 # interpret data 280 279 if self.data_type == 'sesans': 281 q = sesans.make_q(data. sample.zacceptance, data.Rmax)280 q = sesans.make_q(data.q_zmax, data.Rmax) 282 281 self.index = slice(None,None) 283 self.iq = data. y284 self.diq = data. dy282 self.iq = data.data 283 self.diq = data.err_data 285 284 self._theory = np.zeros_like(q) 286 285 q_vectors = [q] … … 354 353 #self._theory[:] = self._fn.eval(pars, pd_pars) 355 354 if self.data_type == 'sesans': 356 P = sesans.hankel(self.data. x, self.data.lam,357 self.data. sample.thickness/10, self._fn_inputs[0],355 P = sesans.hankel(self.data.SElength, self.data.wavelength, 356 self.data.thickness, self._fn_inputs[0], 358 357 self._theory) 359 358 self._cache['theory'] = P … … 402 401 self.data.data[self.index] = y 403 402 elif self.data_type == 'sesans': 404 self.data. y[self.index] = y403 self.data.data[self.index] = y 405 404 else: 406 405 raise ValueError("Unknown model")
Note: See TracChangeset
for help on using the changeset viewer.