40 inline lx_cinterval::lx_cinterval(
const lx_interval & a,
41 const lx_interval & b)
throw()
44 inline lx_cinterval::lx_cinterval(
const l_interval & a,
45 const l_interval & b)
throw()
48 inline lx_cinterval::lx_cinterval(
const interval & a,
49 const interval & b)
throw()
52 inline lx_cinterval::lx_cinterval(
const l_real & a,
53 const l_real & b)
throw()
56 inline lx_cinterval::lx_cinterval(
const lx_real & a,
57 const lx_real & b)
throw()
60 inline lx_cinterval::lx_cinterval(
const real & a,
61 const real & b)
throw()
64 inline lx_cinterval::lx_cinterval(
const l_cinterval & a)
throw()
65 : re(Re(a)), im(Im(a)) { }
67 inline lx_cinterval::lx_cinterval(
const complex & a)
throw()
68 : re(Re(a)), im(Im(a)) { }
70 inline lx_cinterval::lx_cinterval(
const l_complex & a)
throw()
71 : re(Re(a)), im(Im(a)) { }
73 inline lx_cinterval::lx_cinterval(
const lx_complex & a)
throw()
74 : re(Re(a)), im(Im(a)) { }
76 inline lx_cinterval::lx_cinterval(
const lx_complex & a,
const lx_complex & b)
77 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
81 if(Inf(re)>Sup(re) || Inf(im)>Sup(im))
82 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"lx_cinterval::lx_cinterval(const lx_complex & a,const lx_complex & b)"));
85 inline lx_cinterval::lx_cinterval(
const l_complex & a,
const l_complex & b)
86 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
90 if(Inf(re)>Sup(re) || Inf(im)>Sup(im))
91 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"lx_cinterval::lx_cinterval(const l_complex & a,const l_complex & b)"));
94 inline lx_cinterval::lx_cinterval(
const complex & a,
const complex & b)
95 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
99 if(Inf(re)>Sup(re) || Inf(im)>Sup(im))
100 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"lx_cinterval::lx_cinterval(const complex & a,const complex & b)"));
103 inline lx_cinterval::lx_cinterval(
const cinterval & a)
throw()
104 : re(Re(a)), im(Im(a)) { }
106 inline lx_cinterval::lx_cinterval(
const real& na,
const l_interval &la,
107 const real& nb,
const l_interval &lb)
108 throw() : re(na,la), im(nb,lb) { }
110 inline lx_cinterval::lx_cinterval(
const real &n,
const l_interval &a,
111 const lx_interval &b)
112 throw() : re(n,a), im(b) { }
114 inline lx_cinterval::lx_cinterval(
const lx_interval &a,
115 const real &n,
const l_interval &b)
116 throw() : re(a), im(n,b) { }
118 inline lx_cinterval::lx_cinterval(
const real &nr,
const string &sr,
119 const real &ni,
const string &si)
120 throw() : re(lx_interval(nr,sr)), im(lx_interval(ni,si)) { }
122 inline lx_cinterval::lx_cinterval(
const lx_interval & a)
throw()
125 inline lx_cinterval::lx_cinterval(
const l_interval & a)
throw()
128 inline lx_cinterval::lx_cinterval(
const interval & a)
throw()
131 inline lx_cinterval::lx_cinterval(
const lx_real & a)
throw()
134 inline lx_cinterval::lx_cinterval(
const l_real & a)
throw()
137 inline lx_cinterval::lx_cinterval(
const real & a)
throw()
140 inline lx_cinterval::lx_cinterval(
const real& n,
const l_interval &a)
throw()
149 inline lx_cinterval & lx_cinterval::operator = (
const lx_cinterval & a)
throw()
156 inline lx_cinterval & lx_cinterval::operator = (
const l_cinterval & a)
throw()
163 inline lx_cinterval & lx_cinterval::operator = (
const cinterval & a)
throw()
170 inline lx_cinterval & lx_cinterval::operator = (
const lx_interval & a)
throw()
177 inline lx_cinterval & lx_cinterval::operator = (
const l_interval & a)
throw()
184 inline lx_cinterval & lx_cinterval::operator = (
const interval & a)
throw()
191 inline lx_cinterval & lx_cinterval::operator = (
const lx_real & a)
throw()
198 inline lx_cinterval & lx_cinterval::operator = (
const l_real & a)
throw()
205 inline lx_cinterval & lx_cinterval::operator = (
const real & a)
throw()
212 inline lx_cinterval & lx_cinterval::operator = (
const lx_complex & a )
throw()
219 inline lx_cinterval & lx_cinterval::operator = (
const l_complex & a )
throw()
226 inline lx_cinterval & lx_cinterval::operator = (
const complex & a )
throw()
239 inline lx_complex Inf(
const lx_cinterval &a)
throw()
240 {
return lx_complex(Inf(a.re),Inf(a.im)); }
242 inline lx_complex Sup(
const lx_cinterval &a)
throw()
243 {
return lx_complex(Sup(a.re),Sup(a.im)); }
245 inline lx_interval Re(
const lx_cinterval &a)
throw()
248 inline lx_interval Im(
const lx_cinterval &a)
throw()
252 inline lx_cinterval & SetRe(lx_cinterval &a,
const lx_interval &b)
253 { a.re=b;
return a; }
254 inline lx_cinterval & SetRe(lx_cinterval &a,
const l_interval &b)
255 { a.re=b;
return a; }
256 inline lx_cinterval & SetRe(lx_cinterval &a,
const interval &b)
257 { a.re=b;
return a; }
258 inline lx_cinterval & SetRe(lx_cinterval &a,
const lx_real &b)
259 { a.re=b;
return a; }
260 inline lx_cinterval & SetRe(lx_cinterval &a,
const l_real &b)
261 { a.re=b;
return a; }
262 inline lx_cinterval & SetRe(lx_cinterval &a,
const real &b)
263 { a.re=b;
return a; }
265 inline lx_cinterval & SetIm(lx_cinterval &a,
const lx_interval &b)
266 { a.im=b;
return a; }
267 inline lx_cinterval & SetIm(lx_cinterval &a,
const l_interval &b)
268 { a.im=b;
return a; }
269 inline lx_cinterval & SetIm(lx_cinterval &a,
const interval &b)
270 { a.im=b;
return a; }
271 inline lx_cinterval & SetIm(lx_cinterval &a,
const lx_real &b)
272 { a.im=b;
return a; }
273 inline lx_cinterval & SetIm(lx_cinterval &a,
const l_real &b)
274 { a.im=b;
return a; }
275 inline lx_cinterval & SetIm(lx_cinterval &a,
const real &b)
276 { a.im=b;
return a; }
279 inline lx_real InfRe(
const lx_cinterval &a)
throw()
280 {
return Inf(a.re); }
281 inline lx_real InfIm(
const lx_cinterval &a)
throw()
282 {
return Inf(a.im); }
283 inline lx_real SupRe(
const lx_cinterval &a)
throw()
284 {
return Sup(a.re); }
285 inline lx_real SupIm(
const lx_cinterval &a)
throw()
286 {
return Sup(a.im); }
288 inline lx_complex
mid(
const lx_cinterval &a)
throw()
289 {
return lx_complex(
mid(a.re),
mid(a.im)); }
291 inline lx_complex
diam(
const lx_cinterval &a)
throw()
292 {
return lx_complex(
diam(a.re),
diam(a.im)); }
295 {
return expo(a.re); }
298 {
return expo(a.im); }
301 {
return li_part(a.re); }
304 {
return li_part(a.im); }
306 inline lx_cinterval adjust(
const lx_cinterval &a)
throw()
307 {
return lx_cinterval(adjust(a.re),adjust(a.im)); }
309 inline lx_cinterval conj(
const lx_cinterval &a)
throw()
310 {
return lx_cinterval(a.re,-a.im); }
314 lx_interval a(x.re),b(x.im);
317 x = lx_cinterval(a,b);
320 inline lx_interval
abs(
const lx_cinterval &a)
throw()
329 inline lx_cinterval operator-(
const lx_cinterval & a)
throw()
330 {
return lx_cinterval(-a.re,-a.im); }
332 inline lx_cinterval operator+(
const lx_cinterval & a)
throw()
340 inline lx_cinterval operator + (
const lx_cinterval &a,
const lx_cinterval &b)
342 {
return lx_cinterval(a.re + b.re, a.im + b.im); }
344 inline lx_cinterval operator + (
const lx_cinterval &a,
const l_cinterval &b)
346 {
return lx_cinterval(a.re + Re(b), a.im + Im(b)); }
348 inline lx_cinterval operator + (
const l_cinterval &a,
const lx_cinterval &b)
350 {
return lx_cinterval(Re(a) + b.re, Im(a) + b.im); }
352 inline lx_cinterval operator + (
const lx_cinterval &a,
const cinterval &b)
354 {
return lx_cinterval(a.re + Re(b), a.im + Im(b)); }
356 inline lx_cinterval operator + (
const cinterval &a,
const lx_cinterval &b)
358 {
return lx_cinterval(Re(a) + b.re, Im(a) + b.im); }
360 inline lx_cinterval operator + (
const lx_cinterval &a,
const lx_interval &b)
362 {
return lx_cinterval(a.re + b, a.im); }
364 inline lx_cinterval operator + (
const lx_interval &a,
const lx_cinterval &b)
366 {
return lx_cinterval(a + b.re, b.im); }
368 inline lx_cinterval operator + (
const lx_cinterval &a,
const l_interval &b)
370 {
return lx_cinterval(a.re + b, a.im); }
372 inline lx_cinterval operator + (
const l_interval &a,
const lx_cinterval &b)
374 {
return lx_cinterval(a + b.re, b.im); }
376 inline lx_cinterval operator + (
const lx_cinterval &a,
const lx_real &b)
throw()
377 {
return lx_cinterval(a.re + b, a.im); }
379 inline lx_cinterval operator + (
const lx_real &a,
const lx_cinterval &b)
throw()
380 {
return lx_cinterval(a + b.re, b.im); }
382 inline lx_cinterval operator + (
const lx_cinterval &a,
const l_real &b)
throw()
383 {
return lx_cinterval(a.re + b, a.im); }
385 inline lx_cinterval operator + (
const l_real &a,
const lx_cinterval &b)
throw()
386 {
return lx_cinterval(a + b.re, b.im); }
388 inline lx_cinterval operator + (
const lx_cinterval &a,
const real &b)
throw()
389 {
return lx_cinterval(a.re + b, a.im); }
391 inline lx_cinterval operator + (
const real &a,
const lx_cinterval &b)
throw()
392 {
return lx_cinterval(a + b.re, b.im); }
394 inline lx_cinterval operator + (
const lx_cinterval &a,
const complex &b)
throw()
395 {
return lx_cinterval(a.re + Re(b), a.im + Im(b)); }
396 inline lx_cinterval operator + (
const complex &a,
const lx_cinterval &b)
throw()
397 {
return lx_cinterval(Re(a) + b.re, Im(a) + b.im); }
399 inline lx_cinterval operator + (
const lx_cinterval &a,
const l_complex &b)
400 throw() {
return lx_cinterval(a.re + Re(b), a.im + Im(b)); }
401 inline lx_cinterval operator + (
const l_complex &a,
const lx_cinterval &b)
402 throw() {
return lx_cinterval(Re(a) + b.re, Im(a) + b.im); }
404 inline lx_cinterval operator + (
const lx_cinterval &a,
const lx_complex &b)
405 throw() {
return lx_cinterval(a.re + Re(b), a.im + Im(b)); }
406 inline lx_cinterval operator + (
const lx_complex &a,
const lx_cinterval &b)
407 throw() {
return lx_cinterval(Re(a) + b.re, Im(a) + b.im); }
410 inline lx_cinterval &
operator +=(lx_cinterval &a,
const lx_cinterval &b)
throw()
413 inline lx_cinterval &
operator +=(lx_cinterval &a,
const lx_interval &b)
throw()
425 inline lx_cinterval &
operator +=(lx_cinterval &a,
const lx_real &b)
throw()
443 inline lx_cinterval &
operator +=(lx_cinterval &a,
const lx_complex &b)
throw()
447 inline lx_cinterval operator - (
const lx_cinterval &a,
const lx_cinterval &b)
448 throw() {
return lx_cinterval(a.re - b.re, a.im - b.im); }
450 inline lx_cinterval operator - (
const lx_cinterval &a,
const l_cinterval &b)
451 throw() {
return lx_cinterval(a.re - Re(b), a.im - Im(b)); }
453 inline lx_cinterval operator - (
const l_cinterval &a,
const lx_cinterval &b)
454 throw() {
return lx_cinterval(Re(a) - b.re, Im(a) - b.im); }
456 inline lx_cinterval operator - (
const lx_cinterval &a,
const cinterval &b)
457 throw() {
return lx_cinterval(a.re - Re(b), a.im - Im(b)); }
459 inline lx_cinterval operator - (
const cinterval &a,
const lx_cinterval &b)
460 throw() {
return lx_cinterval(Re(a) - b.re, Im(a) - b.im); }
462 inline lx_cinterval operator - (
const lx_cinterval &a,
const lx_interval &b)
463 throw() {
return lx_cinterval(a.re - b, a.im); }
465 inline lx_cinterval operator - (
const lx_interval &a,
const lx_cinterval &b)
466 throw() {
return lx_cinterval(a - b.re, -b.im); }
468 inline lx_cinterval operator - (
const lx_cinterval &a,
const l_interval &b)
469 throw() {
return lx_cinterval(a.re - b, a.im); }
471 inline lx_cinterval operator - (
const l_interval &a,
const lx_cinterval &b)
472 throw() {
return lx_cinterval(a - b.re, -b.im); }
474 inline lx_cinterval operator - (
const lx_cinterval &a,
const lx_real &b)
throw()
475 {
return lx_cinterval(a.re - b, a.im); }
477 inline lx_cinterval operator - (
const lx_real &a,
const lx_cinterval &b)
throw()
478 {
return lx_cinterval(a - b.re, -b.im); }
480 inline lx_cinterval operator - (
const lx_cinterval &a,
const l_real &b)
throw()
481 {
return lx_cinterval(a.re - b, a.im); }
483 inline lx_cinterval operator - (
const l_real &a,
const lx_cinterval &b)
throw()
484 {
return lx_cinterval(a - b.re, -b.im); }
486 inline lx_cinterval operator - (
const lx_cinterval &a,
const real &b)
throw()
487 {
return lx_cinterval(a.re - b, a.im); }
489 inline lx_cinterval operator - (
const real &a,
const lx_cinterval &b)
throw()
490 {
return lx_cinterval(a - b.re, -b.im); }
492 inline lx_cinterval operator - (
const lx_cinterval &a,
const complex &b)
throw()
493 {
return lx_cinterval(a.re - Re(b), a.im - Im(b)); }
494 inline lx_cinterval operator - (
const complex &a,
const lx_cinterval &b)
throw()
495 {
return lx_cinterval(Re(a) - b.re, Im(a) - b.im); }
496 inline lx_cinterval operator - (
const lx_cinterval &a,
const l_complex &b)
497 throw() {
return lx_cinterval(a.re - Re(b), a.im - Im(b)); }
498 inline lx_cinterval operator - (
const l_complex &a,
const lx_cinterval &b)
499 throw() {
return lx_cinterval(Re(a) - b.re, Im(a) - b.im); }
500 inline lx_cinterval operator - (
const lx_cinterval &a,
const lx_complex &b)
501 throw() {
return lx_cinterval(a.re - Re(b), a.im - Im(b)); }
502 inline lx_cinterval operator - (
const lx_complex &a,
const lx_cinterval &b)
503 throw() {
return lx_cinterval(Re(a) - b.re, Im(a) - b.im); }
506 inline lx_cinterval & operator -=(lx_cinterval &a,
const lx_cinterval &b)
throw()
509 inline lx_cinterval & operator -=(lx_cinterval &a,
const lx_interval &b)
throw()
512 inline lx_cinterval & operator -=(lx_cinterval &a,
const l_interval &b)
throw()
515 inline lx_cinterval & operator -=(lx_cinterval &a,
const l_cinterval &b)
throw()
518 inline lx_cinterval & operator -=(lx_cinterval &a,
const l_real &b)
throw()
521 inline lx_cinterval & operator -=(lx_cinterval &a,
const lx_real &b)
throw()
524 inline lx_cinterval & operator -=(lx_cinterval &a,
const real &b)
throw()
527 inline lx_cinterval & operator -=(lx_cinterval &a,
const interval &b)
throw()
530 inline lx_cinterval & operator -=(lx_cinterval &a,
const cinterval &b)
throw()
532 inline lx_cinterval & operator -=(lx_cinterval &a,
const complex &b)
throw()
534 inline lx_cinterval & operator -=(lx_cinterval &a,
const l_complex &b)
throw()
536 inline lx_cinterval & operator -=(lx_cinterval &a,
const lx_complex &b)
throw()
540 inline lx_cinterval
operator * (
const lx_cinterval &a,
const lx_cinterval &b)
542 {
return lx_cinterval(a.re*b.re - a.im*b.im, a.im*b.re + a.re*b.im); }
546 {
return a * lx_cinterval(b); }
550 {
return lx_cinterval(a) * b; }
554 {
return a * lx_cinterval(b); }
558 {
return lx_cinterval(a) * b; }
561 inline lx_cinterval
operator * (
const lx_cinterval &a,
const lx_interval &b)
563 {
return lx_cinterval(a.re*b, a.im*b); }
565 inline lx_cinterval
operator * (
const lx_interval &a,
const lx_cinterval &b)
567 {
return lx_cinterval(a*b.re, a*b.im); }
571 {
return lx_cinterval(a.re*b, a.im*b); }
575 {
return lx_cinterval(a*b.re, a*b.im); }
577 inline lx_cinterval
operator * (
const lx_cinterval &a,
const lx_real &b)
throw()
578 {
return lx_cinterval(a.re*b, a.im*b); }
580 inline lx_cinterval
operator * (
const lx_real &a,
const lx_cinterval &b)
throw()
581 {
return lx_cinterval(a*b.re, a*b.im); }
584 {
return lx_cinterval(a.re*b, a.im*b); }
587 {
return lx_cinterval(a*b.re, a*b.im); }
590 {
return lx_cinterval(a.re*b, a.im*b); }
593 {
return lx_cinterval(a*b.re, a*b.im); }
596 {
return a * lx_cinterval(b); }
598 {
return lx_cinterval(a) * b; }
600 throw() {
return a * lx_cinterval(b); }
602 throw() {
return lx_cinterval(a) * b; }
603 inline lx_cinterval
operator * (
const lx_cinterval &a,
const lx_complex &b)
604 throw() {
return a * lx_cinterval(b); }
605 inline lx_cinterval
operator * (
const lx_complex &a,
const lx_cinterval &b)
606 throw() {
return lx_cinterval(a) * b; }
609 inline lx_cinterval &
operator *=(lx_cinterval &a,
const lx_cinterval &b)
throw()
612 inline lx_cinterval &
operator *=(lx_cinterval &a,
const lx_interval &b)
throw()
624 inline lx_cinterval &
operator *=(lx_cinterval &a,
const lx_real &b)
throw()
642 inline lx_cinterval &
operator *=(lx_cinterval &a,
const lx_complex &b)
throw()
646 inline lx_cinterval
operator / (
const lx_cinterval &a,
const lx_cinterval &b)
649 lx_interval Ne(
sqr(b.re) +
sqr(b.im));
651 return lx_cinterval( (a.re*b.re + a.im*b.im)/Ne,
652 (a.im*b.re - a.re*b.im)/Ne );
657 {
return a / lx_cinterval(b); }
661 {
return lx_cinterval(a) / b; }
665 {
return a / lx_cinterval(b); }
669 {
return lx_cinterval(a) / b; }
671 inline lx_cinterval
operator / (
const lx_cinterval &a,
const lx_interval &b)
673 {
return lx_cinterval(a.re/b, a.im/b); }
675 inline lx_cinterval
operator / (
const lx_interval &a,
const lx_cinterval &b)
677 {
return lx_cinterval(a) / b; }
681 {
return lx_cinterval(a.re/b, a.im/b); }
685 {
return lx_cinterval(a) / b; }
688 {
return lx_cinterval(a.re/b, a.im/b); }
691 {
return lx_cinterval(a) / b; }
693 inline lx_cinterval
operator / (
const lx_cinterval &a,
const lx_real &b)
throw()
694 {
return lx_cinterval(a.re/b, a.im/b); }
696 inline lx_cinterval
operator / (
const lx_real &a,
const lx_cinterval &b)
throw()
697 {
return lx_cinterval(a) / b; }
700 {
return lx_cinterval(a.re/b, a.im/b); }
703 {
return lx_cinterval(a) / b; }
706 {
return a / lx_cinterval(b); }
708 {
return lx_cinterval(a) / b; }
711 throw() {
return a / lx_cinterval(b); }
713 throw() {
return lx_cinterval(a) / b; }
715 inline lx_cinterval
operator / (
const lx_cinterval &a,
const lx_complex &b)
716 throw() {
return a / lx_cinterval(b); }
717 inline lx_cinterval
operator / (
const lx_complex &a,
const lx_cinterval &b)
718 throw() {
return lx_cinterval(a) / b; }
721 inline lx_cinterval &
operator /=(lx_cinterval &a,
const lx_cinterval &b)
throw()
724 inline lx_cinterval &
operator /=(lx_cinterval &a,
const lx_interval &b)
throw()
736 inline lx_cinterval &
operator /=(lx_cinterval &a,
const lx_real &b)
throw()
754 inline lx_cinterval &
operator /=(lx_cinterval &a,
const lx_complex &b)
throw()
759 inline bool operator ! (
const lx_cinterval & a)
throw()
760 {
return !a.re && !a.im; }
763 inline bool operator == (
const lx_cinterval &a,
const lx_cinterval &b)
throw()
764 {
return a.re == b.re && a.im == b.im; }
766 inline bool operator == (
const lx_cinterval &a,
const l_cinterval &b)
throw()
767 {
return a == lx_cinterval(b); }
768 inline bool operator == (
const l_cinterval &a,
const lx_cinterval &b)
throw()
769 {
return lx_cinterval(a) == b; }
771 inline bool operator == (
const lx_cinterval &a,
const lx_interval &b)
throw()
772 {
return a == lx_cinterval(b); }
773 inline bool operator == (
const lx_interval &a,
const lx_cinterval &b)
throw()
774 {
return lx_cinterval(a) == b; }
776 inline bool operator == (
const lx_cinterval &a,
const l_interval &b)
throw()
777 {
return a == lx_cinterval(b); }
778 inline bool operator == (
const l_interval &a,
const lx_cinterval &b)
throw()
779 {
return lx_cinterval(a) == b; }
781 inline bool operator == (
const lx_cinterval &a,
const l_real &b)
throw()
782 {
return a == lx_cinterval(b); }
783 inline bool operator == (
const l_real &a,
const lx_cinterval &b)
throw()
784 {
return lx_cinterval(a) == b; }
786 inline bool operator == (
const lx_cinterval &a,
const lx_real &b)
throw()
787 {
return a == lx_cinterval(b); }
788 inline bool operator == (
const lx_real &a,
const lx_cinterval &b)
throw()
789 {
return lx_cinterval(a) == b; }
791 inline bool operator == (
const lx_cinterval &a,
const real &b)
throw()
792 {
return a == lx_cinterval(b); }
793 inline bool operator == (
const real &a,
const lx_cinterval &b)
throw()
794 {
return lx_cinterval(a) == b; }
796 inline bool operator == (
const lx_cinterval &a,
const interval &b)
throw()
797 {
return a == lx_cinterval(b); }
798 inline bool operator == (
const interval &a,
const lx_cinterval &b)
throw()
799 {
return lx_cinterval(a) == b; }
801 inline bool operator == (
const lx_cinterval &a,
const cinterval &b)
throw()
802 {
return a == lx_cinterval(b); }
803 inline bool operator == (
const cinterval &a,
const lx_cinterval &b)
throw()
804 {
return lx_cinterval(a) == b; }
806 inline bool operator == (
const lx_cinterval &a,
const complex &b)
throw()
807 {
return a == lx_cinterval(b); }
808 inline bool operator == (
const complex &a,
const lx_cinterval &b)
throw()
809 {
return lx_cinterval(a) == b; }
811 inline bool operator == (
const lx_cinterval &a,
const l_complex &b)
throw()
812 {
return a == lx_cinterval(b); }
813 inline bool operator == (
const l_complex &a,
const lx_cinterval &b)
throw()
814 {
return lx_cinterval(a) == b; }
816 inline bool operator == (
const lx_cinterval &a,
const lx_complex &b)
throw()
817 {
return a == lx_cinterval(b); }
818 inline bool operator == (
const lx_complex &a,
const lx_cinterval &b)
throw()
819 {
return lx_cinterval(a) == b; }
822 inline bool operator != (
const lx_cinterval &a,
const lx_cinterval &b)
throw()
823 {
return a.re != b.re || a.im != b.im; }
825 inline bool operator != (
const lx_cinterval &a,
const l_cinterval &b)
throw()
826 {
return !(a == b); }
827 inline bool operator != (
const l_cinterval &a,
const lx_cinterval &b)
throw()
828 {
return !(a == b); }
830 inline bool operator != (
const lx_cinterval &a,
const lx_interval &b)
throw()
831 {
return !(a == b); }
832 inline bool operator != (
const lx_interval &a,
const lx_cinterval &b)
throw()
833 {
return !(a == b); }
835 inline bool operator != (
const lx_cinterval &a,
const l_interval &b)
throw()
836 {
return !(a == b); }
837 inline bool operator != (
const l_interval &a,
const lx_cinterval &b)
throw()
838 {
return !(a == b); }
840 inline bool operator != (
const lx_cinterval &a,
const l_real &b)
throw()
841 {
return !(a == b); }
842 inline bool operator != (
const l_real &a,
const lx_cinterval &b)
throw()
843 {
return !(a == b); }
845 inline bool operator != (
const lx_cinterval &a,
const lx_real &b)
throw()
846 {
return !(a == b); }
847 inline bool operator != (
const lx_real &a,
const lx_cinterval &b)
throw()
848 {
return !(a == b); }
850 inline bool operator != (
const lx_cinterval &a,
const real &b)
throw()
851 {
return !(a == b); }
852 inline bool operator != (
const real &a,
const lx_cinterval &b)
throw()
853 {
return !(a == b); }
855 inline bool operator != (
const lx_cinterval &a,
const interval &b)
throw()
856 {
return !(a == b); }
857 inline bool operator != (
const interval &a,
const lx_cinterval &b)
throw()
858 {
return !(a == b); }
860 inline bool operator != (
const lx_cinterval &a,
const cinterval &b)
throw()
861 {
return !(a == b); }
862 inline bool operator != (
const cinterval &a,
const lx_cinterval &b)
throw()
863 {
return !(a == b); }
865 inline bool operator != (
const lx_cinterval &a,
const complex &b)
throw()
866 {
return !(a == b); }
867 inline bool operator != (
const complex &a,
const lx_cinterval &b)
throw()
868 {
return !(a == b); }
870 inline bool operator != (
const lx_cinterval &a,
const l_complex &b)
throw()
871 {
return !(a == b); }
872 inline bool operator != (
const l_complex &a,
const lx_cinterval &b)
throw()
873 {
return !(a == b); }
875 inline bool operator != (
const lx_cinterval &a,
const lx_complex &b)
throw()
876 {
return !(a == b); }
877 inline bool operator != (
const lx_complex &a,
const lx_cinterval &b)
throw()
878 {
return !(a == b); }
884 inline bool operator < (
const lx_cinterval & a,
const lx_cinterval & b)
throw()
886 if (Inf(a.re) <= Inf(b.re) || Sup(a.re) >= Sup(b.re))
888 if (Inf(a.im) <= Inf(b.im) || Sup(a.im) >= Sup(b.im))
894 inline bool operator > (
const lx_cinterval & a,
const lx_cinterval & b)
throw()
897 inline bool operator <= (
const lx_cinterval & a,
const lx_cinterval & b)
throw()
899 if (Inf(a.re) < Inf(b.re) || Sup(a.re) > Sup(b.re))
901 if (Inf(a.im) < Inf(b.im) || Sup(a.im) > Sup(b.im))
907 inline bool operator >= (
const lx_cinterval & a,
const lx_cinterval & b)
throw()
911 inline bool operator <(
const l_cinterval & a,
const lx_cinterval & b)
throw()
912 {
return lx_cinterval(a) < b; }
913 inline bool operator >(
const l_cinterval & a,
const lx_cinterval & b)
throw()
914 {
return lx_cinterval(a) > b; }
915 inline bool operator <=(
const l_cinterval & a,
const lx_cinterval & b)
throw()
916 {
return lx_cinterval(a) <= b; }
917 inline bool operator >=(
const l_cinterval & a,
const lx_cinterval & b)
throw()
918 {
return lx_cinterval(a) >= b; }
920 inline bool operator <(
const lx_cinterval & a,
const l_cinterval & b)
throw()
921 {
return a < lx_cinterval(b); }
922 inline bool operator >(
const lx_cinterval & a,
const l_cinterval & b)
throw()
923 {
return a > lx_cinterval(b); }
924 inline bool operator <=(
const lx_cinterval & a,
const l_cinterval & b)
throw()
925 {
return a <= lx_cinterval(b); }
926 inline bool operator >=(
const lx_cinterval & a,
const l_cinterval & b)
throw()
927 {
return a >= lx_cinterval(b); }
929 inline bool operator <(
const cinterval & a,
const lx_cinterval & b)
throw()
930 {
return lx_cinterval(a) < b; }
931 inline bool operator >(
const cinterval & a,
const lx_cinterval & b)
throw()
932 {
return lx_cinterval(a) > b; }
933 inline bool operator <=(
const cinterval & a,
const lx_cinterval & b)
throw()
934 {
return lx_cinterval(a) <= b; }
935 inline bool operator >=(
const cinterval & a,
const lx_cinterval & b)
throw()
936 {
return lx_cinterval(a) >= b; }
938 inline bool operator <(
const lx_cinterval & a,
const cinterval & b)
throw()
939 {
return a < lx_cinterval(b); }
940 inline bool operator >(
const lx_cinterval & a,
const cinterval & b)
throw()
941 {
return a > lx_cinterval(b); }
942 inline bool operator <=(
const lx_cinterval & a,
const cinterval & b)
throw()
943 {
return a <= lx_cinterval(b); }
944 inline bool operator >=(
const lx_cinterval & a,
const cinterval & b)
throw()
945 {
return a >= lx_cinterval(b); }
947 inline bool operator <(
const lx_interval & a,
const lx_cinterval & b)
throw()
948 {
return lx_cinterval(a) < b; }
949 inline bool operator >(
const lx_interval & a,
const lx_cinterval & b)
throw()
950 {
return lx_cinterval(a) > b; }
951 inline bool operator <=(
const lx_interval & a,
const lx_cinterval & b)
throw()
952 {
return lx_cinterval(a) <= b; }
953 inline bool operator >=(
const lx_interval & a,
const lx_cinterval & b)
throw()
954 {
return lx_cinterval(a) >= b; }
956 inline bool operator <(
const lx_cinterval & a,
const lx_interval & b)
throw()
957 {
return a < lx_cinterval(b); }
958 inline bool operator >(
const lx_cinterval & a,
const lx_interval & b)
throw()
959 {
return a > lx_cinterval(b); }
960 inline bool operator <=(
const lx_cinterval & a,
const lx_interval & b)
throw()
961 {
return a <= lx_cinterval(b); }
962 inline bool operator >=(
const lx_cinterval & a,
const lx_interval & b)
throw()
963 {
return a >= lx_cinterval(b); }
965 inline bool operator <(
const l_interval & a,
const lx_cinterval & b)
throw()
966 {
return lx_cinterval(a) < b; }
967 inline bool operator >(
const l_interval & a,
const lx_cinterval & b)
throw()
968 {
return lx_cinterval(a) > b; }
969 inline bool operator <=(
const l_interval & a,
const lx_cinterval & b)
throw()
970 {
return lx_cinterval(a) <= b; }
971 inline bool operator >=(
const l_interval & a,
const lx_cinterval & b)
throw()
972 {
return lx_cinterval(a) >= b; }
974 inline bool operator <(
const lx_cinterval & a,
const l_interval & b)
throw()
975 {
return a < lx_cinterval(b); }
976 inline bool operator >(
const lx_cinterval & a,
const l_interval & b)
throw()
977 {
return a > lx_cinterval(b); }
978 inline bool operator <=(
const lx_cinterval & a,
const l_interval & b)
throw()
979 {
return a <= lx_cinterval(b); }
980 inline bool operator >=(
const lx_cinterval & a,
const l_interval & b)
throw()
981 {
return a >= lx_cinterval(b); }
983 inline bool operator <(
const interval & a,
const lx_cinterval & b)
throw()
984 {
return lx_cinterval(a) < b; }
985 inline bool operator >(
const interval & a,
const lx_cinterval & b)
throw()
986 {
return lx_cinterval(a) > b; }
987 inline bool operator <=(
const interval & a,
const lx_cinterval & b)
throw()
988 {
return lx_cinterval(a) <= b; }
989 inline bool operator >=(
const interval & a,
const lx_cinterval & b)
throw()
990 {
return lx_cinterval(a) >= b; }
992 inline bool operator <(
const lx_cinterval & a,
const interval & b)
throw()
993 {
return a < lx_cinterval(b); }
994 inline bool operator >(
const lx_cinterval & a,
const interval & b)
throw()
995 {
return a > lx_cinterval(b); }
996 inline bool operator <=(
const lx_cinterval & a,
const interval & b)
throw()
997 {
return a <= lx_cinterval(b); }
998 inline bool operator >=(
const lx_cinterval & a,
const interval & b)
throw()
999 {
return a >= lx_cinterval(b); }
1001 inline bool operator <(
const lx_real & a,
const lx_cinterval & b)
throw()
1002 {
return lx_cinterval(a) < b; }
1003 inline bool operator <=(
const lx_real & a,
const lx_cinterval & b)
throw()
1004 {
return lx_cinterval(a) <= b; }
1005 inline bool operator >(
const lx_cinterval & a,
const lx_real & b)
throw()
1006 {
return a > lx_cinterval(b); }
1007 inline bool operator >=(
const lx_cinterval & a,
const lx_real & b)
throw()
1008 {
return a >= lx_cinterval(b); }
1010 inline bool operator <(
const l_real & a,
const lx_cinterval & b)
throw()
1011 {
return lx_cinterval(a) < b; }
1012 inline bool operator <=(
const l_real & a,
const lx_cinterval & b)
throw()
1013 {
return lx_cinterval(a) <= b; }
1014 inline bool operator >(
const lx_cinterval & a,
const l_real & b)
throw()
1015 {
return a > lx_cinterval(b); }
1016 inline bool operator >=(
const lx_cinterval & a,
const l_real & b)
throw()
1017 {
return a >= lx_cinterval(b); }
1019 inline bool operator <(
const real & a,
const lx_cinterval & b)
throw()
1020 {
return lx_cinterval(a) < b; }
1021 inline bool operator <=(
const real & a,
const lx_cinterval & b)
throw()
1022 {
return lx_cinterval(a) <= b; }
1023 inline bool operator >(
const lx_cinterval & a,
const real & b)
throw()
1024 {
return a > lx_cinterval(b); }
1025 inline bool operator >=(
const lx_cinterval & a,
const real & b)
throw()
1026 {
return a >= lx_cinterval(b); }
1028 inline bool operator <(
const complex & a,
const lx_cinterval & b)
throw()
1029 {
return lx_cinterval(a) < b; }
1030 inline bool operator <=(
const complex & a,
const lx_cinterval & b)
throw()
1031 {
return lx_cinterval(a) <= b; }
1032 inline bool operator >(
const lx_cinterval & a,
const complex & b)
throw()
1033 {
return a > lx_cinterval(b); }
1034 inline bool operator >=(
const lx_cinterval & a,
const complex & b)
throw()
1035 {
return a >= lx_cinterval(b); }
1037 inline bool operator <(
const l_complex & a,
const lx_cinterval & b)
throw()
1038 {
return lx_cinterval(a) < b; }
1039 inline bool operator <=(
const l_complex & a,
const lx_cinterval & b)
throw()
1040 {
return lx_cinterval(a) <= b; }
1041 inline bool operator >(
const lx_cinterval & a,
const l_complex & b)
throw()
1042 {
return a > lx_cinterval(b); }
1043 inline bool operator >=(
const lx_cinterval & a,
const l_complex & b)
throw()
1044 {
return a >= lx_cinterval(b); }
1046 inline bool operator <(
const lx_complex & a,
const lx_cinterval & b)
throw()
1047 {
return lx_cinterval(a) < b; }
1048 inline bool operator <=(
const lx_complex & a,
const lx_cinterval & b)
throw()
1049 {
return lx_cinterval(a) <= b; }
1050 inline bool operator >(
const lx_cinterval & a,
const lx_complex & b)
throw()
1051 {
return a > lx_cinterval(b); }
1052 inline bool operator >=(
const lx_cinterval & a,
const lx_complex & b)
throw()
1053 {
return a >= lx_cinterval(b); }
1057 inline lx_cinterval operator & (
const lx_cinterval& a,
1058 const lx_cinterval& b)
throw()
1060 lx_cinterval tmp = a;
1061 SetInf(tmp.re, max(Inf(a.re),Inf(b.re)));
1062 SetInf(tmp.im, max(Inf(a.im),Inf(b.im)));
1063 SetSup(tmp.re, min(Sup(a.re),Sup(b.re)));
1064 SetSup(tmp.im, min(Sup(a.im),Sup(b.im)));
1065 if (Inf(tmp.re) > Sup(tmp.re) || Inf(tmp.im) > Sup(tmp.im))
1066 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1067 "lx_cinterval operator &(const lx_cinterval& a,const lx_cinterval& b)"));
1071 inline lx_cinterval & operator &= (lx_cinterval& a,
const lx_cinterval& b)
1072 throw(ERROR_CINTERVAL_EMPTY_INTERVAL) {
return a = a&b; }
1074 inline lx_cinterval operator & (
const lx_cinterval& a,
const lx_real& b)
1075 throw() {
return a & lx_cinterval(b,lx_real(0.0)); }
1076 inline lx_cinterval operator & (
const lx_real& a,
const lx_cinterval& b )
1077 throw() {
return lx_cinterval(a,lx_real(0.0)) & b; }
1078 inline lx_cinterval & operator &= (lx_cinterval& a,
const lx_real& b)
1079 throw() {
return a = a & lx_cinterval(b); }
1080 inline lx_cinterval operator & (
const lx_cinterval& a,
const l_real& b)
1081 throw() {
return a & lx_cinterval(b); }
1082 inline lx_cinterval operator & (
const l_real& a,
const lx_cinterval& b )
1083 throw() {
return lx_cinterval(a) & b; }
1084 inline lx_cinterval & operator &= (lx_cinterval& a,
const l_real& b)
1085 throw() {
return a = a & lx_cinterval(b); }
1086 inline lx_cinterval operator & (
const lx_cinterval& a,
const real& b)
1087 throw() {
return a & lx_cinterval(b); }
1088 inline lx_cinterval operator & (
const real& a,
const lx_cinterval& b )
1089 throw() {
return lx_cinterval(a) & b; }
1090 inline lx_cinterval & operator &= (lx_cinterval& a,
const real& b)
1091 throw() {
return a = a & lx_cinterval(b); }
1092 inline lx_cinterval operator & (
const lx_cinterval& a,
const l_cinterval& b)
1093 throw() {
return a & lx_cinterval(b); }
1094 inline lx_cinterval operator & (
const l_cinterval& a,
const lx_cinterval& b)
1095 throw() {
return lx_cinterval(a) & b; }
1096 inline lx_cinterval & operator &= (lx_cinterval& a,
const l_cinterval& b)
1097 throw() {
return a = a & lx_cinterval(b); }
1098 inline lx_cinterval operator & (
const lx_cinterval& a,
const cinterval& b)
1099 throw() {
return a & lx_cinterval(b); }
1100 inline lx_cinterval operator & (
const cinterval& a,
const lx_cinterval& b)
1101 throw() {
return lx_cinterval(a) & b; }
1102 inline lx_cinterval & operator &= (lx_cinterval& a,
const cinterval& b)
1103 throw() {
return a = a & lx_cinterval(b); }
1104 inline lx_cinterval operator & (
const lx_cinterval& a,
const lx_interval& b)
1105 throw() {
return a & lx_cinterval(b); }
1106 inline lx_cinterval operator & (
const lx_interval& a,
const lx_cinterval& b)
1107 throw() {
return lx_cinterval(a) & b; }
1108 inline lx_cinterval & operator &= (lx_cinterval& a,
const lx_interval& b)
1109 throw() {
return a = a & lx_cinterval(b); }
1110 inline lx_cinterval operator & (
const lx_cinterval& a,
const l_interval& b)
1111 throw() {
return a & lx_cinterval(b); }
1112 inline lx_cinterval operator & (
const l_interval& a,
const lx_cinterval& b)
1113 throw() {
return lx_cinterval(a) & b; }
1114 inline lx_cinterval & operator &= (lx_cinterval& a,
const l_interval& b)
1115 throw() {
return a = a & lx_cinterval(b); }
1116 inline lx_cinterval operator & (
const lx_cinterval& a,
const interval& b)
1117 throw() {
return a & lx_cinterval(b); }
1118 inline lx_cinterval operator & (
const interval& a,
const lx_cinterval& b)
1119 throw() {
return lx_cinterval(a) & b; }
1120 inline lx_cinterval & operator &= (lx_cinterval& a,
const interval& b)
1121 throw() {
return a = a & lx_cinterval(b); }
1122 inline lx_cinterval operator & (
const lx_cinterval& a,
const lx_complex& b)
1123 throw() {
return a & lx_cinterval(b); }
1124 inline lx_cinterval operator & (
const lx_complex& a,
const lx_cinterval& b)
1125 throw() {
return lx_cinterval(a) & b; }
1126 inline lx_cinterval & operator &= (lx_cinterval& a,
const lx_complex& b)
1127 throw() {
return a = a & lx_cinterval(b); }
1128 inline lx_cinterval operator & (
const lx_cinterval& a,
const l_complex& b)
1129 throw() {
return a & lx_cinterval(b); }
1130 inline lx_cinterval operator & (
const l_complex& a,
const lx_cinterval& b)
1131 throw() {
return lx_cinterval(a) & b; }
1132 inline lx_cinterval & operator &= (lx_cinterval& a,
const l_complex& b)
1133 throw() {
return a = a & lx_cinterval(b); }
1134 inline lx_cinterval operator & (
const lx_cinterval& a,
const complex& b)
1135 throw() {
return a & lx_cinterval(b); }
1136 inline lx_cinterval operator & (
const complex& a,
const lx_cinterval& b)
1137 throw() {
return lx_cinterval(a) & b; }
1138 inline lx_cinterval & operator &= (lx_cinterval& a,
const complex& b)
1139 throw() {
return a = a & lx_cinterval(b); }
1141 inline lx_cinterval operator & (
const lx_interval& a,
const complex& b)
1142 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1143 inline lx_cinterval operator & (
const complex& a,
const lx_interval& b)
1144 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1145 inline lx_cinterval operator & (
const lx_interval& a,
const l_complex& b)
1146 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1147 inline lx_cinterval operator & (
const l_complex& a,
const lx_interval& b)
1148 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1149 inline lx_cinterval operator & (
const lx_interval& a,
const lx_complex& b)
1150 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1151 inline lx_cinterval operator & (
const lx_complex& a,
const lx_interval& b)
1152 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1153 inline lx_cinterval operator & (
const lx_real& a,
const cinterval& b)
1154 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1155 inline lx_cinterval operator & (
const cinterval& a,
const lx_real& b)
1156 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1157 inline lx_cinterval operator & (
const lx_real& a,
const l_cinterval& b)
1158 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1159 inline lx_cinterval operator & (
const l_cinterval& a,
const lx_real& b)
1160 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1161 inline lx_cinterval operator & (
const lx_interval& a,
const cinterval& b)
1162 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1163 inline lx_cinterval operator & (
const cinterval& a,
const lx_interval& b)
1164 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1165 inline lx_cinterval operator & (
const lx_interval& a,
const l_cinterval& b)
1166 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1167 inline lx_cinterval operator & (
const l_cinterval& a,
const lx_interval& b)
1168 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1170 inline lx_cinterval operator & (
const l_interval& a,
const lx_complex& b)
1171 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1172 inline lx_cinterval operator & (
const lx_complex& a,
const l_interval& b)
1173 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1174 inline lx_cinterval operator & (
const l_cinterval& a,
const lx_complex& b)
1175 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1176 inline lx_cinterval operator & (
const lx_complex& a,
const l_cinterval& b)
1177 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1179 inline lx_cinterval operator & (
const interval& a,
const lx_complex& b)
1180 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1181 inline lx_cinterval operator & (
const lx_complex& a,
const interval& b)
1182 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1183 inline lx_cinterval operator & (
const cinterval& a,
const lx_complex& b)
1184 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1185 inline lx_cinterval operator & (
const lx_complex& a,
const cinterval& b)
1186 throw() {
return lx_cinterval(a) & lx_cinterval(b); }
1191 inline lx_cinterval operator | (
const lx_cinterval& a,
1192 const lx_cinterval& b)
throw()
1194 lx_cinterval tmp = a;
1195 SetInf(tmp.re, min(Inf(a.re), Inf(b.re)));
1196 SetInf(tmp.im, min(Inf(a.im), Inf(b.im)));
1197 SetSup(tmp.re, max(Sup(a.re), Sup(b.re)));
1198 SetSup(tmp.im, max(Sup(a.im), Sup(b.im)));
1202 inline lx_cinterval & operator |= (lx_cinterval& a,
const lx_cinterval& b)
1203 throw() {
return a = a|b; }
1204 inline lx_cinterval operator | (
const lx_cinterval& a,
const lx_real& b)
1205 throw() {
return a | lx_cinterval(b); }
1206 inline lx_cinterval operator | (
const lx_real& a,
const lx_cinterval& b)
1207 throw() {
return lx_cinterval(a) | b; }
1208 inline lx_cinterval & operator |= (lx_cinterval& a,
const lx_real& b)
1209 throw() {
return a = a|lx_cinterval(b); }
1210 inline lx_cinterval operator | (
const lx_cinterval& a,
const l_real& b)
1211 throw() {
return a | lx_cinterval(b); }
1212 inline lx_cinterval operator | (
const l_real& a,
const lx_cinterval& b)
1213 throw() {
return lx_cinterval(a) | b; }
1214 inline lx_cinterval & operator |= (lx_cinterval& a,
const l_real& b)
1215 throw() {
return a = a|lx_cinterval(b); }
1216 inline lx_cinterval operator | (
const lx_cinterval& a,
const real& b)
1217 throw() {
return a | lx_cinterval(b); }
1218 inline lx_cinterval operator | (
const real& a,
const lx_cinterval& b)
1219 throw() {
return lx_cinterval(a) | b; }
1220 inline lx_cinterval & operator |= (lx_cinterval& a,
const real& b)
1221 throw() {
return a = a|lx_cinterval(b); }
1222 inline lx_cinterval operator | (
const lx_cinterval& a,
const l_cinterval& b)
1223 throw() {
return a | lx_cinterval(b); }
1224 inline lx_cinterval operator | (
const l_cinterval& a,
const lx_cinterval& b)
1225 throw() {
return lx_cinterval(a) | b; }
1226 inline lx_cinterval & operator |= (lx_cinterval& a,
const l_cinterval& b)
1227 throw() {
return a = a|lx_cinterval(b); }
1228 inline lx_cinterval operator | (
const lx_cinterval& a,
const cinterval& b)
1229 throw() {
return a | lx_cinterval(b); }
1230 inline lx_cinterval operator | (
const cinterval& a,
const lx_cinterval& b)
1231 throw() {
return lx_cinterval(a) | b; }
1232 inline lx_cinterval & operator |= (lx_cinterval& a,
const cinterval& b)
1233 throw() {
return a = a | lx_cinterval(b); }
1234 inline lx_cinterval operator | (
const lx_cinterval& a,
const lx_interval& b)
1235 throw() {
return a | lx_cinterval(b); }
1236 inline lx_cinterval operator | (
const lx_interval& a,
const lx_cinterval& b)
1237 throw() {
return lx_cinterval(a) | b; }
1238 inline lx_cinterval & operator |= (lx_cinterval& a,
const lx_interval& b)
1239 throw() {
return a = a | lx_cinterval(b); }
1240 inline lx_cinterval operator | (
const lx_cinterval& a,
const l_interval& b)
1241 throw() {
return a | lx_cinterval(b); }
1242 inline lx_cinterval operator | (
const l_interval& a,
const lx_cinterval& b)
1243 throw() {
return lx_cinterval(a) | b; }
1244 inline lx_cinterval & operator |= (lx_cinterval& a,
const l_interval& b)
1245 throw() {
return a = a | lx_cinterval(b); }
1246 inline lx_cinterval operator | (
const lx_cinterval& a,
const interval& b)
1247 throw() {
return a | lx_cinterval(b); }
1248 inline lx_cinterval operator | (
const interval& a,
const lx_cinterval& b)
1249 throw() {
return lx_cinterval(a) | b; }
1250 inline lx_cinterval & operator |= (lx_cinterval& a,
const interval& b)
1251 throw() {
return a = a | lx_cinterval(b); }
1252 inline lx_cinterval operator | (
const lx_cinterval& a,
const lx_complex& b)
1253 throw() {
return a | lx_cinterval(b); }
1254 inline lx_cinterval operator | (
const lx_complex& a,
const lx_cinterval& b)
1255 throw() {
return lx_cinterval(a) | b; }
1256 inline lx_cinterval & operator |= (lx_cinterval& a,
const lx_complex& b)
1257 throw() {
return a = a | lx_cinterval(b); }
1258 inline lx_cinterval operator | (
const lx_cinterval& a,
const l_complex& b)
1259 throw() {
return a | lx_cinterval(b); }
1260 inline lx_cinterval operator | (
const l_complex& a,
const lx_cinterval& b)
1261 throw() {
return lx_cinterval(a) | b; }
1262 inline lx_cinterval & operator |= (lx_cinterval& a,
const l_complex& b)
1263 throw() {
return a = a | lx_cinterval(b); }
1264 inline lx_cinterval operator | (
const lx_cinterval& a,
const complex& b)
1265 throw() {
return a | lx_cinterval(b); }
1266 inline lx_cinterval operator | (
const complex& a,
const lx_cinterval& b)
1267 throw() {
return lx_cinterval(a) | b; }
1268 inline lx_cinterval & operator |= (lx_cinterval& a,
const complex& b)
1269 throw() {
return a = a | lx_cinterval(b); }
1271 inline lx_cinterval operator | (
const lx_interval& a,
const complex& b)
1272 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1273 inline lx_cinterval operator | (
const complex& a,
const lx_interval& b)
1274 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1275 inline lx_cinterval operator | (
const lx_interval& a,
const l_complex& b)
1276 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1277 inline lx_cinterval operator | (
const l_complex& a,
const lx_interval& b)
1278 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1279 inline lx_cinterval operator | (
const lx_interval& a,
const lx_complex& b)
1280 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1281 inline lx_cinterval operator | (
const lx_complex& a,
const lx_interval& b)
1282 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1283 inline lx_cinterval operator | (
const lx_real& a,
const cinterval& b)
1284 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1285 inline lx_cinterval operator | (
const cinterval& a,
const lx_real& b)
1286 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1287 inline lx_cinterval operator | (
const lx_real& a,
const l_cinterval& b)
1288 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1289 inline lx_cinterval operator | (
const l_cinterval& a,
const lx_real& b)
1290 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1291 inline lx_cinterval operator | (
const lx_interval& a,
const cinterval& b)
1292 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1293 inline lx_cinterval operator | (
const cinterval& a,
const lx_interval& b)
1294 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1295 inline lx_cinterval operator | (
const lx_interval& a,
const l_cinterval& b)
1296 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1297 inline lx_cinterval operator | (
const l_cinterval& a,
const lx_interval& b)
1298 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1301 inline lx_cinterval operator | (
const lx_real& a,
const complex& b)
1302 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1303 inline lx_cinterval operator | (
const complex& a,
const lx_real& b)
1304 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1305 inline lx_cinterval operator | (
const lx_real& a,
const l_complex& b)
1306 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1307 inline lx_cinterval operator | (
const l_complex& a,
const lx_real& b)
1308 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1309 inline lx_cinterval operator | (
const lx_real& a,
const lx_complex& b)
1310 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1311 inline lx_cinterval operator | (
const lx_complex& a,
const lx_real& b)
1312 throw() {
return lx_cinterval(a) | lx_cinterval(b); }
1317 inline lx_cinterval & SetInf(lx_cinterval& a,
const lx_complex& b)
1318 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1323 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1324 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"lx_cinterval & SetInf(lx_cinterval& a, const lx_complex& b)"));
1329 inline lx_cinterval & SetInf(lx_cinterval& a,
const l_complex& b)
1330 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1335 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1336 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"lx_cinterval & SetInf(lx_cinterval& a, const l_complex& b)"));
1341 inline lx_cinterval & SetInf(lx_cinterval& a,
const complex& b)
1342 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1347 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1348 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"lx_cinterval & SetInf(lx_cinterval& a, const complex& b)"));
1353 inline lx_cinterval & SetInf(lx_cinterval& a,
const lx_real & b)
1354 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1359 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1360 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
"inline lx_cinterval & SetInf(lx_cinterval& a,const lx_real & b)"));
1365 inline lx_cinterval & SetInf(lx_cinterval& a,
const l_real & b)
1366 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1371 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1372 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1373 "inline lx_cinterval & SetInf(lx_cinterval& a,const l_real & b)"));
1378 inline lx_cinterval & SetInf(lx_cinterval& a,
const real & b)
1379 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1384 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1385 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1386 "inline lx_cinterval & SetInf(lx_cinterval& a,const real & b)"));
1391 inline lx_cinterval & SetSup(lx_cinterval& a,
const lx_complex& b)
1392 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1397 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1398 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1399 "inline lx_cinterval & SetSup(lx_cinterval& a, const lx_complex& b)"));
1405 inline lx_cinterval & SetSup(lx_cinterval& a,
const l_complex& b)
1406 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1411 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1412 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1413 "inline lx_cinterval & SetSup(lx_cinterval& a, const l_complex& b)"));
1418 inline lx_cinterval & SetSup(lx_cinterval& a,
const complex& b)
1419 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1424 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1425 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1426 "inline lx_cinterval & SetSup(lx_cinterval& a, const complex& b)"));
1431 inline lx_cinterval & SetSup(lx_cinterval& a,
const lx_real & b)
1432 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1437 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1438 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1439 "inline lx_cinterval & SetSup(lx_cinterval& a, const lx_real& b)"));
1444 inline lx_cinterval & SetSup(lx_cinterval& a,
const l_real & b)
1445 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1450 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1451 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1452 "inline lx_cinterval & SetSup(lx_cinterval& a, const l_real& b)"));
1457 inline lx_cinterval & SetSup(lx_cinterval& a,
const real & b)
1458 throw(ERROR_CINTERVAL_EMPTY_INTERVAL)
1463 if (Inf(a.re) > Sup(a.re) || Inf(a.im) > Sup(a.im))
1464 cxscthrow(ERROR_CINTERVAL_EMPTY_INTERVAL(
1465 "inline lx_cinterval & SetSup(lx_cinterval& a, const real& b)"));
1470 inline bool IsEmpty(
const lx_cinterval& a)
throw()
1471 {
return (IsEmpty(a.re) || IsEmpty(a.im)); }
1478 inline std::ostream& operator << (std::ostream& s,
const lx_cinterval& a)
1489 inline std::string & operator << (std::string &s,
const lx_cinterval& a)
The Multiple-Precision Data Type l_interval.
cimatrix & operator/=(cimatrix &m, const cinterval &c)
Implementation of division and allocation operation.
The Multiple-Precision Data Type l_real.
interval sqrtx2y2(const interval &x, const interval &y)
Calculates .
The namespace cxsc, providing all functionality of the class library C-XSC.
The Multiple-Precision Data Type l_cinterval.
real expo_Re(const lx_cinterval &a)
Returns the exponent n of the real part of the complex interval.
cvector mid(const cimatrix_subv &mv)
Returns the middle of the matrix.
l_interval li_part_Re(const lx_cinterval &)
Returns the l_interval of the real part of the complex interval.
The Scalar Type interval.
cinterval sqr(const cinterval &z)
Calculates .
cimatrix & operator *=(cimatrix &m, const cinterval &c)
Implementation of multiplication and allocation operation.
civector operator *(const cimatrix_subv &rv, const cinterval &s)
Implementation of multiplication operation.
The Scalar Type cinterval.
cvector diam(const cimatrix_subv &mv)
Returns the diameter of the matrix.
real expo_Im(const lx_cinterval &a)
Returns the exponent n of the imaginary part of the complex interval.
The Multiple-Precision Data Type l_complex.
cdotprecision & operator+=(cdotprecision &cd, const l_complex &lc)
Implementation of standard algebraic addition and allocation operation.
void times2pown(cinterval &x, int n)
Fast multiplication of reference parameter [z] with .
civector operator/(const cimatrix_subv &rv, const cinterval &s)
Implementation of division operation.
l_interval li_part_Im(const lx_cinterval &)
Returns the l_interval of the imaginary part of the complex interval.
ivector abs(const cimatrix_subv &mv)
Returns the absolute value of the matrix.