Ignore:
Timestamp:
Sep 12, 2011 10:50:36 AM (13 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:
7afcae8
Parents:
dc79cfc
Message:

allow compute smearer everything is needed

Location:
fittingview/src/sans/perspectives/fitting
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • fittingview/src/sans/perspectives/fitting/fit_thread.py

    rf7f6886 r8aa5788  
    2020                  page_id, 
    2121                   handler, 
     22                   batch_result,  
    2223                  pars=None, 
    2324                 completefn = None, 
     
    3334        self.fitter = fn 
    3435        self.pars = pars 
     36        self.batch_result = batch_result 
    3537        self.page_id = page_id 
    3638        self.starttime = 0 
     
    7577            #self.handler.starting_fit() 
    7678            self.complete(result= result, 
     79                          batch_result=self.batch_result, 
    7780                          page_id=self.page_id, 
    7881                          pars = self.pars) 
  • fittingview/src/sans/perspectives/fitting/fitproblem.py

    rf7ef313 r8aa5788  
    432432        if not self.smearer_enable: 
    433433            return None 
    434         if self.smearer_computer_value is None and \ 
    435             self.smearer_compute_count > 1: 
     434        #if self.smearer_computer_value is None and \ 
     435        #     self.smearer_compute_count > 1: 
    436436            #smeari_selection should be call only once per fitproblem 
    437             self.smearer_computer_value = smear_selection(self.fit_data, 
     437        self.smearer_computer_value = smear_selection(self.fit_data, 
    438438                                                           self.model) 
    439             self.smearer_compute_count += 1 
     439        self.smearer_compute_count += 1 
    440440        return self.smearer_computer_value 
    441441     
     
    450450        return self.name_per_page 
    451451     
    452     def set_model(self,model): 
     452    def set_model(self, model): 
    453453        """  
    454454        associates each model with its new created name 
  • fittingview/src/sans/perspectives/fitting/fitting.py

    r6446f87 r8aa5788  
    682682        list_page_id = [] 
    683683        fit_id = 0 
     684        batch_result = {} 
    684685        for page_id, value in self.page_finder.iteritems(): 
    685686            # For simulfit (uid give with None), do for-loop 
     
    701702                        if sim_fitter is None: 
    702703                            fitter = Fit(self._fit_engine)   
    703                             self._fit_helper(fitproblem, pars, fitter, fit_id) 
     704                            self._fit_helper(fitproblem, pars, fitter, 
     705                                              fit_id, batch_result) 
    704706                            fitter_list.append(fitter)  
    705707                        else: 
    706708                            fitter = sim_fitter 
    707                             self._fit_helper(fitproblem, pars, fitter, fit_id) 
     709                            self._fit_helper(fitproblem, pars, fitter, 
     710                                              fit_id, batch_result) 
    708711                        fit_id += 1 
    709712                    list_page_id.append(page_id) 
     
    731734                                    fn=fitter_list, 
    732735                                    pars=pars, 
     736                                    batch_result=batch_result, 
    733737                                    page_id=list_page_id, 
    734738                                    completefn=self._single_fit_completed, 
     
    739743            calc_fit = FitThread(handler=handler, 
    740744                                    fn=fitter_list, 
     745                                    batch_result=batch_result,  
    741746                                    page_id=list_page_id, 
    742747                                    updatefn=handler.update_fit, 
     
    897902                self.page_finder[uid].schedule_tofit(value) 
    898903                 
    899     def _fit_helper(self, fitproblem, pars, fitter, fit_id): 
     904    def _fit_helper(self, fitproblem, pars, fitter, fit_id, batch_result): 
    900905        """ 
    901906        Create and set fit engine with series of data and model 
     
    917922                    listOfConstraint.append((item[0],item[1])) 
    918923        fitter.set_model(model, fit_id, pars, constraints=listOfConstraint) 
     924        if "Data" not in batch_result.keys(): 
     925            batch_result["Data"] = [] 
     926        batch_result["Data"].append(data.name) 
    919927        fitter.set_data(data=data, id=fit_id, smearer=smearer, qmin=qmin,  
    920928                        qmax=qmax) 
     
    947955         
    948956    def _batch_single_fit_complete_helper(self, result, pars, page_id,  
    949                                           elapsed=None): 
     957                                         batch_result, elapsed=None): 
    950958        """ 
    951959        Display fit result in batch  
     
    986994                cpage._on_fit_complete() 
    987995             
    988     def _single_fit_completed(self, result, pars, page_id, elapsed=None): 
     996    def _single_fit_completed(self, result, pars, page_id,  
     997                              batch_result, elapsed=None): 
    989998        """ 
    990999         Display fit result on one page of the notebook. 
     
    9991008        if self.batch_on: 
    10001009            wx.CallAfter(self._batch_single_fit_complete_helper, 
    1001                           result, pars, page_id, elapsed=None) 
     1010                          result, pars, page_id, batch_result, elapsed) 
    10021011            return  
    10031012        else:   
     
    10491058                raise 
    10501059                
    1051     def _simul_fit_completed(self, result, page_id, pars=None, elapsed=None): 
     1060    def _simul_fit_completed(self, result, page_id, batch_result, pars=None,  
     1061                             elapsed=None): 
    10521062        """ 
    10531063        Display result of the fit on related panel(s). 
Note: See TracChangeset for help on using the changeset viewer.