codac 2.0.0
|
#include <list>
#include <array>
#include <gaol/gaol_interval.h>
#include "codac2_Index.h"
#include "codac2_Domain.h"
#include "codac2_assert.h"
#include "codac2_TypeInfo.h"
#include "codac2_Interval_impl.h"
Go to the source code of this file.
Classes | |
class | codac2::Interval |
Interval class, for representing closed and connected subsets of \(\mathbb{R}\). More... | |
Functions | |
std::ostream & | codac2::operator<< (std::ostream &os, const Interval &x) |
Streams out this. | |
Interval | codac2::operator""_i (long double x) |
Codac defined literals allowing to produce an interval from a double. | |
double | codac2::previous_float (double x) |
Returns the previous representable double-precision floating-point value before x. | |
double | codac2::next_float (double x) |
Returns the next representable double-precision floating-point value after x. | |
Interval | codac2::operator& (const Interval &x, const Interval &y) |
Returns the intersection of two intervals: \([x]\cap[y]\). | |
Interval | codac2::operator| (const Interval &x, double y) |
Returns the squared-union of an interval and a real: \([x]\sqcup\{y\}\). | |
Interval | codac2::operator| (const Interval &x, const Interval &y) |
Returns the squared-union of two intervals: \([x]\sqcup[y]\). | |
const Interval & | codac2::operator+ (const Interval &x) |
Returns this. | |
Interval | codac2::operator+ (const Interval &x, double y) |
Returns \([x]+y\) with \(y\in\mathbb{R}\). | |
Interval | codac2::operator+ (double x, const Interval &y) |
Returns \(x+[y]\) with \(x\in\mathbb{R}\). | |
Interval | codac2::operator+ (const Interval &x, const Interval &y) |
Returns \([x]+[y]\). | |
Interval | codac2::operator- (const Interval &x, double y) |
Returns \([x]-y\) with \(y\in\mathbb{R}\). | |
Interval | codac2::operator- (double x, const Interval &y) |
Returns \(x-[y]\) with \(x\in\mathbb{R}\). | |
Interval | codac2::operator- (const Interval &x, const Interval &y) |
Returns \([x]-[y]\). | |
Interval | codac2::operator* (const Interval &x, double y) |
Returns \([x]*y\) with \(y\in\mathbb{R}\). | |
Interval | codac2::operator* (double x, const Interval &y) |
Returns \(x*[y]\) with \(x\in\mathbb{R}\). | |
Interval | codac2::operator* (const Interval &x, const Interval &y) |
Returns \([x]*[y]\). | |
Interval | codac2::operator/ (const Interval &x, double y) |
Returns \([x]/y\) with \(y\in\mathbb{R}\). | |
Interval | codac2::operator/ (double x, const Interval &y) |
Returns \(x/[y]\) with \(x\in\mathbb{R}\). | |
Interval | codac2::operator/ (const Interval &x, const Interval &y) |
Returns \([x]/[y]\). | |
This class reuses several functions developed for ibex::Interval. See ibex::Interval (IBEX lib, main author: Gilles Chabert) https://ibex-lib.readthedocs.io
|
inline |
Streams out this.
os | the stream to be updated |
x | the interval to stream out |
|
inline |
Codac defined literals allowing to produce an interval from a double.
x | value to convert into an interval object |
|
inline |
Returns the previous representable double-precision floating-point value before x.
This function computes the largest double value that is strictly less than the input value x, effectively moving one step down in the floating-point representation.
next_float()
.x | The input double value. |
|
inline |
Returns the next representable double-precision floating-point value after x.
This function computes the smallest double value that is strictly greater than the input value x, effectively moving one step up in the floating-point representation.
previous_float()
.x | The input double value. |
Returns the intersection of two intervals: \([x]\cap[y]\).
x | interval value |
y | interval value |
|
inline |
Returns the squared-union of an interval and a real: \([x]\sqcup\{y\}\).
x | interval value |
y | real value |
Returns the squared-union of two intervals: \([x]\sqcup[y]\).
x | interval value |
y | interval value |
|
inline |
Returns this.
x | interval value |
|
inline |
Returns \([x]+y\) with \(y\in\mathbb{R}\).
x | interval value |
y | real value |
|
inline |
Returns \(x+[y]\) with \(x\in\mathbb{R}\).
x | real value |
y | interval value |
Returns \([x]+[y]\).
x | interval value |
y | interval value |
|
inline |
Returns \([x]-y\) with \(y\in\mathbb{R}\).
x | interval value |
y | real value |
|
inline |
Returns \(x-[y]\) with \(x\in\mathbb{R}\).
x | real value |
y | interval value |
Returns \([x]-[y]\).
x | interval value |
y | interval value |
|
inline |
Returns \([x]*y\) with \(y\in\mathbb{R}\).
x | interval value |
y | real value |
|
inline |
Returns \(x*[y]\) with \(x\in\mathbb{R}\).
x | real value |
y | interval value |
Returns \([x]*[y]\).
x | interval value |
y | interval value |
|
inline |
Returns \([x]/y\) with \(y\in\mathbb{R}\).
x | interval value |
y | real value |
|
inline |
Returns \(x/[y]\) with \(x\in\mathbb{R}\).
x | real value |
y | interval value |