Changeset 792db7d5 in sasview for park_integration/test/testpark.py


Ignore:
Timestamp:
Jul 8, 2008 11:48:38 AM (16 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:
6e0f53a
Parents:
1c94a9f1
Message:

more tests added …most of them are failing because of uncertainty , scipy result and park resuls also little bit different

File:
1 edited

Legend:

Unmodified
Added
Removed
  • park_integration/test/testpark.py

    rcf3b781 r792db7d5  
    1313        from sans.fit.Loader import Load 
    1414        load= Load() 
    15         #Load the first set of data 
     15        #Load the first data 
    1616        load.set_filename("testdata1.txt") 
    1717        load.set_values() 
     
    1919        load.load_data(data1) 
    2020         
    21         #Load the second set of data 
     21        #Load the second data 
    2222        load.set_filename("testdata2.txt") 
    2323        load.set_values() 
    2424        data2 = Data1D(x=[], y=[],dx=None, dy=None) 
    2525        load.load_data(data2) 
     26         
     27        #Load the third data 
     28        load.set_filename("testdata_line.txt") 
     29        load.set_values() 
     30        data3 = Data1D(x=[], y=[],dx=None, dy=None) 
     31        load.load_data(data3) 
    2632         
    2733        #Importing the Fit module 
     
    4046        engine.set_data(data1,1) 
    4147         
    42         import numpy 
    43         #print engine.fit({'A':2,'B':1},None,None) 
    44         #engine.remove_data(2,data2) 
    45         #engine.remove_model(2) 
    46          
    47         engine.set_param( model2,"M2", {'A':2.5,'B':4}) 
     48        engine.set_param( model2,"M2", {'A':2,'B':4}) 
    4849        engine.set_model(model2,2) 
    4950        engine.set_data(data2,2) 
    50         print engine.fit({'A':2,'B':1},None,None) 
    51  
    52         if True: 
    53             import pylab 
    54             x1 = engine.problem[0].data.x 
    55             x2 = engine.problem[1].data.x 
    56             y1 = engine.problem[0].data.y 
    57             y2 = engine.problem[1].data.y 
    58             fx1 = engine.problem[0].data.fx 
    59             fx2 = engine.problem[1].data.fx 
    60             pylab.plot(x1,y1,'xb',x1,fx1,'-b',x2,y2,'xr',x2,fx2,'-r') 
    61             pylab.show() 
    62         if False: 
    63             print "current" 
    64             print engine.problem.chisq 
    65             print engine.problem.residuals 
    66             print "M1.y",engine.problem[0].data.y 
    67             print "M1.fx",engine.problem[0].data.fx 
    68             print "M1 delta",numpy.asarray(engine.problem[0].data.y)-engine.problem[0].data.fx 
    69             print "M2.y",engine.problem[0].data.y 
    70             print "M2.fx",engine.problem[0].data.fx 
    71             print "M2 delta",numpy.asarray(engine.problem[1].data.y)-engine.problem[1].data.fx 
    72             print "target" 
    73             engine.problem(numpy.array([4,2.5,4,2.5])) 
    74             print engine.problem.chisq 
    75             print engine.problem.residuals 
    76             print "M1.y",engine.problem[0].data.y 
    77             print "M1.fx",engine.problem[0].data.fx 
    78             print "M1 delta",numpy.asarray(engine.problem[0].data.y)-engine.problem[0].data.fx 
    79             print "M2.y",engine.problem[0].data.y 
    80             print "M2.fx",engine.problem[0].data.fx 
    81             print "M2 delta",numpy.asarray(engine.problem[1].data.y)-engine.problem[1].data.fx 
    82              
     51         
     52        chisqr1, out1, cov1= engine.fit({'A':2,'B':1},None,None) 
     53         
     54        self.assert_(math.fabs(out1[1]-2.5)/math.sqrt(cov1[1][1]) < 2) 
     55        print math.fabs(out1[0]-4.0)/math.sqrt(cov1[0][0]) 
     56        #self.assert_(math.fabs(out1[0]-4.0)/math.sqrt(cov1[0][0]) < 2) 
     57        self.assert_(math.fabs(out1[3]-2.5)/math.sqrt(cov1[3][3]) < 2) 
     58        self.assert_(math.fabs(out1[2]-4.0)/math.sqrt(cov1[2][2]) < 2) 
     59        print chisqr1/len(data1.x) 
     60        #self.assert_(chisqr1/len(data1.x) < 2) 
     61        print chisqr1/len(data2.x) 
     62        #self.assert_(chisqr2/len(data2.x) < 2) 
     63         
     64         
     65        engine.set_data(data3,1) 
     66        chisqr2, out2, cov2= engine.fit({'A':2,'B':1},None,None) 
     67        self.assert_(math.fabs(out2[1]-2.5)/math.sqrt(cov2[1][1]) < 2) 
     68        print math.fabs(out2[0]-4.0)/math.sqrt(cov2[0][0]) 
     69        #self.assert_(math.fabs(out1[0]-4.0)/math.sqrt(cov1[0][0]) < 2) 
     70        self.assert_(math.fabs(out2[3]-2.5)/math.sqrt(cov2[3][3]) < 2) 
     71        self.assert_(math.fabs(out2[2]-4.0)/math.sqrt(cov2[2][2]) < 2) 
     72        print chisqr2/len(data1.x) 
     73        #self.assert_(chisqr1/len(data1.x) < 2) 
     74        print chisqr2/len(data2.x) 
     75        #self.assert_(chisqr2/len(data2.x) < 2) 
     76         
     77         
     78         
     79        engine.remove_Fit_Problem(2) 
     80        chisqr3, out3, cov3= engine.fit({'A':2,'B':1},None,None) 
     81        #print "park",chisqr3, out3, cov3 
     82        self.assert_(math.fabs(out1[1]-2.5)/math.sqrt(cov1[1][1]) < 2) 
     83        print math.fabs(out1[0]-4.0) 
     84        #self.assert_(math.fabs(out1[0]-4.0)/math.sqrt(cov1[0][0]) < 2) 
     85        print chisqr1/len(data1.x) 
     86        #self.assert_(chisqr1/len(data1.x) < 2) 
     87        #self.assert_(chisqr1/len(data2.x) < 2) 
     88        #failing at 7 place 
     89        self.assertAlmostEquals(out3[1],out1[1]) 
     90        self.assertAlmostEquals(out3[0],out1[0]) 
     91        self.assertAlmostEquals(cov3[1][1],cov1[1][1]) 
     92        self.assertAlmostEquals(cov3[0][0],cov1[0][0]) 
     93         
     94        self.assertAlmostEquals(out2[1],out1[1]) 
     95        self.assertAlmostEquals(out2[0],out1[0]) 
     96        self.assertAlmostEquals(cov2[1][1],cov1[1][1]) 
     97        self.assertAlmostEquals(cov2[0][0],cov1[0][0]) 
     98         
     99        self.assertAlmostEquals(out2[1],out3[1]) 
     100        self.assertAlmostEquals(out2[0],out3[0]) 
     101        self.assertAlmostEquals(cov2[1][1],cov3[1][1]) 
     102        self.assertAlmostEquals(cov2[0][0],cov3[0][0]) 
     103        print chisqr1,chisqr2,chisqr3 
     104        #self.assertAlmostEquals(chisqr1,chisqr2) 
Note: See TracChangeset for help on using the changeset viewer.