Ignore:
Timestamp:
Sep 23, 2008 1:11:08 PM (16 years ago)
Author:
Gervaise Alina <gervyh@…>
Branches:
master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
442895f
Parents:
5f96484
Message:

changes on setparams to fix fit

File:
1 edited

Legend:

Unmodified
Added
Removed
  • park_integration/AbstractFitEngine.py

    rca6d914 re71440c  
    8686     
    8787     
    88     def setParams(self, params): 
     88    def setParams(self,paramlist, params): 
    8989        """ 
    9090            Set value for parameters to fit 
    9191            @param params: list of value for parameters to fit  
    9292        """ 
    93         list=[] 
    94         for item in self.parkp: 
    95             list.append(item.name) 
    96         list.sort() 
    97         for i in range(len(params)): 
    98             self.parkp[i].value = params[i] 
    99             self.model.setParam(list[i],params[i]) 
    100    
     93        try: 
     94            for i in range(len(self.parkp)): 
     95                for j in range(len(paramlist)): 
     96                    if self.parkp[i].name==paramlist[j]: 
     97                        self.parkp[i].value = params[j] 
     98                        self.model.setParam(self.parkp[i].name,params[j]) 
     99        except: 
     100            raise 
    101101   
    102102    def eval(self,x): 
     
    158158            fx = numpy.asarray([fn(item)for item in x[idx ]]) 
    159159            return (y[idx] - fx)/dy[idx] 
    160            
    161              
    162           
     160         
    163161    def residuals_deriv(self, model, pars=[]): 
    164162        """  
     
    172170         Sans Assembly class a class wrapper to be call in optimizer.leastsq method 
    173171    """ 
    174     def __init__(self,Model=None , Data=None): 
     172    def __init__(self,paramlist,Model=None , Data=None): 
    175173        """ 
    176174            @param Model: the model wrapper fro sans -model 
     
    179177        self.model = Model 
    180178        self.data  = Data 
     179        self.paramlist=paramlist 
    181180        self.res=[] 
    182181    def chisq(self, params): 
     
    195194            @param params: value of parameters to fit 
    196195        """ 
    197         self.model.setParams(params) 
     196        self.model.setParams(self.paramlist,params) 
    198197        self.res= self.data.residuals(self.model.eval) 
    199198        return self.res 
Note: See TracChangeset for help on using the changeset viewer.