CAPD DynSys Library
5.2.0
|
Definition of template class Interval. More...
#include <capd/intervals/minmax_interval.h>
Public Types | |
typedef T_Bound | BoundType |
typedef T_Rnd | RoundingPolicy |
typedef IntervalTraits< BoundType >::BoundContainer | BoundContainer |
typedef IntervalTraits< BoundType >::BoundReturnType | BoundReturnType |
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 char left[], const char right[]) | |
Interval (const std::string &left, const std::string &right) | |
BoundReturnType | leftBound () const |
returns the left end of the interval More... | |
BoundReturnType | rightBound () const |
returns the right end of the interval More... | |
void | setLeftBound (const T_Bound &A_left) |
void | setRightBound (const T_Bound &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 Splits interval into the form mid + remainder, where mid - is middle point More... | |
void | split (Interval &A_rMid, Interval &A_rRemainder) const |
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 Interval | pi () |
returns pi constant More... | |
static Interval | euler () |
returns euler constant More... | |
static T_Bound | computeExpError () |
an estimation for the remainder term during computation of "exp" More... | |
static T_Bound | computeSinError () |
An estimation of the remainder term for "sin". More... | |
static T_Bound | computeAtanError () |
An estimation of the remainder term for "atan" for |x|<(sqrt(2)-1) More... | |
Static Public Attributes | |
static const int | S_nExpTaylorOrder = 20 |
Taylor series length used in the EXP function. More... | |
static const int | S_nLogTaylorOrder = 40 |
Taylor series length used in the LOG function, it MUST be an EVEN value. More... | |
static const int | S_nSinTaylorOrder = 11 |
Taylor series length used in the SIN function, it MUST be an ODD value. More... | |
static const int | S_nAtanTaylorOrder = 21 |
Taylor series length used in the ATAN function, it MUST be an ODD value. More... | |
Protected Attributes | |
BoundContainer | m_left |
left end of an interval More... | |
BoundContainer | m_right |
right end of an interval More... | |
Friends | |
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) |
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) |
Interval | operator^ (const Interval &A_iv1, int i) |
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) |
Definition of template class Interval.
Template has two parameters:
T_Rnd has to provide methods that switch rounding mode:
To provide full functionality of the class Interval and related functions class T_Bound has to provide methods:
typedef IntervalTraits<BoundType>::BoundContainer capd::intervals::Interval< T_Bound, T_Rnd >::BoundContainer |
typedef IntervalTraits<BoundType>::BoundReturnType capd::intervals::Interval< T_Bound, T_Rnd >::BoundReturnType |
typedef T_Bound capd::intervals::Interval< T_Bound, T_Rnd >::BoundType |
typedef T_Rnd capd::intervals::Interval< T_Bound, T_Rnd >::RoundingPolicy |
|
inline |
|
inline |
copying constructor
|
inline |
constructor from any class that can be coverted to BoundType
capd::intervals::Interval< T_Bound, T_Rnd >::Interval | ( | const BoundType & | A_left, |
const BoundType & | A_right | ||
) |
constructor from any class that can be coverted to BoundType
|
inline |
|
inline |
|
static |
An estimation of the remainder term for "atan" for |x|<(sqrt(2)-1)
|
static |
an estimation for the remainder term during computation of "exp"
|
static |
An estimation of the remainder term for "sin".
|
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 interval containing left end
|
inline |
returns the left end of the interval
|
inline |
returns middle point of interval Splits interval into the form mid + remainder, where mid - is middle point
__INLINE__ Interval< T_Bound, T_Rnd > & capd::intervals::Interval< T_Bound, T_Rnd >::operator*= | ( | const Interval< T_Bound, T_Rnd > & | A_iv | ) |
__INLINE__ Interval< T_Bound, T_Rnd > & capd::intervals::Interval< T_Bound, T_Rnd >::operator+= | ( | const Interval< T_Bound, T_Rnd > & | A_iv | ) |
__INLINE__ Interval< T_Bound, T_Rnd > & capd::intervals::Interval< T_Bound, T_Rnd >::operator-= | ( | const Interval< T_Bound, T_Rnd > & | A_iv | ) |
__INLINE__ Interval< T_Bound, T_Rnd > & capd::intervals::Interval< T_Bound, T_Rnd >::operator/= | ( | const Interval< T_Bound, T_Rnd > & | A_iv | ) |
(A_iv.m_left<=0 && A_iv.m_right>=0)
__INLINE__ Interval< T_Bound, T_Rnd > & capd::intervals::Interval< T_Bound, T_Rnd >::operator= | ( | const BoundType & | A_x | ) |
__INLINE__ Interval< T_Bound, T_Rnd > & capd::intervals::Interval< T_Bound, T_Rnd >::operator= | ( | const Interval< T_Bound, T_Rnd > & | A_iv | ) |
|
inlinestatic |
returns pi constant
|
inline |
returns interval containing right end
|
inline |
returns the right end of the interval
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
checks if interval is subset of iv
|
inline |
checks if interval is subset of interior of iv
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
protected |
left end of an interval
|
protected |
right end of an interval
|
static |
Taylor series length used in the ATAN function, it MUST be an ODD value.
|
static |
Taylor series length used in the EXP function.
|
static |
Taylor series length used in the LOG function, it MUST be an EVEN value.
|
static |
Taylor series length used in the SIN function, it MUST be an ODD value.