26 #ifndef _CXSC_DOT_HPP_INCLUDED 27 #define _CXSC_DOT_HPP_INCLUDED 44 typedef d_otpr Dotprecision;
50 #include "ioflags.hpp" 57 template<
typename S,
typename T>
58 static inline void addDot( dotprecision&,
const S&,
const T&);
59 template<
typename S,
typename T>
60 static inline void addDot( cdotprecision&,
const S&,
const T&);
61 template<
typename S,
typename T>
62 static inline void addDot( cidotprecision&,
const S&,
const T&);
63 template<
typename S,
typename T>
64 static inline void addDot_op( dotprecision&,
const S&,
const T&);
65 template<
typename S,
typename T>
66 static inline void addDot_op( cdotprecision&,
const S&,
const T&);
68 static inline void addSum( dotprecision&,
const S&);
82 #ifdef CXSC_USE_TLS_PREC 85 extern __declspec(thread) unsigned
int opdotprec;
87 extern __thread
unsigned int opdotprec;
92 extern unsigned int opdotprec;
129 inline int get_k()
const {
return k; }
131 inline void set_k(
unsigned int i) { k=i; }
278 template<
typename S,
typename T>
279 friend INLINE
void addDot(
dotprecision&,
const S&,
const T&);
280 template<
typename S,
typename T>
281 friend INLINE
void addDot(
cdotprecision&,
const S&,
const T&);
282 template<
typename S,
typename T>
285 template<
typename S,
typename T>
286 friend INLINE
void addDot_op(
dotprecision&,
const S&,
const T&);
287 template<
typename S,
typename T>
288 friend INLINE
void addDot_op(
cdotprecision&,
const S&,
const T&);
295 inline Dotprecision* ptr() {
return &akku; }
357 #endif // _CXSC_DOT_HPP_INCLUDED friend void rnd(const dotprecision &, real &, rndtype)
Converting the exact dotprecision value with one rounding into a real value.
void set_k(unsigned int i)
Set precision for computation of dot products.
friend std::string & operator<<(std::string &, const dotprecision &)
Implementation of standard output method.
friend bool operator>=(const dotprecision &, const dotprecision &)
Implementation of standard greater-or-equal-than operation.
friend bool operator!(const dotprecision &)
Implementation of standard negation operation.
The Data Type idotprecision.
The Multiple-Precision Data Type l_real.
The Data Type dotprecision.
friend bool operator!=(const dotprecision &, const dotprecision &)
Implementation of standard negated equality operation.
friend idotprecision operator|(const dotprecision &, const dotprecision &)
Returns the convex hull of the arguments.
friend bool operator>(const dotprecision &, const dotprecision &)
Implementation of standard greater-than operation.
The namespace cxsc, providing all functionality of the class library C-XSC.
The Scalar Type interval.
void set_err(real e)
Set the current error value, use with caution.
friend dotprecision _dotprecision(const real &d)
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC...
friend bool operator==(const dotprecision &, const dotprecision &)
Implementation of standard equality operation.
friend dotprecision & operator+=(dotprecision &, const dotprecision &)
Implementation of standard algebraic addition and allocation operation.
The Data Type cidotprecision.
int get_dotprec() const
Get currently set precision for computation of dot products.
friend dotprecision operator-(const dotprecision &)
Implementation of standard algebraic negative sign operation.
dotprecision & operator=(const dotprecision &)
Implementation of standard assigning operator.
friend dotprecision operator+(const dotprecision &)
Implementation of standard algebraic positive sign operation.
friend dotprecision & accumulate(dotprecision &, const real &, const real &)
The accurate scalar product of the last two arguments added to the value of the first argument...
The Data Type cdotprecision.
friend dotprecision & operator-=(dotprecision &, const dotprecision &)
Implementation of standard algebraic subtraction and allocation operation.
friend int sign(const dotprecision &)
The sign of a dotprecision value.
dotprecision(void)
Constructor of class dotprecision.
real get_err() const
Get the current error value (if dot products not computed in maximum precision)
friend std::string & operator>>(std::string &, dotprecision &)
Implementation of standard input method.
friend dotprecision abs(const dotprecision &)
The absolute value of a dotprecision value.
int get_k() const
Get currently set precision for computation of dot products.
friend dotprecision & accumulate_approx(dotprecision &, const real &, const real &)
The accurate scalar product of the last two arguments added to the value of the first argument (no er...
void set_dotprec(unsigned int i)
Set precision for computation of dot products.
friend bool operator<(const dotprecision &, const dotprecision &)
Implementation of standard less-than operation.
friend bool operator<=(const dotprecision &, const dotprecision &)
Implementation of standard less-or-equal-than operation.