50 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"l_cinterval::l_cinterval(const complex & a,const complex & b)"));
59 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"l_cinterval::l_cinterval(const complex & a,const complex & b)"));
69 noexcept : re(a), im(0,0) {}
71 noexcept : re(a), im(0,0) {}
73 noexcept : re(
Re(a),
Re(a)),im(
Im(a),
Im(a)) {}
75 noexcept : re(
Re(a),
Re(a)),im(
Im(a),
Im(a)) {}
168 return !a.re && !a.im;
188 y =
Inf(a.re); x =
Inf(b.re);
191 y =
Inf(a.im); x =
Inf(b.im);
194 y =
Sup(a.re); x =
Sup(b.re);
197 y =
Sup(a.im); x =
Sup(b.im);
200 if (
Inf(tmp.re) >
Sup(tmp.re) ||
Inf(tmp.im) >
Sup(tmp.im))
201 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval operator &(const l_cinterval & a,const l_cinterval & b)"));
210 y =
Inf(a.re); x =
Inf(b.re);
213 y =
Inf(a.im); x =
Inf(b.im);
216 y =
Sup(a.re); x =
Sup(b.re);
219 y =
Sup(a.im); x =
Sup(b.im);
226 noexcept {
return a = a+b; }
228 noexcept {
return a = a-b; }
230 noexcept {
return a = a*b; }
232 noexcept {
return a = a/b; }
234 noexcept {
return a = a|b; }
270 {
return a = a * b; }
272 {
return a = a / b; }
310 {
return a = a * b; }
312 {
return a = a / b; }
510 const cinterval & b)
noexcept
516 const cinterval & b)
noexcept
522 const cinterval & b)
noexcept
528 const cinterval & b)
noexcept
534 const cinterval & b)
noexcept
540 const cinterval & b)
noexcept
678 return a.re==b.re && a.im==b.im;
682 return a.re!=b.re || a.im!=b.im;
754inline bool operator== (
const l_cinterval & a,
const cinterval & b)
noexcept
756inline bool operator== (
const cinterval & a,
const l_cinterval & b)
noexcept
758inline bool operator!= (
const l_cinterval & a,
const cinterval & b)
noexcept
760inline bool operator!= (
const cinterval & a,
const l_cinterval & b)
noexcept
913inline bool operator <(
const cinterval & a,
const l_cinterval & b)
noexcept
915inline bool operator >(
const cinterval & a,
const l_cinterval & b)
noexcept
917inline bool operator <=(
const cinterval & a,
const l_cinterval & b)
noexcept
919inline bool operator >=(
const cinterval & a,
const l_cinterval & b)
noexcept
922inline bool operator <(
const l_cinterval & a,
const cinterval & b)
noexcept
924inline bool operator >(
const l_cinterval & a,
const cinterval & b)
noexcept
926inline bool operator <=(
const l_cinterval & a,
const cinterval & b)
noexcept
928inline bool operator >=(
const l_cinterval & a,
const cinterval & b)
noexcept
946 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetInf(l_cinterval & a, const complex & b)"));
958 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetSup(l_cinterval & a, const complex & b)"));
970 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetInf(l_cinterval & a, const l_complex & b)"));
982 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetSup(l_cinterval & a, const l_complex & b)"));
994 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetSup(l_cinterval & a, const real & b)"));
1006 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetSup(l_cinterval & a, const real & b)"));
1018 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetSup(l_cinterval & a, const l_real & b)"));
1030 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline l_cinterval & SetSup(l_cinterval & a, const l_real & b)"));
1120 if ( n<-1074 || n>1023 )
1121 { std::cerr <<
"Error in: "
1122 <<
"times2pown(l_cinterval& x, const int& n): " << std::endl
1123 <<
" -1074 <= n <= +1023 not fulfilled" << std::endl; exit(0);
The Data Type cdotprecision.
The Data Type cidotprecision.
The Data Type dotprecision.
The Data Type idotprecision.
The Scalar Type interval.
friend l_complex Inf(const l_cinterval &) noexcept
Returns the infimum of an interval.
friend l_complex mid(const l_cinterval &) noexcept
Returns the rounded middle of the complex interval.
friend l_cinterval & UncheckedSetSup(l_cinterval &, const complex &) noexcept
Returns the interval with the unchecked new given supremum value.
friend l_cinterval & UncheckedSetInf(l_cinterval &, const complex &) noexcept
Returns the interval with the unchecked new given infimum value.
friend l_complex diam(const l_cinterval &) noexcept
Returns the rounded diameter of the complex interval.
friend l_complex Sup(const l_cinterval &) noexcept
Returns the supremum of an interval.
friend l_cinterval adjust(const l_cinterval &) noexcept
Sets the precision of a specific long datatype value.
friend l_interval & Im(l_cinterval &a) noexcept
Returns the imaginary part of the complex interval.
friend l_cinterval & SetInf(l_cinterval &, const complex &)
Returns the interval with the new given infimum value.
friend l_cinterval & SetSup(l_cinterval &, const complex &)
Returns the interval with the new given supremum value.
l_cinterval(void) noexcept
Constructor of class l_cinterval.
friend l_cinterval conj(const l_cinterval &) noexcept
Returns the conjugated complex interval.
friend l_interval & Re(l_cinterval &a) noexcept
Returns the real part of the complex interval.
friend void Times2pown(l_cinterval &x, const int &n) noexcept
Multiplication of interval with .
l_cinterval & operator=(const real &) noexcept
Implementation of standard assigning operator.
The Multiple-Precision Data Type l_complex.
The Multiple-Precision Data Type l_interval.
The Multiple-Precision Data Type l_real.
The namespace cxsc, providing all functionality of the class library C-XSC.
cdotprecision & operator+=(cdotprecision &cd, const l_complex &lc) noexcept
Implementation of standard algebraic addition and allocation operation.
civector operator/(const cimatrix_subv &rv, const cinterval &s) noexcept
Implementation of division operation.
cvector diam(const cimatrix_subv &mv) noexcept
Returns the diameter of the matrix.
cimatrix & operator*=(cimatrix &m, const cinterval &c) noexcept
Implementation of multiplication and allocation operation.
void times2pown(cinterval &x, int n) noexcept
Fast multiplication of reference parameter [z] with .
cvector mid(const cimatrix_subv &mv) noexcept
Returns the middle of the matrix.
civector operator*(const cimatrix_subv &rv, const cinterval &s) noexcept
Implementation of multiplication operation.
cimatrix & operator/=(cimatrix &m, const cinterval &c) noexcept
Implementation of division and allocation operation.