codac
codac::CtcFunction Class Reference

Generic static $\mathcal{C}$ that contracts a box $[\mathbf{x}]$ or a tube $[\mathbf{x}](\cdot)$ according to the constraint $\mathbf{f}(\mathbf{x})=\mathbf{0}$ or $\mathbf{f}(\mathbf{x})\in[\mathbf{y}]$. It stands on the CtcFwdBwd of IBEX (HC4Revise). More...

#include <codac_CtcFunction.h>

Inherits CtcFwdBwd.

## Public Member Functions

CtcFunction (const Function &f)
Creates a contractor for the constraint $\mathbf{f}(\mathbf{x})=\mathbf{0}$. More...

CtcFunction (const Function &f, const ibex::Domain &y)
Creates a contractor for the constraint $\mathbf{f}(\mathbf{x})\in[\mathbf{y}]$ where $[\mathbf{y}]$ is a ibex::Domain object. More...

CtcFunction (const Function &f, const Interval &y)
Creates a contractor for the constraint $f(\mathbf{x})\in[y]$ for the scalar case. More...

CtcFunction (const Function &f, const IntervalVector &y)
Creates a contractor for the constraint $\mathbf{f}(\mathbf{x})\in[\mathbf{y}]$ for the vectorial case. More...

void contract (IntervalVector &x)
$\mathcal{C}\big([\mathbf{x}]\big)$ More...

void contract (TubeVector &x)
$\mathcal{C}\big([\mathbf{x}](\cdot)\big)$ More...

void contract (Tube &x1)
$\mathcal{C}\big([x_1](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4, Tube &x5)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4, Tube &x5, Tube &x6)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4, Tube &x5, Tube &x6, Tube &x7)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4, Tube &x5, Tube &x6, Tube &x7, Tube &x8)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot),[x_8](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4, Tube &x5, Tube &x6, Tube &x7, Tube &x8, Tube &x9)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot),[x_8](\cdot),[x_9](\cdot)\big)$ More...

void contract (Tube &x1, Tube &x2, Tube &x3, Tube &x4, Tube &x5, Tube &x6, Tube &x7, Tube &x8, Tube &x9, Tube &x10)
$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot),[x_8](\cdot),[x_9](\cdot),[x_10](\cdot)\big)$ More...

void contract (Slice **v_x_slices)
Contracts an array of slices (representing a slice vector) More...

## Detailed Description

Generic static $\mathcal{C}$ that contracts a box $[\mathbf{x}]$ or a tube $[\mathbf{x}](\cdot)$ according to the constraint $\mathbf{f}(\mathbf{x})=\mathbf{0}$ or $\mathbf{f}(\mathbf{x})\in[\mathbf{y}]$. It stands on the CtcFwdBwd of IBEX (HC4Revise).

## ◆ CtcFunction() [1/4]

 codac::CtcFunction::CtcFunction ( const Function & f )

Creates a contractor for the constraint $\mathbf{f}(\mathbf{x})=\mathbf{0}$.

Parameters
 f the function $\mathbf{f}$

## ◆ CtcFunction() [2/4]

 codac::CtcFunction::CtcFunction ( const Function & f, const ibex::Domain & y )

Creates a contractor for the constraint $\mathbf{f}(\mathbf{x})\in[\mathbf{y}]$ where $[\mathbf{y}]$ is a ibex::Domain object.

Parameters
 f the function $\mathbf{f}$ y the ibex::Domain object

## ◆ CtcFunction() [3/4]

 codac::CtcFunction::CtcFunction ( const Function & f, const Interval & y )

Creates a contractor for the constraint $f(\mathbf{x})\in[y]$ for the scalar case.

Parameters
 f the function $f$ y the interval $[y]$

## ◆ CtcFunction() [4/4]

 codac::CtcFunction::CtcFunction ( const Function & f, const IntervalVector & y )

Creates a contractor for the constraint $\mathbf{f}(\mathbf{x})\in[\mathbf{y}]$ for the vectorial case.

Parameters
 f the function $\mathbf{f}$ y the IntervalVector $[\mathbf{y}]$

## ◆ contract() [1/13]

 void codac::CtcFunction::contract ( IntervalVector & x )

$\mathcal{C}\big([\mathbf{x}]\big)$

Parameters
 x the n-dimensional box $[\mathbf{x}]$ to be contracted

## ◆ contract() [2/13]

 void codac::CtcFunction::contract ( TubeVector & x )

$\mathcal{C}\big([\mathbf{x}](\cdot)\big)$

Parameters
 x the n-dimensional tube $[\mathbf{x}](\cdot)$ to be contracted

## ◆ contract() [3/13]

 void codac::CtcFunction::contract ( Tube & x1 )

$\mathcal{C}\big([x_1](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted

## ◆ contract() [4/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted

## ◆ contract() [5/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted

## ◆ contract() [6/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted

## ◆ contract() [7/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4, Tube & x5 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted x5 the scalar tube $[x_5](\cdot)$ to be contracted

## ◆ contract() [8/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4, Tube & x5, Tube & x6 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted x5 the scalar tube $[x_5](\cdot)$ to be contracted x6 the scalar tube $[x_6](\cdot)$ to be contracted

## ◆ contract() [9/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4, Tube & x5, Tube & x6, Tube & x7 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted x5 the scalar tube $[x_5](\cdot)$ to be contracted x6 the scalar tube $[x_6](\cdot)$ to be contracted x7 the scalar tube $[x_7](\cdot)$ to be contracted

## ◆ contract() [10/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4, Tube & x5, Tube & x6, Tube & x7, Tube & x8 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot),[x_8](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted x5 the scalar tube $[x_5](\cdot)$ to be contracted x6 the scalar tube $[x_6](\cdot)$ to be contracted x7 the scalar tube $[x_7](\cdot)$ to be contracted x8 the scalar tube $[x_8](\cdot)$ to be contracted

## ◆ contract() [11/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4, Tube & x5, Tube & x6, Tube & x7, Tube & x8, Tube & x9 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot),[x_8](\cdot),[x_9](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted x5 the scalar tube $[x_5](\cdot)$ to be contracted x6 the scalar tube $[x_6](\cdot)$ to be contracted x7 the scalar tube $[x_7](\cdot)$ to be contracted x8 the scalar tube $[x_8](\cdot)$ to be contracted x9 the scalar tube $[x_9](\cdot)$ to be contracted

## ◆ contract() [12/13]

 void codac::CtcFunction::contract ( Tube & x1, Tube & x2, Tube & x3, Tube & x4, Tube & x5, Tube & x6, Tube & x7, Tube & x8, Tube & x9, Tube & x10 )

$\mathcal{C}\big([x_1](\cdot),[x_2](\cdot),[x_3](\cdot),[x_4](\cdot),[x_5](\cdot),[x_6](\cdot),[x_7](\cdot),[x_8](\cdot),[x_9](\cdot),[x_10](\cdot)\big)$

Parameters
 x1 the scalar tube $[x_1](\cdot)$ to be contracted x2 the scalar tube $[x_2](\cdot)$ to be contracted x3 the scalar tube $[x_3](\cdot)$ to be contracted x4 the scalar tube $[x_4](\cdot)$ to be contracted x5 the scalar tube $[x_5](\cdot)$ to be contracted x6 the scalar tube $[x_6](\cdot)$ to be contracted x7 the scalar tube $[x_7](\cdot)$ to be contracted x8 the scalar tube $[x_8](\cdot)$ to be contracted x9 the scalar tube $[x_9](\cdot)$ to be contracted x10 the scalar tube $[x_10](\cdot)$ to be contracted

## ◆ contract() [13/13]

 void codac::CtcFunction::contract ( Slice ** v_x_slices )

Contracts an array of slices (representing a slice vector)

Propagates the contractions to the next slices

Parameters
 v_x_slices the slices to be contracted

The documentation for this class was generated from the following file: