source: sasview/sansview/perspectives/fitting/fitproblem.py @ d89f09b

ESS_GUIESS_GUI_DocsESS_GUI_batch_fittingESS_GUI_bumps_abstractionESS_GUI_iss1116ESS_GUI_iss879ESS_GUI_iss959ESS_GUI_openclESS_GUI_orderingESS_GUI_sync_sascalccostrafo411magnetic_scattrelease-4.1.1release-4.1.2release-4.2.2release_4.0.1ticket-1009ticket-1094-headlessticket-1242-2d-resolutionticket-1243ticket-1249ticket885unittest-saveload
Last change on this file since d89f09b was d89f09b, checked in by Gervaise Alina <gervyh@…>, 16 years ago
  • Property mode set to 100644
File size: 2.4 KB
Line 
1from sans.fit.AbstractFitEngine import Model
2
3class FitProblem:
4    """ 
5        FitProblem class allows to link a model with the new name created in _on_model,
6        a name theory created with that model  and the data fitted with the model.
7        FitProblem is mostly used  as value of the dictionary by fitting module.
8    """
9   
10    def __init__(self):
11       
12        """
13            @ self.data :is the data selected to perform the fit
14            @ self.theory_name: the name of the theory created with self.model
15            @ self.model_list:  is a list containing a model as first element
16            and its name assign example [lineModel, M0]
17        """
18        self.data=None
19        self.theory_name=None
20        self.model_list=[]
21       
22    def set_model(self,model,name):
23        """
24             associates each model with its new created name
25             @param model: model selected
26             @param name: name created for model
27        """
28        self.model_list=[model,name]
29
30 
31    def add_data(self,data):
32        """
33            save a copy of the data select to fit
34            @param data: data selected
35        """
36        self.data = data
37           
38    def get_model(self):
39        """ @return: saved model """
40        return self.model_list
41     
42    def get_data(self):
43        """ @return:  list of data dList"""
44        return self.data
45     
46     
47    def get_theory(self):
48        """ @return the name of theory for plotting purpose"""
49        return self.theory_name
50   
51   
52    def set_theory(self,name):
53        """
54            Set theory name
55            @param name: name of the theory
56        """
57        self.theory_name = name
58
59       
60    def set_model_param(self,name,value):
61        """
62            set the value of a given parameter of this model
63            @param name: name of the given parameter
64            @param value: value of that parameter
65        """
66       
67        self.model_list[0].model.setParam(name,value)
68        new_model=Model(self.model_list[0].model)
69        self.model_list[0]=new_model
70       
71    def reset_model(self,model):
72        """
73            reset a model when parameter has changed
74            @param value: new model
75        """
76        print "fitproblem : reset model"
77        self.model_list[0]=model
78       
79       
Note: See TracBrowser for help on using the repository browser.