virtual double y(size_t i) const { return d_y(x(i)); }
virtual double y(double x) const { return d_y(x); }