Changeset 48882d1 in sasview for park_integration/test/testfitting.py
- Timestamp:
- Aug 22, 2008 5:51:05 PM (16 years ago)
- 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:
- 3c404d3
- Parents:
- d6513cd
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
park_integration/test/testfitting.py
r985c88b r48882d1 5 5 from sans.guitools.plottables import Theory1D 6 6 from sans.guitools.plottables import Data1D 7 7 from sans.fit.AbstractFitEngine import Data, Model 8 8 import math 9 9 class testFitModule(unittest.TestCase): … … 15 15 from sans.fit.Loader import Load 16 16 load= Load() 17 18 17 load.set_filename("testdata_line.txt") 19 18 self.assertEqual(load.get_filename(),"testdata_line.txt") … … 23 22 dx=[] 24 23 dy=[] 25 26 24 x,y,dx,dy = load.get_values() 27 28 25 # test that values have been loaded 29 26 self.assertNotEqual(x, None) … … 59 56 load.set_filename("testdata_line.txt") 60 57 load.set_values() 61 data1 = Data1D(x=[], y=[],dx=None, dy=None)62 load.load_data(data1 )58 data11 = Data1D(x=[], y=[],dx=None, dy=None) 59 load.load_data(data11) 63 60 64 61 #Importing the Fit module … … 68 65 # Receives the type of model for the fitting 69 66 from sans.guitools.LineModel import LineModel 70 model1 = LineModel()71 model2 = LineModel()67 model11 = LineModel() 68 model22 = LineModel() 72 69 73 70 #Do the fit SCIPY 74 model1.setParam( 'A', 2) 75 model1.setParam( 'B', 1) 71 model11.setParam( 'A', 2) 72 model11.setParam( 'B', 1) 73 data1=Data(sans_data=data11) 74 model1 =Model(model11) 75 model2 =Model(model22) 76 76 77 fitter.set_data(data1,1) 77 78 fitter.set_model(model1,"M1",1,['A','B']) 78 79 79 chisqr1, out1, cov1=fitter.fit() 80 result= fitter.fit() 81 out1=result.pvec 82 chisqr1=result.fitness 83 cov1=result.cov 84 print "scipy",chisqr1, out1, cov1 80 85 """ testing SCIPy results""" 81 86 self.assert_(math.fabs(out1[1]-2.5)/math.sqrt(cov1[1][1]) < 2) … … 87 92 #Do the fit 88 93 fitter.set_data(data1,1) 89 model2.setParam ( 'A', 2)90 model2.setParam( 'B', 1)94 model2.setParams( [2,1]) 95 91 96 fitter.set_model(model2,"M1",1,['A','B']) 92 97 93 chisqr2, out2, cov2,result=fitter.fit(None,None) 94 98 result2=fitter.fit(None,None) 99 out2=result2.pvec 100 chisqr2=result2.fitness 101 cov2=result2.cov 95 102 self.assert_(math.fabs(out2[1]-2.5)/math.sqrt(cov2[1][1]) < 2) 96 103 self.assert_(math.fabs(out2[0]-4.0)/math.sqrt(cov2[0][0]) < 2) … … 103 110 self.assertAlmostEquals(cov1[1][1], cov2[1][1],1) 104 111 self.assertAlmostEquals(chisqr1, chisqr2) 112 113 def testfit_1Data_1Model(self): 114 """ test fitting for one data and one model cipy""" 115 #load data 116 from sans.fit.Loader import Load 117 load= Load() 118 load.set_filename("testdata_line.txt") 119 load.set_values() 120 data11 = Data1D(x=[], y=[],dx=None, dy=None) 121 load.load_data(data11) 122 data1=Data(sans_data=data11) 123 124 #Importing the Fit module 125 from sans.fit.Fitting import Fit 126 fitter= Fit('scipy') 127 128 # Receives the type of model for the fitting 129 from sans.guitools.LineModel import LineModel 130 model1 = LineModel() 131 model =Model(model1) 132 133 #Do the fit SCIPY 134 fitter.set_data(data1,1) 135 import math 105 136 137 pars1=['A','B'] 138 pars1.sort() 139 fitter.set_model(model,"M1",1,pars1) 140 result=fitter.fit() 141 print "scipy",result.fitness,result.cov, result.pvec 142 143 self.assert_(result.fitness) 144 145 146 106 147
Note: See TracChangeset
for help on using the changeset viewer.