def __init__(self, manager): super(Simulation, self).__init__() self.manager = manager self.running = True self.state = Simulation.init self.prevstate = None # Set starting system time [milliseconds] self.syst = 0.0 # Benchmark time and timespan [seconds] self.bencht = 0.0 self.benchdt = -1.0 # Starting simulation time [seconds] self.simt = 0.0 # Simulation timestep [seconds] self.simdt = settings.simdt # Simulation timestep multiplier: run sim at n x speed self.dtmult = 1.0 # Simulated clock time self.deltclock = 0.0 self.simtclock = self.simt # System timestep [milliseconds] self.sysdt = int(self.simdt / self.dtmult * 1000) # Flag indicating running at fixed rate or fast time self.ffmode = False self.ffstop = None # If available, name of the currently running scenario self.scenname = 'Untitled' # Simulation objects self.navdb = Navdatabase('global') self.screenio = ScreenIO(self, manager) self.traf = Traffic(self.navdb) self.birds = Birds() self.cdbirds = Conflict_Detection_Birds(self.traf, self.birds) # Additional modules self.metric = Metric() self.beastfeed = Modesbeast(self.traf) # Initialize the stack module once stack.init(self, self.traf, self.birds, self.screenio)
def __init__(self, gui, navdb): # simmode self.mode = self.init self.simt = 0.0 # Runtime self.tprev = 0.0 self.syst0 = 0.0 self.dt = 0.0 self.syst = 0.0 # system time # Directories self.datadir = "./data/" self.dts = [] # Fixed dt mode for fast forward self.ffmode = False # Default FF off self.fixdt = 0.1 # Default time step self.ffstop = -1. # Indefinitely # Simulation objects # Simulation objects self.navdb = Navdatabase('global') self.screenio = ScreenIO(self, manager) self.traf = Traffic(self.navdb) self.birds = Birds() self.cdbirds = Conflict_Detection_Birds(self.traf, self.birds) self.metric = Metric() self.stack = stack.init(self, self.traf, self.birds, self.screenio) # Additional modules self.beastfeed = Modesbeast(self.traf) self.telnet_in = StackTelnetServer() # Initialize the stack module once stack.init(self, self.traf, gui.scr)