C-XSC - A C++ Class Library for Extended Scientific Computing  2.5.4
imath.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: imath.hpp,v 1.38 2014/01/30 17:23:45 cxsc Exp $ */
25 
26 #ifndef _CXSC_IMATH_HPP_INCLUDED
27 #define _CXSC_IMATH_HPP_INCLUDED
28 
29 #include "except.hpp"
30 #include "interval.hpp"
31 
32 namespace cxsc {
33 
35  interval sqr (const interval&) throw(); // sqr(x)
37 inline interval sqrt (const interval&); // sqrt(x)
39  interval sqrt (const interval &, int) throw(STD_FKT_OUT_OF_DEF); // sqrt(x, n)
41  interval sqrt1px2(const interval&) throw(); // sqrt(1+x^2)
43  interval sqrtp1m1(const interval&) throw(); // sqrt(x+1)-1
45  interval sqrtx2m1(const interval&); // sqrt(x^2-1)
47  interval sqrt1mx2(const interval&); // sqrt(1-x^2)
48 
50 inline interval sin (const interval&) throw(); // sin(x)
52  interval sinpix_pi(const interval& x); // sin(pi*x)/pi
54 inline interval cos (const interval&) throw(); // cos(x)
56 inline interval tan (const interval&) throw(); // tan(x)
58 inline interval cot (const interval&) throw(); // cot(x)
59 
61 inline interval asin (const interval&); // ASin(x)
63 inline interval acos (const interval&); // ACos(x)
65 inline interval atan (const interval&); // ATan(x)
67 inline interval acot (const interval&); // ACot(x)
68 
70 inline interval exp (const interval&) throw(); // exp(x)
72  interval expmx2 (const interval&); // exp(-x^2)
74  interval expm1 (const interval&); // exp(x)-1
76  interval expx2 (const interval& x); // e^{+x^2}
78  interval expx2m1 (const interval& x); // e^{+x^2}-1
79 
81 inline interval ln (const interval&); // ln(x)
83  interval lnp1 (const interval&) throw(); // ln(1+x)
85 inline interval log2 (const interval&); // log2(x)
87 inline interval log10 (const interval&); // log10(x)
88 
90 inline interval sinh (const interval&) throw(); // Sinh(x)
92 inline interval cosh (const interval&) throw(); // Cosh(x)
94 inline interval tanh (const interval&) throw(); // Tanh(x)
96 inline interval coth (const interval&) throw(); // Coth(x)
97 
99 inline interval asinh (const interval&); // ASinh(x)
101 inline interval acosh (const interval&); // ACosh(x)
103  interval acoshp1 (const interval&); // acosh(1+x)
105 inline interval atanh (const interval&); // ATanh(x)
107 inline interval acoth (const interval&); // ACoth(x)
108 
110 interval erf (const interval&); // error function
112 interval erfc (const interval&); // complementary error function
114 interval gamma (const interval& x); // Gamma(x)
116 interval gammar(const interval& x); // 1/Gamma(x)
117 
119 interval pow (const interval&, const interval&) throw(); // Pow(x,y)
121 interval power (const interval&, int); // Power(x,n)
123 interval Power (const interval&, int); // Power(x,n)
124 
126 interval sqrtx2y2(const interval&, const interval&) throw(); // sqrt(x^2+y^2)
128 interval ln_sqrtx2y2(const interval&, const interval&) throw();
129  // ln( sqrt(x^2+y^2) ) == 0.5*ln(x^2+y^2);
130 
132 interval Pi ( );
133 } // namespace cxsc
134 
135 #include "imath.inl"
136 #endif // _CXSC_IMATH_HPP_INCLUDED
cinterval sqrtx2m1(const cinterval &z)
Calculates .
Definition: cimath.cpp:1109
interval expx2m1(const interval &x)
Calculates .
Definition: imath.cpp:300
cinterval sqrt1px2(const cinterval &z)
Calculates .
Definition: cimath.cpp:1071
cinterval log2(const cinterval &z)
Calculates .
Definition: cimath.cpp:898
interval expx2(const interval &x)
Calculates .
Definition: imath.cpp:234
interval sqrtx2y2(const interval &x, const interval &y)
Calculates .
Definition: imath.cpp:80
cinterval ln(const cinterval &z)
Calculates .
Definition: cimath.cpp:851
cinterval sin(const cinterval &z)
Calculates .
Definition: cimath.cpp:215
cinterval cot(const cinterval &z)
Calculates .
Definition: cimath.cpp:538
The namespace cxsc, providing all functionality of the class library C-XSC.
Definition: cdot.cpp:29
interval ln_sqrtx2y2(const interval &x, const interval &y)
Calculates .
Definition: imath.cpp:581
cinterval acot(const cinterval &z)
Calculates .
Definition: cimath.cpp:3130
cinterval atan(const cinterval &z)
Calculates .
Definition: cimath.cpp:2938
cinterval acos(const cinterval &z)
Calculates .
Definition: cimath.cpp:2553
cinterval sqr(const cinterval &z)
Calculates .
Definition: cimath.cpp:3342
interval Power(const interval &x, int n)
Calculates .
Definition: imath.cpp:536
cinterval expm1(const cinterval &z)
Calculates .
Definition: cimath.cpp:177
interval gamma(const interval &x)
The Gamma function.
Definition: imath.cpp:1465
cinterval tanh(const cinterval &z)
Calculates .
Definition: cimath.cpp:565
cinterval asinh(const cinterval &z)
Calculates .
Definition: cimath.cpp:2718
cinterval log10(const cinterval &z)
Calculates .
Definition: cimath.cpp:903
interval sinpix_pi(const interval &x)
Calculates ;.
Definition: imath.cpp:655
cinterval sqrt1mx2(const cinterval &z)
Calculates .
Definition: cimath.cpp:1140
interval acoshp1(const interval &x)
Calculates .
Definition: imath.cpp:617
interval gammar(const interval &x)
The inverse Gamma function: 1/Gamma(x)
Definition: imath.cpp:1361
cinterval lnp1(const cinterval &z)
Calculates .
Definition: cimath.cpp:867
interval erfc(const interval &a)
The complementary Gauss error function .
Definition: imath.cpp:361
interval Pi()
Enclosure-Interval for .
Definition: imath.cpp:566
interval expmx2(const interval &x)
Calculates .
Definition: imath.cpp:192
cinterval sqrt(const cinterval &z)
Calculates .
Definition: cimath.cpp:1007
cinterval cos(const cinterval &z)
Calculates .
Definition: cimath.cpp:207
cinterval atanh(const cinterval &z)
Calculates .
Definition: cimath.cpp:3317
cinterval sqrtp1m1(const cinterval &z)
Calculates .
Definition: cimath.cpp:1054
cinterval exp(const cinterval &z)
Calculates .
Definition: cimath.cpp:159
cinterval cosh(const cinterval &z)
Calculates .
Definition: cimath.cpp:223
cinterval tan(const cinterval &z)
Calculates .
Definition: cimath.cpp:393
cinterval sinh(const cinterval &z)
Calculates .
Definition: cimath.cpp:231
cinterval asin(const cinterval &z)
Calculates .
Definition: cimath.cpp:2311
cinterval acoth(const cinterval &z)
Calculates .
Definition: cimath.cpp:3330
cinterval coth(const cinterval &z)
Calculates .
Definition: cimath.cpp:578
cinterval pow(const cinterval &z, const interval &p)
Calculates .
Definition: cimath.cpp:2074
cinterval power(const cinterval &z, int n)
Calculates .
Definition: cimath.cpp:1941
interval erf(const interval &a)
The Gauss error function .
Definition: imath.cpp:354
cinterval acosh(const cinterval &z)
Calculates .
Definition: cimath.cpp:2732