Ignore:
Timestamp:
Sep 5, 2007, 4:42:58 PM (17 years ago)
Author:
ole
Message:

Implemented ticket:192

File:
1 edited

Legend:

Unmodified
Added
Removed
  • anuga_core/source/anuga/shallow_water/test_data_manager.py

    r4701 r4704  
    256256        os.remove(sww.filename)
    257257
    258     def NOtest_sww_extrema(self):
     258    def test_sww_extrema(self):
    259259        """Test that extrema of quantities can be retrieved at every vertex
    260260        Extrema are updated at every *internal* timestep
     
    263263        domain = self.domain
    264264       
    265         domain.set_name('datatest' + str(id(self)))
     265        domain.set_name('extrema_test' + str(id(self)))
    266266        domain.format = 'sww'
    267267        domain.smooth = True
     
    271271        assert domain.monitor_time_interval is None       
    272272       
    273         domain.set_quantities_to_be_monitored(['stage', 'ymomentum'])
    274        
    275         assert len(domain.quantities_to_be_monitored) == 2
    276         assert domain.quantities_to_be_monitored[0] == 'stage'
    277         assert domain.quantities_to_be_monitored[1] == 'ymomentum'       
     273        domain.set_quantities_to_be_monitored(['xmomentum',
     274                                               'ymomentum',
     275                                               'stage-elevation'])
     276       
     277        assert len(domain.quantities_to_be_monitored) == 3
     278        assert domain.quantities_to_be_monitored.has_key('stage-elevation')
     279        assert domain.quantities_to_be_monitored.has_key('xmomentum')               
     280        assert domain.quantities_to_be_monitored.has_key('ymomentum')       
    278281        assert domain.monitor_polygon is None
    279282        assert domain.monitor_time_interval is None       
     
    282285
    283286        for t in domain.evolve(yieldstep = 1, finaltime = 1):
    284             print domain.timestepping_statistics()
    285             print domain.quantity_statistics()
     287            pass
     288            #print domain.timestepping_statistics()
     289            #print domain.quantity_statistics(precision = '%.8f')
    286290
    287291           
     
    290294
    291295        # Get the variables
    292         extrema = fid.variables['stage_extrema'][:]
    293         assert allclose(range, [])
    294 
    295         extrema = fid.variables['xmomentum_extrema'][:]
    296         assert allclose(range,[])
    297        
    298         extrema = fid.variables['ymomentum_extrema'][:]
    299         assert allclose(range,[])
     296        extrema = fid.variables['stage-elevation:extrema'][:]
     297        assert allclose(extrema, [0.00, 0.30])
     298
     299        loc = fid.variables['stage-elevation:min_location'][:]
     300        assert allclose(loc, [0.16666667, 0.33333333])
     301
     302        loc = fid.variables['stage-elevation:max_location'][:]       
     303        assert allclose(loc, [0.8333333, 0.16666667])       
     304
     305        time = fid.variables['stage-elevation:max_time'][:]
     306        assert allclose(time, 0.0)               
     307
     308        extrema = fid.variables['xmomentum:extrema'][:]
     309        assert allclose(extrema,[-0.06062178, 0.47886313])
     310       
     311        extrema = fid.variables['ymomentum:extrema'][:]
     312        assert allclose(extrema,[0.00, 0.06241221])       
    300313
    301314       
     
    67236736        number_of_points = len(points_utm)
    67246737        sww = Write_sww()
    6725         sww.header(outfile, times, number_of_volumes,
     6738        sww.store_header(outfile, times, number_of_volumes,
    67266739                         number_of_points, description='fully sick testing',
    6727                              verbose=self.verbose)
    6728         sww.triangulation(outfile, points_utm, volumes,
    6729                                     elevation,  new_origin=new_origin,
    6730                                     verbose=self.verbose)       
     6740                         verbose=self.verbose)
     6741        sww.store_triangulation(outfile, points_utm, volumes,
     6742                                elevation,  new_origin=new_origin,
     6743                                verbose=self.verbose)       
    67316744        outfile.close()
    67326745        fid = NetCDFFile(filename)
     
    67556768        number_of_points = len(points_utm)
    67566769        sww = Write_sww()
    6757         sww.header(outfile, times, number_of_volumes,
     6770        sww.store_header(outfile, times, number_of_volumes,
    67586771                         number_of_points, description='fully sick testing',
    67596772                         verbose=self.verbose)
    6760         sww.triangulation(outfile, points_utm, volumes,
    6761                                     elevation,  new_origin=new_origin,
    6762                                     verbose=self.verbose)       
     6773        sww.store_triangulation(outfile, points_utm, volumes,
     6774                                elevation,  new_origin=new_origin,
     6775                                verbose=self.verbose)       
    67636776        outfile.close()
    67646777        fid = NetCDFFile(filename)
     
    67916804        number_of_points = len(points_utm)
    67926805        sww = Write_sww()
    6793         sww.header(outfile, times, number_of_volumes,
     6806        sww.store_header(outfile, times, number_of_volumes,
    67946807                         number_of_points, description='fully sick testing',
    67956808                         verbose=self.verbose)
    6796         sww.triangulation(outfile, points_utm, volumes,
    6797                                     elevation,  new_origin=new_origin,
    6798                                     verbose=self.verbose)       
     6809        sww.store_triangulation(outfile, points_utm, volumes,
     6810                                elevation,  new_origin=new_origin,
     6811                                verbose=self.verbose)       
    67996812        outfile.close()
    68006813        fid = NetCDFFile(filename)
     
    68306843        number_of_points = len(points_utm)
    68316844        sww = Write_sww()
    6832         sww.header(outfile, times, number_of_volumes,
     6845        sww.store_header(outfile, times, number_of_volumes,
    68336846                         number_of_points, description='fully sick testing',
    68346847                         verbose=self.verbose)
    6835         sww.triangulation(outfile, points_utm, volumes,
    6836                                     elevation,  new_origin=new_origin,
    6837                                     points_georeference=points_georeference,
    6838                                     verbose=self.verbose)       
     6848        sww.store_triangulation(outfile, points_utm, volumes,
     6849                                elevation,  new_origin=new_origin,
     6850                                points_georeference=points_georeference,
     6851                                verbose=self.verbose)       
    68396852        outfile.close()
    68406853        fid = NetCDFFile(filename)
     
    68666879        number_of_points = len(points_utm)
    68676880        sww = Write_sww()
    6868         sww.header(outfile, times, number_of_volumes,
     6881        sww.store_header(outfile, times, number_of_volumes,
    68696882                         number_of_points, description='fully sick testing',
    68706883                         verbose=self.verbose)
    6871         sww.triangulation(outfile, points_utm, volumes,
    6872                                     elevation,  new_origin=new_origin,
    6873                                     points_georeference=points_georeference,
    6874                                     verbose=self.verbose)       
     6884        sww.store_triangulation(outfile, points_utm, volumes,
     6885                                elevation,  new_origin=new_origin,
     6886                                points_georeference=points_georeference,
     6887                                verbose=self.verbose)       
    68756888        outfile.close()
    68766889        fid = NetCDFFile(filename)
     
    72817294    #suite = unittest.makeSuite(Test_Data_Manager,'test_sww_header')
    72827295    #suite = unittest.makeSuite(Test_Data_Manager,'test_export_grid_parallel')
    7283     #suite = unittest.makeSuite(Test_Data_Manager,'t')
    72847296    suite = unittest.makeSuite(Test_Data_Manager,'test')
     7297    #suite = unittest.makeSuite(Test_Data_Manager,'test_sww_extrema')
    72857298
    72867299   
Note: See TracChangeset for help on using the changeset viewer.