def __call__(self, D, index_set): """ @param D: the distance matrix @param index_set: the subset of indices that will be removed from the updated distance matrix @return: an updated distance matrix """ if len(D) < self.large_matrix_size: return BuildTreeTopology.update_nj(D, index_set) else: return BuildTreeTopology.update_using_laplacian(D, index_set)