23 void SetSamples(
const std::vector<std::vector<double>>& x,
const std::vector<double>& y)
25 assert(x.size() == y.size());
27 assert(x[0].size() == 2);
29 if (x.empty() || y.empty())
32 interpolators.clear();
35 interpolators.emplace_back();
36 interpolators.back().SetTrueInterpolation(trueInterpolation);
37 xValues.push_back(x[0][0]);
39 std::vector<double> xvals;
40 std::vector<double> yvals;
42 for (
size_t i = 0; i < x.size(); ++i)
44 if (xValues.back() != x[i][0])
46 interpolators.back().SetSamples(xvals, yvals);
49 interpolators.emplace_back();
50 interpolators.back().SetTrueInterpolation(trueInterpolation);
51 xValues.push_back(x[i][0]);
54 xvals.push_back(x[i][1]);
55 yvals.push_back(y[i]);
59 interpolators.back().SetSamples(xvals, yvals);