Generated on Sat Feb 7 2015 02:01:42 for Gecode by doxygen 1.8.9.1
Gecode::Float Namespace Reference

Floating point numbers. More...

Namespaces

 Arithmetic
 Arithmetic propagators
 
 Branch
 Float branchers.
 
 Limits
 Numerical limits for floating point variables.
 
 Linear
 Linear propagators
 
 Rel
 Simple relation propagators.
 
 Transcendental
 Transcendental propagators
 
 Trigonometric
 Trigonometric propagators
 

Classes

class  ArgumentSame
 Exception: Arguments contain same variable multiply More...
 
class  ArgumentSizeMismatch
 Exception: Arguments are of different size More...
 
class  FloatDelta
 Float delta information for advisors. More...
 
class  FloatVarImp
 Float variable implementation. More...
 
class  FloatVarImpBase
 Base-class for Float-variable implementations. More...
 
class  FloatVarImpConf
 Configuration for Float-variable implementations. More...
 
class  FloatView
 Float view for float variables. More...
 
class  IllegalOperation
 Exception: Illegal operation passed as argument More...
 
class  MinusView
 Minus float view. More...
 
class  OffsetView
 OffsetView float view. More...
 
class  OutOfLimits
 Exception: Value out of limits More...
 
class  Rounding
 Floating point rounding policy. More...
 
class  ScaleView
 Scale float view. More...
 
class  TooFewArguments
 Exception: Too few arguments available in argument array More...
 
class  UnknownBranching
 Exception: Unknown value or variable selection passed as argument More...
 
class  UnknownOperation
 Exception: Unknown operation passed as argument More...
 
class  UnknownRelation
 Exception: Unknown relation passed as argument More...
 
class  ValOfUnassignedVar
 Exception: Attempt to access value of unassigned variable More...
 
class  VariableEmptyDomain
 Exception: Variable created with empty domain More...
 

Typedefs

typedef int mpfr_func(mpfr_t, const __mpfr_struct *, mp_rnd_t)
 Type signatur of mpfr function. More...
 

Enumerations

enum  RelTest { RT_FALSE = 0, RT_MAYBE = 1, RT_TRUE = 2 }
 Result of testing relation. More...
 

Functions

double invoke_mpfr (FloatNum x, mpfr_func f, mp_rnd_t r)
 Routine to call mpfr function with proper rounding. More...
 
bool subset (const FloatVal &x, const FloatVal &y)
 
bool proper_subset (const FloatVal &x, const FloatVal &y)
 
bool overlap (const FloatVal &x, const FloatVal &y)
 
FloatVal intersect (const FloatVal &x, const FloatVal &y)
 
FloatVal hull (const FloatVal &x, const FloatVal &y)
 
FloatVal hull (const FloatVal &x, const FloatNum &y)
 
FloatVal hull (const FloatNum &x, const FloatVal &y)
 
FloatVal hull (const FloatNum &x, const FloatNum &y)
 
template<class Char , class Traits , class View >
std::basic_ostream< Char, Traits > & print_view (std::basic_ostream< Char, Traits > &os, const View &x)
 
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & operator<< (std::basic_ostream< Char, Traits > &os, const FloatView &x)
 
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & operator<< (std::basic_ostream< Char, Traits > &os, const MinusView &x)
 
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & operator<< (std::basic_ostream< Char, Traits > &os, const OffsetView &x)
 
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & operator<< (std::basic_ostream< Char, Traits > &os, const ScaleView &x)
 
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & operator<< (std::basic_ostream< Char, Traits > &os, const Linear::NoView &)
 
template<class View >
RelTest rtest_eq (View x, View y)
 Test whether views x and y are equal. More...
 
template<class View >
RelTest rtest_eq (View x, FloatVal n)
 Test whether view x and Float n are equal. More...
 
template<class View >
RelTest rtest_lq (View x, View y)
 Test whether view x is less or equal than view y. More...
 
template<class View >
RelTest rtest_lq (View x, FloatVal n)
 Test whether view x is less or equal than float n. More...
 
template<class View >
RelTest rtest_le (View x, View y)
 Test whether view x is less than view y. More...
 
template<class View >
RelTest rtest_le (View x, FloatVal n)
 Test whether view x is less or equal than float n. More...
 

Variables

const Gecode::ModEvent ME_FLOAT_FAILED = Gecode::ME_GEN_FAILED
 Domain operation has resulted in failure. More...
 
const Gecode::ModEvent ME_FLOAT_NONE = Gecode::ME_GEN_NONE
 Domain operation has not changed domain. More...
 
const Gecode::ModEvent ME_FLOAT_VAL = Gecode::ME_GEN_ASSIGNED
 Domain operation has resulted in a value (assigned variable) More...
 
const Gecode::ModEvent ME_FLOAT_BND = Gecode::ME_GEN_ASSIGNED + 1
 Domain operation has changed the minimum or maximum of the domain. More...
 
const Gecode::PropCond PC_FLOAT_NONE = Gecode::PC_GEN_NONE
 Propagation condition to be ignored (convenience) More...
 
const Gecode::PropCond PC_FLOAT_VAL = Gecode::PC_GEN_ASSIGNED
 Propagate when a view becomes assigned (single value) More...
 
const Gecode::PropCond PC_FLOAT_BND = Gecode::PC_GEN_ASSIGNED + 1
 Propagate when minimum or maximum of a view changes. More...
 

Detailed Description

Floating point numbers.

The Gecode::Float namespace contains all functionality required to program propagators and branchers for floating point numbers. In addition, all propagators and branchers for floating point numbers provided by Gecode are contained as nested namespaces.

Typedef Documentation

typedef int Gecode::Float::mpfr_func(mpfr_t, const __mpfr_struct *, mp_rnd_t)

Type signatur of mpfr function.

Definition at line 52 of file rounding.cpp.

Function Documentation

double Gecode::Float::invoke_mpfr ( FloatNum  x,
mpfr_func  f,
mp_rnd_t  r 
)
inline

Routine to call mpfr function with proper rounding.

Definition at line 56 of file rounding.cpp.

bool Gecode::Float::subset ( const FloatVal x,
const FloatVal y 
)
related

Definition at line 494 of file val.hpp.

bool Gecode::Float::proper_subset ( const FloatVal x,
const FloatVal y 
)
related

Definition at line 498 of file val.hpp.

bool Gecode::Float::overlap ( const FloatVal x,
const FloatVal y 
)
related

Definition at line 502 of file val.hpp.

FloatVal Gecode::Float::intersect ( const FloatVal x,
const FloatVal y 
)
related

Definition at line 507 of file val.hpp.

FloatVal Gecode::Float::hull ( const FloatVal x,
const FloatVal y 
)
related

Definition at line 511 of file val.hpp.

FloatVal Gecode::Float::hull ( const FloatVal x,
const FloatNum y 
)
related

Definition at line 515 of file val.hpp.

FloatVal Gecode::Float::hull ( const FloatNum x,
const FloatVal y 
)
related

Definition at line 519 of file val.hpp.

FloatVal Gecode::Float::hull ( const FloatNum x,
const FloatNum y 
)
related

Definition at line 523 of file val.hpp.

template<class Char , class Traits , class View >
std::basic_ostream<Char,Traits>& Gecode::Float::print_view ( std::basic_ostream< Char, Traits > &  os,
const View &  x 
)

Definition at line 49 of file print.hpp.

template<class Char , class Traits >
std::basic_ostream<Char,Traits>& Gecode::Float::operator<< ( std::basic_ostream< Char, Traits > &  os,
const FloatView x 
)
related

Definition at line 62 of file print.hpp.

template<class Char , class Traits >
std::basic_ostream<Char,Traits>& Gecode::Float::operator<< ( std::basic_ostream< Char, Traits > &  os,
const MinusView x 
)
related

Definition at line 68 of file print.hpp.

template<class Char , class Traits >
std::basic_ostream<Char,Traits>& Gecode::Float::operator<< ( std::basic_ostream< Char, Traits > &  os,
const OffsetView x 
)
related

Definition at line 74 of file print.hpp.

template<class Char , class Traits >
std::basic_ostream<Char,Traits>& Gecode::Float::operator<< ( std::basic_ostream< Char, Traits > &  os,
const ScaleView x 
)
related

Definition at line 80 of file print.hpp.

template<class Char , class Traits >
std::basic_ostream<Char,Traits>& Gecode::Float::operator<< ( std::basic_ostream< Char, Traits > &  os,
const Linear::NoView  
)
related

Definition at line 86 of file print.hpp.