def run_simulation(steps=50, numbugs=20, draw=False, sleep=0): s = Heatbugs() LOG.info("Starting simulation.") drawlib.draw_init(s.grid) for step in range(steps): LOG.info("Step: %s" % step) s.diffuse() for bug in s.bugs: s.step_bug(bug) if draw: drawlib.draw_grid(s.grid) if sleep: time.sleep(sleep) LOG.info("Done! Max heat: %s" % s.max_heat) return s
def run_simulation(steps=50, numbugs=300, draw=False, sleep=0): g = GridSpace(cell_fn=BugCell) LOG.info("Starting simulation.") bugs = init_grid(g, numbugs=numbugs) drawlib.draw_init(g) for step in range(steps): LOG.info("Step: %s" % step) diffuse(g) for bug in bugs: #sys.stdout.write('.') #sys.stdout.flush() step_bug(g, bug) if draw: drawlib.draw_grid(g) if sleep: time.sleep(sleep) LOG.info("Done! Max heat: %s" % MAX_HEAT) return g