21 static std::string str(
const X1& x1)
23 return "⌈" + x1->str() +
"⌉";
27 static std::pair<Index,Index> output_shape([[maybe_unused]]
const X1& s1)
32 static Interval fwd(
const Interval& x1);
33 static ScalarType fwd_natural(
const ScalarType& x1);
34 static ScalarType fwd_centered(
const ScalarType& x1);
35 static void bwd(
const Interval& y, Interval& x1);
42 ceil(
const ScalarExpr& x1)
44 return { std::make_shared<AnalyticOperationExpr<CeilOp,ScalarType,ScalarType>>(x1) };
54 inline ScalarType CeilOp::fwd_natural(
const ScalarType& x1)
62 inline ScalarType CeilOp::fwd_centered(
const ScalarType& x1)
83 double r = std::floor(y.ub());
84 double l = std::ceil(y.lb());
90 x1 &= Interval(l,r) + Interval(-1,0);
Interval class, for representing closed and connected subsets of .
Definition codac2_Interval.h:62
Interval ceil(const Interval &x)
Returns ceil of .
Definition codac2_Interval_operations_impl.h:294