in SyntheticDataGenerators.py [0:0]
def genData(self):
for i in range(self.size):
U = self.rng.uniform(0, i + self.alpha)
do_split = self.rng.uniform(0, 1) < self.beta
parent = int(U)
if U >= i or (parent in self.roots and do_split):
self.nclusters += 1
self.atoms.append(self.nclusters)
self.roots.add(i)
yield self.nclusters
else:
self.atoms.append(self.atoms[parent])
yield self.atoms[parent]