def __init__(self, bounds): self.count = len(bounds) sorted_names = sorted(bounds) hashed_names = map(lambda name: json.dumps(name), sorted_names) assigned_name_indices = list(range(self.count)) self.name_to_vertex_id_map = dict( zip(hashed_names, assigned_name_indices)) self.vertex_id_to_name_map = sorted_names self.vertices_for_values = Math.k_simplex(self.count)
def test_KSimplex(self): kSimplex1000 = Math.k_simplex(500) # assert that all distances between the points in the simplex are almost exactly 1 self.assertTrue(np.all(np.abs(pdist(kSimplex1000) - 1) < .000001))