Changeset 5ef55d2 in sasview for sansview/perspectives/fitting


Ignore:
Timestamp:
Mar 9, 2011 7:00:04 PM (14 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:
99abf5d
Parents:
bfa73ca
Message:

working on addd theory to data_panel

Location:
sansview/perspectives/fitting
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sansview/perspectives/fitting/basepage.py

    r6bbeacd4 r5ef55d2  
    16531653                                    qstep= float(self.npts_x), 
    16541654                                    id=self.id, 
     1655                                    state = self.state, 
    16551656                                    enable2D=self.enable2D) 
    16561657         
  • sansview/perspectives/fitting/fitting.py

    r883e5f5 r5ef55d2  
    316316                 
    317317                data.group_id = state.data.group_id 
     318                self.parent.add_data(data_list=[data]) 
    318319                wx.PostEvent(self.parent, NewPlotEvent(plot=data, 
    319320                                        title=data.title)) 
    320321                page = self.fit_panel.set_state(state)    
    321322            else: 
     323                self.parent.add_data(data_list=[data]) 
    322324                wx.PostEvent(self.parent, NewPlotEvent(plot=data, 
    323325                                        title=data.title)) 
     
    452454    def draw_model(self, model, id, data=None, smearer=None, 
    453455                   enable1D=True, enable2D=False, 
     456                   state=None, 
    454457                   qmin=DEFAULT_QMIN, qmax=DEFAULT_QMAX, qstep=DEFAULT_NPTS): 
    455458        """ 
     
    477480                               qmin=qmin, 
    478481                               qmax=qmax,  
     482                               state=state, 
    479483                               qstep=qstep) 
    480484        else:      
     
    487491                                qmin=qmin, 
    488492                                qmax=qmax, 
     493                                state=state, 
    489494                                qstep=qstep) 
    490495             
     
    629634        get this page and store it into the page_finder of this plug-in 
    630635        """ 
     636         
    631637        page = self.fit_panel.set_data(data) 
    632638        page_caption = page.window_name 
    633639        #append Data1D to the panel containing its theory 
    634640        #if theory already plotted 
     641         
    635642        if page.id in self.page_finder: 
    636643            theory_data = self.page_finder[page.id].get_theory_data() 
     
    642649                    if group_id not in data.group_id: 
    643650                        data.group_id.append(group_id) 
     651            self.parent.update_data(prev_data=theory_data, new_data=data) 
     652                     
    644653        self.store_data(id=page.id, data=data, caption=page.window_name) 
    645654        if self.sim_page is not None: 
     
    10791088   
    10801089                 
    1081     def _complete1D(self, x,y, id, elapsed,index,model,data=None): 
     1090    def _complete1D(self, x,y, id, elapsed,index,model,state=None, data=None): 
    10821091        """ 
    10831092        Complete plotting 1D data 
     
    10951104                    theory_data = self.page_finder[id].get_theory_data() 
    10961105                    if theory_data is not None: 
    1097                         print "theory_data", theory_data.group_id 
    10981106                        group_id = theory_data.group_id[len(theory_data.group_id)-1] 
    10991107                        if group_id not in data.group_id: 
    11001108                            data.group_id.append(group_id) 
    1101                         print "data", data.group_id 
    11021109                #data is plotted before the theory, then take its group_id 
    11031110                #assign to the new theory 
     
    11261133            new_plot.yaxis(_yaxis, _yunit) 
    11271134            self.page_finder[id].set_theory_data(new_plot) 
    1128             
    11291135            if data is None: 
    1130                 wx.PostEvent(self.parent, NewPlotEvent(plot=new_plot, 
    1131                              title=str(new_plot.title))) 
     1136                theory_data = self.page_finder[id].get_theory_data() 
     1137                self.parent.add_data_helper(data_list=[theory_data]) 
     1138                data_id = theory_data.id 
    11321139            else: 
    1133                 wx.PostEvent(self.parent, NewPlotEvent(plot=new_plot, 
     1140                data_id = data.id 
     1141            self.parent.append_theory(data_id=data_id,  
     1142                                          theory=new_plot, state=state) 
     1143            wx.PostEvent(self.parent, NewPlotEvent(plot=new_plot, 
    11341144                                            title= str(new_plot.title))) 
    11351145            current_pg = self.fit_panel.get_page_by_id(id) 
     
    11561166     
    11571167    def _complete2D(self, image, data, model, id,  elapsed, index, qmin, 
    1158                      qmax, qstep=DEFAULT_NPTS): 
     1168                     qmax, state=None,qstep=DEFAULT_NPTS): 
    11591169        """ 
    11601170        Complete get the result of modelthread and create model 2D 
     
    11931203            theory.xmin = data.xmin 
    11941204            theory.xmax = data.xmax 
     1205        theory.name = model.name + " ["+ str(model.__class__.__name__)+ "]" 
    11951206        theory.title = "Analytical model 2D " 
    1196         self.page_finder[id].set_theory_data(theory) 
    1197          
     1207        theory_data = deepcopy(theory) 
     1208        theory_data.name = "Unknown" 
     1209        self.page_finder[id].set_theory_data(theory_data) 
     1210         
     1211        if data is None: 
     1212            theory_data = self.page_finder[id].get_theory_data() 
     1213            self.parent.add_data_helper(data_list=[theory_data]) 
     1214            data_id = theory_data.id 
     1215        else: 
     1216            data_id = data.id 
     1217        self.parent.append_theory(data_id=data_id,  
     1218                                          theory=theory, state=state) 
     1219             
    11981220        ## plot 
    11991221        wx.PostEvent(self.parent, NewPlotEvent(plot=theory, 
     
    12081230    def _draw_model2D(self, model, id, data=None, smearer=None, 
    12091231                      description=None, enable2D=False, 
     1232                      state=None, 
    12101233                      qmin=DEFAULT_QMIN, qmax=DEFAULT_QMAX, 
    12111234                       qstep=DEFAULT_NPTS): 
     
    12571280                                    qmax=qmax, 
    12581281                                    qstep=qstep, 
     1282                                    state=state, 
    12591283                                    completefn=self._complete2D, 
    12601284                                    updatefn=self._update2D) 
     
    12691293    def _draw_model1D(self, model, id, data=None, smearer=None, 
    12701294                qmin=DEFAULT_QMIN, qmax=DEFAULT_QMAX,  
     1295                state=None, 
    12711296                qstep=DEFAULT_NPTS, enable1D=True): 
    12721297        """ 
     
    13051330                                  qmax=qmax, 
    13061331                                  smearer=smearer, 
     1332                                  state=state, 
    13071333                                  completefn=self._complete1D, 
    13081334                                  updatefn=self._update1D) 
  • sansview/perspectives/fitting/model_thread.py

    r6bbeacd4 r5ef55d2  
    1616    def __init__(self, x, y, data,model,smearer,qmin, qmax,qstep, 
    1717                 id , 
     18                 state=None, 
    1819                 completefn = None, 
    1920                 updatefn   = None, 
     
    3334        self.data= data 
    3435        self.page_id = id 
     36        self.state = None 
    3537        # the model on to calculate 
    3638        self.model = model 
     
    121123                       id=self.page_id, 
    122124                       model=self.model, 
     125                       state=self.state, 
    123126                       elapsed=elapsed, 
    124127                       index=index_model, 
     
    138141                 qmax=None, 
    139142                 smearer=None, 
     143                 state=None, 
    140144                 completefn = None, 
    141145                 updatefn   = None, 
     
    154158        self.qmax= qmax 
    155159        self.model = model 
     160        self.state = state 
    156161        self.page_id = id 
    157162        self.smearer= smearer 
     
    178183        self.complete(x=self.x[index], y=output[index],  
    179184                      id=self.page_id, 
     185                      state=self.state, 
    180186                      elapsed=elapsed,index=index, model=self.model, 
    181187                                        data=self.data) 
  • sansview/perspectives/fitting/pagestate.py

    r90a7bbd r5ef55d2  
    329329            rep += "parameter unit: %s\n\n"%str(item[7]) 
    330330        return rep 
    331      
     331  
    332332    def __repr__(self): 
    333333        """  
Note: See TracChangeset for help on using the changeset viewer.