Ignore:
Timestamp:
Sep 23, 2017 1:06:57 PM (7 years ago)
Author:
Paul Kienzle <pkienzle@…>
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, magnetic_scatt, release-4.2.2, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
aaa801e
Parents:
f00072f
Message:

move tests to use sasmodels rather than sas.models (tests will still fail)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • test/sasrealspace/test/utest_oriented.py

    raaf5e49 r1cdbcd8  
    99# Disable "missing docstring" complaint 
    1010# pylint: disable-msg=C0111 
    11 # Disable "too many methods" complaint  
    12 # pylint: disable-msg=R0904  
    13 # Disable "could be a function" complaint  
     11# Disable "too many methods" complaint 
     12# pylint: disable-msg=R0904 
     13# Disable "could be a function" complaint 
    1414# pylint: disable-msg=R0201 
    1515# pylint: disable-msg=W0702 
    1616 
    17 try: 
    18     import VolumeCanvas 
    19     print("Testing local version") 
    20 except: 
    21     print(sys.exc_value) 
    22     #testing the version that is working on 
    23     print("Testing installed version") 
    24     import sas.sascalc.realspace.VolumeCanvas as VolumeCanvas 
    25   
     17from sasmodels.sasview_model import _make_standard_model 
     18EllipsoidModel = _make_standard_model('ellipsoid') 
     19SphereModel = _make_standard_model('sphere') 
     20CylinderModel = _make_standard_model('cylinder') 
     21CoreShellModel = _make_standard_model('core_shell_sphere') 
     22 
     23import sas.sascalc.realspace.VolumeCanvas as VolumeCanvas 
     24 
     25 
    2626 
    2727class TestSphere(unittest.TestCase): 
    2828    """ Tests for oriented (2D) systems """ 
    29          
     29 
    3030    def setUp(self): 
    3131        """ 
    3232            Set up canvas 
    3333        """ 
    34         from sas.models.SphereModel import SphereModel 
    3534        self.model = VolumeCanvas.VolumeCanvas() 
    36      
     35 
    3736        handle = self.model.add('sphere') 
    38          
     37 
    3938        radius = 10 
    4039        density = .1 
    41          
     40 
    4241        ana = SphereModel() 
    4342        ana.setParam('scale', 1.0) 
    44         ana.setParam('contrast', 1.0) 
    4543        ana.setParam('background', 0.0) 
     44        ana.setParam('sld', 1.0) 
     45        ana.setParam('sld_solvent', 0.0) 
    4646        ana.setParam('radius', radius) 
    4747        self.ana = ana 
    48          
     48 
    4949        self.model.setParam('lores_density', density) 
     50        self.model.setParam('scale' , 1.0) 
     51        self.model.setParam('background' , 0.0) 
     52        self.model.setParam('%s.contrast' % handle, 1.0) 
    5053        self.model.setParam('%s.radius' % handle, radius) 
    51         self.model.setParam('scale' , 1.0) 
    52         self.model.setParam('%s.contrast' % handle, 1.0) 
    53         self.model.setParam('background' , 0.0) 
    54          
    55          
     54 
     55 
    5656    def testdefault(self): 
    5757        """ Testing sphere """ 
     
    6060        sim_val = self.model.getIq2D(0.1, 0.1) 
    6161        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.1 ) 
    62          
     62 
    6363class TestCylinderAddObject(unittest.TestCase): 
    6464    """ Tests for oriented (2D) systems """ 
    65          
     65 
    6666    def setUp(self): 
    6767        """ Set up cylinder model """ 
    68         from sas.models.CylinderModel import CylinderModel 
    6968        radius = 5 
    7069        length = 40 
    7170        density = 20 
    72      
     71 
    7372        # Analytical model 
    7473        self.ana = CylinderModel() 
    7574        self.ana.setParam('scale', 1.0) 
    76         self.ana.setParam('contrast', 1.0) 
    7775        self.ana.setParam('background', 0.0) 
     76        self.ana.setParam('sld', 1.0) 
     77        self.ana.setParam('sld_solvent', 0.0) 
    7878        self.ana.setParam('radius', radius) 
    7979        self.ana.setParam('length', length) 
    80      
     80 
    8181        # Simulation model 
    8282        self.model = VolumeCanvas.VolumeCanvas() 
     
    8484        self.handle = self.model.addObject(cyl) 
    8585        self.model.setParam('lores_density', density) 
     86        self.model.setParam('scale' , 1.0) 
     87        self.model.setParam('background' , 0.0) 
     88        self.model.setParam('%s.contrast' % self.handle, 1.0) 
    8689        self.model.setParam('%s.radius' % self.handle, radius) 
    8790        self.model.setParam('%s.length' % self.handle, length) 
    88         self.model.setParam('scale' , 1.0) 
    89         self.model.setParam('%s.contrast' % self.handle, 1.0) 
    90         self.model.setParam('background' , 0.0) 
    91      
     91 
    9292    def testalongY(self): 
    9393        """ Testing cylinder along Y axis """ 
    94         self.ana.setParam('cyl_theta', math.pi/2.0) 
    95         self.ana.setParam('cyl_phi', math.pi/2.0) 
    96          
     94        self.ana.setParam('theta', math.pi/2.0) 
     95        self.ana.setParam('phi', math.pi/2.0) 
     96 
    9797        self.model.setParam('%s.orientation' % self.handle, [0,0,0]) 
    98          
    99         ana_val = self.ana.runXY([0.1, 0.2]) 
    100         sim_val = self.model.getIq2D(0.1, 0.2) 
    101         #print ana_val, sim_val, sim_val/ana_val 
    102          
    103         self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    104          
    105          
     98 
     99        ana_val = self.ana.runXY([0.1, 0.2]) 
     100        sim_val = self.model.getIq2D(0.1, 0.2) 
     101        #print ana_val, sim_val, sim_val/ana_val 
     102 
     103        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
     104 
     105 
    106106class TestCylinder(unittest.TestCase): 
    107107    """ Tests for oriented (2D) systems """ 
    108          
     108 
    109109    def setUp(self): 
    110110        """ Set up cylinder model """ 
    111         from sas.models.CylinderModel import CylinderModel 
    112111        radius = 5 
    113112        length = 40 
    114113        density = 20 
    115      
     114 
    116115        # Analytical model 
    117116        self.ana = CylinderModel() 
    118117        self.ana.setParam('scale', 1.0) 
    119         self.ana.setParam('contrast', 1.0) 
    120118        self.ana.setParam('background', 0.0) 
     119        self.ana.setParam('sld', 1.0) 
     120        self.ana.setParam('sld_solvent', 0.0) 
    121121        self.ana.setParam('radius', radius) 
    122122        self.ana.setParam('length', length) 
    123      
     123 
    124124        # Simulation model 
    125125        self.model = VolumeCanvas.VolumeCanvas() 
    126126        self.handle = self.model.add('cylinder') 
    127127        self.model.setParam('lores_density', density) 
     128        self.model.setParam('scale' , 1.0) 
     129        self.model.setParam('background' , 0.0) 
    128130        self.model.setParam('%s.radius' % self.handle, radius) 
    129131        self.model.setParam('%s.length' % self.handle, length) 
    130         self.model.setParam('scale' , 1.0) 
    131132        self.model.setParam('%s.contrast' % self.handle, 1.0) 
    132         self.model.setParam('background' , 0.0) 
    133      
     133 
    134134    def testalongY(self): 
    135135        """ Testing cylinder along Y axis """ 
    136         self.ana.setParam('cyl_theta', math.pi/2.0) 
    137         self.ana.setParam('cyl_phi', math.pi/2.0) 
    138          
     136        self.ana.setParam('theta', math.pi/2.0) 
     137        self.ana.setParam('phi', math.pi/2.0) 
     138 
    139139        self.model.setParam('%s.orientation' % self.handle, [0,0,0]) 
    140          
    141         ana_val = self.ana.runXY([0.1, 0.2]) 
    142         sim_val = self.model.getIq2D(0.1, 0.2) 
    143         #print ana_val, sim_val, sim_val/ana_val 
    144          
    145         self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    146          
     140 
     141        ana_val = self.ana.runXY([0.1, 0.2]) 
     142        sim_val = self.model.getIq2D(0.1, 0.2) 
     143        #print ana_val, sim_val, sim_val/ana_val 
     144 
     145        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
     146 
    147147    def testalongZ(self): 
    148148        """ Testing cylinder along Z axis """ 
    149         self.ana.setParam('cyl_theta', 0) 
    150         self.ana.setParam('cyl_phi', 0) 
    151          
     149        self.ana.setParam('theta', 0) 
     150        self.ana.setParam('phi', 0) 
     151 
    152152        self.model.setParam('%s.orientation' % self.handle, [90,0,0]) 
    153          
    154         ana_val = self.ana.runXY([0.1, 0.2]) 
    155         sim_val = self.model.getIq2D(0.1, 0.2) 
    156         #print ana_val, sim_val, sim_val/ana_val 
    157          
    158         self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    159          
     153 
     154        ana_val = self.ana.runXY([0.1, 0.2]) 
     155        sim_val = self.model.getIq2D(0.1, 0.2) 
     156        #print ana_val, sim_val, sim_val/ana_val 
     157 
     158        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
     159 
    160160    def testalongX(self): 
    161161        """ Testing cylinder along X axis """ 
    162         self.ana.setParam('cyl_theta', 1.57) 
    163         self.ana.setParam('cyl_phi', 0) 
    164          
     162        self.ana.setParam('theta', 1.57) 
     163        self.ana.setParam('phi', 0) 
     164 
    165165        self.model.setParam('%s.orientation' % self.handle, [0,0,90]) 
    166          
    167         ana_val = self.ana.runXY([0.1, 0.2]) 
    168         sim_val = self.model.getIq2D(0.1, 0.2) 
    169         #print ana_val, sim_val, sim_val/ana_val 
    170          
    171         self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    172          
     166 
     167        ana_val = self.ana.runXY([0.1, 0.2]) 
     168        sim_val = self.model.getIq2D(0.1, 0.2) 
     169        #print ana_val, sim_val, sim_val/ana_val 
     170 
     171        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
     172 
    173173class TestEllipsoid(unittest.TestCase): 
    174174    """ Tests for oriented (2D) systems """ 
    175          
     175 
    176176    def setUp(self): 
    177177        """ Set up ellipsoid """ 
    178         from sas.models.EllipsoidModel import EllipsoidModel 
    179          
     178 
    180179        radius_a = 60 
    181180        radius_b = 10 
    182181        density = 30 
    183          
     182 
    184183        self.ana = EllipsoidModel() 
    185184        self.ana.setParam('scale', 1.0) 
    186         self.ana.setParam('contrast', 1.0) 
    187185        self.ana.setParam('background', 0.0) 
    188         self.ana.setParam('radius_a', radius_a) 
    189         self.ana.setParam('radius_b', radius_b) 
     186        self.ana.setParam('sld', 1.0) 
     187        self.ana.setParam('sld_solvent', 0.0) 
     188        self.ana.setParam('radius_polar', radius_a) 
     189        self.ana.setParam('radius_equatorial', radius_b) 
    190190        # Default orientation is there=1.57, phi=0 
    191191        # Radius_a is along the x direction 
    192         
     192 
    193193        canvas = VolumeCanvas.VolumeCanvas() 
     194        self.handle = canvas.add('ellipsoid') 
    194195        canvas.setParam('lores_density', density) 
    195         self.handle = canvas.add('ellipsoid') 
     196        canvas.setParam('scale' , 1.0) 
     197        canvas.setParam('background' , 0.0) 
    196198        canvas.setParam('%s.radius_x' % self.handle, radius_a) 
    197199        canvas.setParam('%s.radius_y' % self.handle, radius_b) 
    198200        canvas.setParam('%s.radius_z' % self.handle, radius_b) 
    199         canvas.setParam('scale' , 1.0) 
    200201        canvas.setParam('%s.contrast' % self.handle, 1.0) 
    201         canvas.setParam('background' , 0.0) 
    202         self.canvas = canvas         
     202        self.canvas = canvas 
    203203 
    204204    def testalongX(self): 
    205205        """ Testing ellipsoid along X """ 
    206         self.ana.setParam('axis_theta', 1.57) 
    207         self.ana.setParam('axis_phi', 0) 
    208          
     206        self.ana.setParam('theta', 1.57) 
     207        self.ana.setParam('phi', 0) 
     208 
    209209        self.canvas.setParam('%s.orientation' % self.handle, [0,0,0]) 
    210          
     210 
    211211        ana_val = self.ana.runXY([0.1, 0.2]) 
    212212        sim_val = self.canvas.getIq2D(0.1, 0.2) 
    213213        #print ana_val, sim_val, sim_val/ana_val 
    214          
     214 
    215215        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    216216 
    217217    def testalongZ(self): 
    218218        """ Testing ellipsoid along Z """ 
    219         self.ana.setParam('axis_theta', 0) 
    220         self.ana.setParam('axis_phi', 0) 
    221          
     219        self.ana.setParam('theta', 0) 
     220        self.ana.setParam('phi', 0) 
     221 
    222222        self.canvas.setParam('%s.orientation' % self.handle, [0,90,0]) 
    223          
     223 
    224224        ana_val = self.ana.runXY([0.1, 0.2]) 
    225225        sim_val = self.canvas.getIq2D(0.1, 0.2) 
    226226        #print ana_val, sim_val, sim_val/ana_val 
    227          
     227 
    228228        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    229229 
    230230    def testalongY(self): 
    231231        """ Testing ellipsoid along Y """ 
    232         self.ana.setParam('axis_theta', math.pi/2.0) 
    233         self.ana.setParam('axis_phi', math.pi/2.0) 
    234          
     232        self.ana.setParam('theta', math.pi/2.0) 
     233        self.ana.setParam('phi', math.pi/2.0) 
     234 
    235235        self.canvas.setParam('%s.orientation' % self.handle, [0,0,90]) 
    236          
     236 
    237237        ana_val = self.ana.runXY([0.05, 0.15]) 
    238238        sim_val = self.canvas.getIq2D(0.05, 0.15) 
    239239        #print ana_val, sim_val, sim_val/ana_val 
    240          
     240 
    241241        try: 
    242242            self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    243         except: 
     243        except Exception: 
    244244            print("Error", ana_val, sim_val, sim_val/ana_val) 
    245             raise sys.exc_type, sys.exc_value 
     245            raise 
    246246 
    247247class TestCoreShell(unittest.TestCase): 
    248248    """ Tests for oriented (2D) systems """ 
    249          
     249 
    250250    def setUp(self): 
    251251        """ Set up zero-SLD-average core-shell model """ 
    252         from sas.models.CoreShellModel import CoreShellModel 
    253          
     252 
    254253        radius = 15 
    255254        thickness = 5 
    256255        density = 20 
    257          
     256 
    258257        core_vol = 4.0/3.0*math.pi*radius*radius*radius 
    259258        self.outer_radius = radius+thickness 
     
    262261 
    263262        self.density = density 
    264             
     263 
    265264        # Core-shell 
    266265        sphere = CoreShellModel() 
     266        sphere.setParam('scale', 1.0) 
     267        sphere.setParam('background', 0.0) 
    267268        # Core radius 
    268269        sphere.setParam('radius', radius) 
    269270        # Shell thickness 
    270271        sphere.setParam('thickness', thickness) 
    271         sphere.setParam('core_sld', 1.0) 
    272         sphere.setParam('shell_sld', self.shell_sld) 
    273         sphere.setParam('solvent_sld', 0.0) 
    274         sphere.setParam('background', 0.0) 
    275         sphere.setParam('scale', 1.0) 
     272        sphere.setParam('sld_core', 1.0) 
     273        sphere.setParam('sld_shell', self.shell_sld) 
     274        sphere.setParam('sld_solvent', 0.0) 
    276275        self.ana = sphere 
    277         
    278         canvas = VolumeCanvas.VolumeCanvas()         
     276 
     277        canvas = VolumeCanvas.VolumeCanvas() 
    279278        canvas.setParam('lores_density', self.density) 
    280          
     279        canvas.setParam('scale' , 1.0) 
     280        canvas.setParam('background' , 0.0) 
     281 
    281282        handle = canvas.add('sphere') 
    282283        canvas.setParam('%s.radius' % handle, self.outer_radius) 
    283284        canvas.setParam('%s.contrast' % handle, self.shell_sld) 
    284         
     285 
    285286        handle2 = canvas.add('sphere') 
    286287        canvas.setParam('%s.radius' % handle2, radius) 
    287288        canvas.setParam('%s.contrast' % handle2, 1.0) 
    288                 
    289         canvas.setParam('scale' , 1.0) 
    290         canvas.setParam('background' , 0.0) 
    291         self.canvas = canvas  
    292             
     289 
     290        self.canvas = canvas 
     291 
    293292    def testdefault(self): 
    294293        """ Testing default core-shell orientation """ 
    295294        ana_val = self.ana.runXY([0.1, 0.2]) 
    296295        sim_val, err = self.canvas.getIq2DError(0.1, 0.2) 
    297          
    298         self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    299                     
     296 
     297        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
     298 
    300299class TestCoreShellError(unittest.TestCase): 
    301300    """ Tests for oriented (2D) systems """ 
    302          
     301 
    303302    def setUp(self): 
    304303        """ Set up zero-SLD-average core-shell model """ 
    305         from sas.models.CoreShellModel import CoreShellModel 
    306          
     304 
    307305        radius = 15 
    308306        thickness = 5 
    309307        density = 5 
    310          
     308 
    311309        core_vol = 4.0/3.0*math.pi*radius*radius*radius 
    312310        self.outer_radius = radius+thickness 
     
    315313 
    316314        self.density = density 
    317             
     315 
    318316        # Core-shell 
    319317        sphere = CoreShellModel() 
     318        sphere.setParam('scale', 1.0) 
     319        sphere.setParam('background', 0.0) 
    320320        # Core radius 
    321321        sphere.setParam('radius', radius) 
    322322        # Shell thickness 
    323323        sphere.setParam('thickness', thickness) 
    324         sphere.setParam('core_sld', 1.0) 
    325         sphere.setParam('shell_sld', self.shell_sld) 
    326         sphere.setParam('solvent_sld', 0.0) 
    327         sphere.setParam('background', 0.0) 
    328         sphere.setParam('scale', 1.0) 
     324        sphere.setParam('sld_core', 1.0) 
     325        sphere.setParam('sld_shell', self.shell_sld) 
     326        sphere.setParam('sld_solvent', 0.0) 
    329327        self.ana = sphere 
    330         
    331         canvas = VolumeCanvas.VolumeCanvas()         
     328 
     329        canvas = VolumeCanvas.VolumeCanvas() 
    332330        canvas.setParam('lores_density', self.density) 
    333          
     331        canvas.setParam('scale' , 1.0) 
     332        canvas.setParam('background' , 0.0) 
     333 
    334334        handle = canvas.add('sphere') 
    335335        canvas.setParam('%s.radius' % handle, self.outer_radius) 
    336336        canvas.setParam('%s.contrast' % handle, self.shell_sld) 
    337         
     337 
    338338        handle2 = canvas.add('sphere') 
    339339        canvas.setParam('%s.radius' % handle2, radius) 
    340340        canvas.setParam('%s.contrast' % handle2, 1.0) 
    341                 
    342         canvas.setParam('scale' , 1.0) 
    343         canvas.setParam('background' , 0.0) 
    344         self.canvas = canvas  
    345                     
     341 
     342        self.canvas = canvas 
     343 
    346344    def testdefault(self): 
    347345        """ Testing default core-shell orientation """ 
    348346        ana_val = self.ana.runXY([0.1, 0.2]) 
    349347        sim_val, err = self.canvas.getIq2DError(0.1, 0.2) 
    350          
     348 
    351349        self.assert_( math.fabs(sim_val-ana_val) < 3.0 * err ) 
    352350 
     
    356354    def setUp(self): 
    357355        """ Set up ellipsoid """ 
    358         from sas.models.EllipsoidModel import EllipsoidModel 
    359          
     356 
    360357        radius_a = 10 
    361358        radius_b = 15 
    362359        density = 5 
    363          
     360 
    364361        self.ana = EllipsoidModel() 
    365362        self.ana.setParam('scale', 1.0) 
    366         self.ana.setParam('contrast', 1.0) 
    367363        self.ana.setParam('background', 0.0) 
    368         self.ana.setParam('radius_a', radius_a) 
    369         self.ana.setParam('radius_b', radius_b) 
    370  
    371         
     364        self.ana.setParam('sld', 1.0) 
     365        self.ana.setParam('sld_solvent', 1.0) 
     366        self.ana.setParam('radius_polar', radius_a) 
     367        self.ana.setParam('radius_equatorial', radius_b) 
     368 
     369 
    372370        canvas = VolumeCanvas.VolumeCanvas() 
     371        self.handle = canvas.add('ellipsoid') 
    373372        canvas.setParam('lores_density', density) 
    374         self.handle = canvas.add('ellipsoid') 
     373        canvas.setParam('scale' , 1.0) 
     374        canvas.setParam('background' , 0.0) 
    375375        canvas.setParam('%s.radius_x' % self.handle, radius_a) 
    376376        canvas.setParam('%s.radius_y' % self.handle, radius_b) 
    377377        canvas.setParam('%s.radius_z' % self.handle, radius_b) 
    378         canvas.setParam('scale' , 1.0) 
    379378        canvas.setParam('%s.contrast' % self.handle, 1.0) 
    380         canvas.setParam('background' , 0.0) 
    381         self.canvas = canvas      
    382             
    383         self.ana.setParam('axis_theta', 1.57) 
    384         self.ana.setParam('axis_phi', 0) 
    385          
     379        self.canvas = canvas 
     380 
     381        self.ana.setParam('theta', 1.57) 
     382        self.ana.setParam('phi', 0) 
     383 
    386384        self.canvas.setParam('%s.orientation' % self.handle, [0,0,0]) 
    387          
     385 
    388386 
    389387    def testRunXY_List(self): 
     
    392390        sim_val = self.canvas.runXY([0.1, 0.2]) 
    393391        #print ana_val, sim_val, sim_val/ana_val 
    394          
     392 
    395393        try: 
    396394            self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    397         except: 
     395        except Exception: 
    398396            print("Error", ana_val, sim_val, sim_val/ana_val) 
    399             raise sys.exc_type, sys.exc_value 
     397            raise 
    400398 
    401399    def testRunXY_float(self): 
     
    404402        sim_val = self.canvas.runXY(0.1) 
    405403        #print ana_val, sim_val, sim_val/ana_val 
    406          
     404 
    407405        try: 
    408406            self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    409         except: 
     407        except Exception: 
    410408            print("Error", ana_val, sim_val, sim_val/ana_val) 
    411             raise sys.exc_type, sys.exc_value 
     409            raise 
    412410 
    413411    def testRun_float(self): 
     
    416414        sim_val = self.canvas.run(0.1) 
    417415        #print ana_val, sim_val, sim_val/ana_val 
    418          
     416 
    419417        try: 
    420418            self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    421         except: 
     419        except Exception: 
    422420            print("Error", ana_val, sim_val, sim_val/ana_val) 
    423             raise sys.exc_type, sys.exc_value 
     421            raise 
    424422 
    425423    def testRun_list(self): 
     
    428426        sim_val = self.canvas.run([0.1, 33.0]) 
    429427        #print ana_val, sim_val, sim_val/ana_val 
    430          
     428 
    431429        try: 
    432430            self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    433         except: 
     431        except Exception: 
    434432            print("Error", ana_val, sim_val, sim_val/ana_val) 
    435             raise sys.exc_type, sys.exc_value 
     433            raise 
    436434 
    437435class TestParamChange(unittest.TestCase): 
    438436    """ Tests for oriented (2D) systems """ 
    439          
     437 
    440438    def setUp(self): 
    441439        """ Set up cylinder model """ 
    442         from sas.models.CylinderModel import CylinderModel 
    443440        radius = 5 
    444441        length = 40 
    445442        density = 20 
    446      
     443 
    447444        # Analytical model 
    448445        self.ana = CylinderModel() 
    449446        self.ana.setParam('scale', 1.0) 
    450         self.ana.setParam('contrast', 1.0) 
    451447        self.ana.setParam('background', 0.0) 
     448        self.ana.setParam('sld', 1.0) 
     449        self.ana.setParam('sld_solvent', 0.0) 
    452450        self.ana.setParam('radius', radius) 
    453451        self.ana.setParam('length', length) 
    454         self.ana.setParam('cyl_theta', math.pi/2.0) 
    455         self.ana.setParam('cyl_phi', math.pi/2.0) 
    456      
     452        self.ana.setParam('theta', math.pi/2.0) 
     453        self.ana.setParam('phi', math.pi/2.0) 
     454 
    457455        # Simulation model 
    458456        self.model = VolumeCanvas.VolumeCanvas() 
    459457        self.handle = self.model.add('cylinder') 
    460458        self.model.setParam('lores_density', density) 
     459        self.model.setParam('scale' , 1.0) 
     460        self.model.setParam('background' , 0.0) 
    461461        self.model.setParam('%s.radius' % self.handle, radius) 
    462462        self.model.setParam('%s.length' % self.handle, length) 
    463         self.model.setParam('scale' , 1.0) 
    464463        self.model.setParam('%s.contrast' % self.handle, 1.0) 
    465         self.model.setParam('background' , 0.0) 
    466464        self.model.setParam('%s.orientation' % self.handle, [0,0,0]) 
    467      
     465 
    468466    def testalongY(self): 
    469467        """ Test that a parameter change forces the generation 
     
    472470        ana_val = self.ana.runXY([0.1, 0.2]) 
    473471        sim_val = self.model.getIq2D(0.1, 0.2) 
    474          
    475         self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
    476          
     472 
     473        self.assert_( math.fabs(sim_val/ana_val-1.0)<0.05 ) 
     474 
    477475        # Change the radius a re-evaluate 
    478476        self.ana.setParam('radius', 10) 
    479477        self.model.setParam('%s.radius' % self.handle, 10) 
    480          
     478 
    481479        ana_val = self.ana.runXY([0.1, 0.2]) 
    482480        sim_val = self.model.getIq2D(0.1, 0.2) 
     
    485483 
    486484if __name__ == '__main__': 
    487     unittest.main()         
     485    unittest.main() 
Note: See TracChangeset for help on using the changeset viewer.