def __init__(self, *args, **kwargs): braindata = kwargs.get("braindata", None) if braindata is None: print("Intializing brain...") print("Neuron count: {0}".format(args[0])) print("Clusters: {0}".format(args[1])) self.num_neurons = args[0] self.num_clusters = args[1] self.max_value = args[2] for n in xrange(self.num_clusters): x = randrange(0, self.max_value) y = randrange(0, self.max_value) z = randrange(0, self.max_value) self.clusters.insert(len(self.clusters), Cluster(x, y, z, n)) else: nodesfile = braindata + "/neurons.csv" clustersfile = braindata + "/clusters.csv" edgesfile = braindata + "/edges.csv" with open(nodesfile, "r") as nfile: self.num_neurons = nfile.readline().strip() # read first line count in for line in nfile: line = line.strip() ndata = line.split(", ") self.neurons.append(Neuron(int(ndata[1]), int(ndata[2]), int(ndata[3]), int(ndata[0]), int(ndata[4]))) with open(clustersfile, "r") as cfile: self.num_clusters = cfile.readline().strip() # read first line count in for line in cfile: line = line.strip() cdata = line.split(", ") temp_cluster = Cluster(float(cdata[1]), float(cdata[2]), float(cdata[3]), int(cdata[0])) for neuron in self.neurons: # print(neuron.info()) if int(cdata[0]) == int(neuron.get_cluster()): temp_cluster.add_neuron(neuron) self.clusters.insert(len(self.clusters), temp_cluster) with open(edgesfile, "r") as efile: efile.readline().strip() # dump edges count for line in efile: line = line.strip() edata = line.split(", ") self.edges.append([int(edata[0]), int(edata[1])])