Changes in / [ea7ffce:a006b63] in sasmodels


Ignore:
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • example/sesansfit.py

    re806077 r0ac3db5  
    66 
    77 
    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') 
     8if 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 
    1317else: 
    1418    SElength = np.linspace(0, 2400, 61) # [A] 
     
    1620    err_data = np.ones_like(SElength)*0.03 
    1721 
    18     class SesansData: 
     22    class SESANSData1D: 
    1923        #q_zmax = 0.23 # [A^-1] 
    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] 
     24        zacceptance = 0.1 # [A^-1] 
     25        lam = 2e-10 # [m] 
    2426        thickness = 0.2 # [cm] 
    25         SElength = SElength 
    26         data = data 
    27         err_data = err_data 
     27        x = SElength 
     28        y = data 
     29        dy = err_data 
    2830    data = SesansData() 
     31print dir(data) 
     32 
     33radius = 1000 
     34data.Rmax = 3*radius # [A] 
    2935 
    3036phi = Parameter(0.1, name="phi") 
  • sasmodels/bumps_model.py

    rc97724e r0ac3db5  
    217217def _plot_sesans(data, theory, view): 
    218218    import matplotlib.pyplot as plt 
    219     resid = (theory - data.data)/data.err_data 
     219    resid = (theory - data.y)/data.dy 
    220220    plt.subplot(121) 
    221     plt.errorbar(data.SElength, data.data, yerr=data.err_data) 
    222     plt.plot(data.SElength, theory, '-', hold=True) 
     221    plt.errorbar(data.x, data.y, yerr=data.dy) 
     222    plt.plot(data.x, theory, '-', hold=True) 
    223223    plt.xlabel('spin echo length (A)') 
    224224    plt.ylabel('polarization') 
    225225    plt.subplot(122) 
    226     plt.plot(data.SElength, resid, 'x') 
     226    plt.plot(data.x, resid, 'x') 
    227227    plt.xlabel('spin echo length (A)') 
    228228    plt.ylabel('residuals') 
     
    267267        self.model = model 
    268268        self.cutoff = cutoff 
    269         if hasattr(data, 'SElength'): 
     269# TODO       if  isinstance(data,SESANSData1D)         
     270        if hasattr(data, 'lam'): 
    270271            self.data_type = 'sesans' 
    271272        elif hasattr(data, 'qx_data'): 
     
    278279        # interpret data 
    279280        if self.data_type == 'sesans': 
    280             q = sesans.make_q(data.q_zmax, data.Rmax) 
     281            q = sesans.make_q(data.sample.zacceptance, data.Rmax) 
    281282            self.index = slice(None,None) 
    282             self.iq = data.data 
    283             self.diq = data.err_data 
     283            self.iq = data.y 
     284            self.diq = data.dy 
    284285            self._theory = np.zeros_like(q) 
    285286            q_vectors = [q] 
     
    353354            #self._theory[:] = self._fn.eval(pars, pd_pars) 
    354355            if self.data_type == 'sesans': 
    355                 P = sesans.hankel(self.data.SElength, self.data.wavelength, 
    356                                   self.data.thickness, self._fn_inputs[0], 
     356                P = sesans.hankel(self.data.x, self.data.lam, 
     357                                  self.data.sample.thickness/10, self._fn_inputs[0], 
    357358                                  self._theory) 
    358359                self._cache['theory'] = P 
     
    401402            self.data.data[self.index] = y 
    402403        elif self.data_type == 'sesans': 
    403             self.data.data[self.index] = y 
     404            self.data.y[self.index] = y 
    404405        else: 
    405406            raise ValueError("Unknown model") 
Note: See TracChangeset for help on using the changeset viewer.