C-XSC - A C++ Class Library for Extended Scientific Computing
2.5.4
|
00001 /* 00002 ** CXSC is a C++ library for eXtended Scientific Computing (V 2.5.4) 00003 ** 00004 ** Copyright (C) 1990-2000 Institut fuer Angewandte Mathematik, 00005 ** Universitaet Karlsruhe, Germany 00006 ** (C) 2000-2014 Wiss. Rechnen/Softwaretechnologie 00007 ** Universitaet Wuppertal, Germany 00008 ** 00009 ** This library is free software; you can redistribute it and/or 00010 ** modify it under the terms of the GNU Library General Public 00011 ** License as published by the Free Software Foundation; either 00012 ** version 2 of the License, or (at your option) any later version. 00013 ** 00014 ** This library is distributed in the hope that it will be useful, 00015 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 ** Library General Public License for more details. 00018 ** 00019 ** You should have received a copy of the GNU Library General Public 00020 ** License along with this library; if not, write to the Free 00021 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00022 */ 00023 00024 /* CVS $Id: l_rmath.hpp,v 1.32 2014/01/30 17:23:46 cxsc Exp $ */ 00025 00026 #ifndef _CXSC_L_RMATH_HPP_INCLUDED 00027 #define _CXSC_L_RMATH_HPP_INCLUDED 00028 00029 #include "l_real.hpp" 00030 00031 namespace cxsc { 00032 00034 inline l_real sqr (const l_real&) throw(); // Sqr(x) 00036 l_real sqrt (const l_real&) throw(ERROR_LREAL_STD_FKT_OUT_OF_DEF); 00037 // Sqrt(x) 00039 l_real sqrtx2y2(const l_real&, const l_real&) throw(); 00040 // Sqrt(x^2+y^2) 00042 l_real sqrt1px2(const l_real&) throw(); // Sqrt(1+x^2) 00044 inline l_real sqrtp1m1(const l_real &) throw(); 00046 inline l_real sqrtx2m1(const l_real &) throw(); 00048 inline l_real sqrt1mx2(const l_real &) throw(); 00050 inline l_real expm1 (const l_real &x) throw(); 00052 inline l_real expmx2 (const l_real&) throw(); 00054 inline l_real ln_sqrtx2y2(const l_real& x, const l_real& y) throw(); 00056 inline l_real acoshp1 (const l_real& x); 00057 00058 // inline l_real sqrt (const l_real &, int); // Sqrt(x, n) 00059 // inline l_real sin (const l_real&) throw(); // Sin(x) 00060 // inline l_real cos (const l_real&) throw(); // Cos(x) 00061 // inline l_real tan (const l_real&) throw(); // Tan(x) 00062 // inline l_real cot (const l_real&) throw(); // Cot(x) 00063 // inline l_real asin (const l_real&); // ASin(x) 00064 // inline l_real acos (const l_real&); // ACos(x) 00065 // inline l_real atan (const l_real&); // ATan(x) 00066 // inline l_real acot (const l_real&); // ACot(x) 00067 // inline l_real exp (const l_real&) throw(); // Exp(x) 00068 // inline l_real ln (const l_real&); // Ln(x) 00069 // inline l_real sinh (const l_real&) throw(); // Sinh(x) 00070 // inline l_real cosh (const l_real&) throw(); // Cosh(x) 00071 // inline l_real tanh (const l_real&) throw(); // Tanh(x) 00072 // inline l_real coth (const l_real&) throw(); // Coth(x) 00073 // inline l_real asinh (const l_real&); // ASinh(x) 00074 // inline l_real acosh (const l_real&); // ACosh(x) 00075 // inline l_real atanh (const l_real&); // ATanh(x) 00076 // inline l_real acoth (const l_real&); // ACoth(x) 00077 00079 inline l_real pow (const l_real&, const l_real&); // Pow(x,y) 00081 l_real power (const l_real&, const int); // Power(x,n) 00082 00083 // real staggered constants (the same as in l_interval.hpp): 00084 l_real Ln2_l_real() throw(); // ln(2) 00085 l_real Ln10_l_real() throw(); // ln(10) 00086 l_real Ln10r_l_real() throw(); // 1/ln(10) 00087 l_real Pid4_l_real() throw(); // Pi/4 00088 l_real Sqrt2_l_real() throw(); // sqrt(2) 00089 l_real Sqrt5_l_real() throw(); // sqrt(5) 00090 l_real Sqrt7_l_real() throw(); // sqrt(7) 00091 l_real Ln2r_l_real() throw(); // 1/ln(2) 00092 l_real Pi_l_real() throw(); // Pi 00093 l_real Pid2_l_real() throw(); // Pi/2 00094 l_real Pi2_l_real() throw(); // 2*Pi 00095 l_real Pid3_l_real() throw(); // Pi/3 00096 l_real Pir_l_real() throw(); // 1/Pi 00097 l_real Pi2r_l_real() throw(); // 1/(2*Pi) 00098 l_real SqrtPi_l_real() throw(); // sqrt(Pi) 00099 l_real Sqrt2Pi_l_real() throw(); // sqrt(2*Pi) 00100 l_real SqrtPir_l_real() throw(); // 1/sqrt(Pi) 00101 l_real Sqrt2Pir_l_real() throw(); // 1/sqrt(2*Pi) 00102 l_real Pip2_l_real() throw(); // Pi^2 00103 l_real Sqrt2r_l_real() throw(); // 1/sqrt(2) 00104 l_real Sqrt3_l_real() throw(); // sqrt(3) 00105 l_real Sqrt3d2_l_real() throw(); // sqrt(3)/2 00106 l_real Sqrt3r_l_real() throw(); // 1/sqrt(3) 00107 l_real LnPi_l_real() throw(); // ln(Pi) 00108 l_real Ln2Pi_l_real() throw(); // ln(2*Pi) 00109 l_real E_l_real() throw(); // e = exp(1) 00110 l_real Er_l_real() throw(); // 1/e 00111 l_real Ep2_l_real() throw(); // e^2 00112 l_real Ep2r_l_real() throw(); // 1/e^2 00113 l_real EpPi_l_real() throw(); // e^Pi 00114 l_real Ep2Pi_l_real() throw(); // e^(2*Pi) 00115 l_real EpPid2_l_real() throw(); // e^(Pi/2) 00116 l_real EpPid4_l_real() throw(); // e^(Pi/4) 00117 l_real EulerGa_l_real() throw(); // EulerGamma 00118 l_real Catalan_l_real() throw(); // Catalan 00119 00120 } // namespace cxsc 00121 00122 #include "l_rmath.inl" 00123 #endif // _CXSC_L_RMATH_HPP_INCLUDED