12 leftExtrapolationLinear_(
false),
13 rightExtrapolationLinear_(
false),
15 monotonicityKnown_(
true) {}
29 const double sg = delta > 0.0 ? 1.0 : -1.0;
31 if ((data_[
i] - data_[
i - 1]) * sg <= 0.0)
39 const bool leftExtrapolationLinear,
40 const bool rightExtrapolationLinear)
const {
42 return std::unique_ptr<LinInterpolatedTable1D>(
nullptr);
44 std::vector<std::pair<double, double> > points;
48 points.push_back(std::pair<double, double>(
data_[0],
xmin_));
56 points.push_back(std::pair<double, double>(
data_[0],
xmin_));
68 }
else if (x >=
xmax_) {
74 const unsigned ux =
static_cast<unsigned>((x -
xmin_) /
binwidth_);
std::vector< double > data_
const edm::EventSetup & c
bool operator==(const LinInterpolatedTable1D &r) const
bool leftExtrapolationLinear() const
bool isMonotonous() const
bool rightExtrapolationLinear_
std::unique_ptr< LinInterpolatedTable1D > inverse(unsigned npoints, bool leftExtrapolationLinear, bool rightExtrapolationLinear) const
double operator()(const double &x) const override
bool rightExtrapolationLinear() const
LinInterpolatedTable1D(const RealN *data, unsigned npoints, double x_min, double x_max, bool leftExtrapolationLinear, bool rightExtrapolationLinear)
bool leftExtrapolationLinear_