18 inline IntervalVector to_IntervalVector(
const Interval& x)
23 inline IntervalVector to_IntervalVector(
const IntervalVector& x)
28 inline IntervalVector to_IntervalVector(
const Vector& x)
30 return x.template cast<Interval>();
34 template<
typename T,
int R,
int C>
35 requires (!Eigen::IsVectorOrRow<R,C>)
36 inline IntervalVector to_IntervalVector(
const Eigen::Matrix<T,R,C>& x)
38 return Eigen::Map<const Eigen::Matrix<T,R,1>>(x.data(), x.size());
41 inline IntervalVector cart_prod()
43 return IntervalVector(0);
46 template<
typename... X>
47 requires ((is_interval_based_v<X>) || ...)
48 && ((!is_ctc_v<X>) && ...) && ((!is_sep_v<X>) && ...)
49 inline IntervalVector cart_prod(
const X&... x)
51 std::vector<IntervalVector> v_x;
52 ((v_x.push_back(to_IntervalVector(x))), ...);
55 for(
const auto& xi : v_x)
60 for(
const auto& xi : v_x)
68 template<
typename... X>
69 requires ((!is_interval_based_v<X>) && ...)
70 && ((!is_ctc_v<X>) && ...) && ((!is_sep_v<X>) && ...)
71 inline Vector cart_prod(
const X&... x)
73 return cart_prod(to_IntervalVector(x)...).mid();
Interval class, for representing closed and connected subsets of .
Definition codac2_Interval.h:62