20 "x_values",
"The x-values used in the interpolation function.");
22 "y_values",
"The x-values used in the interpolation function.");
32 x_values_(params.GetParamVectorValue<double>(
"x_values")),
33 y_values_(params.GetParamVectorValue<double>(
"y_values")),
34 num_vals_(x_values_.size())
38 std::string(
"Number of y-values (") + std::to_string(
y_values_.size()) +
39 ") must match number of x-values (" + std::to_string(
num_vals_) +
".");
42 "Number of pairs must at least be 2");
47 for (
size_t k = 0; k < max_k; ++k)
51 "x-values not monitonically "
60 if (values.size() != 1)
69 if (values.size() != 1)
82 for (
size_t k = 0; k < max_k; ++k)
100 for (
size_t k = 0; k < max_k; ++k)
#define ChiLogicalError(message)
#define ChiInvalidArgumentIf(condition, message)
#define ChiInvalidArgument(message)
static chi::InputParameters GetInputParameters()
static chi::InputParameters GetInputParameters()
double ScalarFunctionSlope1Parameter(double x) const override
std::vector< double > delta_x_values_
std::vector< double > Evaluate(const std::vector< double > &values) const override
std::vector< double > EvaluateSlope(const std::vector< double > &values) const override
const std::vector< double > x_values_
PiecewiseLinear1D(const chi::InputParameters ¶ms)
const std::vector< double > y_values_
double ScalarFunction1Parameter(double x) const override
std::vector< double > slopes_
RegisterChiObject(chi_math::functions, LuaDimAToDimB)