26#ifndef _CXSC_L_INTERVAL_HPP_INCLUDED
27#define _CXSC_L_INTERVAL_HPP_INCLUDED
32#include "interval.hpp"
186 l_interval& operator = (
const lx_interval&)
noexcept;
187#if (CXSC_INDEX_CHECK)
234 friend std::istream& operator >> (std::istream& s,
l_interval & a) noexcept;
236 friend std::ostream& operator << (std::ostream& s, const
l_interval & a) noexcept;
238 friend std::
string & operator >> (std::
string& s,
l_interval & a) noexcept;
240 friend std::
string & operator << (std::
string& s, const
l_interval & a) noexcept;
242 friend
void operator >> (const std::
string& s,
l_interval &a) noexcept;
244 friend
void operator >> (const
char * s,
l_interval &a) noexcept;
450 friend
bool operator !(const
l_interval &) noexcept;
477 friend inline
bool operator ==(const
real &,const
l_interval &) noexcept;
479 friend inline
bool operator !=(const
real &,const
l_interval &) noexcept;
481 friend inline
bool operator ==(const
l_interval &,const
real &) noexcept;
483 friend inline
bool operator !=(const
l_interval &,const
real &) noexcept;
548 friend inline
bool operator <(const
real &,const
l_interval &) noexcept;
550 friend inline
bool operator >(const
real &,const
l_interval &) noexcept;
552 friend inline
bool operator <=(const
real &,const
l_interval &) noexcept;
554 friend inline
bool operator >=(const
real &,const
l_interval &) noexcept;
556 friend inline
bool operator <(const
l_interval &,const
real &) noexcept;
558 friend inline
bool operator >(const
l_interval &,const
real &) noexcept;
560 friend inline
bool operator <=(const
l_interval &,const
real &) noexcept;
562 friend inline
bool operator >=(const
l_interval &,const
real &) noexcept;
847#if (CXSC_INDEX_CHECK)
856#if (CXSC_INDEX_CHECK)
857 inline void _allo(
int);
859 inline void _allo(
int)
noexcept;
861 inline void _clear(
int)
noexcept;
867 inline real & elem(
int i) {
return data[i-1]; }
868 inline real elem(
int i)
const {
return data[i-1]; }
935l_interval _unchecked_l_interval(
const l_real &,
const l_real &)
noexcept;
939inline l_real Inf (
const l_interval &)
noexcept;
940inline l_real Sup (
const l_interval &)
noexcept;
942int in (
const real& x,
const l_interval& y );
943int in (
const l_real& x,
const l_interval& y );
944int in (
const interval& x,
const l_interval& y );
945int in (
const l_interval& x,
const l_interval& y );
946l_interval
Blow (
const l_interval& x,
const real& eps );
947int Disjoint (
const l_interval& a,
const l_interval& b );
948l_real
AbsMin (
const l_interval& x );
950l_real
AbsMax (
const l_interval& x );
952l_real
RelDiam (
const l_interval x );
954inline bool point_intv(
const l_interval &a );
957void Times2pown(l_interval&,
const real&)
noexcept;
971 operator l_real(
void)
const {
return Inf((
const l_interval)my_l_interval); }
989 operator l_real(
void)
const {
return Sup((
const l_interval)my_l_interval); }
999#include "l_interval.inl"
The Data Type dotprecision.
The Data Type idotprecision.
The Scalar Type interval.
The Multiple-Precision Data Type l_imatrix_slice.
The Multiple-Precision Data Type l_imatrix.
The Multiple-Precision Data Type l_interval_Inf.
l_interval_Inf(l_interval &a) noexcept
Constructor of class l_interval_Inf.
l_interval & operator=(const l_real &a)
Implementation of standard assigning operator.
The Multiple-Precision Data Type l_interval_Sup.
l_interval_Sup(l_interval &a) noexcept
Constructor of class l_interval_Sup.
l_interval & operator=(const l_real &a)
Implementation of standard assigning operator.
The Multiple-Precision Data Type l_interval.
friend l_interval Pip2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval coth(const l_interval &) noexcept
Calculates .
friend l_interval Pid4_l_interval() noexcept
Enclosure-Interval for .
real & operator[](int) noexcept
Access to the single components used to store the long data type value.
friend l_interval SqrtPi_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Ln2Pi_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Ln2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval exp2(const l_interval &)
Calculates .
friend l_interval Ep2Pi_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Ln10_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Catalan_l_interval() noexcept
Enclosure-Interval for Catalan Numbers.
friend l_interval sin(const l_interval &)
Calculates .
friend l_interval Er_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Sqrt2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval acot(const l_interval &) noexcept
Calculates .
friend l_interval LnPi_l_interval() noexcept
Enclosure-Interval for .
friend l_interval EpPi_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Ln2r_l_interval() noexcept
Enclosure-Interval for .
friend l_interval cos(const l_interval &)
Calculates .
friend l_interval Ep2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval & SetInf(l_interval &a, const l_real &b)
Returns the interval with the new given infimum value.
friend l_interval adjust(const l_interval &) noexcept
Sets the precision of a specific long datatype value.
friend l_interval abs(const l_interval &a) noexcept
Returns the absolute value of the interval.
friend l_interval exp10(const l_interval &)
Calculates .
friend l_interval li_ln2()
Enclosure-Interval for .
friend l_interval tan(const l_interval &)
Calculates .
friend l_interval Sqrt2r_l_interval() noexcept
Enclosure-Interval for .
friend l_interval li_ln10()
Enclosure-Interval for .
friend l_interval acosh(const l_interval &) noexcept
Calculates .
friend l_interval log2(const l_interval &)
Calculates .
friend l_interval li_pi4()
Enclosure-Interval for .
friend l_interval & UncheckedSetInf(l_interval &a, const l_real &b) noexcept
Returns the interval with the unchecked new given infimum value.
friend l_interval Sqrt2Pi_l_interval() noexcept
Enclosure-Interval for .
friend interval _l_interval(const l_ivector_slice &) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
friend l_interval sqrt(const l_interval &)
Calculates .
friend bool point_intv(const l_interval &)
Checks if the argument is a point interval.
friend void Times2pown(l_interval &, const real &) noexcept
Multiplication of interval with .
friend bool zero_(const l_interval &) noexcept
Checks if the argument is zero.
friend void Intersection(const l_interval &, const l_interval &, l_interval &, l_interval &)
Allocates the intersection of the arguments to the first argument.
friend l_interval Pir_l_interval() noexcept
Enclosure-Interval for .
friend l_interval asinh(const l_interval &)
Calculates .
friend l_interval & SetSup(l_interval &a, const l_real &b)
Returns the interval with the new given supremum value.
friend l_interval Sqrt7_l_interval() noexcept
Enclosure-Interval for .
friend interval _l_interval(const l_imatrix &m) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
friend void accumulate(idotprecision &, const real &, const l_interval &) noexcept
The accurate scalar product of the last two arguments added to the value of the first argument.
friend l_interval sqr(const l_interval &)
Calculates .
friend l_interval power(const l_interval &, int)
Calculates .
l_interval() noexcept
Constructor of class l_interval.
friend l_real Sup(const l_interval &) noexcept
Returns the supremum of an interval.
friend l_real Inf(const l_interval &) noexcept
Returns the infimum of an interval.
friend l_interval Pi2r_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Sqrt3_l_interval() noexcept
Enclosure-Interval for .
friend void times2pown(l_interval &, int) noexcept
Multiplication of interval with .
l_interval(const l_imatrix_slice &m) noexcept
Constructor of class l_interval.
friend l_interval SqrtPir_l_interval() noexcept
Enclosure-Interval for .
friend l_interval cot(const l_interval &)
Calculates .
friend l_interval pow(const l_interval &, const l_interval &)
Calculates .
friend l_interval sinh(const l_interval &)
Calculates .
friend l_interval Pid3_l_interval() noexcept
Enclosure-Interval for .
friend l_real diam(const l_interval &a) noexcept
Returns the rounded diameter of the interval.
friend void ConvexHull(const l_interval &, const l_interval &, l_interval &, l_interval &) noexcept
Allocates the convex hull of the arguments to the first argument.
friend l_interval Pid2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Sqrt5_l_interval() noexcept
Enclosure-Interval for .
friend l_interval cosh(const l_interval &)
Calculates .
friend l_interval EulerGa_l_interval() noexcept
Enclosure-Interval for Euler Gamma.
friend interval _l_interval(const l_imatrix_slice &m) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
friend l_interval Sqrt2Pir_l_interval() noexcept
Enclosure-Interval for .
friend l_interval & UncheckedSetSup(l_interval &a, const l_real &b) noexcept
Returns the interval with the unchecked new given supremum value.
friend l_real mid(const l_interval &a) noexcept
Returns the rounded middle of the interval.
friend l_interval li_sqrt2()
Enclosure-Interval for .
friend l_interval atanh(const l_interval &)
Calculates .
friend l_interval Sqrt3d2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval li_Rln10()
Enclosure-Interval for .
friend int expo_sm(const l_interval &)
Returns the minimum of the expo-function.
friend l_interval Ep2r_l_interval() noexcept
Enclosure-Interval for .
friend l_interval acos(const l_interval &)
Calculates .
friend l_interval E_l_interval() noexcept
Enclosure-Interval for .
friend l_interval acoth(const l_interval &)
Calculates .
friend l_interval exp(const l_interval &)
Calculates .
friend l_interval EpPid4_l_interval() noexcept
Enclosure-Interval for .
friend l_interval EpPid2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval atan(const l_interval &) noexcept
Calculates .
friend l_interval Pi2_l_interval() noexcept
Enclosure-Interval for .
friend l_interval log10(const l_interval &)
Calculates .
friend l_interval Ln10r_l_interval() noexcept
Enclosure-Interval for .
friend l_interval Pi_l_interval() noexcept
Enclosure-Interval for .
friend l_interval asin(const l_interval &)
Calculates .
friend int StagPrec(const l_interval &) noexcept
Returns the precision of the long datatype value.
friend interval _l_interval(const l_ivector &) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
friend int expo_gr(const l_interval &)
Returns the maximum of the expo-function.
friend l_interval tanh(const l_interval &) noexcept
Calculates .
friend l_interval ln(const l_interval &)
Calculates .
friend l_interval Sqrt3r_l_interval() noexcept
Enclosure-Interval for .
The Multiple-Precision Data Type l_ivector_slice.
The Multiple-Precision Data Type l_ivector.
The Multiple-Precision Data Type l_real.
The namespace cxsc, providing all functionality of the class library C-XSC.
int Disjoint(const interval &a, const interval &b)
Checks arguments for disjointness.
l_interval _l_interval(const real &a) noexcept
real RelDiam(const interval &x)
Computes the relative diameter .
int in(const cinterval &x, const cinterval &y)
Checks if first argument is part of second argument.
interval _unchecked_interval(const real &a, const real &b)
real AbsMax(const interval &x)
Computes the greatest absolute value .
void times2pown(cinterval &x, int n) noexcept
Fast multiplication of reference parameter [z] with .
cinterval Blow(cinterval x, const real &eps)
Performs an epsilon inflation.
real AbsMin(const interval &x)
Computes the smallest absolute value .