Changes in / [fb560d2:9ba91b7] in sasview
- Location:
- src/sas/qtgui/Perspectives/Fitting
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/qtgui/Perspectives/Fitting/FittingLogic.py
rdcabba7 rdcabba7 161 161 Create a new 1D data instance based on fitting results 162 162 """ 163 164 163 return self._create1DPlot(tab_id, return_data['x'], return_data['y'], 165 164 return_data['model'], return_data['data']) … … 212 211 (pq_plot, sq_plot). If either are unavailable, the corresponding plot is None. 213 212 """ 214 215 pq_plot = None 216 sq_plot = None 217 218 if return_data.get('pq_values', None) is not None: 219 pq_plot = self._create1DPlot(tab_id, return_data['x'], 220 return_data['pq_values'], return_data['model'], 221 return_data['data'], component="P(Q)") 222 if return_data.get('sq_values', None) is not None: 223 sq_plot = self._create1DPlot(tab_id, return_data['x'], 224 return_data['sq_values'], return_data['model'], 225 return_data['data'], component="S(Q)") 226 227 return pq_plot, sq_plot 213 plots = [] 214 for name, result in return_data['intermediate_results'].items(): 215 plots.append(self._create1DPlot(tab_id, return_data['x'], result, 216 return_data['model'], return_data['data'], 217 component=name)) 218 return plots 228 219 229 220 def computeDataRange(self): -
src/sas/qtgui/Perspectives/Fitting/FittingWidget.py
r0109f2a r0109f2a 2417 2417 2418 2418 # Create plots for intermediate product data 2419 pq_data, sq_data = self.logic.new1DProductPlots(return_data, self.tab_id) 2420 if pq_data is not None: 2421 pq_data.symbol = "Line" 2422 self.createNewIndex(pq_data) 2423 # self.communicate.plotUpdateSignal.emit([pq_data]) 2424 new_plots.append(pq_data) 2425 if sq_data is not None: 2426 sq_data.symbol = "Line" 2427 self.createNewIndex(sq_data) 2428 # self.communicate.plotUpdateSignal.emit([sq_data]) 2429 new_plots.append(sq_data) 2419 plots = self.logic.new1DProductPlots(return_data, self.tab_id) 2420 for plot in plots: 2421 plot.symbol = "Line" 2422 self.createNewIndex(plot) 2423 new_plots.append(plot) 2430 2424 2431 2425 for plot in new_plots: -
src/sas/qtgui/Perspectives/Fitting/ModelThread.py
rdcabba7 rdcabba7 195 195 output[index] = self.model.evalDistribution(self.data.x[index]) 196 196 197 sq_values = None 198 pq_values = None 199 s_model = None 200 p_model = None 201 if isinstance(self.model, MultiplicationModel): 202 s_model = self.model.s_model 203 p_model = self.model.p_model 204 elif hasattr(self.model, "calc_composition_models"): 205 results = self.model.calc_composition_models(self.data.x[index]) 206 if results is not None: 207 pq_values, sq_values = results 208 209 if pq_values is None or sq_values is None: 210 if p_model is not None and s_model is not None: 211 sq_values = numpy.zeros((len(self.data.x))) 212 pq_values = numpy.zeros((len(self.data.x))) 213 sq_values[index] = s_model.evalDistribution(self.data.x[index]) 214 pq_values[index] = p_model.evalDistribution(self.data.x[index]) 197 results_eval = {} 198 intermediate_results = getattr(self.model, "_intermediate_results", None) 199 if callable(intermediate_results): 200 # support for future sasmodels (beta approx support) - it returns a dict of intermediate results, keyed by 201 # name 202 results_eval = intermediate_results() 203 else: 204 sq_values = None 205 pq_values = None 206 s_model = None 207 p_model = None 208 if isinstance(self.model, MultiplicationModel): 209 s_model = self.model.s_model 210 p_model = self.model.p_model 211 elif hasattr(self.model, "calc_composition_models"): 212 results = self.model.calc_composition_models(self.data.x[index]) 213 if results is not None: 214 pq_values, sq_values = results 215 216 if pq_values is None or sq_values is None: 217 if p_model is not None and s_model is not None: 218 sq_values = numpy.zeros((len(self.data.x))) 219 pq_values = numpy.zeros((len(self.data.x))) 220 sq_values[index] = s_model.evalDistribution(self.data.x[index]) 221 pq_values[index] = p_model.evalDistribution(self.data.x[index]) 222 223 if pq_values is not None and sq_values is not None: 224 results_eval = { 225 "P(Q)": pq_values, 226 "S(Q)": sq_values 227 } 215 228 216 229 elapsed = time.time() - self.starttime … … 223 236 source = self.source, unsmeared_output = unsmeared_output, 224 237 unsmeared_data = unsmeared_data, unsmeared_error = unsmeared_error, 225 pq_values = pq_values, sq_values = sq_values)238 intermediate_results = results_eval) 226 239 227 240 if LocalConfig.USING_TWISTED: -
src/sas/qtgui/Perspectives/Fitting/UnitTesting/FittingLogicTest.py
re752ab8 rd6c4987 103 103 data, False, None, 104 104 None, None, None, 105 None , None)105 None) 106 106 107 107 new_plot = self.logic.new1DPlot(return_data=return_data, tab_id=0)
Note: See TracChangeset
for help on using the changeset viewer.