예제 #1
0
파일: swmm.py 프로젝트: febex2008/itzi2D
 def swmm_step(self):
     '''Advances the simulation by one routing time step
     '''
     c_elapsed_time = c.c_double(self.elapsed_time)
     err = self.c_swmm5.swmm_step(c.byref(c_elapsed_time))
     self.elapsed_time = c_elapsed_time.value
     if err != 0:
         raise swmm_error.SwmmError(err)
     return self
예제 #2
0
파일: swmm.py 프로젝트: febex2008/itzi2D
 def swmm_start(self, save_results=1):
     '''Starts a swmm simulation
     '''
     if not self.is_open:
         raise swmm_error.NotOpenError
     err = self.c_swmm5.swmm_start(c.c_int(save_results))
     if err != 0:
         raise swmm_error.SwmmError(err)
     self.is_started = True
     return self
예제 #3
0
파일: swmm.py 프로젝트: febex2008/itzi2D
 def swmm_end(self):
     '''Ends a swmm simulation
     '''
     if not self.is_started:
         raise swmm_error.NotStartedError
     err = self.c_swmm5.swmm_end()
     if err != 0:
         raise swmm_error.SwmmError(err)
     self.is_started = False
     return self
예제 #4
0
파일: swmm.py 프로젝트: febex2008/itzi2D
 def swmm_open(self, input_file, report_file, output_file):
     '''Opens a swmm project
     '''
     err = self.c_swmm5.swmm_open(c.c_char_p(input_file),
                                  c.c_char_p(report_file),
                                  c.c_char_p(output_file))
     if err != 0:
         raise swmm_error.SwmmError(err)
     else:
         self.input_file = input_file
         self.report_file = report_file
         self.output_file = output_file
         self.is_open = True
         self.routing_model = self.get_RouteModel()
     return self