codac 1.5.6
Loading...
Searching...
No Matches
codac2::CtcDist Class Reference

Implements the distance constraint on \(\mathbf{a}\in\mathbb{R}^2\), \(\mathbf{b}\in\mathbb{R}^2\) and \(d\in\mathbb{R}\) such that: More...

#include <codac2_CtcDist.h>

Public Member Functions

 CtcDist ()
 Creates the contractor.
 
void contract (IntervalVector &x) const
 Applies \(\mathcal{C}_{\textrm{dist}}\big([\mathbf{x}]\big)\).
 
void contract (Interval &a1, Interval &a2, Interval &b1, Interval &b2, Interval &d) const
 Applies \(\mathcal{C}_{\textrm{dist}}\big([a_1],[a_2],[b_1],[b_2],[d]\big)\).
 

Detailed Description

Implements the distance constraint on \(\mathbf{a}\in\mathbb{R}^2\), \(\mathbf{b}\in\mathbb{R}^2\) and \(d\in\mathbb{R}\) such that:

\[d^2=(a_1-b_1)^2+(a_2-b_2)^2. \]

The contractor can be applied either on a 5d box or on a set of five intervals.

This contractor is minimal.

Member Function Documentation

◆ contract() [1/2]

void codac2::CtcDist::contract ( IntervalVector & x) const

Applies \(\mathcal{C}_{\textrm{dist}}\big([\mathbf{x}]\big)\).

Parameters
xIntervalVector for \((a_1,a_2,b_1,b_2,d)^\intercal\)

◆ contract() [2/2]

void codac2::CtcDist::contract ( Interval & a1,
Interval & a2,
Interval & b1,
Interval & b2,
Interval & d ) const

Applies \(\mathcal{C}_{\textrm{dist}}\big([a_1],[a_2],[b_1],[b_2],[d]\big)\).

Parameters
a1Interval for \(a_1\)
a2Interval for \(a_2\)
b1Interval for \(b_1\)
b2Interval for \(b_2\)
dInterval for \(d\)

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