|
| Ia () |
| Empty.
|
|
| Ia (const double &) |
| Creates an interval. More...
|
|
| Ia (const double &, const double &) |
| Creates an interval. More...
|
|
| Ia (const Ia &, const Ia &) |
| Creates an interval. More...
|
|
double & | operator[] (int) |
| Access interval bounds.
|
|
constexpr double | operator[] (int) const |
| Access interval bounds.
|
|
Ia | operator+ () const |
| Overloaded.
|
|
Ia | operator- () const |
| Overloaded.
|
|
Ia & | operator+= (const Ia &) |
| Destructive addition.
|
|
Ia & | operator-= (const Ia &) |
| Subtracts two intervals.
|
|
bool | operator> (const double &) const |
| Compare interval to a real. More...
|
|
bool | operator< (const double &) const |
| Compare interval to a real. More...
|
|
bool | operator< (const Ia &) const |
| Compare two intervals. More...
|
|
bool | operator> (const Ia &) const |
| Compare two intervals. More...
|
|
Ia | Intersection (const Ia &) const |
| Compute the intersection of two intervals. More...
|
|
bool | Intersect (const Ia &) const |
| Check if two intervals intersect. More...
|
|
double | Length () const |
| Compute the length of the interval. More...
|
|
|
Ia | operator+ (const Ia &, const Ia &) |
| Adds two intervals. More...
|
|
Ia | operator- (const Ia &, const Ia &) |
| Subtracts two intervals. More...
|
|
Ia | operator- (const Ia &, const double &) |
| Translates (shift left) an interval by a real value. More...
|
|
Ia | operator+ (const Ia &, const double &) |
| Translates (shift right) an interval by a real value. More...
|
|
Ia | operator- (const double &, const Ia &) |
| Overloaded. More...
|
|
Ia | operator+ (const double &, const Ia &) |
| Overloaded. More...
|
|
Ia | operator* (const Ia &, const Ia &) |
| Multiplies two intervals. More...
|
|
Ia | operator/ (const Ia &, const Ia &) |
| Divides two intervals. More...
|
|
Ia | operator* (const Ia &, const double &) |
| Scales a interval by a double. More...
|
|
Ia | operator* (const double &, const Ia &) |
| Left multiply, same as scaling. More...
|
|
Ia | operator/ (const Ia &, const double &) |
| Left divide by a double, same as scaling. More...
|
|
Ia | operator/ (const double &, const Ia &) |
| Divides a real number by an interval. More...
|
|
Ia | Min (const Ia &, const Ia &) |
| Computes the minimum of two intervals. More...
|
|
Ia | Max (const Ia &, const Ia &) |
| Computes the maximum of two intervals. More...
|
|
Ia | sqrt (const Ia &) |
| Computes the square root of an interval. More...
|
|
Ia | sqr (const Ia &) |
| Compute the squared interval. More...
|
|
Ia | abs (const Ia &) |
| Computes the absolute value of an interval. More...
|
|
bool | operator== (const Ia &, const Ia &) |
| Compares two intervals. More...
|
|
bool | operator!= (const Ia &, const Ia &) |
| Compares two intervals. More...
|
|
Ia | pow (const Ia &, const double &) |
| Computes the power of an interval. More...
|
|
std::ostream & | operator<< (std::ostream &, const Ia &) |
| Overloaded output-stream operator. More...
|
|
Intervals of two reals.
Most interval arithmetics operators are intensive because of the tests needed to sort the extrema of the resulting interval. Only addition and subtraction need not use tests and, therefore, are efficient.
Several functions have been implemented with the same syntax as for doubles, such as sqrt() and abs().