#include <IbexBisector.h>

Public Member Functions | |
| Bisector (Space &space, REAL ratio=default_ratio) | |
| Bisector (const Bisector &b) | |
| virtual Bisector * | copy () const =0 |
| Cell * | current_cell () |
| Bisection | bisect (Cell &cell) |
| virtual Bisection | bisect ()=0 |
| int | last_bisected_var () |
Public Attributes | |
| const REAL | ratio |
Static Public Attributes | |
| static const REAL | default_prec = __IBEX_DEFAULT_PRECISION |
| static const REAL | default_ratio = __IBEX_DEFAULT_RATIO_BISS |
Base class of all bisectors. A bisector is an operator used by a paver to make a choice point. An implementation of this class must provide a bisect() function.
| ibex::Bisector::Bisector | ( | Space & | space, | |
| REAL | ratio = default_ratio | |||
| ) | [inline] |
Create the bisector on a given space.
| space | - The space, passed by reference. | |
| ratio | (optional) - the ratio between the diameters of the left and the right parts of the bisected interval. Default value is 0.5, i.e. the interval is bisected at the midpoint. |
| ibex::Bisector::Bisector | ( | const Bisector & | b | ) | [inline] |
Duplicate this instance (space is passed by reference).
| virtual Bisector* ibex::Bisector::copy | ( | ) | const [pure virtual] |
Override the interface of the generic operator copy.
Implements ibex::Operator.
Implemented in ibex::RoundRobin, ibex::LargestFirst, ibex::SmearFunction, and ibex::BlockRoundRobin.
| Cell* ibex::Bisector::current_cell | ( | ) | [inline] |
Return the current cell (NULL pointer if none). This information can be typically used to get the last bisected variable in case the bisector is called by a paver (e.g., for RoundRobin).
| virtual Bisection ibex::Bisector::bisect | ( | ) | [pure virtual] |
Bisect the current box. The result is obtained via getBisection().
Implemented in ibex::RoundRobin, ibex::LargestFirst, ibex::SmearFunction, and ibex::BlockRoundRobin.
| int ibex::Bisector::last_bisected_var | ( | ) | [inline] |
Return the result of the last bisection. This function should only be called after bisect(). Return the last bisected variable if this bisector is called from a paver, -1 otheriwse. If this is the first time this bisector is called by the paver, return also -1.
const REAL ibex::Bisector::default_prec = __IBEX_DEFAULT_PRECISION [static] |
Set to 1e-07 (__IBEX_DEFAULT_PRECISION).
const REAL ibex::Bisector::default_ratio = __IBEX_DEFAULT_RATIO_BISS [static] |
Set to 0.45 (__IBEX_DEFAULT_RATIO_BISS).
| const REAL ibex::Bisector::ratio |
Ratio between the diameters of the left and right parts of a bisected interval.
1.5.5