def simulate(self, name=None, resource_limit=None): model = ModelBuilder() self.models, self.rm, self.dm = model.build_all( resource_limit=resource_limit) self._initialize_queue() simulation = time.time() while not self.execution_queue.is_empty(): current = self.execution_queue.pop() if current.start > self.end: break self._simulate(current) print('Simulation time: ' + str(time.time() - simulation)) LogWriter.write(self.log_queue, name=name)