def test_radar_grid_start_within(self): event_container = EventContainer(self.scenario_path) self.assertEquals( len( event_container.events(event_object=RadarGrid, sim_time=120, start_within=30)), 1) self.assertEquals( len( event_container.events(event_object=RadarGrid, sim_time=150, start_within=20)), 0)
def test_radar_grid_ends_within(self): event_container = EventContainer(self.scenario_path) # no ending self.assertEquals( len( event_container.events(event_object=RadarGrid, sim_time=10000, ends_within=20)), 0) # end at 1000 self.assertEquals( len( event_container.events(event_object=RadarGrid, sim_time=1000, ends_within=20)), 1)
def main(): """main program""" arguments = parse_args() if arguments.color: colorlogs() # redirect stdout to /dev/null under osx so we get only 1 output stream f = open(os.devnull, 'w') sys.stderr = f logger.info('Subgridpy') logger.setLevel(logging.DEBUG) if arguments.scenariodir: logger.info('Using scenario dir: %s' % arguments.scenariodir) scenario = EventContainer(arguments.scenariodir) # scenario events from arguments if arguments.bui: if str(arguments.bui) in AREA_WIDE_RAIN.keys(): scenario.add( AreaWideGrid, sim_time_start=0, sim_time_end=None, rain_definition=str(arguments.bui), type=None) if arguments.radar: scenario.add( RadarGrid, sim_time_start=0, sim_time_end=None, radar_dt=arguments.radar, sync=1, multiplier=1, type=None) logger.info('---- Scenario summary ----') for line in scenario.summary(): logger.info(line) subgrid = SubgridWrapper(mdu=arguments.mdu, set_logger=arguments.verbose, output_dir=arguments.outputdir) subgrid.start() # Should not be needed # subgrid.library.initmodel() rain_grid_container = RainGridContainer(subgrid) if arguments.radar: subgrid.subscribe_dataset(rain_grid_container.memcdf_name) if arguments.tend: t_end = arguments.tend else: # default t_end = subgrid.get_nd('tend') logger.info('End time (seconds): %r', t_end) t = subgrid.get_nd('t1') # by reference while t < t_end: apply_events(subgrid, scenario, rain_grid_container) subgrid.update(-1) t = subgrid.get_nd('t1') # by reference clean_events(scenario, rain_grid_container)
def test_radar_grid_ends_within(self): event_container = EventContainer(self.scenario_path) # no ending self.assertEquals(len(event_container.events(event_object=RadarGrid, sim_time=10000, ends_within=20)), 0) # end at 1000 self.assertEquals(len(event_container.events(event_object=RadarGrid, sim_time=1000, ends_within=20)), 1)
def test_radar_grid_start_within(self): event_container = EventContainer(self.scenario_path) self.assertEquals(len(event_container.events(event_object=RadarGrid, sim_time=120, start_within=30)), 1) self.assertEquals(len(event_container.events(event_object=RadarGrid, sim_time=150, start_within=20)), 0)
def test_radar_grid_time(self): event_container = EventContainer(self.scenario_path) self.assertEquals(len(event_container.events(event_object=RadarGrid, sim_time=120.0)), 1)
def test_events(self): event_container = EventContainer(self.scenario_path) self.assertEquals(len(event_container.events(event_object=RadarGrid)), 3)
def main(): """main program""" arguments = parse_args() if arguments.color: colorlogs() # redirect stdout to /dev/null under osx so we get only 1 output stream f = open(os.devnull, 'w') sys.stderr = f logger.info('Subgridpy') logger.setLevel(logging.DEBUG) if arguments.scenariodir: logger.info('Using scenario dir: %s' % arguments.scenariodir) scenario = EventContainer(arguments.scenariodir) # scenario events from arguments if arguments.bui: if str(arguments.bui) in AREA_WIDE_RAIN.keys(): scenario.add(AreaWideGrid, sim_time_start=0, sim_time_end=None, rain_definition=str(arguments.bui), type=None) if arguments.radar: scenario.add(RadarGrid, sim_time_start=0, sim_time_end=None, radar_dt=arguments.radar, sync=1, multiplier=1, type=None) logger.info('---- Scenario summary ----') for line in scenario.summary(): logger.info(line) subgrid = SubgridWrapper(mdu=arguments.mdu, set_logger=arguments.verbose, output_dir=arguments.outputdir) subgrid.start() # Should not be needed # subgrid.library.initmodel() rain_grid_container = RainGridContainer(subgrid) if arguments.radar: subgrid.subscribe_dataset(rain_grid_container.memcdf_name) if arguments.tend: t_end = arguments.tend else: # default t_end = subgrid.get_nd('tend') logger.info('End time (seconds): %r', t_end) t = subgrid.get_nd('t1') # by reference while t < t_end: apply_events(subgrid, scenario, rain_grid_container) subgrid.update(-1) t = subgrid.get_nd('t1') # by reference clean_events(scenario, rain_grid_container)
def test_radar_grid_time(self): event_container = EventContainer(self.scenario_path) self.assertEquals( len(event_container.events(event_object=RadarGrid, sim_time=120.)), 1)
def test_smoke(self): EventContainer()