def trial_stats(self): p_list = [] for i in range(self.T): perco = Percolation(self.N) while (True): row = random.randint(1, N) col = random.randint(1, N) perco.open(row, col) if perco.percolated(): p = float(perco.grid.count(1) / (self.N * self.N)) # print('P = ' + str(p)) break p_list.append(p) print(str(self.T) + ' Times trial Mean: ' + str(self.mean(p_list))) print(str(self.T) + ' Times trial Stddev: ' + str(self.stddev(p_list))) print( str(self.T) + ' Times trial confidence interval: ' + str(self.confidence_interval(p_list)))
self.ax.fill(x1, y1, color='b') if __name__ == '__main__': N = int(input('Enter your N: ')) perco = Percolation(N) #手动输入 #while(True): # s = input('Enter a site as x y: ') # [row,col] = [int(i) for i in s.split()] # perco.open(row,col) # count = count+1 # if perco.percolated(): # print(str(count)+' open site(s) to percolate the grid with size'+str(N)+'*'+str(N)) # break #随机open while (True): row = random.randint(1, N) col = random.randint(1, N) perco.open(row, col) if perco.percolated(): print( str(perco.grid.count(1)) + ' open site(s) to percolate the grid with size ' + str(N) + '*' + str(N)) break v = visualiser(N, perco.grid, perco) v.opened() plt.show()