def METHOD_NAME(self, eval_points: NDArrayFloat) -> NDArrayFloat:
    points_values_per_cell = self._cell_points_values(eval_points)
    cell_points_values = np.swapaxes(points_values_per_cell, -2, -1)
    cell_points_values = cell_points_values.reshape(-1, len(eval_points))
    indexes = self.cells.ravel()
    eval_matrix = np.zeros((self.n_basis, len(eval_points)))
    np.add.at(eval_matrix, indexes, cell_points_values)
    return eval_matrix