Definition in file Interval.h.
#include <math.h>
#include <stdio.h>
#include "Infinite.h"
#include "libgm/gm.h"
#include "tnt/vec.h"
Include dependency graph for Interval.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Classes | |
| class | Interval |
| An interval arithmetic class. More... | |
Defines | |
| #define | I_NOT(x) (((x) == I_TRUE) ? I_FALSE : ((x) == I_FALSE)?I_TRUE:I_MAYBE) |
| Complement of an I_TRISTATE variable. | |
Typedefs | |
| typedef Interval< double > | Intervald |
| Convenience typedef so we don't always have to type Interval<double>. | |
Enumerations | |
| enum | I_TRISTATE { I_TRUE = 0, I_FALSE = -1, I_MAYBE = 1 } |
| Tristate logic for interval conditions. More... | |
| enum | IDIF_TYPES { INORMAL = 0, ISPLIT, IDIV_BY_ZERO } |
Used to indicate result of division by zero
| |
Functions | |
| template<class Type> IDIF_TYPES | IDinf (Interval< Type > &v, Interval< Type > &v2, const Interval< Type > &x, const Interval< Type > &y) |
| Full Interval division In this extended version, divide by zero is allowed. | |
| template<class Type> std::ostream & | operator<< (std::ostream &os, const Interval< Type > &x) |
| Basic output stream operator for printing out the value of the Interval. | |
| template<class Type> Interval< Type > | operator+ (const Interval< Type > &a, const Interval< Type > &b) |
| Sum of two Intervals. | |
| template<class Type> Interval< Type > | operator+ (const Interval< Type > &a, const Type &b) |
| Sum of an Interval and a base Type. | |
| template<class Type> Interval< Type > | operator+ (const Type &a, const Interval< Type > &b) |
| Sum of a base Type and an Interval. | |
| template<class Type> Interval< Type > | operator- (const Interval< Type > &a, const Interval< Type > &b) |
| Difference of two Intervals. | |
| template<class Type> Interval< Type > | operator- (const Interval< Type > &a, const Type &b) |
| Difference of an Interval and a base Type. | |
| template<class Type> Interval< Type > | operator- (const Type &a, const Interval< Type > &b) |
| Difference of a base Type and an Interval. | |
| template<class Type> Interval< Type > | operator * (const Interval< Type > &a, const Interval< Type > &b) |
| Product of two Intervals. | |
| template<class Type> Interval< Type > | operator * (const Interval< Type > &a, const Type &b) |
| Product of an Interval and a base Type. | |
| template<class Type> Interval< Type > | operator * (const Type &a, const Interval< Type > &b) |
| Product of a base Type and an Interval. | |
| template<class Type> Interval< Type > | operator/ (const Interval< Type > &a, const Interval< Type > &b) |
| Quotient of two Intervals. | |
| template<class Type> Interval< Type > | operator/ (const Interval< Type > &a, const Type &b) |
| Quotient of an Interval and a base Type. | |
| template<class Type> Interval< Type > | operator/ (const Type &a, const Interval< Type > &b) |
| Quotient of a base Type and an Interval. | |
| template<class Type> I_TRISTATE | operator< (const Interval< Type > &a, const Interval< Type > &b) |
| Less-than for two Intervals. | |
| template<class Type> I_TRISTATE | operator< (const Interval< Type > &a, const Type &b) |
| Less than for an Interval and a base Type. | |
| template<class Type> I_TRISTATE | operator< (const Type &a, const Interval< Type > &b) |
| Less than for a base Type and an Interval. | |
| template<class Type> I_TRISTATE | operator> (const Interval< Type > &a, const Interval< Type > &b) |
| Greater-than for two Intervals. | |
| template<class Type> I_TRISTATE | operator> (const Interval< Type > &a, const Type &b) |
| Greater-than for an Interval and a base Type. | |
| template<class Type> I_TRISTATE | operator> (const Type &a, const Interval< Type > &b) |
| Greater-than for a base Type and an Interval. | |
| template<class Type> I_TRISTATE | operator<= (const Interval< Type > &a, const Interval< Type > &b) |
| Less-than-or-equal-to for two Intervals. | |
| template<class Type> I_TRISTATE | operator<= (const Interval< Type > &a, const Type &b) |
| Less-than-or-equal-to for an Interval and a base Type. | |
| template<class Type> I_TRISTATE | operator<= (const Type &a, const Interval< Type > &b) |
| Less-than-or-equal-to for a base Type and an Interval. | |
| template<class Type> I_TRISTATE | operator>= (const Interval< Type > &a, const Interval< Type > &b) |
| Greater-than-or-equal-to for two Intervals. | |
| template<class Type> I_TRISTATE | operator>= (const Interval< Type > &a, const Type &b) |
| Greater-than-or-equal-to for an Interval and a base Type. | |
| template<class Type> I_TRISTATE | operator>= (const Type &a, const Interval< Type > &b) |
| Greater-than-or-equal-to for a base Type and an Interval. | |
| template<class Type> I_TRISTATE | operator== (const Interval< Type > &a, const Interval< Type > &b) |
| Equivalence for two Intervals. | |
| template<class Type> I_TRISTATE | operator== (const Interval< Type > &a, const Type &b) |
| Equivalence for an Interval and a base Type. | |
| template<class Type> I_TRISTATE | operator== (const Type &a, const Interval< Type > &b) |
| Equivalence for a base Type and an Interval. | |
| template<class Type> I_TRISTATE | operator!= (const Interval< Type > &a, const Interval< Type > &b) |
| Non-Equivalence for two Intervals. | |
| template<class Type> I_TRISTATE | operator!= (const Interval< Type > &a, const Type &b) |
| Non-equivalence for an Interval and a base Type. | |
| template<class Type> I_TRISTATE | operator!= (const Type &a, const Interval< Type > &b) |
| Non-equivalence for a base Type and an Interval. | |
|
|
Complement of an I_TRISTATE variable.
Definition at line 37 of file Interval.h. Referenced by operator!=(). |
|
|
|
Tristate logic for interval conditions.
Definition at line 23 of file Interval.h. Referenced by operator!=(), operator<(), operator<=(), operator==(), operator>(), and operator>=(). |
|
|
Used to indicate result of division by zero
Definition at line 30 of file Interval.h. Referenced by IDinf(). |
|
||||||||||||||||||||||||
|
Full Interval division In this extended version, divide by zero is allowed. When this happens two semi-infinite intervals result.
Definition at line 174 of file Interval.h. References Interval< Type >::check(), Interval< Type >::contains(), Interval< Type >::high(), IDIF_TYPES, IDIV_BY_ZERO, INORMAL, Interval< Type >::isMixed(), Interval< Type >::isNegative(), ISPLIT, Interval< Type >::isPositive(), and Interval< Type >::low(). Referenced by Newton::GaussSeidelRow(). |
|
||||||||||||||||
|
Product of a base Type and an Interval.
Definition at line 312 of file Interval.h. |
|
||||||||||||||||
|
Product of an Interval and a base Type.
Definition at line 304 of file Interval.h. |
|
||||||||||||||||
|
Product of two Intervals.
Definition at line 296 of file Interval.h. |
|
||||||||||||||||
|
Non-equivalence for a base Type and an Interval.
Definition at line 498 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Non-equivalence for an Interval and a base Type.
Definition at line 491 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Non-Equivalence for two Intervals.
Definition at line 484 of file Interval.h. References I_NOT, and I_TRISTATE. |
|
||||||||||||||||
|
Sum of a base Type and an Interval.
Definition at line 264 of file Interval.h. |
|
||||||||||||||||
|
Sum of an Interval and a base Type.
Definition at line 256 of file Interval.h. |
|
||||||||||||||||
|
Sum of two Intervals.
Definition at line 248 of file Interval.h. |
|
||||||||||||||||
|
Difference of a base Type and an Interval.
Definition at line 288 of file Interval.h. |
|
||||||||||||||||
|
Difference of an Interval and a base Type.
Definition at line 280 of file Interval.h. |
|
||||||||||||||||
|
Difference of two Intervals.
Definition at line 272 of file Interval.h. |
|
||||||||||||||||
|
Quotient of a base Type and an Interval.
Definition at line 336 of file Interval.h. |
|
||||||||||||||||
|
Quotient of an Interval and a base Type.
Definition at line 328 of file Interval.h. |
|
||||||||||||||||
|
Quotient of two Intervals.
Definition at line 320 of file Interval.h. |
|
||||||||||||||||
|
Less than for a base Type and an Interval.
Definition at line 364 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Less than for an Interval and a base Type.
Definition at line 357 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Less-than for two Intervals.
Definition at line 349 of file Interval.h. References I_FALSE, I_MAYBE, I_TRISTATE, and I_TRUE. |
|
||||||||||||||||
|
Basic output stream operator for printing out the value of the Interval.
Definition at line 241 of file Interval.h. |
|
||||||||||||||||
|
Less-than-or-equal-to for a base Type and an Interval.
Definition at line 418 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Less-than-or-equal-to for an Interval and a base Type.
Definition at line 411 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Less-than-or-equal-to for two Intervals.
Definition at line 403 of file Interval.h. References I_FALSE, I_MAYBE, I_TRISTATE, and I_TRUE. |
|
||||||||||||||||
|
Equivalence for a base Type and an Interval.
Definition at line 472 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Equivalence for an Interval and a base Type.
Definition at line 465 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Equivalence for two Intervals.
Definition at line 457 of file Interval.h. References I_FALSE, I_MAYBE, I_TRISTATE, I_TRUE, Interval< Type >::low(), Interval< Type >::overlaps(), and Interval< Type >::thin(). |
|
||||||||||||||||
|
Greater-than for a base Type and an Interval.
Definition at line 391 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Greater-than for an Interval and a base Type.
Definition at line 384 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Greater-than for two Intervals.
Definition at line 376 of file Interval.h. References Interval< Type >::high(), I_FALSE, I_MAYBE, I_TRISTATE, I_TRUE, and Interval< Type >::low(). |
|
||||||||||||||||
|
Greater-than-or-equal-to for a base Type and an Interval.
Definition at line 445 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Greater-than-or-equal-to for an Interval and a base Type.
Definition at line 438 of file Interval.h. References I_TRISTATE. |
|
||||||||||||||||
|
Greater-than-or-equal-to for two Intervals.
Definition at line 430 of file Interval.h. References Interval< Type >::high(), I_FALSE, I_MAYBE, I_TRISTATE, I_TRUE, and Interval< Type >::low(). |
1.3.4