diff --git a/DAS/simulator.py b/DAS/simulator.py index 75a6692..bbb200c 100644 --- a/DAS/simulator.py +++ b/DAS/simulator.py @@ -42,7 +42,6 @@ class Simulator: self.validators.append(val) def initNetwork(self): - self.shape.netDegree = 6 rowChannels = [[] for i in range(self.shape.blockSize)] columnChannels = [[] for i in range(self.shape.blockSize)] for v in self.validators: diff --git a/study.py b/study.py index e1ce157..c5eed14 100644 --- a/study.py +++ b/study.py @@ -26,20 +26,22 @@ def study(): for nv in range(config.nvStart, config.nvStop+1, config.nvStep): for blockSize in range(config.blockSizeStart, config.blockSizeStop+1, config.blockSizeStep): for fr in range(config.failureRateStart, config.failureRateStop+1, config.failureRateStep): - for netDegree in range(config.netDegreeStart, config.netDegreeStop, config.netDegreeStep): + for netDegree in range(config.netDegreeStart, config.netDegreeStop+1, config.netDegreeStep): for chi in range(config.chiStart, config.chiStop+1, config.chiStep): if not config.deterministic: random.seed(datetime.now()) - shape = Shape(blockSize, nv, fr, chi, netDegree, run) - sim.resetShape(shape) - sim.initValidators() - sim.initNetwork() - result = sim.run() - sim.logger.info("Shape: %s ... Block Available: %d" % (str(sim.shape.__dict__), result.blockAvailable), extra=sim.format) - results.append(copy.deepcopy(result)) - simCnt += 1 + # Network Degree has to be an even number + if netDegree % 2 == 0: + shape = Shape(blockSize, nv, fr, chi, netDegree, run) + sim.resetShape(shape) + sim.initValidators() + sim.initNetwork() + result = sim.run() + sim.logger.info("Shape: %s ... Block Available: %d" % (str(sim.shape.__dict__), result.blockAvailable), extra=sim.format) + results.append(copy.deepcopy(result)) + simCnt += 1 end = time.time() sim.logger.info("A total of %d simulations ran in %d seconds" % (simCnt, end-start), extra=sim.format)