File indexing completed on 2025-01-18 09:40:45
0001
0002
0003
0004
0005
0006
0007 #ifndef BOOST_MATH_TR1_HPP
0008 #define BOOST_MATH_TR1_HPP
0009
0010 #ifdef _MSC_VER
0011 #pragma once
0012 #endif
0013
0014 #include <math.h> // So we can check which std C lib we're using
0015
0016 #ifdef __cplusplus
0017
0018 #include <boost/math/tools/is_standalone.hpp>
0019 #include <boost/math/tools/assert.hpp>
0020
0021 namespace boost{ namespace math{ namespace tr1{ extern "C"{
0022
0023 #endif
0024
0025 #ifndef BOOST_PREVENT_MACRO_SUBSTITUTION
0026 #define BOOST_PREVENT_MACRO_SUBSTITUTION
0027 #endif
0028
0029
0030
0031
0032
0033 #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_MATH_TR1_DYN_LINK)
0034
0035 #ifdef BOOST_MATH_TR1_SOURCE
0036 # define BOOST_MATH_TR1_DECL BOOST_SYMBOL_EXPORT
0037 #else
0038 # define BOOST_MATH_TR1_DECL BOOST_SYMBOL_IMPORT
0039 #endif
0040 #else
0041 # define BOOST_MATH_TR1_DECL
0042 #endif
0043
0044
0045
0046
0047 #if defined(__GLIBC__) && defined(__THROW)
0048 # define BOOST_MATH_C99_THROW_SPEC __THROW
0049 #else
0050 # define BOOST_MATH_C99_THROW_SPEC
0051 #endif
0052
0053
0054
0055
0056
0057 #ifndef BOOST_MATH_STANDALONE
0058 #include <boost/config.hpp>
0059 #if !defined(BOOST_MATH_TR1_NO_LIB) && !defined(BOOST_MATH_TR1_SOURCE) \
0060 && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus)
0061 # define BOOST_LIB_NAME boost_math_c99
0062 # if defined(BOOST_MATH_TR1_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
0063 # define BOOST_DYN_LINK
0064 # endif
0065 # include <boost/config/auto_link.hpp>
0066 #endif
0067 #if !defined(BOOST_MATH_TR1_NO_LIB) && !defined(BOOST_MATH_TR1_SOURCE) \
0068 && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus)
0069 # define BOOST_LIB_NAME boost_math_c99f
0070 # if defined(BOOST_MATH_TR1_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
0071 # define BOOST_DYN_LINK
0072 # endif
0073 # include <boost/config/auto_link.hpp>
0074 #endif
0075 #if !defined(BOOST_MATH_TR1_NO_LIB) && !defined(BOOST_MATH_TR1_SOURCE) \
0076 && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus) \
0077 && !defined(BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS)
0078 # define BOOST_LIB_NAME boost_math_c99l
0079 # if defined(BOOST_MATH_TR1_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
0080 # define BOOST_DYN_LINK
0081 # endif
0082 # include <boost/config/auto_link.hpp>
0083 #endif
0084 #if !defined(BOOST_MATH_TR1_NO_LIB) && !defined(BOOST_MATH_TR1_SOURCE) \
0085 && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus)
0086 # define BOOST_LIB_NAME boost_math_tr1
0087 # if defined(BOOST_MATH_TR1_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
0088 # define BOOST_DYN_LINK
0089 # endif
0090 # include <boost/config/auto_link.hpp>
0091 #endif
0092 #if !defined(BOOST_MATH_TR1_NO_LIB) && !defined(BOOST_MATH_TR1_SOURCE) \
0093 && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus)
0094 # define BOOST_LIB_NAME boost_math_tr1f
0095 # if defined(BOOST_MATH_TR1_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
0096 # define BOOST_DYN_LINK
0097 # endif
0098 # include <boost/config/auto_link.hpp>
0099 #endif
0100 #if !defined(BOOST_MATH_TR1_NO_LIB) && !defined(BOOST_MATH_TR1_SOURCE) \
0101 && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus) \
0102 && !defined(BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS)
0103 # define BOOST_LIB_NAME boost_math_tr1l
0104 # if defined(BOOST_MATH_TR1_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
0105 # define BOOST_DYN_LINK
0106 # endif
0107 # include <boost/config/auto_link.hpp>
0108 #endif
0109 #else
0110 # if defined(_MSC_VER) && !defined(BOOST_ALL_NO_LIB)
0111 # pragma message("Auto linking of TR1 is not supported in standalone mode")
0112 # endif
0113 #endif
0114
0115 #if !(defined(__INTEL_COMPILER) && defined(__APPLE__)) && !(defined(__FLT_EVAL_METHOD__) && !defined(__cplusplus))
0116 #if !defined(FLT_EVAL_METHOD)
0117 typedef float float_t;
0118 typedef double double_t;
0119 #elif FLT_EVAL_METHOD == -1
0120 typedef float float_t;
0121 typedef double double_t;
0122 #elif FLT_EVAL_METHOD == 0
0123 typedef float float_t;
0124 typedef double double_t;
0125 #elif FLT_EVAL_METHOD == 1
0126 typedef double float_t;
0127 typedef double double_t;
0128 #else
0129 typedef long double float_t;
0130 typedef long double double_t;
0131 #endif
0132 #endif
0133
0134
0135 double BOOST_MATH_TR1_DECL boost_acosh BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0136 float BOOST_MATH_TR1_DECL boost_acoshf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0137 long double BOOST_MATH_TR1_DECL boost_acoshl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0138
0139 double BOOST_MATH_TR1_DECL boost_asinh BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0140 float BOOST_MATH_TR1_DECL boost_asinhf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0141 long double BOOST_MATH_TR1_DECL boost_asinhl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0142
0143 double BOOST_MATH_TR1_DECL boost_atanh BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0144 float BOOST_MATH_TR1_DECL boost_atanhf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0145 long double BOOST_MATH_TR1_DECL boost_atanhl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0146
0147 double BOOST_MATH_TR1_DECL boost_cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0148 float BOOST_MATH_TR1_DECL boost_cbrtf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0149 long double BOOST_MATH_TR1_DECL boost_cbrtl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0150
0151 double BOOST_MATH_TR1_DECL boost_copysign BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0152 float BOOST_MATH_TR1_DECL boost_copysignf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0153 long double BOOST_MATH_TR1_DECL boost_copysignl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0154
0155 double BOOST_MATH_TR1_DECL boost_erf BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0156 float BOOST_MATH_TR1_DECL boost_erff BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0157 long double BOOST_MATH_TR1_DECL boost_erfl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0158
0159 double BOOST_MATH_TR1_DECL boost_erfc BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0160 float BOOST_MATH_TR1_DECL boost_erfcf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0161 long double BOOST_MATH_TR1_DECL boost_erfcl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0162 #if 0
0163 double BOOST_MATH_TR1_DECL boost_exp2 BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0164 float BOOST_MATH_TR1_DECL boost_exp2f BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0165 long double BOOST_MATH_TR1_DECL boost_exp2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0166 #endif
0167 double BOOST_MATH_TR1_DECL boost_expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0168 float BOOST_MATH_TR1_DECL boost_expm1f BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0169 long double BOOST_MATH_TR1_DECL boost_expm1l BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0170 #if 0
0171 double BOOST_MATH_TR1_DECL boost_fdim BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0172 float BOOST_MATH_TR1_DECL boost_fdimf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0173 long double BOOST_MATH_TR1_DECL boost_fdiml BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0174 double BOOST_MATH_TR1_DECL boost_fma BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y, double z) BOOST_MATH_C99_THROW_SPEC;
0175 float BOOST_MATH_TR1_DECL boost_fmaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y, float z) BOOST_MATH_C99_THROW_SPEC;
0176 long double BOOST_MATH_TR1_DECL boost_fmal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y, long double z) BOOST_MATH_C99_THROW_SPEC;
0177 #endif
0178 double BOOST_MATH_TR1_DECL boost_fmax BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0179 float BOOST_MATH_TR1_DECL boost_fmaxf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0180 long double BOOST_MATH_TR1_DECL boost_fmaxl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0181
0182 double BOOST_MATH_TR1_DECL boost_fmin BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0183 float BOOST_MATH_TR1_DECL boost_fminf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0184 long double BOOST_MATH_TR1_DECL boost_fminl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0185
0186 double BOOST_MATH_TR1_DECL boost_hypot BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0187 float BOOST_MATH_TR1_DECL boost_hypotf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0188 long double BOOST_MATH_TR1_DECL boost_hypotl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0189 #if 0
0190 int BOOST_MATH_TR1_DECL boost_ilogb BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0191 int BOOST_MATH_TR1_DECL boost_ilogbf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0192 int BOOST_MATH_TR1_DECL boost_ilogbl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0193 #endif
0194 double BOOST_MATH_TR1_DECL boost_lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0195 float BOOST_MATH_TR1_DECL boost_lgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0196 long double BOOST_MATH_TR1_DECL boost_lgammal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0197
0198 long long BOOST_MATH_TR1_DECL boost_llround BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0199 long long BOOST_MATH_TR1_DECL boost_llroundf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0200 long long BOOST_MATH_TR1_DECL boost_llroundl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0201
0202 double BOOST_MATH_TR1_DECL boost_log1p BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0203 float BOOST_MATH_TR1_DECL boost_log1pf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0204 long double BOOST_MATH_TR1_DECL boost_log1pl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0205 #if 0
0206 double BOOST_MATH_TR1_DECL log2 BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0207 float BOOST_MATH_TR1_DECL log2f BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0208 long double BOOST_MATH_TR1_DECL log2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0209
0210 double BOOST_MATH_TR1_DECL logb BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0211 float BOOST_MATH_TR1_DECL logbf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0212 long double BOOST_MATH_TR1_DECL logbl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0213 long BOOST_MATH_TR1_DECL lrint BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0214 long BOOST_MATH_TR1_DECL lrintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0215 long BOOST_MATH_TR1_DECL lrintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0216 #endif
0217 long BOOST_MATH_TR1_DECL boost_lround BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0218 long BOOST_MATH_TR1_DECL boost_lroundf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0219 long BOOST_MATH_TR1_DECL boost_lroundl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0220 #if 0
0221 double BOOST_MATH_TR1_DECL nan BOOST_PREVENT_MACRO_SUBSTITUTION(const char *str) BOOST_MATH_C99_THROW_SPEC;
0222 float BOOST_MATH_TR1_DECL nanf BOOST_PREVENT_MACRO_SUBSTITUTION(const char *str) BOOST_MATH_C99_THROW_SPEC;
0223 long double BOOST_MATH_TR1_DECL nanl BOOST_PREVENT_MACRO_SUBSTITUTION(const char *str) BOOST_MATH_C99_THROW_SPEC;
0224 double BOOST_MATH_TR1_DECL nearbyint BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0225 float BOOST_MATH_TR1_DECL nearbyintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0226 long double BOOST_MATH_TR1_DECL nearbyintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0227 #endif
0228 double BOOST_MATH_TR1_DECL boost_nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0229 float BOOST_MATH_TR1_DECL boost_nextafterf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0230 long double BOOST_MATH_TR1_DECL boost_nextafterl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0231
0232 double BOOST_MATH_TR1_DECL boost_nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0233 float BOOST_MATH_TR1_DECL boost_nexttowardf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, long double y) BOOST_MATH_C99_THROW_SPEC;
0234 long double BOOST_MATH_TR1_DECL boost_nexttowardl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0235 #if 0
0236 double BOOST_MATH_TR1_DECL boost_remainder BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0237 float BOOST_MATH_TR1_DECL boost_remainderf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0238 long double BOOST_MATH_TR1_DECL boost_remainderl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0239 double BOOST_MATH_TR1_DECL boost_remquo BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y, int *pquo) BOOST_MATH_C99_THROW_SPEC;
0240 float BOOST_MATH_TR1_DECL boost_remquof BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y, int *pquo) BOOST_MATH_C99_THROW_SPEC;
0241 long double BOOST_MATH_TR1_DECL boost_remquol BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y, int *pquo) BOOST_MATH_C99_THROW_SPEC;
0242 double BOOST_MATH_TR1_DECL boost_rint BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0243 float BOOST_MATH_TR1_DECL boost_rintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0244 long double BOOST_MATH_TR1_DECL boost_rintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0245 #endif
0246 double BOOST_MATH_TR1_DECL boost_round BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0247 float BOOST_MATH_TR1_DECL boost_roundf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0248 long double BOOST_MATH_TR1_DECL boost_roundl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0249 #if 0
0250 double BOOST_MATH_TR1_DECL boost_scalbln BOOST_PREVENT_MACRO_SUBSTITUTION(double x, long ex) BOOST_MATH_C99_THROW_SPEC;
0251 float BOOST_MATH_TR1_DECL boost_scalblnf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, long ex) BOOST_MATH_C99_THROW_SPEC;
0252 long double BOOST_MATH_TR1_DECL boost_scalblnl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long ex) BOOST_MATH_C99_THROW_SPEC;
0253 double BOOST_MATH_TR1_DECL boost_scalbn BOOST_PREVENT_MACRO_SUBSTITUTION(double x, int ex) BOOST_MATH_C99_THROW_SPEC;
0254 float BOOST_MATH_TR1_DECL boost_scalbnf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, int ex) BOOST_MATH_C99_THROW_SPEC;
0255 long double BOOST_MATH_TR1_DECL boost_scalbnl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, int ex) BOOST_MATH_C99_THROW_SPEC;
0256 #endif
0257 double BOOST_MATH_TR1_DECL boost_tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0258 float BOOST_MATH_TR1_DECL boost_tgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0259 long double BOOST_MATH_TR1_DECL boost_tgammal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0260
0261 double BOOST_MATH_TR1_DECL boost_trunc BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0262 float BOOST_MATH_TR1_DECL boost_truncf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0263 long double BOOST_MATH_TR1_DECL boost_truncl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0264
0265
0266 double BOOST_MATH_TR1_DECL boost_assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, double x) BOOST_MATH_C99_THROW_SPEC;
0267 float BOOST_MATH_TR1_DECL boost_assoc_laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, float x) BOOST_MATH_C99_THROW_SPEC;
0268 long double BOOST_MATH_TR1_DECL boost_assoc_laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, long double x) BOOST_MATH_C99_THROW_SPEC;
0269
0270
0271 double BOOST_MATH_TR1_DECL boost_assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, double x) BOOST_MATH_C99_THROW_SPEC;
0272 float BOOST_MATH_TR1_DECL boost_assoc_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, float x) BOOST_MATH_C99_THROW_SPEC;
0273 long double BOOST_MATH_TR1_DECL boost_assoc_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, long double x) BOOST_MATH_C99_THROW_SPEC;
0274
0275
0276 double BOOST_MATH_TR1_DECL boost_beta BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y) BOOST_MATH_C99_THROW_SPEC;
0277 float BOOST_MATH_TR1_DECL boost_betaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y) BOOST_MATH_C99_THROW_SPEC;
0278 long double BOOST_MATH_TR1_DECL boost_betal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y) BOOST_MATH_C99_THROW_SPEC;
0279
0280
0281 double BOOST_MATH_TR1_DECL boost_comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(double k) BOOST_MATH_C99_THROW_SPEC;
0282 float BOOST_MATH_TR1_DECL boost_comp_ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(float k) BOOST_MATH_C99_THROW_SPEC;
0283 long double BOOST_MATH_TR1_DECL boost_comp_ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k) BOOST_MATH_C99_THROW_SPEC;
0284
0285
0286 double BOOST_MATH_TR1_DECL boost_comp_ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(double k) BOOST_MATH_C99_THROW_SPEC;
0287 float BOOST_MATH_TR1_DECL boost_comp_ellint_2f BOOST_PREVENT_MACRO_SUBSTITUTION(float k) BOOST_MATH_C99_THROW_SPEC;
0288 long double BOOST_MATH_TR1_DECL boost_comp_ellint_2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k) BOOST_MATH_C99_THROW_SPEC;
0289
0290
0291 double BOOST_MATH_TR1_DECL boost_comp_ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double nu) BOOST_MATH_C99_THROW_SPEC;
0292 float BOOST_MATH_TR1_DECL boost_comp_ellint_3f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float nu) BOOST_MATH_C99_THROW_SPEC;
0293 long double BOOST_MATH_TR1_DECL boost_comp_ellint_3l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double nu) BOOST_MATH_C99_THROW_SPEC;
0294 #if 0
0295
0296 double BOOST_MATH_TR1_DECL conf_hyperg BOOST_PREVENT_MACRO_SUBSTITUTION(double a, double c, double x) BOOST_MATH_C99_THROW_SPEC;
0297 float BOOST_MATH_TR1_DECL conf_hypergf BOOST_PREVENT_MACRO_SUBSTITUTION(float a, float c, float x) BOOST_MATH_C99_THROW_SPEC;
0298 long double BOOST_MATH_TR1_DECL conf_hypergl BOOST_PREVENT_MACRO_SUBSTITUTION(long double a, long double c, long double x) BOOST_MATH_C99_THROW_SPEC;
0299 #endif
0300
0301 double BOOST_MATH_TR1_DECL boost_cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x) BOOST_MATH_C99_THROW_SPEC;
0302 float BOOST_MATH_TR1_DECL boost_cyl_bessel_if BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x) BOOST_MATH_C99_THROW_SPEC;
0303 long double BOOST_MATH_TR1_DECL boost_cyl_bessel_il BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x) BOOST_MATH_C99_THROW_SPEC;
0304
0305
0306 double BOOST_MATH_TR1_DECL boost_cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x) BOOST_MATH_C99_THROW_SPEC;
0307 float BOOST_MATH_TR1_DECL boost_cyl_bessel_jf BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x) BOOST_MATH_C99_THROW_SPEC;
0308 long double BOOST_MATH_TR1_DECL boost_cyl_bessel_jl BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x) BOOST_MATH_C99_THROW_SPEC;
0309
0310
0311 double BOOST_MATH_TR1_DECL boost_cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x) BOOST_MATH_C99_THROW_SPEC;
0312 float BOOST_MATH_TR1_DECL boost_cyl_bessel_kf BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x) BOOST_MATH_C99_THROW_SPEC;
0313 long double BOOST_MATH_TR1_DECL boost_cyl_bessel_kl BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x) BOOST_MATH_C99_THROW_SPEC;
0314
0315
0316
0317 double BOOST_MATH_TR1_DECL boost_cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x) BOOST_MATH_C99_THROW_SPEC;
0318 float BOOST_MATH_TR1_DECL boost_cyl_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x) BOOST_MATH_C99_THROW_SPEC;
0319 long double BOOST_MATH_TR1_DECL boost_cyl_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x) BOOST_MATH_C99_THROW_SPEC;
0320
0321
0322 double BOOST_MATH_TR1_DECL boost_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double phi) BOOST_MATH_C99_THROW_SPEC;
0323 float BOOST_MATH_TR1_DECL boost_ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float phi) BOOST_MATH_C99_THROW_SPEC;
0324 long double BOOST_MATH_TR1_DECL boost_ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double phi) BOOST_MATH_C99_THROW_SPEC;
0325
0326
0327 double BOOST_MATH_TR1_DECL boost_ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double phi) BOOST_MATH_C99_THROW_SPEC;
0328 float BOOST_MATH_TR1_DECL boost_ellint_2f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float phi) BOOST_MATH_C99_THROW_SPEC;
0329 long double BOOST_MATH_TR1_DECL boost_ellint_2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double phi) BOOST_MATH_C99_THROW_SPEC;
0330
0331
0332 double BOOST_MATH_TR1_DECL boost_ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double nu, double phi) BOOST_MATH_C99_THROW_SPEC;
0333 float BOOST_MATH_TR1_DECL boost_ellint_3f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float nu, float phi) BOOST_MATH_C99_THROW_SPEC;
0334 long double BOOST_MATH_TR1_DECL boost_ellint_3l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double nu, long double phi) BOOST_MATH_C99_THROW_SPEC;
0335
0336
0337 double BOOST_MATH_TR1_DECL boost_expint BOOST_PREVENT_MACRO_SUBSTITUTION(double x) BOOST_MATH_C99_THROW_SPEC;
0338 float BOOST_MATH_TR1_DECL boost_expintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x) BOOST_MATH_C99_THROW_SPEC;
0339 long double BOOST_MATH_TR1_DECL boost_expintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x) BOOST_MATH_C99_THROW_SPEC;
0340
0341
0342 double BOOST_MATH_TR1_DECL boost_hermite BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x) BOOST_MATH_C99_THROW_SPEC;
0343 float BOOST_MATH_TR1_DECL boost_hermitef BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x) BOOST_MATH_C99_THROW_SPEC;
0344 long double BOOST_MATH_TR1_DECL boost_hermitel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x) BOOST_MATH_C99_THROW_SPEC;
0345
0346 #if 0
0347
0348 double BOOST_MATH_TR1_DECL hyperg BOOST_PREVENT_MACRO_SUBSTITUTION(double a, double b, double c, double x) BOOST_MATH_C99_THROW_SPEC;
0349 float BOOST_MATH_TR1_DECL hypergf BOOST_PREVENT_MACRO_SUBSTITUTION(float a, float b, float c, float x) BOOST_MATH_C99_THROW_SPEC;
0350 long double BOOST_MATH_TR1_DECL hypergl BOOST_PREVENT_MACRO_SUBSTITUTION(long double a, long double b, long double c,
0351 long double x) BOOST_MATH_C99_THROW_SPEC;
0352 #endif
0353
0354
0355 double BOOST_MATH_TR1_DECL boost_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x) BOOST_MATH_C99_THROW_SPEC;
0356 float BOOST_MATH_TR1_DECL boost_laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x) BOOST_MATH_C99_THROW_SPEC;
0357 long double BOOST_MATH_TR1_DECL boost_laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x) BOOST_MATH_C99_THROW_SPEC;
0358
0359
0360 double BOOST_MATH_TR1_DECL boost_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, double x) BOOST_MATH_C99_THROW_SPEC;
0361 float BOOST_MATH_TR1_DECL boost_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, float x) BOOST_MATH_C99_THROW_SPEC;
0362 long double BOOST_MATH_TR1_DECL boost_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, long double x) BOOST_MATH_C99_THROW_SPEC;
0363
0364
0365 double BOOST_MATH_TR1_DECL boost_riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(double) BOOST_MATH_C99_THROW_SPEC;
0366 float BOOST_MATH_TR1_DECL boost_riemann_zetaf BOOST_PREVENT_MACRO_SUBSTITUTION(float) BOOST_MATH_C99_THROW_SPEC;
0367 long double BOOST_MATH_TR1_DECL boost_riemann_zetal BOOST_PREVENT_MACRO_SUBSTITUTION(long double) BOOST_MATH_C99_THROW_SPEC;
0368
0369
0370 double BOOST_MATH_TR1_DECL boost_sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x) BOOST_MATH_C99_THROW_SPEC;
0371 float BOOST_MATH_TR1_DECL boost_sph_besself BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x) BOOST_MATH_C99_THROW_SPEC;
0372 long double BOOST_MATH_TR1_DECL boost_sph_bessell BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x) BOOST_MATH_C99_THROW_SPEC;
0373
0374
0375 double BOOST_MATH_TR1_DECL boost_sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, double theta) BOOST_MATH_C99_THROW_SPEC;
0376 float BOOST_MATH_TR1_DECL boost_sph_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, float theta) BOOST_MATH_C99_THROW_SPEC;
0377 long double BOOST_MATH_TR1_DECL boost_sph_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, long double theta) BOOST_MATH_C99_THROW_SPEC;
0378
0379
0380
0381 double BOOST_MATH_TR1_DECL boost_sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x) BOOST_MATH_C99_THROW_SPEC;
0382 float BOOST_MATH_TR1_DECL boost_sph_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x) BOOST_MATH_C99_THROW_SPEC;
0383 long double BOOST_MATH_TR1_DECL boost_sph_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x) BOOST_MATH_C99_THROW_SPEC;
0384
0385 #ifdef __cplusplus
0386
0387 }}}}
0388
0389 #include <boost/math/tools/promotion.hpp>
0390
0391 namespace boost{ namespace math{ namespace tr1{
0392
0393
0394
0395
0396
0397 inline double acosh BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0398 { return boost::math::tr1::boost_acosh BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0399 inline float acoshf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0400 { return boost::math::tr1::boost_acoshf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0401 inline long double acoshl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0402 { return boost::math::tr1::boost_acoshl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0403 inline float acosh BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0404 { return boost::math::tr1::acoshf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0405 inline long double acosh BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0406 { return boost::math::tr1::acoshl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0407 template <class T>
0408 inline typename tools::promote_args<T>::type acosh BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0409 { return boost::math::tr1::acosh BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0410
0411 inline double asinh BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0412 { return boost::math::tr1::boost_asinh BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0413 inline float asinhf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0414 { return boost::math::tr1::boost_asinhf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0415 inline long double asinhl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0416 { return boost::math::tr1::boost_asinhl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0417 inline float asinh BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0418 { return boost::math::tr1::asinhf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0419 inline long double asinh BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0420 { return boost::math::tr1::asinhl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0421 template <class T>
0422 inline typename tools::promote_args<T>::type asinh BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0423 { return boost::math::tr1::asinh BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0424
0425 inline double atanh BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0426 { return boost::math::tr1::boost_atanh BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0427 inline float atanhf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0428 { return boost::math::tr1::boost_atanhf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0429 inline long double atanhl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0430 { return boost::math::tr1::boost_atanhl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0431 inline float atanh BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0432 { return boost::math::tr1::atanhf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0433 inline long double atanh BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0434 { return boost::math::tr1::atanhl(x); }
0435 template <class T>
0436 inline typename tools::promote_args<T>::type atanh BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0437 { return boost::math::tr1::atanh BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0438
0439 inline double cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0440 { return boost::math::tr1::boost_cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0441 inline float cbrtf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0442 { return boost::math::tr1::boost_cbrtf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0443 inline long double cbrtl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0444 { return boost::math::tr1::boost_cbrtl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0445 inline float cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0446 { return boost::math::tr1::cbrtf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0447 inline long double cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0448 { return boost::math::tr1::cbrtl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0449 template <class T>
0450 inline typename tools::promote_args<T>::type cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0451 { return boost::math::tr1::cbrt BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0452
0453 inline double copysign BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0454 { return boost::math::tr1::boost_copysign BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0455 inline float copysignf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0456 { return boost::math::tr1::boost_copysignf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0457 inline long double copysignl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0458 { return boost::math::tr1::boost_copysignl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0459 inline float copysign BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0460 { return boost::math::tr1::copysignf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0461 inline long double copysign BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0462 { return boost::math::tr1::copysignl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0463 template <class T1, class T2>
0464 inline typename tools::promote_args<T1, T2>::type copysign BOOST_PREVENT_MACRO_SUBSTITUTION(T1 x, T2 y)
0465 { return boost::math::tr1::copysign BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<typename tools::promote_args<T1, T2>::type>(y)); }
0466
0467 inline double erf BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0468 { return boost::math::tr1::boost_erf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0469 inline float erff BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0470 { return boost::math::tr1::boost_erff BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0471 inline long double erfl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0472 { return boost::math::tr1::boost_erfl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0473 inline float erf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0474 { return boost::math::tr1::erff BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0475 inline long double erf BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0476 { return boost::math::tr1::erfl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0477 template <class T>
0478 inline typename tools::promote_args<T>::type erf BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0479 { return boost::math::tr1::erf BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0480
0481 inline double erfc BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0482 { return boost::math::tr1::boost_erfc BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0483 inline float erfcf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0484 { return boost::math::tr1::boost_erfcf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0485 inline long double erfcl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0486 { return boost::math::tr1::boost_erfcl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0487 inline float erfc BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0488 { return boost::math::tr1::erfcf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0489 inline long double erfc BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0490 { return boost::math::tr1::erfcl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0491 template <class T>
0492 inline typename tools::promote_args<T>::type erfc BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0493 { return boost::math::tr1::erfc BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0494
0495 #if 0
0496 double exp2 BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0497 float exp2f BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0498 long double exp2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0499 #endif
0500
0501 inline float expm1f BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0502 { return boost::math::tr1::boost_expm1f BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0503 inline double expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0504 { return boost::math::tr1::boost_expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0505 inline long double expm1l BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0506 { return boost::math::tr1::boost_expm1l BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0507 inline float expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0508 { return boost::math::tr1::expm1f BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0509 inline long double expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0510 { return boost::math::tr1::expm1l BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0511 template <class T>
0512 inline typename tools::promote_args<T>::type expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0513 { return boost::math::tr1::expm1 BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0514
0515 #if 0
0516 double fdim BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y);
0517 float fdimf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y);
0518 long double fdiml BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y);
0519 double fma BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y, double z);
0520 float fmaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y, float z);
0521 long double fmal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y, long double z);
0522 #endif
0523 inline double fmax BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0524 { return boost::math::tr1::boost_fmax BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0525 inline float fmaxf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0526 { return boost::math::tr1::boost_fmaxf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0527 inline long double fmaxl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0528 { return boost::math::tr1::boost_fmaxl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0529 inline float fmax BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0530 { return boost::math::tr1::fmaxf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0531 inline long double fmax BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0532 { return boost::math::tr1::fmaxl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0533 template <class T1, class T2>
0534 inline typename tools::promote_args<T1, T2>::type fmax BOOST_PREVENT_MACRO_SUBSTITUTION(T1 x, T2 y)
0535 { return boost::math::tr1::fmax BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<typename tools::promote_args<T1, T2>::type>(y)); }
0536
0537 inline double fmin BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0538 { return boost::math::tr1::boost_fmin BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0539 inline float fminf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0540 { return boost::math::tr1::boost_fminf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0541 inline long double fminl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0542 { return boost::math::tr1::boost_fminl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0543 inline float fmin BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0544 { return boost::math::tr1::fminf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0545 inline long double fmin BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0546 { return boost::math::tr1::fminl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0547 template <class T1, class T2>
0548 inline typename tools::promote_args<T1, T2>::type fmin BOOST_PREVENT_MACRO_SUBSTITUTION(T1 x, T2 y)
0549 { return boost::math::tr1::fmin BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<typename tools::promote_args<T1, T2>::type>(y)); }
0550
0551 inline float hypotf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0552 { return boost::math::tr1::boost_hypotf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0553 inline double hypot BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0554 { return boost::math::tr1::boost_hypot BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0555 inline long double hypotl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0556 { return boost::math::tr1::boost_hypotl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0557 inline float hypot BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0558 { return boost::math::tr1::hypotf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0559 inline long double hypot BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0560 { return boost::math::tr1::hypotl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0561 template <class T1, class T2>
0562 inline typename tools::promote_args<T1, T2>::type hypot BOOST_PREVENT_MACRO_SUBSTITUTION(T1 x, T2 y)
0563 { return boost::math::tr1::hypot BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<typename tools::promote_args<T1, T2>::type>(y)); }
0564
0565 #if 0
0566 int ilogb BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0567 int ilogbf BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0568 int ilogbl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0569 #endif
0570
0571 inline float lgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0572 { return boost::math::tr1::boost_lgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0573 inline double lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0574 { return boost::math::tr1::boost_lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0575 inline long double lgammal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0576 { return boost::math::tr1::boost_lgammal BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0577 inline float lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0578 { return boost::math::tr1::lgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0579 inline long double lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0580 { return boost::math::tr1::lgammal BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0581 template <class T>
0582 inline typename tools::promote_args<T>::type lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0583 { return boost::math::tr1::lgamma BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0584
0585 #ifdef BOOST_HAS_LONG_LONG
0586 #if 0
0587 long long llrint BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0588 long long llrintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0589 long long llrintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0590 #endif
0591
0592 inline long long llroundf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0593 { return boost::math::tr1::boost_llroundf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0594 inline long long llround BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0595 { return boost::math::tr1::boost_llround BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0596 inline long long llroundl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0597 { return boost::math::tr1::boost_llroundl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0598 inline long long llround BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0599 { return boost::math::tr1::llroundf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0600 inline long long llround BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0601 { return boost::math::tr1::llroundl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0602 template <class T>
0603 inline long long llround BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0604 { return llround BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<double>(x)); }
0605 #endif
0606
0607 inline float log1pf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0608 { return boost::math::tr1::boost_log1pf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0609 inline double log1p BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0610 { return boost::math::tr1::boost_log1p BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0611 inline long double log1pl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0612 { return boost::math::tr1::boost_log1pl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0613 inline float log1p BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0614 { return boost::math::tr1::log1pf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0615 inline long double log1p BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0616 { return boost::math::tr1::log1pl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0617 template <class T>
0618 inline typename tools::promote_args<T>::type log1p BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0619 { return boost::math::tr1::log1p BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0620 #if 0
0621 double log2 BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0622 float log2f BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0623 long double log2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0624
0625 double logb BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0626 float logbf BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0627 long double logbl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0628 long lrint BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0629 long lrintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0630 long lrintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0631 #endif
0632 inline long lroundf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0633 { return boost::math::tr1::boost_lroundf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0634 inline long lround BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0635 { return boost::math::tr1::boost_lround BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0636 inline long lroundl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0637 { return boost::math::tr1::boost_lroundl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0638 inline long lround BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0639 { return boost::math::tr1::lroundf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0640 inline long lround BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0641 { return boost::math::tr1::lroundl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0642 template <class T>
0643 long lround BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0644 { return boost::math::tr1::lround BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<double>(x)); }
0645 #if 0
0646 double nan BOOST_PREVENT_MACRO_SUBSTITUTION(const char *str);
0647 float nanf BOOST_PREVENT_MACRO_SUBSTITUTION(const char *str);
0648 long double nanl BOOST_PREVENT_MACRO_SUBSTITUTION(const char *str);
0649 double nearbyint BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0650 float nearbyintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0651 long double nearbyintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0652 #endif
0653 inline float nextafterf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0654 { return boost::math::tr1::boost_nextafterf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0655 inline double nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0656 { return boost::math::tr1::boost_nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0657 inline long double nextafterl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0658 { return boost::math::tr1::boost_nextafterl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0659 inline float nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0660 { return boost::math::tr1::nextafterf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0661 inline long double nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0662 { return boost::math::tr1::nextafterl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0663 template <class T1, class T2>
0664 inline typename tools::promote_args<T1, T2>::type nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(T1 x, T2 y)
0665 { return boost::math::tr1::nextafter BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<typename tools::promote_args<T1, T2>::type>(y)); }
0666
0667 inline float nexttowardf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0668 { return boost::math::tr1::boost_nexttowardf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0669 inline double nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0670 { return boost::math::tr1::boost_nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0671 inline long double nexttowardl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0672 { return boost::math::tr1::boost_nexttowardl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0673 inline float nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0674 { return boost::math::tr1::nexttowardf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0675 inline long double nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0676 { return boost::math::tr1::nexttowardl BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0677 template <class T1, class T2>
0678 inline typename tools::promote_args<T1, T2>::type nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(T1 x, T2 y)
0679 { return static_cast<typename tools::promote_args<T1, T2>::type>(boost::math::tr1::nexttoward BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<long double>(y))); }
0680 #if 0
0681 double remainder BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y);
0682 float remainderf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y);
0683 long double remainderl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y);
0684 double remquo BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y, int *pquo);
0685 float remquof BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y, int *pquo);
0686 long double remquol BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y, int *pquo);
0687 double rint BOOST_PREVENT_MACRO_SUBSTITUTION(double x);
0688 float rintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x);
0689 long double rintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x);
0690 #endif
0691 inline float roundf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0692 { return boost::math::tr1::boost_roundf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0693 inline double round BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0694 { return boost::math::tr1::boost_round BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0695 inline long double roundl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0696 { return boost::math::tr1::boost_roundl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0697 inline float round BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0698 { return boost::math::tr1::roundf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0699 inline long double round BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0700 { return boost::math::tr1::roundl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0701 template <class T>
0702 inline typename tools::promote_args<T>::type round BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0703 { return boost::math::tr1::round BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0704 #if 0
0705 double scalbln BOOST_PREVENT_MACRO_SUBSTITUTION(double x, long ex);
0706 float scalblnf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, long ex);
0707 long double scalblnl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long ex);
0708 double scalbn BOOST_PREVENT_MACRO_SUBSTITUTION(double x, int ex);
0709 float scalbnf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, int ex);
0710 long double scalbnl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, int ex);
0711 #endif
0712 inline float tgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0713 { return boost::math::tr1::boost_tgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0714 inline double tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0715 { return boost::math::tr1::boost_tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0716 inline long double tgammal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0717 { return boost::math::tr1::boost_tgammal BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0718 inline float tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0719 { return boost::math::tr1::tgammaf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0720 inline long double tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0721 { return boost::math::tr1::tgammal BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0722 template <class T>
0723 inline typename tools::promote_args<T>::type tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0724 { return boost::math::tr1::tgamma BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0725
0726 inline float truncf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0727 { return boost::math::tr1::boost_truncf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0728 inline double trunc BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0729 { return boost::math::tr1::boost_trunc BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0730 inline long double truncl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0731 { return boost::math::tr1::boost_truncl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0732 inline float trunc BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0733 { return boost::math::tr1::truncf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0734 inline long double trunc BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0735 { return boost::math::tr1::truncl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0736 template <class T>
0737 inline typename tools::promote_args<T>::type trunc BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0738 { return boost::math::tr1::trunc BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0739
0740 # define NO_MACRO_EXPAND
0741
0742 template<class T> bool signbit NO_MACRO_EXPAND(T)
0743 { static_assert(sizeof(T) == 0, "Undefined behavior; this template should never be instantiated"); return false; }
0744 template<> bool BOOST_MATH_TR1_DECL signbit<float> NO_MACRO_EXPAND(float x);
0745 template<> bool BOOST_MATH_TR1_DECL signbit<double> NO_MACRO_EXPAND(double x);
0746 template<> bool BOOST_MATH_TR1_DECL signbit<long double> NO_MACRO_EXPAND(long double x);
0747
0748 template<class T> int fpclassify NO_MACRO_EXPAND(T)
0749 { static_assert(sizeof(T) == 0, "Undefined behavior; this template should never be instantiated"); return false; }
0750 template<> int BOOST_MATH_TR1_DECL fpclassify<float> NO_MACRO_EXPAND(float x);
0751 template<> int BOOST_MATH_TR1_DECL fpclassify<double> NO_MACRO_EXPAND(double x);
0752 template<> int BOOST_MATH_TR1_DECL fpclassify<long double> NO_MACRO_EXPAND(long double x);
0753
0754 template<class T> bool isfinite NO_MACRO_EXPAND(T)
0755 { static_assert(sizeof(T) == 0, "Undefined behavior; this template should never be instantiated"); return false; }
0756 template<> bool BOOST_MATH_TR1_DECL isfinite<float> NO_MACRO_EXPAND(float x);
0757 template<> bool BOOST_MATH_TR1_DECL isfinite<double> NO_MACRO_EXPAND(double x);
0758 template<> bool BOOST_MATH_TR1_DECL isfinite<long double> NO_MACRO_EXPAND(long double x);
0759
0760 template<class T> bool isinf NO_MACRO_EXPAND(T)
0761 { static_assert(sizeof(T) == 0, "Undefined behavior; this template should never be instantiated"); return false; }
0762 template<> bool BOOST_MATH_TR1_DECL isinf<float> NO_MACRO_EXPAND(float x);
0763 template<> bool BOOST_MATH_TR1_DECL isinf<double> NO_MACRO_EXPAND(double x);
0764 template<> bool BOOST_MATH_TR1_DECL isinf<long double> NO_MACRO_EXPAND(long double x);
0765
0766 template<class T> bool isnan NO_MACRO_EXPAND(T)
0767 { static_assert(sizeof(T) == 0, "Undefined behavior; this template should never be instantiated"); return false; }
0768 template<> bool BOOST_MATH_TR1_DECL isnan<float> NO_MACRO_EXPAND(float x);
0769 template<> bool BOOST_MATH_TR1_DECL isnan<double> NO_MACRO_EXPAND(double x);
0770 template<> bool BOOST_MATH_TR1_DECL isnan<long double> NO_MACRO_EXPAND(long double x);
0771
0772 template<class T> bool isnormal NO_MACRO_EXPAND(T)
0773 { static_assert(sizeof(T) == 0, "Undefined behavior; this template should never be instantiated"); return false; }
0774 template<> bool BOOST_MATH_TR1_DECL isnormal<float> NO_MACRO_EXPAND(float x);
0775 template<> bool BOOST_MATH_TR1_DECL isnormal<double> NO_MACRO_EXPAND(double x);
0776 template<> bool BOOST_MATH_TR1_DECL isnormal<long double> NO_MACRO_EXPAND(long double x);
0777
0778 #undef NO_MACRO_EXPAND
0779
0780
0781 inline float assoc_laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, float x)
0782 { return boost::math::tr1::boost_assoc_laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(n, m, x); }
0783 inline double assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, double x)
0784 { return boost::math::tr1::boost_assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(n, m, x); }
0785 inline long double assoc_laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, long double x)
0786 { return boost::math::tr1::boost_assoc_laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(n, m, x); }
0787 inline float assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, float x)
0788 { return boost::math::tr1::assoc_laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(n, m, x); }
0789 inline long double assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, long double x)
0790 { return boost::math::tr1::assoc_laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(n, m, x); }
0791 template <class T>
0792 inline typename tools::promote_args<T>::type assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, unsigned m, T x)
0793 { return boost::math::tr1::assoc_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(n, m, static_cast<typename tools::promote_args<T>::type>(x)); }
0794
0795
0796 inline float assoc_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, float x)
0797 { return boost::math::tr1::boost_assoc_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, x); }
0798 inline double assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, double x)
0799 { return boost::math::tr1::boost_assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, x); }
0800 inline long double assoc_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, long double x)
0801 { return boost::math::tr1::boost_assoc_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, x); }
0802 inline float assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, float x)
0803 { return boost::math::tr1::assoc_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, x); }
0804 inline long double assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, long double x)
0805 { return boost::math::tr1::assoc_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, x); }
0806 template <class T>
0807 inline typename tools::promote_args<T>::type assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, T x)
0808 { return boost::math::tr1::assoc_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, static_cast<typename tools::promote_args<T>::type>(x)); }
0809
0810
0811 inline float betaf BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0812 { return boost::math::tr1::boost_betaf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0813 inline double beta BOOST_PREVENT_MACRO_SUBSTITUTION(double x, double y)
0814 { return boost::math::tr1::boost_beta BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0815 inline long double betal BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0816 { return boost::math::tr1::boost_betal BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0817 inline float beta BOOST_PREVENT_MACRO_SUBSTITUTION(float x, float y)
0818 { return boost::math::tr1::betaf BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0819 inline long double beta BOOST_PREVENT_MACRO_SUBSTITUTION(long double x, long double y)
0820 { return boost::math::tr1::betal BOOST_PREVENT_MACRO_SUBSTITUTION(x, y); }
0821 template <class T1, class T2>
0822 inline typename tools::promote_args<T1, T2>::type beta BOOST_PREVENT_MACRO_SUBSTITUTION(T2 x, T1 y)
0823 { return boost::math::tr1::beta BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(x), static_cast<typename tools::promote_args<T1, T2>::type>(y)); }
0824
0825
0826 inline float comp_ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(float k)
0827 { return boost::math::tr1::boost_comp_ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(k); }
0828 inline double comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(double k)
0829 { return boost::math::tr1::boost_comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(k); }
0830 inline long double comp_ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k)
0831 { return boost::math::tr1::boost_comp_ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(k); }
0832 inline float comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(float k)
0833 { return boost::math::tr1::comp_ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(k); }
0834 inline long double comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(long double k)
0835 { return boost::math::tr1::comp_ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(k); }
0836 template <class T>
0837 inline typename tools::promote_args<T>::type comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(T k)
0838 { return boost::math::tr1::comp_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(k)); }
0839
0840
0841 inline float comp_ellint_2f(float k)
0842 { return boost::math::tr1::boost_comp_ellint_2f(k); }
0843 inline double comp_ellint_2(double k)
0844 { return boost::math::tr1::boost_comp_ellint_2(k); }
0845 inline long double comp_ellint_2l(long double k)
0846 { return boost::math::tr1::boost_comp_ellint_2l(k); }
0847 inline float comp_ellint_2(float k)
0848 { return boost::math::tr1::comp_ellint_2f(k); }
0849 inline long double comp_ellint_2(long double k)
0850 { return boost::math::tr1::comp_ellint_2l(k); }
0851 template <class T>
0852 inline typename tools::promote_args<T>::type comp_ellint_2(T k)
0853 { return boost::math::tr1::comp_ellint_2(static_cast<typename tools::promote_args<T>::type> BOOST_PREVENT_MACRO_SUBSTITUTION(k)); }
0854
0855
0856 inline float comp_ellint_3f(float k, float nu)
0857 { return boost::math::tr1::boost_comp_ellint_3f(k, nu); }
0858 inline double comp_ellint_3(double k, double nu)
0859 { return boost::math::tr1::boost_comp_ellint_3(k, nu); }
0860 inline long double comp_ellint_3l(long double k, long double nu)
0861 { return boost::math::tr1::boost_comp_ellint_3l(k, nu); }
0862 inline float comp_ellint_3(float k, float nu)
0863 { return boost::math::tr1::comp_ellint_3f(k, nu); }
0864 inline long double comp_ellint_3(long double k, long double nu)
0865 { return boost::math::tr1::comp_ellint_3l(k, nu); }
0866 template <class T1, class T2>
0867 inline typename tools::promote_args<T1, T2>::type comp_ellint_3(T1 k, T2 nu)
0868 { return boost::math::tr1::comp_ellint_3(static_cast<typename tools::promote_args<T1, T2>::type> BOOST_PREVENT_MACRO_SUBSTITUTION(k), static_cast<typename tools::promote_args<T1, T2>::type> BOOST_PREVENT_MACRO_SUBSTITUTION(nu)); }
0869
0870 #if 0
0871
0872 double conf_hyperg BOOST_PREVENT_MACRO_SUBSTITUTION(double a, double c, double x);
0873 float conf_hypergf BOOST_PREVENT_MACRO_SUBSTITUTION(float a, float c, float x);
0874 long double conf_hypergl BOOST_PREVENT_MACRO_SUBSTITUTION(long double a, long double c, long double x);
0875 #endif
0876
0877
0878 inline float cyl_bessel_if BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0879 { return boost::math::tr1::boost_cyl_bessel_if BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0880 inline double cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x)
0881 { return boost::math::tr1::boost_cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0882 inline long double cyl_bessel_il BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0883 { return boost::math::tr1::boost_cyl_bessel_il BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0884 inline float cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0885 { return boost::math::tr1::cyl_bessel_if BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0886 inline long double cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0887 { return boost::math::tr1::cyl_bessel_il BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0888 template <class T1, class T2>
0889 inline typename tools::promote_args<T1, T2>::type cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(T1 nu, T2 x)
0890 { return boost::math::tr1::cyl_bessel_i BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(nu), static_cast<typename tools::promote_args<T1, T2>::type>(x)); }
0891
0892
0893 inline float cyl_bessel_jf BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0894 { return boost::math::tr1::boost_cyl_bessel_jf BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0895 inline double cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x)
0896 { return boost::math::tr1::boost_cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0897 inline long double cyl_bessel_jl BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0898 { return boost::math::tr1::boost_cyl_bessel_jl BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0899 inline float cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0900 { return boost::math::tr1::cyl_bessel_jf BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0901 inline long double cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0902 { return boost::math::tr1::cyl_bessel_jl BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0903 template <class T1, class T2>
0904 inline typename tools::promote_args<T1, T2>::type cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(T1 nu, T2 x)
0905 { return boost::math::tr1::cyl_bessel_j BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(nu), static_cast<typename tools::promote_args<T1, T2>::type>(x)); }
0906
0907
0908 inline float cyl_bessel_kf BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0909 { return boost::math::tr1::boost_cyl_bessel_kf BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0910 inline double cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x)
0911 { return boost::math::tr1::boost_cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0912 inline long double cyl_bessel_kl BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0913 { return boost::math::tr1::boost_cyl_bessel_kl BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0914 inline float cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0915 { return boost::math::tr1::cyl_bessel_kf BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0916 inline long double cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0917 { return boost::math::tr1::cyl_bessel_kl BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0918 template <class T1, class T2>
0919 inline typename tools::promote_args<T1, T2>::type cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(T1 nu, T2 x)
0920 { return boost::math::tr1::cyl_bessel_k BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type> BOOST_PREVENT_MACRO_SUBSTITUTION(nu), static_cast<typename tools::promote_args<T1, T2>::type>(x)); }
0921
0922
0923
0924 inline float cyl_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0925 { return boost::math::tr1::boost_cyl_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0926 inline double cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(double nu, double x)
0927 { return boost::math::tr1::boost_cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0928 inline long double cyl_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0929 { return boost::math::tr1::boost_cyl_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0930 inline float cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(float nu, float x)
0931 { return boost::math::tr1::cyl_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0932 inline long double cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(long double nu, long double x)
0933 { return boost::math::tr1::cyl_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(nu, x); }
0934 template <class T1, class T2>
0935 inline typename tools::promote_args<T1, T2>::type cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(T1 nu, T2 x)
0936 { return boost::math::tr1::cyl_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(nu), static_cast<typename tools::promote_args<T1, T2>::type>(x)); }
0937
0938
0939 inline float ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float phi)
0940 { return boost::math::tr1::boost_ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0941 inline double ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double phi)
0942 { return boost::math::tr1::boost_ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0943 inline long double ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double phi)
0944 { return boost::math::tr1::boost_ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0945 inline float ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float phi)
0946 { return boost::math::tr1::ellint_1f BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0947 inline long double ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double phi)
0948 { return boost::math::tr1::ellint_1l BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0949 template <class T1, class T2>
0950 inline typename tools::promote_args<T1, T2>::type ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(T1 k, T2 phi)
0951 { return boost::math::tr1::ellint_1 BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(k), static_cast<typename tools::promote_args<T1, T2>::type>(phi)); }
0952
0953
0954 inline float ellint_2f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float phi)
0955 { return boost::math::tr1::boost_ellint_2f BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0956 inline double ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double phi)
0957 { return boost::math::tr1::boost_ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0958 inline long double ellint_2l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double phi)
0959 { return boost::math::tr1::boost_ellint_2l BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0960 inline float ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float phi)
0961 { return boost::math::tr1::ellint_2f BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0962 inline long double ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double phi)
0963 { return boost::math::tr1::ellint_2l BOOST_PREVENT_MACRO_SUBSTITUTION(k, phi); }
0964 template <class T1, class T2>
0965 inline typename tools::promote_args<T1, T2>::type ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(T1 k, T2 phi)
0966 { return boost::math::tr1::ellint_2 BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2>::type>(k), static_cast<typename tools::promote_args<T1, T2>::type>(phi)); }
0967
0968
0969 inline float ellint_3f BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float nu, float phi)
0970 { return boost::math::tr1::boost_ellint_3f BOOST_PREVENT_MACRO_SUBSTITUTION(k, nu, phi); }
0971 inline double ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(double k, double nu, double phi)
0972 { return boost::math::tr1::boost_ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(k, nu, phi); }
0973 inline long double ellint_3l BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double nu, long double phi)
0974 { return boost::math::tr1::boost_ellint_3l BOOST_PREVENT_MACRO_SUBSTITUTION(k, nu, phi); }
0975 inline float ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(float k, float nu, float phi)
0976 { return boost::math::tr1::ellint_3f BOOST_PREVENT_MACRO_SUBSTITUTION(k, nu, phi); }
0977 inline long double ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(long double k, long double nu, long double phi)
0978 { return boost::math::tr1::ellint_3l BOOST_PREVENT_MACRO_SUBSTITUTION(k, nu, phi); }
0979 template <class T1, class T2, class T3>
0980 inline typename tools::promote_args<T1, T2, T3>::type ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(T1 k, T2 nu, T3 phi)
0981 { return boost::math::tr1::ellint_3 BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T1, T2, T3>::type>(k), static_cast<typename tools::promote_args<T1, T2, T3>::type>(nu), static_cast<typename tools::promote_args<T1, T2, T3>::type>(phi)); }
0982
0983
0984 inline float expintf BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0985 { return boost::math::tr1::boost_expintf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0986 inline double expint BOOST_PREVENT_MACRO_SUBSTITUTION(double x)
0987 { return boost::math::tr1::boost_expint BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0988 inline long double expintl BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0989 { return boost::math::tr1::boost_expintl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0990 inline float expint BOOST_PREVENT_MACRO_SUBSTITUTION(float x)
0991 { return boost::math::tr1::expintf BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0992 inline long double expint BOOST_PREVENT_MACRO_SUBSTITUTION(long double x)
0993 { return boost::math::tr1::expintl BOOST_PREVENT_MACRO_SUBSTITUTION(x); }
0994 template <class T>
0995 inline typename tools::promote_args<T>::type expint BOOST_PREVENT_MACRO_SUBSTITUTION(T x)
0996 { return boost::math::tr1::expint BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(x)); }
0997
0998
0999 inline float hermitef BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1000 { return boost::math::tr1::boost_hermitef BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1001 inline double hermite BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x)
1002 { return boost::math::tr1::boost_hermite BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1003 inline long double hermitel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1004 { return boost::math::tr1::boost_hermitel BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1005 inline float hermite BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1006 { return boost::math::tr1::hermitef BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1007 inline long double hermite BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1008 { return boost::math::tr1::hermitel BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1009 template <class T>
1010 inline typename tools::promote_args<T>::type hermite BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, T x)
1011 { return boost::math::tr1::hermite BOOST_PREVENT_MACRO_SUBSTITUTION(n, static_cast<typename tools::promote_args<T>::type>(x)); }
1012
1013 #if 0
1014
1015 double hyperg BOOST_PREVENT_MACRO_SUBSTITUTION(double a, double b, double c, double x);
1016 float hypergf BOOST_PREVENT_MACRO_SUBSTITUTION(float a, float b, float c, float x);
1017 long double hypergl BOOST_PREVENT_MACRO_SUBSTITUTION(long double a, long double b, long double c,
1018 long double x);
1019 #endif
1020
1021
1022 inline float laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1023 { return boost::math::tr1::boost_laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1024 inline double laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x)
1025 { return boost::math::tr1::boost_laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1026 inline long double laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1027 { return boost::math::tr1::boost_laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1028 inline float laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1029 { return boost::math::tr1::laguerref BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1030 inline long double laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1031 { return boost::math::tr1::laguerrel BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1032 template <class T>
1033 inline typename tools::promote_args<T>::type laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, T x)
1034 { return boost::math::tr1::laguerre BOOST_PREVENT_MACRO_SUBSTITUTION(n, static_cast<typename tools::promote_args<T>::type>(x)); }
1035
1036
1037 inline float legendref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, float x)
1038 { return boost::math::tr1::boost_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(l, x); }
1039 inline double legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, double x)
1040 { return boost::math::tr1::boost_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(l, x); }
1041 inline long double legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, long double x)
1042 { return boost::math::tr1::boost_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(l, x); }
1043 inline float legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, float x)
1044 { return boost::math::tr1::legendref BOOST_PREVENT_MACRO_SUBSTITUTION(l, x); }
1045 inline long double legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, long double x)
1046 { return boost::math::tr1::legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(l, x); }
1047 template <class T>
1048 inline typename tools::promote_args<T>::type legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, T x)
1049 { return boost::math::tr1::legendre BOOST_PREVENT_MACRO_SUBSTITUTION(l, static_cast<typename tools::promote_args<T>::type>(x)); }
1050
1051
1052 inline float riemann_zetaf BOOST_PREVENT_MACRO_SUBSTITUTION(float z)
1053 { return boost::math::tr1::boost_riemann_zetaf BOOST_PREVENT_MACRO_SUBSTITUTION(z); }
1054 inline double riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(double z)
1055 { return boost::math::tr1::boost_riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(z); }
1056 inline long double riemann_zetal BOOST_PREVENT_MACRO_SUBSTITUTION(long double z)
1057 { return boost::math::tr1::boost_riemann_zetal BOOST_PREVENT_MACRO_SUBSTITUTION(z); }
1058 inline float riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(float z)
1059 { return boost::math::tr1::riemann_zetaf BOOST_PREVENT_MACRO_SUBSTITUTION(z); }
1060 inline long double riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(long double z)
1061 { return boost::math::tr1::riemann_zetal BOOST_PREVENT_MACRO_SUBSTITUTION(z); }
1062 template <class T>
1063 inline typename tools::promote_args<T>::type riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(T z)
1064 { return boost::math::tr1::riemann_zeta BOOST_PREVENT_MACRO_SUBSTITUTION(static_cast<typename tools::promote_args<T>::type>(z)); }
1065
1066
1067 inline float sph_besself BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1068 { return boost::math::tr1::boost_sph_besself BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1069 inline double sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x)
1070 { return boost::math::tr1::boost_sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1071 inline long double sph_bessell BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1072 { return boost::math::tr1::boost_sph_bessell BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1073 inline float sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1074 { return boost::math::tr1::sph_besself BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1075 inline long double sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1076 { return boost::math::tr1::sph_bessell BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1077 template <class T>
1078 inline typename tools::promote_args<T>::type sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, T x)
1079 { return boost::math::tr1::sph_bessel BOOST_PREVENT_MACRO_SUBSTITUTION(n, static_cast<typename tools::promote_args<T>::type>(x)); }
1080
1081
1082 inline float sph_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, float theta)
1083 { return boost::math::tr1::boost_sph_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, theta); }
1084 inline double sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, double theta)
1085 { return boost::math::tr1::boost_sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, theta); }
1086 inline long double sph_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, long double theta)
1087 { return boost::math::tr1::boost_sph_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, theta); }
1088 inline float sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, float theta)
1089 { return boost::math::tr1::sph_legendref BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, theta); }
1090 inline long double sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, long double theta)
1091 { return boost::math::tr1::sph_legendrel BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, theta); }
1092 template <class T>
1093 inline typename tools::promote_args<T>::type sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned l, unsigned m, T theta)
1094 { return boost::math::tr1::sph_legendre BOOST_PREVENT_MACRO_SUBSTITUTION(l, m, static_cast<typename tools::promote_args<T>::type>(theta)); }
1095
1096
1097
1098 inline float sph_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1099 { return boost::math::tr1::boost_sph_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1100 inline double sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, double x)
1101 { return boost::math::tr1::boost_sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1102 inline long double sph_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1103 { return boost::math::tr1::boost_sph_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1104 inline float sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, float x)
1105 { return boost::math::tr1::sph_neumannf BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1106 inline long double sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, long double x)
1107 { return boost::math::tr1::sph_neumannl BOOST_PREVENT_MACRO_SUBSTITUTION(n, x); }
1108 template <class T>
1109 inline typename tools::promote_args<T>::type sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(unsigned n, T x)
1110 { return boost::math::tr1::sph_neumann BOOST_PREVENT_MACRO_SUBSTITUTION(n, static_cast<typename tools::promote_args<T>::type>(x)); }
1111
1112 }}}
1113
1114 #else
1115
1116 #include <boost/math/tr1_c_macros.ipp>
1117
1118 #endif
1119
1120 #endif
1121