C-XSC - A C++ Class Library for Extended Scientific Computing  2.5.4
cinterval.hpp
1 /*
2 ** CXSC is a C++ library for eXtended Scientific Computing (V 2.5.4)
3 **
4 ** Copyright (C) 1990-2000 Institut fuer Angewandte Mathematik,
5 ** Universitaet Karlsruhe, Germany
6 ** (C) 2000-2014 Wiss. Rechnen/Softwaretechnologie
7 ** Universitaet Wuppertal, Germany
8 **
9 ** This library is free software; you can redistribute it and/or
10 ** modify it under the terms of the GNU Library General Public
11 ** License as published by the Free Software Foundation; either
12 ** version 2 of the License, or (at your option) any later version.
13 **
14 ** This library is distributed in the hope that it will be useful,
15 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 ** Library General Public License for more details.
18 **
19 ** You should have received a copy of the GNU Library General Public
20 ** License along with this library; if not, write to the Free
21 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 */
23 
24 /* CVS $Id: cinterval.hpp,v 1.24 2014/01/30 17:23:44 cxsc Exp $ */
25 
26 #ifndef _CXSC_CINTERVAL_HPP_INCLUDED
27 #define _CXSC_CINTERVAL_HPP_INCLUDED
28 
29 #include <iostream>
30 #include <string>
31 
32 // Headerfile for cinterval.
33 
34 #include "except.hpp"
35 #include "real.hpp"
36 #include "complex.hpp"
37 #include "interval.hpp"
38 
39 namespace cxsc {
40 
41 class civector;
42 class cimatrix;
43 class civector_slice;
44 class cimatrix_slice;
45 
47 
54 class cinterval
55 {
56  private:
57  // ---- private data ----------------------------------------
58  interval re;
59  interval im;
60 
61  public:
62  // ---- implicit constructors ------------------------------
64  inline cinterval(void) noexcept {}
66  inline cinterval(const interval & a,const interval &b) noexcept;
68  inline cinterval(const complex & a,const complex & b) ;
69 
70  // The following are defined in the specific vector, matrix-files
71 #if(CXSC_INDEX_CHECK)
73  INLINE cinterval(const civector &) ;
75  INLINE cinterval(const civector_slice &);
77  INLINE cinterval(const cimatrix &) ;
79  INLINE cinterval(const cimatrix_slice &);
80 #else
82  INLINE cinterval(const civector &) noexcept;
84  INLINE cinterval(const civector_slice &) noexcept;
86  INLINE cinterval(const cimatrix &) noexcept;
88  INLINE cinterval(const cimatrix_slice &) noexcept;
89 #endif
90  // ---- explicit constructors -------------------------------
91 
93  explicit inline cinterval(const real & a) noexcept;
95  explicit inline cinterval(const interval & a) noexcept;
97  explicit inline cinterval(const complex & a) noexcept;
99  explicit cinterval(const dotprecision &) noexcept;
101  explicit cinterval(const cdotprecision &) noexcept;
103  explicit cinterval(const idotprecision &) noexcept;
105  explicit cinterval(const cidotprecision &) noexcept;
107  explicit cinterval(const l_cinterval&) noexcept;
108 
109  // ---- assignments -----------------------------------------
110 
112  inline cinterval & operator =(const real &) noexcept;
114  inline cinterval & operator =(const interval &) noexcept;
116  inline cinterval & operator =(const complex &) noexcept;
118  inline cinterval & operator =(const cinterval &) noexcept;
119 
121  inline cinterval & operator =(const dotprecision &) noexcept;
123  inline cinterval & operator =(const idotprecision &) noexcept;
125  inline cinterval & operator =(const cdotprecision &) noexcept;
127  inline cinterval & operator =(const cidotprecision &) noexcept;
129  cinterval & operator = (const l_cinterval&) noexcept;
131  cinterval & operator = (const lx_cinterval&) noexcept;
132 
133  // ---- compatiblility typecasts ----------------------------
134 
136  friend inline cinterval _cinterval(const real &) noexcept;
138  friend inline cinterval _cinterval(const interval &) noexcept;
140  friend inline cinterval _cinterval(const complex &) noexcept;
142  friend inline cinterval _cinterval(const dotprecision &) noexcept;
144  friend inline cinterval _cinterval(const idotprecision &) noexcept;
146  friend inline cinterval _cinterval(const cdotprecision &) noexcept;
148  friend inline cinterval _cinterval(const cidotprecision &) noexcept;
149 
151  friend inline cinterval _cinterval(const interval &,const interval &) noexcept;
153  friend inline cinterval _cinterval(const real &,const interval &) noexcept;
155  friend inline cinterval _cinterval(const interval &,const real &) noexcept;
157  friend inline cinterval _cinterval(const complex &,const complex &) noexcept;
159  friend inline cinterval _cinterval(const real &,const complex &) noexcept;
161  friend inline cinterval _cinterval(const complex &,const real &) noexcept;
163  friend inline cinterval _unchecked_cinterval(const complex &,const complex &) noexcept;
165  friend inline cinterval _unchecked_cinterval(const real &,const complex &) noexcept;
167  friend inline cinterval _unchecked_cinterval(const complex &,const real &) noexcept;
168 
169  // ---- Input/Output ---------------------------------------
170 
172  friend std::ostream & operator <<(std::ostream &,const cinterval &) noexcept;
174  friend std::istream & operator >>(std::istream &,cinterval &) ;
176  friend std::string & operator <<(std::string &,const cinterval &) noexcept;
178  friend std::string & operator >>(std::string &,cinterval &) ;
180  friend void operator >>(const char *,cinterval &) ;
182  friend void operator >>(const std::string &,cinterval &) ;
183 
184  // ---- Std.Operators ---------------------------------------
185 
187  friend inline cinterval operator -(const cinterval &) noexcept;
189  friend inline cinterval operator +(const cinterval &) noexcept;
191  friend inline bool operator! (const cinterval & a) noexcept;
192 
193  // CI-CI
194 
196  friend inline cinterval operator +(const cinterval &,const cinterval &) noexcept;
198  friend inline cinterval operator -(const cinterval &,const cinterval &) noexcept;
200  friend cinterval operator *(const cinterval &,const cinterval &) noexcept;
202  friend cinterval operator /(const cinterval &,const cinterval &);
204  friend inline cinterval operator |(const cinterval &,const cinterval &) noexcept;
206  friend inline cinterval operator &(const cinterval &,const cinterval &);
207 
209  friend inline cinterval & operator +=(cinterval &, const cinterval &) noexcept;
211  friend inline cinterval & operator -=(cinterval &, const cinterval &) noexcept;
213  friend inline cinterval & operator *=(cinterval &, const cinterval &) noexcept;
215  friend inline cinterval & operator /=(cinterval &, const cinterval &) noexcept;
217  friend inline cinterval & operator |=(cinterval &, const cinterval &) noexcept;
219  friend inline cinterval & operator &=(cinterval &, const cinterval &);
220 
221  // CI-R
222 
224  friend inline cinterval operator +(const cinterval &,const real &) noexcept;
226  friend inline cinterval operator +(const real &,const cinterval &) noexcept;
228  friend inline cinterval operator -(const cinterval &,const real &) noexcept;
230  friend inline cinterval operator -(const real &,const cinterval &) noexcept;
232  friend inline cinterval operator *(const cinterval &,const real &) noexcept;
234  friend inline cinterval operator *(const real &,const cinterval &) noexcept;
236  friend inline cinterval operator /(const cinterval &,const real &) noexcept;
238  friend inline cinterval operator /(const real &,const cinterval &) noexcept;
240  friend inline cinterval operator |(const cinterval &,const real &) noexcept;
242  friend inline cinterval operator |(const real &,const cinterval &) noexcept;
244  friend inline cinterval operator &(const cinterval &,const real &) noexcept;
246  friend inline cinterval operator &(const real &,const cinterval &) noexcept;
247 
249  friend inline cinterval & operator +=(cinterval &, const real &) noexcept;
251  friend inline cinterval & operator -=(cinterval &, const real &) noexcept;
253  friend inline cinterval & operator *=(cinterval &, const real &) noexcept;
255  friend inline cinterval & operator /=(cinterval &, const real &) noexcept;
257  friend inline cinterval & operator |=(cinterval &, const real &) noexcept;
259  friend inline cinterval & operator &=(cinterval &, const real &) noexcept;
260 
261  // CI-I
262 
264  friend inline cinterval operator +(const cinterval &,const interval &) noexcept;
266  friend inline cinterval operator +(const interval &,const cinterval &) noexcept;
268  friend inline cinterval operator -(const cinterval &,const interval &) noexcept;
270  friend inline cinterval operator -(const interval &,const cinterval &) noexcept;
272  friend inline cinterval operator *(const cinterval &,const interval &) noexcept;
274  friend inline cinterval operator *(const interval &,const cinterval &) noexcept;
276  friend inline cinterval operator /(const cinterval &,const interval &) noexcept;
278  friend inline cinterval operator /(const interval &,const cinterval &) noexcept;
280  friend inline cinterval operator |(const cinterval &,const interval &) noexcept;
282  friend inline cinterval operator |(const interval &,const cinterval &) noexcept;
284  friend inline cinterval operator &(const cinterval &,const interval &) noexcept;
286  friend inline cinterval operator &(const interval &,const cinterval &) noexcept;
287 
289  friend inline cinterval & operator +=(cinterval &, const interval &) noexcept;
291  friend inline cinterval & operator -=(cinterval &, const interval &) noexcept;
293  friend inline cinterval & operator *=(cinterval &, const interval &) noexcept;
295  friend inline cinterval & operator /=(cinterval &, const interval &) noexcept;
297  friend inline cinterval & operator |=(cinterval &, const interval &) noexcept;
299  friend inline cinterval & operator &=(cinterval &, const interval &) noexcept;
300 
301  // CI-C
302 
304  friend inline cinterval operator +(const cinterval &,const complex &) noexcept;
306  friend inline cinterval operator +(const complex &,const cinterval &) noexcept;
308  friend inline cinterval operator -(const cinterval &,const complex &) noexcept;
310  friend inline cinterval operator -(const complex &,const cinterval &) noexcept;
312  friend inline cinterval operator *(const cinterval &,const complex &) noexcept;
314  friend inline cinterval operator *(const complex &,const cinterval &) noexcept;
316  friend inline cinterval operator /(const cinterval &,const complex &) noexcept;
318  friend inline cinterval operator /(const complex &,const cinterval &) noexcept;
320  friend inline cinterval operator |(const cinterval &,const complex &) noexcept;
322  friend inline cinterval operator |(const complex &,const cinterval &) noexcept;
324  friend inline cinterval operator &(const cinterval &,const complex &) noexcept;
326  friend inline cinterval operator &(const complex &,const cinterval &) noexcept;
327 
328 
330  friend inline cinterval & operator +=(cinterval &, const complex &) noexcept;
332  friend inline cinterval & operator -=(cinterval &, const complex &) noexcept;
334  friend inline cinterval & operator *=(cinterval &, const complex &) noexcept;
336  friend inline cinterval & operator /=(cinterval &, const complex &) noexcept;
338  friend inline cinterval & operator |=(cinterval &, const complex &) noexcept;
340  friend inline cinterval & operator &=(cinterval &, const complex &) noexcept;
341 
342  // C-R
343 
345  friend inline cinterval operator |(const complex &,const real &) noexcept;
347  friend inline cinterval operator |(const real &,const complex &) noexcept;
348 
349  // C-I
350 
352  friend inline cinterval operator +(const complex &,const interval &) noexcept;
354  friend inline cinterval operator +(const interval &,const complex &) noexcept;
356  friend inline cinterval operator -(const complex &,const interval &) noexcept;
358  friend inline cinterval operator -(const interval &,const complex &) noexcept;
360  friend inline cinterval operator *(const complex &,const interval &) noexcept;
362  friend inline cinterval operator *(const interval &,const complex &) noexcept;
364  friend inline cinterval operator /(const complex &,const interval &) noexcept;
366  friend inline cinterval operator /(const interval &,const complex &) noexcept;
368  friend inline cinterval operator |(const complex &,const interval &) noexcept;
370  friend inline cinterval operator |(const interval &,const complex &) noexcept;
372  friend inline cinterval operator &(const complex &,const interval &) noexcept;
374  friend inline cinterval operator &(const interval &,const complex &) noexcept;
375 
376 
377  // C-C
378 
380  friend inline cinterval operator |(const complex &,const complex &) noexcept;
381 
382  // ---- Comp.Operat. ---------------------------------------
383 
385  friend inline bool operator== (const cinterval & a, const cinterval & b) noexcept;
387  friend inline bool operator!= (const cinterval & a, const cinterval & b) noexcept;
388 
389  // CI-R
390 
392  friend inline bool operator== (const cinterval & a, const real & b) noexcept;
394  friend inline bool operator== (const real & a, const cinterval & b) noexcept;
396  friend inline bool operator!= (const cinterval & a, const real & b) noexcept;
398  friend inline bool operator!= (const real & a, const cinterval & b) noexcept;
399 
400  // CI-I
401 
403  friend inline bool operator== (const cinterval & a, const interval & b) noexcept;
405  friend inline bool operator== (const interval & a, const cinterval & b) noexcept;
407  friend inline bool operator!= (const cinterval & a, const interval & b) noexcept;
409  friend inline bool operator!= (const interval & a, const cinterval & b) noexcept;
410 
411  // CI-C
412 
414  friend inline bool operator== (const cinterval & a, const complex & b) noexcept;
416  friend inline bool operator== (const complex & a, const cinterval & b) noexcept;
418  friend inline bool operator!= (const cinterval & a, const complex & b) noexcept;
420  friend inline bool operator!= (const complex & a, const cinterval & b) noexcept;
421 
422  // ---- Set Operators ----
423 
425  friend inline bool operator <(const cinterval &,const cinterval &) noexcept;
427  friend inline bool operator >(const cinterval &,const cinterval &) noexcept;
429  friend inline bool operator <=(const cinterval &,const cinterval &) noexcept;
431  friend inline bool operator >=(const cinterval &,const cinterval &) noexcept;
432 
433  // CI-R
434 
436  friend inline bool operator <(const real &,const cinterval &) noexcept;
438  friend inline bool operator >(const real &,const cinterval &) noexcept;
440  friend inline bool operator <=(const real &,const cinterval &) noexcept;
442  friend inline bool operator >=(const real &,const cinterval &) noexcept;
443 
445  friend inline bool operator <(const cinterval &,const real &) noexcept;
447  friend inline bool operator >(const cinterval &,const real &) noexcept;
449  friend inline bool operator <=(const cinterval &,const real &) noexcept;
451  friend inline bool operator >=(const cinterval &,const real &) noexcept;
452 
453  // CI-I
454 
456  friend inline bool operator <(const interval &,const cinterval &) noexcept;
458  friend inline bool operator >(const interval &,const cinterval &) noexcept;
460  friend inline bool operator <=(const interval &,const cinterval &) noexcept;
462  friend inline bool operator >=(const interval &,const cinterval &) noexcept;
463 
465  friend inline bool operator <(const cinterval &,const interval &) noexcept;
467  friend inline bool operator >(const cinterval &,const interval &) noexcept;
469  friend inline bool operator <=(const cinterval &,const interval &) noexcept;
471  friend inline bool operator >=(const cinterval &,const interval &) noexcept;
472 
473  // CI-C
474 
476  friend inline bool operator <(const complex &,const cinterval &) noexcept;
478  friend inline bool operator >(const complex &,const cinterval &) noexcept;
480  friend inline bool operator <=(const complex &,const cinterval &) noexcept;
482  friend inline bool operator >=(const complex &,const cinterval &) noexcept;
483 
485  friend inline bool operator <(const cinterval &,const complex &) noexcept;
487  friend inline bool operator >(const cinterval &,const complex &) noexcept;
489  friend inline bool operator <=(const cinterval &,const complex &) noexcept;
491  friend inline bool operator >=(const cinterval &,const complex &) noexcept;
492 
493  // ---- Others -------------------------------------------
495  friend inline complex Inf(const cinterval &) noexcept;
497  friend inline complex Sup(const cinterval &) noexcept;
498 
500  friend inline cinterval & SetInf(cinterval &,const complex &);
502  friend inline cinterval & SetInf(cinterval &,const real &);
504  friend inline cinterval & SetSup(cinterval &,const complex &);
506  friend inline cinterval & SetSup(cinterval &,const real &);
508  friend inline cinterval & UncheckedSetInf(cinterval &,const complex &) noexcept;
510  friend inline cinterval & UncheckedSetInf(cinterval &,const real &) noexcept;
512  friend inline cinterval & UncheckedSetSup(cinterval &,const complex &) noexcept;
514  friend inline cinterval & UncheckedSetSup(cinterval &,const real &) noexcept;
515 
517  friend inline interval & Re(cinterval & a) noexcept;
519  friend inline interval Re(const cinterval & a) noexcept;
521  friend inline interval & Im(cinterval & a) noexcept;
523  friend inline interval Im(const cinterval & a) noexcept;
524 
526  friend inline cinterval & SetRe(cinterval & a,const interval & b);
528  friend inline cinterval & SetIm(cinterval & a,const interval & b);
530  friend inline cinterval & SetRe(cinterval & a,const real & b);
532  friend inline cinterval & SetIm(cinterval & a,const real & b);
533 
535  friend inline real InfRe(const cinterval &a) noexcept;
537  friend inline real InfIm(const cinterval &a) noexcept;
539  friend inline real SupRe(const cinterval &a) noexcept;
541  friend inline real SupIm(const cinterval &a) noexcept;
542 
544  friend inline real & InfRe(cinterval &a) noexcept;
546  friend inline real & InfIm(cinterval &a) noexcept;
548  friend inline real & SupRe(cinterval &a) noexcept;
550  friend inline real & SupIm(cinterval &a) noexcept;
551 
553  friend interval abs(const cinterval &) noexcept;
555  friend inline cinterval conj(const cinterval &) noexcept;
557  friend inline complex mid(const cinterval &) noexcept;
559  friend inline complex diam(const cinterval &) noexcept;
560 };
561 
563 extern int in ( const cinterval&, const cinterval& );
565 extern cinterval Blow ( cinterval, const real& );
566 
567 // Additional declaration of friend functions outside class cinterval
568 interval abs(const cinterval &) noexcept;
569 
570 } // namespace cxsc
571 
572 #include "cinterval.inl"
573 #include "cimath.hpp"
574 
575 #endif // _CXSC_CINTERVAL_HPP_INCLUDED
576 
The Data Type cdotprecision.
Definition: cdot.hpp:61
The Data Type cidotprecision.
Definition: cidot.hpp:58
The Data Type cimatrix_slice.
Definition: cimatrix.hpp:1651
The Data Type cimatrix.
Definition: cimatrix.hpp:908
The Scalar Type cinterval.
Definition: cinterval.hpp:55
friend real InfRe(const cinterval &a) noexcept
Returns the infimum of the real interval of the complex interval.
Definition: cinterval.inl:612
friend interval & Re(cinterval &a) noexcept
Returns the real interval of the complex interval.
Definition: cinterval.inl:602
friend cinterval _unchecked_cinterval(const complex &, const complex &) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
Definition: cinterval.inl:223
friend cinterval & operator+=(cinterval &, const cinterval &) noexcept
Implementation of standard algebraic addition and allocation operation.
Definition: cinterval.inl:301
friend cinterval operator/(const cinterval &, const cinterval &)
Implementation of standard algebraic division operation.
Definition: cinterval.inl:648
friend bool operator>(const cinterval &, const cinterval &) noexcept
Implementation of standard greater-than operation.
Definition: cinterval.inl:476
friend cinterval operator&(const cinterval &, const cinterval &)
Returns the intersection of the arguments.
Definition: cinterval.inl:279
friend cinterval operator*(const cinterval &, const cinterval &) noexcept
Implementation of standard algebraic multiplication operation.
Definition: cinterval.inl:639
friend real SupRe(const cinterval &a) noexcept
Returns the supremum of the real interval of the complex interval.
Definition: cinterval.inl:614
friend real InfIm(const cinterval &a) noexcept
Returns the infimum of the imaginary interval of the complex interval.
Definition: cinterval.inl:613
cinterval(void) noexcept
Constructor of class cinterval.
Definition: cinterval.hpp:64
friend bool operator>=(const cinterval &, const cinterval &) noexcept
Implementation of standard more-or-equal-than operation.
Definition: cinterval.inl:488
friend cinterval _cinterval(const real &) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
Definition: cinterval.inl:105
friend cinterval & operator-=(cinterval &, const cinterval &) noexcept
Implementation of standard algebraic subtraction and allocation operation.
Definition: cinterval.inl:302
friend real SupIm(const cinterval &a) noexcept
Returns the supremum of the imaginary interval of the complex interval.
Definition: cinterval.inl:615
friend interval & Im(cinterval &a) noexcept
Returns the imaginary interval of the complex interval.
Definition: cinterval.inl:604
friend cinterval & SetInf(cinterval &, const complex &)
Returns the complex interval with the new given infimum value.
Definition: cinterval.inl:530
friend complex Sup(const cinterval &) noexcept
Returns the supremum of a complex interval.
Definition: cinterval.inl:528
friend interval abs(const cinterval &) noexcept
Returns the absolute value of a complex interval.
Definition: cinterval.cpp:541
friend cinterval conj(const cinterval &) noexcept
Returns the conjugated complex interval.
Definition: cinterval.inl:631
friend cinterval & SetIm(cinterval &a, const interval &b)
Sets the imaginary interval of the complex interval.
Definition: cinterval.inl:608
friend bool operator<(const cinterval &, const cinterval &) noexcept
Implementation of standard less-than operation.
Definition: cinterval.inl:466
friend cinterval & operator*=(cinterval &, const cinterval &) noexcept
Implementation of standard algebraic multiplication and allocation operation.
Definition: cinterval.inl:303
friend cinterval & operator/=(cinterval &, const cinterval &) noexcept
Implementation of standard algebraic division and allocation operation.
Definition: cinterval.inl:304
friend cinterval operator-(const cinterval &) noexcept
Implementation of standard algebraic negative sign operation.
Definition: cinterval.inl:259
friend cinterval & UncheckedSetSup(cinterval &, const complex &) noexcept
Returns the complex interval with the unchecked new given supremum value.
Definition: cinterval.inl:588
friend cinterval & SetSup(cinterval &, const complex &)
Returns the complex interval with the new given supremum value.
Definition: cinterval.inl:541
friend bool operator<=(const cinterval &, const cinterval &) noexcept
Implementation of standard less-or-equal-than operation.
Definition: cinterval.inl:478
friend complex Inf(const cinterval &) noexcept
Returns the infimum of a complex interval.
Definition: cinterval.inl:527
friend bool operator!(const cinterval &a) noexcept
Implementation of standard negation operation.
Definition: cinterval.inl:429
friend std::istream & operator>>(std::istream &, cinterval &)
Implementation of standard input method.
Definition: cinterval.cpp:571
friend std::ostream & operator<<(std::ostream &, const cinterval &) noexcept
Implementation of standard output method.
Definition: cinterval.cpp:553
friend bool operator==(const cinterval &a, const cinterval &b) noexcept
Implementation of standard equality operation.
Definition: cinterval.inl:434
friend complex diam(const cinterval &) noexcept
Returns the rounded diameter of the complex interval.
Definition: cinterval.inl:634
friend bool operator!=(const cinterval &a, const cinterval &b) noexcept
Implementation of standard negated equality operation.
Definition: cinterval.inl:439
friend cinterval operator|(const cinterval &, const cinterval &) noexcept
Returns the convex hull of the arguments.
Definition: cinterval.inl:291
friend cinterval & operator|=(cinterval &, const cinterval &) noexcept
Allocates the convex hull of the arguments to the first argument.
Definition: cinterval.inl:305
friend complex mid(const cinterval &) noexcept
Returns the rounded middle of the complex interval.
Definition: cinterval.inl:633
cinterval(const cimatrix_slice &) noexcept
Constructor of class cinterval.
cinterval & operator=(const real &) noexcept
Implementation of standard assigning operator.
Definition: cinterval.inl:53
friend cinterval & operator&=(cinterval &, const cinterval &)
Allocates the intersection of the arguments to the first argument.
Definition: cinterval.inl:306
friend cinterval & UncheckedSetInf(cinterval &, const complex &) noexcept
Returns the complex interval with the unchecked new given infimum value.
Definition: cinterval.inl:574
friend cinterval operator+(const cinterval &) noexcept
Implementation of standard algebraic positive sign operation.
Definition: cinterval.inl:264
friend cinterval & SetRe(cinterval &a, const interval &b)
Sets the real interval of the complex interval.
Definition: cinterval.inl:607
The Data Type civector_slice.
Definition: civector.hpp:1015
The Data Type civector.
Definition: civector.hpp:57
The Scalar Type complex.
Definition: complex.hpp:50
The Data Type dotprecision.
Definition: dot.hpp:112
The Data Type idotprecision.
Definition: idot.hpp:48
The Scalar Type interval.
Definition: interval.hpp:55
The Multiple-Precision Data Type l_cinterval.
Definition: l_cinterval.hpp:54
The Scalar Type real.
Definition: real.hpp:114
The namespace cxsc, providing all functionality of the class library C-XSC.
Definition: cdot.cpp:29
int in(const cinterval &x, const cinterval &y)
Checks if first argument is part of second argument.
Definition: cinterval.cpp:654
ivector abs(const cimatrix_subv &mv) noexcept
Returns the absolute value of the matrix.
Definition: cimatrix.inl:737
cinterval Blow(cinterval x, const real &eps)
Performs an epsilon inflation.
Definition: cinterval.cpp:665