Chris@16: // (C) Copyright John Maddock 2008. Chris@16: // Use, modification and distribution are subject to the Chris@16: // Boost Software License, Version 1.0. (See accompanying file Chris@16: // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) Chris@16: Chris@16: #ifndef BOOST_TR1_CMATH_HPP_INCLUDED Chris@16: # define BOOST_TR1_CMATH_HPP_INCLUDED Chris@16: # include Chris@16: Chris@16: #ifdef BOOST_HAS_TR1_CMATH Chris@16: Chris@16: # if defined(BOOST_HAS_INCLUDE_NEXT) && !defined(BOOST_TR1_DISABLE_INCLUDE_NEXT) Chris@16: # include_next BOOST_TR1_HEADER(cmath) Chris@16: # else Chris@16: # include Chris@16: # include BOOST_TR1_HEADER(cmath) Chris@16: # endif Chris@16: Chris@16: #else Chris@16: Chris@16: #include Chris@16: Chris@16: namespace std{ namespace tr1{ Chris@16: Chris@16: using boost::math::tr1::assoc_laguerre; Chris@16: using boost::math::tr1::assoc_laguerref; Chris@16: using boost::math::tr1::assoc_laguerrel; Chris@16: // [5.2.1.2] associated Legendre functions: Chris@16: using boost::math::tr1::assoc_legendre; Chris@16: using boost::math::tr1::assoc_legendref; Chris@16: using boost::math::tr1::assoc_legendrel; Chris@16: // [5.2.1.3] beta function: Chris@16: using boost::math::tr1::beta; Chris@16: using boost::math::tr1::betaf; Chris@16: using boost::math::tr1::betal; Chris@16: // [5.2.1.4] (complete) elliptic integral of the first kind: Chris@16: using boost::math::tr1::comp_ellint_1; Chris@16: using boost::math::tr1::comp_ellint_1f; Chris@16: using boost::math::tr1::comp_ellint_1l; Chris@16: // [5.2.1.5] (complete) elliptic integral of the second kind: Chris@16: using boost::math::tr1::comp_ellint_2; Chris@16: using boost::math::tr1::comp_ellint_2f; Chris@16: using boost::math::tr1::comp_ellint_2l; Chris@16: // [5.2.1.6] (complete) elliptic integral of the third kind: Chris@16: using boost::math::tr1::comp_ellint_3; Chris@16: using boost::math::tr1::comp_ellint_3f; Chris@16: using boost::math::tr1::comp_ellint_3l; Chris@16: #if 0 Chris@16: // [5.2.1.7] confluent hypergeometric functions: Chris@16: using boost::math::tr1::conf_hyperg; Chris@16: using boost::math::tr1::conf_hypergf; Chris@16: using boost::math::tr1::conf_hypergl; Chris@16: #endif Chris@16: // [5.2.1.8] regular modified cylindrical Bessel functions: Chris@16: using boost::math::tr1::cyl_bessel_i; Chris@16: using boost::math::tr1::cyl_bessel_if; Chris@16: using boost::math::tr1::cyl_bessel_il; Chris@16: // [5.2.1.9] cylindrical Bessel functions (of the first kind): Chris@16: using boost::math::tr1::cyl_bessel_j; Chris@16: using boost::math::tr1::cyl_bessel_jf; Chris@16: using boost::math::tr1::cyl_bessel_jl; Chris@16: // [5.2.1.10] irregular modified cylindrical Bessel functions: Chris@16: using boost::math::tr1::cyl_bessel_k; Chris@16: using boost::math::tr1::cyl_bessel_kf; Chris@16: using boost::math::tr1::cyl_bessel_kl; Chris@16: // [5.2.1.11] cylindrical Neumann functions; Chris@16: // cylindrical Bessel functions (of the second kind): Chris@16: using boost::math::tr1::cyl_neumann; Chris@16: using boost::math::tr1::cyl_neumannf; Chris@16: using boost::math::tr1::cyl_neumannl; Chris@16: // [5.2.1.12] (incomplete) elliptic integral of the first kind: Chris@16: using boost::math::tr1::ellint_1; Chris@16: using boost::math::tr1::ellint_1f; Chris@16: using boost::math::tr1::ellint_1l; Chris@16: // [5.2.1.13] (incomplete) elliptic integral of the second kind: Chris@16: using boost::math::tr1::ellint_2; Chris@16: using boost::math::tr1::ellint_2f; Chris@16: using boost::math::tr1::ellint_2l; Chris@16: // [5.2.1.14] (incomplete) elliptic integral of the third kind: Chris@16: using boost::math::tr1::ellint_3; Chris@16: using boost::math::tr1::ellint_3f; Chris@16: using boost::math::tr1::ellint_3l; Chris@16: // [5.2.1.15] exponential integral: Chris@16: using boost::math::tr1::expint; Chris@16: using boost::math::tr1::expintf; Chris@16: using boost::math::tr1::expintl; Chris@16: // [5.2.1.16] Hermite polynomials: Chris@16: using boost::math::tr1::hermite; Chris@16: using boost::math::tr1::hermitef; Chris@16: using boost::math::tr1::hermitel; Chris@16: #if 0 Chris@16: // [5.2.1.17] hypergeometric functions: Chris@16: using boost::math::tr1::hyperg; Chris@16: using boost::math::tr1::hypergf; Chris@16: using boost::math::tr1::hypergl; Chris@16: #endif Chris@16: // [5.2.1.18] Laguerre polynomials: Chris@16: using boost::math::tr1::laguerre; Chris@16: using boost::math::tr1::laguerref; Chris@16: using boost::math::tr1::laguerrel; Chris@16: // [5.2.1.19] Legendre polynomials: Chris@16: using boost::math::tr1::legendre; Chris@16: using boost::math::tr1::legendref; Chris@16: using boost::math::tr1::legendrel; Chris@16: // [5.2.1.20] Riemann zeta function: Chris@16: using boost::math::tr1::riemann_zeta; Chris@16: using boost::math::tr1::riemann_zetaf; Chris@16: using boost::math::tr1::riemann_zetal; Chris@16: // [5.2.1.21] spherical Bessel functions (of the first kind): Chris@16: using boost::math::tr1::sph_bessel; Chris@16: using boost::math::tr1::sph_besself; Chris@16: using boost::math::tr1::sph_bessell; Chris@16: // [5.2.1.22] spherical associated Legendre functions: Chris@16: using boost::math::tr1::sph_legendre; Chris@16: using boost::math::tr1::sph_legendref; Chris@16: using boost::math::tr1::sph_legendrel; Chris@16: // [5.2.1.23] spherical Neumann functions; Chris@16: // spherical Bessel functions (of the second kind): Chris@16: using boost::math::tr1::sph_neumann; Chris@16: using boost::math::tr1::sph_neumannf; Chris@16: using boost::math::tr1::sph_neumannl; Chris@16: Chris@16: // types Chris@16: using boost::math::tr1::double_t; Chris@16: using boost::math::tr1::float_t; Chris@16: // functions Chris@16: using boost::math::tr1::acosh; Chris@16: using boost::math::tr1::acoshf; Chris@16: using boost::math::tr1::acoshl; Chris@16: using boost::math::tr1::asinh; Chris@16: using boost::math::tr1::asinhf; Chris@16: using boost::math::tr1::asinhl; Chris@16: using boost::math::tr1::atanh; Chris@16: using boost::math::tr1::atanhf; Chris@16: using boost::math::tr1::atanhl; Chris@16: using boost::math::tr1::cbrt; Chris@16: using boost::math::tr1::cbrtf; Chris@16: using boost::math::tr1::cbrtl; Chris@16: using boost::math::tr1::copysign; Chris@16: using boost::math::tr1::copysignf; Chris@16: using boost::math::tr1::copysignl; Chris@16: using boost::math::tr1::erf; Chris@16: using boost::math::tr1::erff; Chris@16: using boost::math::tr1::erfl; Chris@16: using boost::math::tr1::erfc; Chris@16: using boost::math::tr1::erfcf; Chris@16: using boost::math::tr1::erfcl; Chris@16: #if 0 Chris@16: using boost::math::tr1::exp2; Chris@16: using boost::math::tr1::exp2f; Chris@16: using boost::math::tr1::exp2l; Chris@16: #endif Chris@16: using boost::math::tr1::expm1; Chris@16: using boost::math::tr1::expm1f; Chris@16: using boost::math::tr1::expm1l; Chris@16: #if 0 Chris@16: using boost::math::tr1::fdim; Chris@16: using boost::math::tr1::fdimf; Chris@16: using boost::math::tr1::fdiml; Chris@16: using boost::math::tr1::fma; Chris@16: using boost::math::tr1::fmaf; Chris@16: using boost::math::tr1::fmal; Chris@16: #endif Chris@16: using boost::math::tr1::fmax; Chris@16: using boost::math::tr1::fmaxf; Chris@16: using boost::math::tr1::fmaxl; Chris@16: using boost::math::tr1::fmin; Chris@16: using boost::math::tr1::fminf; Chris@16: using boost::math::tr1::fminl; Chris@16: using boost::math::tr1::hypot; Chris@16: using boost::math::tr1::hypotf; Chris@16: using boost::math::tr1::hypotl; Chris@16: #if 0 Chris@16: using boost::math::tr1::ilogb; Chris@16: using boost::math::tr1::ilogbf; Chris@16: using boost::math::tr1::ilogbl; Chris@16: #endif Chris@16: using boost::math::tr1::lgamma; Chris@16: using boost::math::tr1::lgammaf; Chris@16: using boost::math::tr1::lgammal; Chris@16: #if 0 Chris@16: using boost::math::tr1::llrint; Chris@16: using boost::math::tr1::llrintf; Chris@16: using boost::math::tr1::llrintl; Chris@16: #endif Chris@16: using boost::math::tr1::llround; Chris@16: using boost::math::tr1::llroundf; Chris@16: using boost::math::tr1::llroundl; Chris@16: using boost::math::tr1::log1p; Chris@16: using boost::math::tr1::log1pf; Chris@16: using boost::math::tr1::log1pl; Chris@16: #if 0 Chris@16: using boost::math::tr1::log2; Chris@16: using boost::math::tr1::log2f; Chris@16: using boost::math::tr1::log2l; Chris@16: using boost::math::tr1::logb; Chris@16: using boost::math::tr1::logbf; Chris@16: using boost::math::tr1::logbl; Chris@16: using boost::math::tr1::lrint; Chris@16: using boost::math::tr1::lrintf; Chris@16: using boost::math::tr1::lrintl; Chris@16: #endif Chris@16: using boost::math::tr1::lround; Chris@16: using boost::math::tr1::lroundf; Chris@16: using boost::math::tr1::lroundl; Chris@16: #if 0 Chris@16: using boost::math::tr1::nan; Chris@16: using boost::math::tr1::nanf; Chris@16: using boost::math::tr1::nanl; Chris@16: using boost::math::tr1::nearbyint; Chris@16: using boost::math::tr1::nearbyintf; Chris@16: using boost::math::tr1::nearbyintl; Chris@16: #endif Chris@16: using boost::math::tr1::nextafter; Chris@16: using boost::math::tr1::nextafterf; Chris@16: using boost::math::tr1::nextafterl; Chris@16: using boost::math::tr1::nexttoward; Chris@16: using boost::math::tr1::nexttowardf; Chris@16: using boost::math::tr1::nexttowardl; Chris@16: #if 0 Chris@16: using boost::math::tr1::remainder; Chris@16: using boost::math::tr1::remainderf; Chris@16: using boost::math::tr1::remainderl; Chris@16: using boost::math::tr1::remquo; Chris@16: using boost::math::tr1::remquof; Chris@16: using boost::math::tr1::remquol; Chris@16: using boost::math::tr1::rint; Chris@16: using boost::math::tr1::rintf; Chris@16: using boost::math::tr1::rintl; Chris@16: #endif Chris@16: using boost::math::tr1::round; Chris@16: using boost::math::tr1::roundf; Chris@16: using boost::math::tr1::roundl; Chris@16: #if 0 Chris@16: using boost::math::tr1::scalbln; Chris@16: using boost::math::tr1::scalblnf; Chris@16: using boost::math::tr1::scalblnl; Chris@16: using boost::math::tr1::scalbn; Chris@16: using boost::math::tr1::scalbnf; Chris@16: using boost::math::tr1::scalbnl; Chris@16: #endif Chris@16: using boost::math::tr1::tgamma; Chris@16: using boost::math::tr1::tgammaf; Chris@16: using boost::math::tr1::tgammal; Chris@16: using boost::math::tr1::trunc; Chris@16: using boost::math::tr1::truncf; Chris@16: using boost::math::tr1::truncl; Chris@16: // C99 macros defined as C++ templates Chris@16: using boost::math::tr1::signbit; Chris@16: using boost::math::tr1::fpclassify; Chris@16: using boost::math::tr1::isfinite; Chris@16: using boost::math::tr1::isinf; Chris@16: using boost::math::tr1::isnan; Chris@16: using boost::math::tr1::isnormal; Chris@16: #if 0 Chris@16: using boost::math::tr1::isgreater; Chris@16: using boost::math::tr1::isgreaterequal; Chris@16: using boost::math::tr1::isless; Chris@16: using boost::math::tr1::islessequal; Chris@16: using boost::math::tr1::islessgreater; Chris@16: using boost::math::tr1::isunordered; Chris@16: #endif Chris@16: } } // namespaces Chris@16: Chris@16: #endif // BOOST_HAS_TR1_CMATH Chris@16: Chris@16: #endif // BOOST_TR1_CMATH_HPP_INCLUDED