codac
codac_CtcCartProd.h
Go to the documentation of this file.
1 
12 #ifndef __CODAC_CTCCARTPROD_H__
13 #define __CODAC_CTCCARTPROD_H__
14 
15 #include "codac_Ctc.h"
16 #include "codac_IntervalVector.h"
17 #include "ibex_Array.h"
18 
19 namespace codac
20 {
25  class CtcCartProd : public Ctc
26  {
27  public:
28 
34  template <typename ...Args>
35  CtcCartProd(Args&... args) : Ctc(ibex::Array<Ctc>({args...})), m_v({args...}) {};
36 
42  CtcCartProd(const ibex::Array<Ctc>& array) : Ctc(array), m_v(array) {};
43 
49  void contract(IntervalVector& x);
50 
51  protected:
52 
53  ibex::Array<Ctc> m_v;
54  };
55 
63  CtcCartProd cart_prod(Ctc& c1, Ctc& c2);
64 
71  CtcCartProd cart_prod(const ibex::Array<Ctc>& array);
72 }
73 
74 #endif
FixPoint of a separator The fixpoint of a separator is computed by calling the "::"separate function ...
Definition: codac_capd_helpers.h:9
CtcCartProd(Args &... args)
Creates the contractor based on the Cartesian product of other.
Definition: codac_CtcCartProd.h:35
CtcCartProd cart_prod(Ctc &c1, Ctc &c2)
Cartesian product of contractors from two Ctc objects.
void contract(IntervalVector &x)
Definition: codac_Contractor.h:22
Cartesian product of contractors .
Definition: codac_CtcCartProd.h:25
CtcCartProd(const ibex::Array< Ctc > &array)
Creates the contractor based on the Cartesian product of other.
Definition: codac_CtcCartProd.h:42
ibex::Array< Ctc > m_v
vector containing the contractors
Definition: codac_CtcCartProd.h:53