| CAPD::DynSys Library
    6.0.0
    | 
CAPD interface for fast interval library filib. More...
#include <capd/filib/Interval.h>
| Public Types | |
| typedef ::filib::interval< T, R, M > | BaseInterval | 
| typedef BaseInterval::value_type | BoundType | 
| typedef ::filib::fp_traits< T, R > | RoundingPolicy | 
| typedef capd::intervals::IntervalError< BoundType > | IntervalError | 
| Public Member Functions | |
| Interval () | |
| Interval (const Interval &A_iv) | |
| copying constructor  More... | |
| Interval (const BoundType &A_scalar) | |
| constructor from any class that can be coverted to BoundType  More... | |
| Interval (const BoundType &A_left, const BoundType &A_right) | |
| constructor from any class that can be coverted to BoundType  More... | |
| Interval (const BaseInterval &interval) | |
| Interval (const char left[], const char right[]) | |
| Interval (const std::string &left, const std::string &right) | |
| BaseInterval & | getBaseInterval () | 
| returns reference to base (filib) interval  More... | |
| const BaseInterval & | getBaseInterval () const | 
| returns const reference to base (filib) interval  More... | |
| const BoundType & | leftBound () const | 
| < returns the left end of the interval  More... | |
| const BoundType & | rightBound () const | 
| < returns the right end of the interval  More... | |
| const BoundType & | inf () const | 
| < returns the left end of the interval  More... | |
| const BoundType & | sup () const | 
| < returns the right end of the interval  More... | |
| void | setLeftBound (const BoundType &A_left) | 
| void | setRightBound (const BoundType &A_right) | 
| Interval | left () const | 
| < returns interval containing left end  More... | |
| Interval | right () const | 
| < returns interval containing right end  More... | |
| template<typename T_Scalar > | |
| bool | contains (const T_Scalar &A_X) const | 
| < checks if interval contains given point X  More... | |
| bool | contains (const Interval &A_iv) const | 
| < checks if interval contains given interval iv  More... | |
| template<typename T_Scalar > | |
| bool | containsInInterior (const T_Scalar &A_X) const | 
| < checks if interval contains in interior given point X  More... | |
| bool | containsInInterior (const Interval &A_iv) const | 
| < checks if interval contains in interior given interval iv  More... | |
| bool | subset (const Interval &A_iv) const | 
| < checks if interval is subset of iv  More... | |
| bool | subsetInterior (const Interval &A_iv) const | 
| < checks if interval is subset of interior of iv  More... | |
| Interval | mid () const | 
| < returns middle point of interval  More... | |
| Interval | abs () const | 
| <Returns the interval of absolute values of this interval, i.e.  More... | |
| void | split (Interval &A_rMid, Interval &A_rRemainder) const | 
| Splits interval into the form mid + remainder, where mid - is middle point.  More... | |
| void | split (BoundType &A_rMid, Interval &A_rRemainder) const | 
| void | split (Interval &r) | 
| Interval & | operator= (const Interval &A_iv) | 
| Interval & | operator= (const BoundType &A_x) | 
| Interval & | operator+= (const Interval &A_iv) | 
| Interval & | operator-= (const Interval &A_iv) | 
| Interval & | operator*= (const Interval &A_iv) | 
| Interval & | operator/= (const Interval &A_iv) | 
| Static Public Member Functions | |
| static void | setup () | 
| sets up floting point unit.  More... | |
| static void | reset () | 
| resets default rounding mode (to the nearest)  More... | |
| static Interval | pi () | 
| returns pi constant  More... | |
| static Interval | euler () | 
| returns euler constant  More... | |
| Static Public Attributes | |
| static const IntervalMode | mode = M | 
| Protected Attributes | |
| BaseInterval | m_interval | 
| Friends | |
| const BoundType & | leftBound (const Interval &x) | 
| const BoundType & | rightBound (const Interval &x) | 
| const BoundType & | inf (const Interval &x) | 
| const BoundType & | sup (const Interval &x) | 
| Interval | left (const Interval &x) | 
| Interval | right (const Interval &x) | 
| bool | subset (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | subsetInterior (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator== (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator<= (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator>= (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator< (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator> (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator!= (const Interval &A_iv1, const Interval &A_iv2) | 
| bool | operator== (const Interval &A_iVal1, const BoundType &A_Val2) | 
| operator == (interval, scalar)  More... | |
| bool | operator== (const BoundType &A_Val1, const Interval &A_iVal2) | 
| operator == (scalar, interval)  More... | |
| bool | operator!= (const Interval &A_iVal1, const BoundType &A_Val2) | 
| operator != (interval, scalar)  More... | |
| bool | operator!= (const BoundType &A_Val1, const Interval &A_iVal2) | 
| operator != (scalar, interval)  More... | |
| bool | operator> (const Interval &A_iVal1, const BoundType &A_Val2) | 
| operator > (interval, scalar)  More... | |
| bool | operator> (const BoundType &A_Val1, const Interval &A_iVal2) | 
| operator > (scalar, interval)  More... | |
| bool | operator>= (const Interval &A_iVal1, const BoundType &A_Val2) | 
| operator >= (interval, scalar)  More... | |
| bool | operator>= (const BoundType &A_Val1, const Interval &A_iVal2) | 
| operator >= (scalar, interval)  More... | |
| bool | operator< (const Interval &A_iVal1, const BoundType &A_Val2) | 
| operator < (interval, scalar)  More... | |
| bool | operator< (const BoundType &A_Val1, const Interval &A_iVal2) | 
| operator < (scalar, interval)  More... | |
| bool | operator<= (const Interval &A_iVal1, const BoundType &A_Val2) | 
| operator <= (interval, scalar)  More... | |
| bool | operator<= (const BoundType &A_Val1, const Interval &A_iVal2) | 
| operator <= (scalar, interval)  More... | |
| Interval | operator- (const Interval &A_iv) | 
| Interval | operator+ (const Interval &A_iv1, const Interval &A_iv2) | 
| Interval | operator- (const Interval &A_iv1, const Interval &A_iv2) | 
| Interval | operator* (const Interval &A_iv1, const Interval &A_iv2) | 
| Interval | operator/ (const Interval &A_iv1, const Interval &A_iv2) | 
| template<class E > | |
| Interval | operator^ (const Interval &x, E) | 
| DW: this template is defined to prevent implicit conversion of exponent type In the previous implementation interval^double was converted to interval^int.  More... | |
| Interval | operator^ (const Interval &x, unsigned int n) | 
| Interval | operator^ (const Interval &x, int n) | 
| Interval | operator^ (const Interval &x, Interval::BoundType b) | 
| Interval | operator^ (const Interval &a, const Interval &b) | 
| Interval | operator+ (const Interval &A_iVal, const BoundType &A_x) | 
| operator + (interval, scalar)  More... | |
| Interval | operator+ (const BoundType &A_x, const Interval &A_iVal) | 
| operator + (scalar, interval)  More... | |
| Interval | operator- (const Interval &A_iVal, const BoundType &A_x) | 
| operator - (interval, scalar)  More... | |
| Interval | operator- (const BoundType &A_x, const Interval &A_iVal) | 
| operator - (scalar, interval)  More... | |
| Interval | operator* (const Interval &A_iVal, const BoundType &A_x) | 
| operator * (interval, scalar)  More... | |
| Interval | operator* (const BoundType &A_x, const Interval &A_iVal) | 
| operator * (scalar, interval)  More... | |
| Interval | operator/ (const Interval &A_iVal, const BoundType &A_x) | 
| operator / (scalar, interval)  More... | |
| Interval | operator/ (const BoundType &A_x, const Interval &A_iVal) | 
| operator / (interval, scalar)  More... | |
| std::ostream & | operator<< (std::ostream &s, const Interval &A_iv) | 
| std::istream & | operator>> (std::istream &s, Interval &A_iv) | 
| std::ostream & | bitWrite (std::ostream &out, const Interval &iv) | 
| std::istream & | bitRead (std::istream &in, Interval &iv) | 
| std::ostream & | hexWrite (std::ostream &out, const Interval &iv) | 
| std::istream & | hexRead (std::istream &in, Interval &iv) | 
| std::ostream & | binWrite (std::ostream &out, const Interval &iv) | 
| std::istream & | binRead (std::istream &in, Interval &iv) | 
| Interval | diam (const Interval &ix) | 
| Interval | mid (const Interval &A_iv) | 
| bool | intersection (const Interval &A_iv1, const Interval &A_iv2, Interval &A_rIntersection) | 
| Intersection of two intervals.  More... | |
| Interval | intervalHull (const Interval &ix, const Interval &iy) | 
| returns an interval containing ix and iy  More... | |
| void | split (Interval &A_iv, Interval &A_rMid, BoundType &A_diam) | 
| void | split (Interval &A_rIv, BoundType &A_diam) | 
| bool | isSingular (const Interval &A_x) | 
| template<class E > | |
| Interval | power (const Interval &x, E n) | 
| Interval | sqrt (const Interval &x) | 
| Interval | sin (const Interval &x) | 
| Interval | cos (const Interval &x) | 
| Interval | tan (const Interval &x) | 
| Interval | cot (const Interval &x) | 
| Interval | atan (const Interval &x) | 
| Interval | asin (const Interval &x) | 
| Interval | acos (const Interval &x) | 
| Interval | sinh (const Interval &x) | 
| Interval | cosh (const Interval &x) | 
| Interval | tanh (const Interval &x) | 
| Interval | coth (const Interval &x) | 
| Interval | exp (const Interval &x) | 
| Interval | log (const Interval &x) | 
| Interval | sqr (const Interval &x) | 
| bool | isinf (const Interval &r) | 
| returns true if any of endpoints is infinite  More... | |
| bool | isnan (const Interval &r) | 
| returns true if any of endpoints is a NaN  More... | |
| Interval | copysign (const Interval &x, const Interval &y) | 
| returns interval containing copysign(a, b) for each a in x and b in y  More... | |
| Interval | nonnegativePart (const Interval &iv) | 
| returns nonnegative part of interval  More... | |
| Interval | ball (const Interval &iv, const Interval &r) | 
| Ball with center iv and radius r.  More... | |
| Interval | ball (const Interval &iv, const BoundType &r) | 
| Ball with center iv and radius r.  More... | |
| Interval | solveAffineInclusion (const Interval &a, const Interval &p, const Interval &c) | 
| solves inclusion a+[0,t]*p\subset c for t  More... | |
| Interval | solveAffineInclusion (const Interval &a, const Interval &p, const Interval &c, int &dir) | 
| solves inclusion a+[0,t]*p\subset c for t  More... | |
CAPD interface for fast interval library filib.
This template class has three parameters
To prevent misusing and enable easy interchange of a different interval implementation the filib interval T is not a base class of the Interval class and can be accesed only by getBaseInterval() method.
| typedef ::filib::interval<T, R, M > capd::filib::Interval< T, R, M >::BaseInterval | 
| typedef BaseInterval::value_type capd::filib::Interval< T, R, M >::BoundType | 
| typedef capd::intervals::IntervalError<BoundType> capd::filib::Interval< T, R, M >::IntervalError | 
| typedef ::filib::fp_traits<T, R> capd::filib::Interval< T, R, M >::RoundingPolicy | 
| 
 | inline | 
| 
 | inline | 
copying constructor
| 
 | inline | 
constructor from any class that can be coverted to BoundType
| 
 | inline | 
constructor from any class that can be coverted to BoundType
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
<Returns the interval of absolute values of this interval, i.e.
| 
 | inline | 
< checks if interval contains given interval iv
| 
 | inline | 
< checks if interval contains given point X
| 
 | inline | 
< checks if interval contains in interior given interval iv
| 
 | inline | 
< checks if interval contains in interior given point X
| 
 | inlinestatic | 
returns euler constant
| 
 | inline | 
returns reference to base (filib) interval
| 
 | inline | 
returns const reference to base (filib) interval
| 
 | inline | 
< returns the left end of the interval
| 
 | inline | 
< returns interval containing left end
| 
 | inline | 
< returns the left end of the interval
| 
 | inline | 
< returns middle point of interval
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlinestatic | 
returns pi constant
| 
 | inlinestatic | 
resets default rounding mode (to the nearest)
| 
 | inline | 
< returns interval containing right end
| 
 | inline | 
< returns the right end of the interval
| 
 | inline | 
| 
 | inline | 
| 
 | inlinestatic | 
sets up floting point unit.
It has to be called before first use of intervals
| 
 | inline | 
| 
 | inline | 
Splits interval into the form mid + remainder, where mid - is middle point.
| 
 | inline | 
| 
 | inline | 
< checks if interval is subset of iv
| 
 | inline | 
< checks if interval is subset of interior of iv
| 
 | inline | 
< returns the right end of the interval
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
Ball with center iv and radius r.
| 
 | friend | 
Ball with center iv and radius r.
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
returns interval containing copysign(a, b) for each a in x and b in y
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| x | returns the left end of the interval | 
| 
 | friend | 
Intersection of two intervals.
| 
 | friend | 
returns an interval containing ix and iy
| 
 | friend | 
returns true if any of endpoints is infinite
| 
 | friend | 
returns true if any of endpoints is a NaN
| 
 | friend | 
| 
 | friend | 
| x | returns interval containing left end | 
| 
 | friend | 
| x | returns the left end of the interval | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
returns nonnegative part of interval
| 
 | friend | 
operator != (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator != (interval, scalar)
| 
 | friend | 
operator * (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator * (interval, scalar)
| 
 | friend | 
operator + (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator + (interval, scalar)
| 
 | friend | 
operator - (scalar, interval)
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
operator - (interval, scalar)
| 
 | friend | 
operator / (interval, scalar)
| 
 | friend | 
| 
 | friend | 
operator / (scalar, interval)
| 
 | friend | 
operator < (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator < (interval, scalar)
| 
 | friend | 
| 
 | friend | 
operator <= (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator <= (interval, scalar)
| 
 | friend | 
operator == (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator == (interval, scalar)
| 
 | friend | 
operator > (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator > (interval, scalar)
| 
 | friend | 
operator >= (scalar, interval)
| 
 | friend | 
| 
 | friend | 
operator >= (interval, scalar)
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
DW: this template is defined to prevent implicit conversion of exponent type In the previous implementation interval^double was converted to interval^int.
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| x | returns interval containing right end | 
| 
 | friend | 
| x | returns the right end of the interval | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
solves inclusion a+[0,t]*p\subset c for t
| 
 | friend | 
solves inclusion a+[0,t]*p\subset c for t
| 
 | friend | 
TODO : correct to not switch rounding
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
| x | returns the right end of the interval | 
| 
 | friend | 
| 
 | friend | 
| 
 | protected | 
| 
 | static |