]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // Copyright John Maddock 2006. |
2 | // Copyright Paul A. Bristow 2007, 2010. | |
3 | // Use, modification and distribution are subject to the | |
4 | // Boost Software License, Version 1.0. (See accompanying file | |
5 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
6 | ||
7 | #ifndef BOOST_LIBS_MATH_TEST_INSTANTIATE_HPP | |
8 | #define BOOST_LIBS_MATH_TEST_INSTANTIATE_HPP | |
9 | ||
10 | #ifndef BOOST_MATH_ASSERT_UNDEFINED_POLICY | |
11 | # define BOOST_MATH_ASSERT_UNDEFINED_POLICY false | |
12 | #endif | |
13 | ||
14 | #include <boost/math/distributions.hpp> | |
15 | ||
16 | #include <boost/math/special_functions.hpp> | |
17 | #include <boost/math/concepts/distributions.hpp> | |
18 | #include <boost/concept_archetype.hpp> | |
19 | ||
20 | #ifndef BOOST_MATH_INSTANTIATE_MINIMUM | |
21 | ||
22 | typedef boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false> > test_policy; | |
23 | ||
24 | namespace test{ | |
25 | ||
26 | BOOST_MATH_DECLARE_SPECIAL_FUNCTIONS(test_policy) | |
27 | ||
28 | } | |
29 | ||
30 | namespace dist_test{ | |
31 | ||
32 | BOOST_MATH_DECLARE_DISTRIBUTIONS(double, test_policy) | |
33 | ||
34 | } | |
35 | #endif | |
36 | ||
37 | #if !defined(TEST_GROUP_1) && !defined(TEST_GROUP_2) && !defined(TEST_GROUP_3) \ | |
38 | && !defined(TEST_GROUP_4) && !defined(TEST_GROUP_5) && !defined(TEST_GROUP_6) \ | |
39 | && !defined(TEST_GROUP_7) && !defined(TEST_GROUP_8) && !defined(TEST_GROUP_9) | |
40 | # define TEST_GROUP_1 | |
41 | # define TEST_GROUP_2 | |
42 | # define TEST_GROUP_3 | |
43 | # define TEST_GROUP_4 | |
44 | # define TEST_GROUP_5 | |
45 | # define TEST_GROUP_6 | |
46 | # define TEST_GROUP_7 | |
47 | # define TEST_GROUP_8 | |
48 | # define TEST_GROUP_9 | |
49 | #endif | |
50 | ||
51 | template <class RealType> | |
52 | void instantiate(RealType) | |
53 | { | |
54 | using namespace boost; | |
55 | using namespace boost::math; | |
56 | using namespace boost::math::concepts; | |
57 | #ifdef TEST_GROUP_1 | |
58 | function_requires<DistributionConcept<arcsine_distribution<RealType> > >(); | |
59 | function_requires<DistributionConcept<bernoulli_distribution<RealType> > >(); | |
60 | function_requires<DistributionConcept<beta_distribution<RealType> > >(); | |
61 | function_requires<DistributionConcept<binomial_distribution<RealType> > >(); | |
62 | function_requires<DistributionConcept<cauchy_distribution<RealType> > >(); | |
63 | function_requires<DistributionConcept<chi_squared_distribution<RealType> > >(); | |
64 | function_requires<DistributionConcept<exponential_distribution<RealType> > >(); | |
65 | function_requires<DistributionConcept<extreme_value_distribution<RealType> > >(); | |
66 | function_requires<DistributionConcept<fisher_f_distribution<RealType> > >(); | |
67 | function_requires<DistributionConcept<gamma_distribution<RealType> > >(); | |
68 | function_requires<DistributionConcept<geometric_distribution<RealType> > >(); | |
69 | function_requires<DistributionConcept<hypergeometric_distribution<RealType> > >(); | |
70 | function_requires<DistributionConcept<hyperexponential_distribution<RealType> > >(); | |
71 | function_requires<DistributionConcept<inverse_chi_squared_distribution<RealType> > >(); | |
72 | function_requires<DistributionConcept<inverse_gamma_distribution<RealType> > >(); | |
73 | function_requires<DistributionConcept<inverse_gaussian_distribution<RealType> > >(); | |
74 | function_requires<DistributionConcept<laplace_distribution<RealType> > >(); | |
75 | function_requires<DistributionConcept<logistic_distribution<RealType> > >(); | |
76 | function_requires<DistributionConcept<lognormal_distribution<RealType> > >(); | |
77 | function_requires<DistributionConcept<negative_binomial_distribution<RealType> > >(); | |
78 | function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType> > >(); | |
79 | function_requires<DistributionConcept<non_central_beta_distribution<RealType> > >(); | |
80 | function_requires<DistributionConcept<non_central_f_distribution<RealType> > >(); | |
81 | function_requires<DistributionConcept<non_central_t_distribution<RealType> > >(); | |
82 | function_requires<DistributionConcept<normal_distribution<RealType> > >(); | |
83 | function_requires<DistributionConcept<pareto_distribution<RealType> > >(); | |
84 | function_requires<DistributionConcept<poisson_distribution<RealType> > >(); | |
85 | function_requires<DistributionConcept<rayleigh_distribution<RealType> > >(); | |
86 | function_requires<DistributionConcept<students_t_distribution<RealType> > >(); | |
87 | function_requires<DistributionConcept<skew_normal_distribution<RealType> > >(); | |
88 | function_requires<DistributionConcept<triangular_distribution<RealType> > >(); | |
89 | function_requires<DistributionConcept<uniform_distribution<RealType> > >(); | |
90 | function_requires<DistributionConcept<weibull_distribution<RealType> > >(); | |
91 | #endif | |
92 | #ifndef BOOST_MATH_INSTANTIATE_MINIMUM | |
93 | #ifdef TEST_GROUP_2 | |
94 | function_requires<DistributionConcept<arcsine_distribution<RealType> > >(); | |
95 | function_requires<DistributionConcept<bernoulli_distribution<RealType, test_policy> > >(); | |
96 | function_requires<DistributionConcept<beta_distribution<RealType, test_policy> > >(); | |
97 | function_requires<DistributionConcept<binomial_distribution<RealType, test_policy> > >(); | |
98 | function_requires<DistributionConcept<cauchy_distribution<RealType, test_policy> > >(); | |
99 | function_requires<DistributionConcept<chi_squared_distribution<RealType, test_policy> > >(); | |
100 | function_requires<DistributionConcept<exponential_distribution<RealType, test_policy> > >(); | |
101 | function_requires<DistributionConcept<extreme_value_distribution<RealType, test_policy> > >(); | |
102 | function_requires<DistributionConcept<fisher_f_distribution<RealType, test_policy> > >(); | |
103 | function_requires<DistributionConcept<gamma_distribution<RealType, test_policy> > >(); | |
104 | function_requires<DistributionConcept<geometric_distribution<RealType, test_policy> > >(); | |
105 | function_requires<DistributionConcept<hypergeometric_distribution<RealType, test_policy> > >(); | |
106 | function_requires<DistributionConcept<inverse_chi_squared_distribution<RealType, test_policy> > >(); | |
107 | function_requires<DistributionConcept<inverse_gamma_distribution<RealType, test_policy> > >(); | |
108 | function_requires<DistributionConcept<inverse_gaussian_distribution<RealType, test_policy> > >(); | |
109 | function_requires<DistributionConcept<laplace_distribution<RealType, test_policy> > >(); | |
110 | function_requires<DistributionConcept<logistic_distribution<RealType, test_policy> > >(); | |
111 | function_requires<DistributionConcept<lognormal_distribution<RealType, test_policy> > >(); | |
112 | function_requires<DistributionConcept<negative_binomial_distribution<RealType, test_policy> > >(); | |
113 | function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType, test_policy> > >(); | |
114 | function_requires<DistributionConcept<non_central_beta_distribution<RealType, test_policy> > >(); | |
115 | function_requires<DistributionConcept<non_central_f_distribution<RealType, test_policy> > >(); | |
116 | function_requires<DistributionConcept<non_central_t_distribution<RealType, test_policy> > >(); | |
117 | function_requires<DistributionConcept<normal_distribution<RealType, test_policy> > >(); | |
118 | function_requires<DistributionConcept<pareto_distribution<RealType, test_policy> > >(); | |
119 | function_requires<DistributionConcept<poisson_distribution<RealType, test_policy> > >(); | |
120 | function_requires<DistributionConcept<rayleigh_distribution<RealType, test_policy> > >(); | |
121 | function_requires<DistributionConcept<skew_normal_distribution<RealType, test_policy> > >(); | |
122 | function_requires<DistributionConcept<students_t_distribution<RealType, test_policy> > >(); | |
123 | function_requires<DistributionConcept<triangular_distribution<RealType, test_policy> > >(); | |
124 | function_requires<DistributionConcept<uniform_distribution<RealType, test_policy> > >(); | |
125 | function_requires<DistributionConcept<weibull_distribution<RealType, test_policy> > >(); | |
126 | #endif | |
127 | #ifdef TEST_GROUP_3 | |
128 | function_requires<DistributionConcept<dist_test::arcsine > >(); | |
129 | function_requires<DistributionConcept<dist_test::bernoulli > >(); | |
130 | function_requires<DistributionConcept<dist_test::beta > >(); | |
131 | function_requires<DistributionConcept<dist_test::binomial > >(); | |
132 | function_requires<DistributionConcept<dist_test::cauchy > >(); | |
133 | function_requires<DistributionConcept<dist_test::chi_squared > >(); | |
134 | function_requires<DistributionConcept<dist_test::exponential > >(); | |
135 | function_requires<DistributionConcept<dist_test::extreme_value > >(); | |
136 | function_requires<DistributionConcept<dist_test::fisher_f > >(); | |
137 | function_requires<DistributionConcept<dist_test::gamma > >(); | |
138 | function_requires<DistributionConcept<dist_test::geometric > >(); | |
139 | function_requires<DistributionConcept<dist_test::hypergeometric > >(); | |
140 | function_requires<DistributionConcept<dist_test::inverse_chi_squared > >(); | |
141 | function_requires<DistributionConcept<dist_test::inverse_gamma > >(); | |
142 | function_requires<DistributionConcept<dist_test::inverse_gaussian > >(); | |
143 | function_requires<DistributionConcept<dist_test::laplace > >(); | |
144 | function_requires<DistributionConcept<dist_test::logistic > >(); | |
145 | function_requires<DistributionConcept<dist_test::lognormal > >(); | |
146 | function_requires<DistributionConcept<dist_test::negative_binomial > >(); | |
147 | function_requires<DistributionConcept<dist_test::non_central_chi_squared > >(); | |
148 | function_requires<DistributionConcept<dist_test::non_central_beta > >(); | |
149 | function_requires<DistributionConcept<dist_test::non_central_f > >(); | |
150 | function_requires<DistributionConcept<dist_test::non_central_t > >(); | |
151 | function_requires<DistributionConcept<dist_test::normal > >(); | |
152 | function_requires<DistributionConcept<dist_test::pareto > >(); | |
153 | function_requires<DistributionConcept<dist_test::poisson > >(); | |
154 | function_requires<DistributionConcept<dist_test::rayleigh > >(); | |
155 | function_requires<DistributionConcept<dist_test::students_t > >(); | |
156 | function_requires<DistributionConcept<dist_test::triangular > >(); | |
157 | function_requires<DistributionConcept<dist_test::uniform > >(); | |
158 | function_requires<DistributionConcept<dist_test::weibull > >(); | |
159 | function_requires<DistributionConcept<dist_test::hypergeometric > >(); | |
160 | #endif | |
161 | #endif | |
162 | int i; | |
163 | RealType v1(0.5), v2(0.5), v3(0.5); | |
164 | boost::detail::dummy_constructor dc; | |
165 | boost::output_iterator_archetype<RealType> oi(dc); | |
166 | #ifdef TEST_GROUP_4 | |
167 | boost::math::tgamma(v1); | |
168 | boost::math::tgamma1pm1(v1); | |
169 | boost::math::lgamma(v1); | |
170 | boost::math::lgamma(v1, &i); | |
171 | boost::math::digamma(v1); | |
172 | boost::math::trigamma(v1); | |
173 | boost::math::polygamma(i, v1); | |
174 | boost::math::tgamma_ratio(v1, v2); | |
175 | boost::math::tgamma_delta_ratio(v1, v2); | |
176 | boost::math::factorial<RealType>(i); | |
177 | boost::math::unchecked_factorial<RealType>(i); | |
178 | i = boost::math::max_factorial<RealType>::value; | |
179 | boost::math::double_factorial<RealType>(i); | |
180 | boost::math::rising_factorial(v1, i); | |
181 | boost::math::falling_factorial(v1, i); | |
182 | boost::math::tgamma(v1, v2); | |
183 | boost::math::tgamma_lower(v1, v2); | |
184 | boost::math::gamma_p(v1, v2); | |
185 | boost::math::gamma_q(v1, v2); | |
186 | boost::math::gamma_p_inv(v1, v2); | |
187 | boost::math::gamma_q_inv(v1, v2); | |
188 | boost::math::gamma_p_inva(v1, v2); | |
189 | boost::math::gamma_q_inva(v1, v2); | |
190 | boost::math::erf(v1); | |
191 | boost::math::erfc(v1); | |
192 | boost::math::erf_inv(v1); | |
193 | boost::math::erfc_inv(v1); | |
194 | boost::math::beta(v1, v2); | |
195 | boost::math::beta(v1, v2, v3); | |
196 | boost::math::betac(v1, v2, v3); | |
197 | boost::math::ibeta(v1, v2, v3); | |
198 | boost::math::ibetac(v1, v2, v3); | |
199 | boost::math::ibeta_inv(v1, v2, v3); | |
200 | boost::math::ibetac_inv(v1, v2, v3); | |
201 | boost::math::ibeta_inva(v1, v2, v3); | |
202 | boost::math::ibetac_inva(v1, v2, v3); | |
203 | boost::math::ibeta_invb(v1, v2, v3); | |
204 | boost::math::ibetac_invb(v1, v2, v3); | |
205 | boost::math::gamma_p_derivative(v2, v3); | |
206 | boost::math::ibeta_derivative(v1, v2, v3); | |
207 | boost::math::binomial_coefficient<RealType>(i, i); | |
208 | (boost::math::fpclassify)(v1); | |
209 | (boost::math::isfinite)(v1); | |
210 | (boost::math::isnormal)(v1); | |
211 | (boost::math::isnan)(v1); | |
212 | (boost::math::isinf)(v1); | |
213 | (boost::math::signbit)(v1); | |
214 | (boost::math::copysign)(v1, v2); | |
215 | (boost::math::changesign)(v1); | |
216 | (boost::math::sign)(v1); | |
217 | boost::math::log1p(v1); | |
218 | boost::math::expm1(v1); | |
219 | boost::math::cbrt(v1); | |
220 | boost::math::sqrt1pm1(v1); | |
221 | boost::math::powm1(v1, v2); | |
222 | boost::math::legendre_p(1, v1); | |
223 | boost::math::legendre_p(1, 0, v1); | |
224 | boost::math::legendre_q(1, v1); | |
225 | boost::math::legendre_next(2, v1, v2, v3); | |
226 | boost::math::legendre_next(2, 2, v1, v2, v3); | |
227 | boost::math::laguerre(1, v1); | |
228 | boost::math::laguerre(2, 1, v1); | |
229 | boost::math::laguerre(2u, 1u, v1); | |
230 | boost::math::laguerre_next(2, v1, v2, v3); | |
231 | boost::math::laguerre_next(2, 1, v1, v2, v3); | |
232 | boost::math::hermite(1, v1); | |
233 | boost::math::hermite_next(2, v1, v2, v3); | |
234 | boost::math::spherical_harmonic_r(2, 1, v1, v2); | |
235 | boost::math::spherical_harmonic_i(2, 1, v1, v2); | |
236 | boost::math::ellint_1(v1); | |
237 | boost::math::ellint_1(v1, v2); | |
238 | boost::math::ellint_2(v1); | |
239 | boost::math::ellint_2(v1, v2); | |
240 | boost::math::ellint_3(v1, v2); | |
241 | boost::math::ellint_3(v1, v2, v3); | |
242 | boost::math::ellint_d(v1); | |
243 | boost::math::ellint_d(v1, v2); | |
244 | boost::math::jacobi_zeta(v1, v2); | |
245 | boost::math::heuman_lambda(v1, v2); | |
246 | boost::math::ellint_rc(v1, v2); | |
247 | boost::math::ellint_rd(v1, v2, v3); | |
248 | boost::math::ellint_rf(v1, v2, v3); | |
249 | boost::math::ellint_rg(v1, v2, v3); | |
250 | boost::math::ellint_rj(v1, v2, v3, v1); | |
251 | boost::math::jacobi_elliptic(v1, v2, &v1, &v2); | |
252 | boost::math::jacobi_cd(v1, v2); | |
253 | boost::math::jacobi_cn(v1, v2); | |
254 | boost::math::jacobi_cs(v1, v2); | |
255 | boost::math::jacobi_dc(v1, v2); | |
256 | boost::math::jacobi_dn(v1, v2); | |
257 | boost::math::jacobi_ds(v1, v2); | |
258 | boost::math::jacobi_nc(v1, v2); | |
259 | boost::math::jacobi_nd(v1, v2); | |
260 | boost::math::jacobi_ns(v1, v2); | |
261 | boost::math::jacobi_sc(v1, v2); | |
262 | boost::math::jacobi_sd(v1, v2); | |
263 | boost::math::jacobi_sn(v1, v2); | |
264 | boost::math::hypot(v1, v2); | |
265 | boost::math::sinc_pi(v1); | |
266 | boost::math::sinhc_pi(v1); | |
267 | boost::math::asinh(v1); | |
268 | boost::math::acosh(v1); | |
269 | boost::math::atanh(v1); | |
270 | boost::math::sin_pi(v1); | |
271 | boost::math::cos_pi(v1); | |
272 | boost::math::cyl_neumann(v1, v2); | |
273 | boost::math::cyl_neumann(i, v2); | |
274 | boost::math::cyl_bessel_j(v1, v2); | |
275 | boost::math::cyl_bessel_j(i, v2); | |
276 | boost::math::cyl_bessel_i(v1, v2); | |
277 | boost::math::cyl_bessel_i(i, v2); | |
278 | boost::math::cyl_bessel_k(v1, v2); | |
279 | boost::math::cyl_bessel_k(i, v2); | |
280 | boost::math::sph_bessel(i, v2); | |
281 | boost::math::sph_bessel(i, 1); | |
282 | boost::math::sph_neumann(i, v2); | |
283 | boost::math::sph_neumann(i, i); | |
284 | boost::math::cyl_neumann_prime(v1, v2); | |
285 | boost::math::cyl_neumann_prime(i, v2); | |
286 | boost::math::cyl_bessel_j_prime(v1, v2); | |
287 | boost::math::cyl_bessel_j_prime(i, v2); | |
288 | boost::math::cyl_bessel_i_prime(v1, v2); | |
289 | boost::math::cyl_bessel_i_prime(i, v2); | |
290 | boost::math::cyl_bessel_k_prime(v1, v2); | |
291 | boost::math::cyl_bessel_k_prime(i, v2); | |
292 | boost::math::sph_bessel_prime(i, v2); | |
293 | boost::math::sph_bessel_prime(i, 1); | |
294 | boost::math::sph_neumann_prime(i, v2); | |
295 | boost::math::sph_neumann_prime(i, i); | |
296 | boost::math::cyl_bessel_j_zero(v1, i); | |
297 | boost::math::cyl_bessel_j_zero(v1, i, i, oi); | |
298 | boost::math::cyl_neumann_zero(v1, i); | |
299 | boost::math::cyl_neumann_zero(v1, i, i, oi); | |
300 | #ifdef TEST_COMPLEX | |
301 | boost::math::cyl_hankel_1(v1, v2); | |
302 | boost::math::cyl_hankel_1(i, v2); | |
303 | boost::math::cyl_hankel_2(v1, v2); | |
304 | boost::math::cyl_hankel_2(i, v2); | |
305 | boost::math::sph_hankel_1(v1, v2); | |
306 | boost::math::sph_hankel_1(i, v2); | |
307 | boost::math::sph_hankel_2(v1, v2); | |
308 | boost::math::sph_hankel_2(i, v2); | |
309 | #endif | |
310 | boost::math::airy_ai(v1); | |
311 | boost::math::airy_bi(v1); | |
312 | boost::math::airy_ai_prime(v1); | |
313 | boost::math::airy_bi_prime(v1); | |
314 | ||
315 | boost::math::airy_ai_zero<RealType>(i); | |
316 | boost::math::airy_bi_zero<RealType>(i); | |
317 | boost::math::airy_ai_zero<RealType>(i, i, oi); | |
318 | boost::math::airy_bi_zero<RealType>(i, i, oi); | |
319 | ||
320 | boost::math::expint(v1); | |
321 | boost::math::expint(i); | |
322 | boost::math::expint(i, v2); | |
323 | boost::math::expint(i, i); | |
324 | boost::math::zeta(v1); | |
325 | boost::math::zeta(i); | |
326 | boost::math::owens_t(v1, v2); | |
327 | boost::math::trunc(v1); | |
328 | boost::math::itrunc(v1); | |
329 | boost::math::ltrunc(v1); | |
330 | boost::math::round(v1); | |
331 | boost::math::iround(v1); | |
332 | boost::math::lround(v1); | |
333 | boost::math::modf(v1, &v1); | |
334 | boost::math::modf(v1, &i); | |
335 | long l; | |
336 | boost::math::modf(v1, &l); | |
337 | #ifdef BOOST_HAS_LONG_LONG | |
338 | boost::math::lltrunc(v1); | |
339 | boost::math::llround(v1); | |
340 | boost::long_long_type ll; | |
341 | boost::math::modf(v1, &ll); | |
342 | #endif | |
343 | boost::math::pow<2>(v1); | |
344 | boost::math::nextafter(v1, v1); | |
345 | boost::math::float_next(v1); | |
346 | boost::math::float_prior(v1); | |
347 | boost::math::float_distance(v1, v1); | |
348 | boost::math::ulp(v1); | |
349 | boost::math::relative_difference(v1, v2); | |
350 | boost::math::epsilon_difference(v1, v2); | |
351 | ||
352 | boost::math::unchecked_bernoulli_b2n<RealType>(i); | |
353 | boost::math::bernoulli_b2n<RealType>(i); | |
354 | boost::math::bernoulli_b2n<RealType>(i, i, &v1); | |
355 | boost::math::tangent_t2n<RealType>(i); | |
356 | boost::math::tangent_t2n<RealType>(i, i, &v1); | |
357 | ||
358 | #endif | |
359 | #ifdef TEST_GROUP_9 | |
360 | // | |
361 | // Over again, but arguments may be expression templates: | |
362 | // | |
363 | boost::math::tgamma(v1 + 0); | |
364 | boost::math::tgamma1pm1(v1 + 0); | |
365 | boost::math::lgamma(v1 * 1); | |
366 | boost::math::lgamma(v1 * 1, &i); | |
367 | boost::math::digamma(v1 * 1); | |
368 | boost::math::trigamma(v1 * 1); | |
369 | boost::math::polygamma(i, v1 * 1); | |
370 | boost::math::tgamma_ratio(v1 * 1, v2 + 0); | |
371 | boost::math::tgamma_delta_ratio(v1 * 1, v2 + 0); | |
372 | boost::math::factorial<RealType>(i); | |
373 | boost::math::unchecked_factorial<RealType>(i); | |
374 | i = boost::math::max_factorial<RealType>::value; | |
375 | boost::math::double_factorial<RealType>(i); | |
376 | boost::math::rising_factorial(v1 * 1, i); | |
377 | boost::math::falling_factorial(v1 * 1, i); | |
378 | boost::math::tgamma(v1 * 1, v2 + 0); | |
379 | boost::math::tgamma_lower(v1 * 1, v2 - 0); | |
380 | boost::math::gamma_p(v1 * 1, v2 + 0); | |
381 | boost::math::gamma_q(v1 * 1, v2 + 0); | |
382 | boost::math::gamma_p_inv(v1 * 1, v2 + 0); | |
383 | boost::math::gamma_q_inv(v1 * 1, v2 + 0); | |
384 | boost::math::gamma_p_inva(v1 * 1, v2 + 0); | |
385 | boost::math::gamma_q_inva(v1 * 1, v2 + 0); | |
386 | boost::math::erf(v1 * 1); | |
387 | boost::math::erfc(v1 * 1); | |
388 | boost::math::erf_inv(v1 * 1); | |
389 | boost::math::erfc_inv(v1 * 1); | |
390 | boost::math::beta(v1 * 1, v2 + 0); | |
391 | boost::math::beta(v1 * 1, v2 + 0, v3 / 1); | |
392 | boost::math::betac(v1 * 1, v2 + 0, v3 / 1); | |
393 | boost::math::ibeta(v1 * 1, v2 + 0, v3 / 1); | |
394 | boost::math::ibetac(v1 * 1, v2 + 0, v3 / 1); | |
395 | boost::math::ibeta_inv(v1 * 1, v2 + 0, v3 / 1); | |
396 | boost::math::ibetac_inv(v1 * 1, v2 + 0, v3 / 1); | |
397 | boost::math::ibeta_inva(v1 * 1, v2 + 0, v3 / 1); | |
398 | boost::math::ibetac_inva(v1 * 1, v2 + 0, v3 / 1); | |
399 | boost::math::ibeta_invb(v1 * 1, v2 + 0, v3 / 1); | |
400 | boost::math::ibetac_invb(v1 * 1, v2 + 0, v3 / 1); | |
401 | boost::math::gamma_p_derivative(v2 * 1, v3 + 0); | |
402 | boost::math::ibeta_derivative(v1 * 1, v2 + 0, v3 / 1); | |
403 | (boost::math::fpclassify)(v1 * 1); | |
404 | (boost::math::isfinite)(v1 * 1); | |
405 | (boost::math::isnormal)(v1 * 1); | |
406 | (boost::math::isnan)(v1 * 1); | |
407 | (boost::math::isinf)(v1 * 1); | |
408 | (boost::math::signbit)(v1 * 1); | |
409 | (boost::math::copysign)(v1 * 1, v2 + 0); | |
410 | (boost::math::changesign)(v1 * 1); | |
411 | (boost::math::sign)(v1 * 1); | |
412 | boost::math::log1p(v1 * 1); | |
413 | boost::math::expm1(v1 * 1); | |
414 | boost::math::cbrt(v1 * 1); | |
415 | boost::math::sqrt1pm1(v1 * 1); | |
416 | boost::math::powm1(v1 * 1, v2 + 0); | |
417 | boost::math::legendre_p(1, v1 * 1); | |
418 | boost::math::legendre_p(1, 0, v1 * 1); | |
419 | boost::math::legendre_q(1, v1 * 1); | |
420 | boost::math::legendre_next(2, v1 * 1, v2 + 0, v3 / 1); | |
421 | boost::math::legendre_next(2, 2, v1 * 1, v2 + 0, v3 / 1); | |
422 | boost::math::laguerre(1, v1 * 1); | |
423 | boost::math::laguerre(2, 1, v1 * 1); | |
424 | boost::math::laguerre(2u, 1u, v1 * 1); | |
425 | boost::math::laguerre_next(2, v1 * 1, v2 + 0, v3 / 1); | |
426 | boost::math::laguerre_next(2, 1, v1 * 1, v2 + 0, v3 / 1); | |
427 | boost::math::hermite(1, v1 * 1); | |
428 | boost::math::hermite_next(2, v1 * 1, v2 + 0, v3 / 1); | |
429 | boost::math::spherical_harmonic_r(2, 1, v1 * 1, v2 + 0); | |
430 | boost::math::spherical_harmonic_i(2, 1, v1 * 1, v2 + 0); | |
431 | boost::math::ellint_1(v1 * 1); | |
432 | boost::math::ellint_1(v1 * 1, v2 + 0); | |
433 | boost::math::ellint_2(v1 * 1); | |
434 | boost::math::ellint_2(v1 * 1, v2 + 0); | |
435 | boost::math::ellint_3(v1 * 1, v2 + 0); | |
436 | boost::math::ellint_3(v1 * 1, v2 + 0, v3 / 1); | |
437 | boost::math::ellint_rc(v1 * 1, v2 + 0); | |
438 | boost::math::ellint_rd(v1 * 1, v2 + 0, v3 / 1); | |
439 | boost::math::ellint_rf(v1 * 1, v2 + 0, v3 / 1); | |
440 | boost::math::ellint_rg(v1 * 1, v2 + 0, v3 / 1); | |
441 | boost::math::ellint_rj(v1 * 1, v2 + 0, v3 / 1, v1 * 1); | |
442 | boost::math::ellint_d(v1 * 1); | |
443 | boost::math::ellint_d(v1 * 1, v2 + 0); | |
444 | boost::math::jacobi_zeta(v1 * 1, v2 + 0); | |
445 | boost::math::heuman_lambda(v1 * 1, v2 + 0); | |
446 | boost::math::jacobi_elliptic(v1 * 1, v2 + 0, &v1, &v2); | |
447 | boost::math::jacobi_cd(v1 * 1, v2 + 0); | |
448 | boost::math::jacobi_cn(v1 * 1, v2 + 0); | |
449 | boost::math::jacobi_cs(v1 * 1, v2 + 0); | |
450 | boost::math::jacobi_dc(v1 * 1, v2 + 0); | |
451 | boost::math::jacobi_dn(v1 * 1, v2 + 0); | |
452 | boost::math::jacobi_ds(v1 * 1, v2 + 0); | |
453 | boost::math::jacobi_nc(v1 * 1, v2 + 0); | |
454 | boost::math::jacobi_nd(v1 * 1, v2 + 0); | |
455 | boost::math::jacobi_ns(v1 * 1, v2 + 0); | |
456 | boost::math::jacobi_sc(v1 * 1, v2 + 0); | |
457 | boost::math::jacobi_sd(v1 * 1, v2 + 0); | |
458 | boost::math::jacobi_sn(v1 * 1, v2 + 0); | |
459 | boost::math::hypot(v1 * 1, v2 + 0); | |
460 | boost::math::sinc_pi(v1 * 1); | |
461 | boost::math::sinhc_pi(v1 * 1); | |
462 | boost::math::asinh(v1 * 1); | |
463 | boost::math::acosh(v1 * 1); | |
464 | boost::math::atanh(v1 * 1); | |
465 | boost::math::sin_pi(v1 * 1); | |
466 | boost::math::cos_pi(v1 * 1); | |
467 | boost::math::cyl_neumann(v1 * 1, v2 + 0); | |
468 | boost::math::cyl_neumann(i, v2 * 1); | |
469 | boost::math::cyl_bessel_j(v1 * 1, v2 + 0); | |
470 | boost::math::cyl_bessel_j(i, v2 * 1); | |
471 | boost::math::cyl_bessel_i(v1 * 1, v2 + 0); | |
472 | boost::math::cyl_bessel_i(i, v2 * 1); | |
473 | boost::math::cyl_bessel_k(v1 * 1, v2 + 0); | |
474 | boost::math::cyl_bessel_k(i, v2 * 1); | |
475 | boost::math::sph_bessel(i, v2 * 1); | |
476 | boost::math::sph_bessel(i, 1); | |
477 | boost::math::sph_neumann(i, v2 * 1); | |
478 | boost::math::sph_neumann(i, i); | |
479 | boost::math::cyl_neumann_prime(v1 * 1, v2 + 0); | |
480 | boost::math::cyl_neumann_prime(i, v2 * 1); | |
481 | boost::math::cyl_bessel_j_prime(v1 * 1, v2 + 0); | |
482 | boost::math::cyl_bessel_j_prime(i, v2 * 1); | |
483 | boost::math::cyl_bessel_i_prime(v1 * 1, v2 + 0); | |
484 | boost::math::cyl_bessel_i_prime(i, v2 * 1); | |
485 | boost::math::cyl_bessel_k_prime(v1 * 1, v2 + 0); | |
486 | boost::math::cyl_bessel_k_prime(i, v2 * 1); | |
487 | boost::math::sph_bessel_prime(i, v2 * 1); | |
488 | boost::math::sph_bessel_prime(i, 1); | |
489 | boost::math::sph_neumann_prime(i, v2 * 1); | |
490 | boost::math::sph_neumann_prime(i, i); | |
491 | boost::math::cyl_bessel_j_zero(v1 * 1, i); | |
492 | boost::math::cyl_bessel_j_zero(v1 * 1, i, i, oi); | |
493 | boost::math::cyl_neumann_zero(v1 * 1, i); | |
494 | boost::math::cyl_neumann_zero(v1 * 1, i, i, oi); | |
495 | #ifdef TEST_COMPLEX | |
496 | boost::math::cyl_hankel_1(v1, v2); | |
497 | boost::math::cyl_hankel_1(i, v2); | |
498 | boost::math::cyl_hankel_2(v1, v2); | |
499 | boost::math::cyl_hankel_2(i, v2); | |
500 | boost::math::sph_hankel_1(v1, v2); | |
501 | boost::math::sph_hankel_1(i, v2); | |
502 | boost::math::sph_hankel_2(v1, v2); | |
503 | boost::math::sph_hankel_2(i, v2); | |
504 | #endif | |
505 | boost::math::airy_ai(v1 * 1); | |
506 | boost::math::airy_bi(v1 * 1); | |
507 | boost::math::airy_ai_prime(v1 * 1); | |
508 | boost::math::airy_bi_prime(v1 * 1); | |
509 | boost::math::expint(v1 * 1); | |
510 | boost::math::expint(i); | |
511 | boost::math::expint(i, v2 * 1); | |
512 | boost::math::expint(i, i); | |
513 | boost::math::zeta(v1 * 1); | |
514 | boost::math::zeta(i); | |
515 | boost::math::owens_t(v1 * 1, v2 + 0); | |
516 | boost::math::trunc(v1 * 1); | |
517 | boost::math::itrunc(v1 * 1); | |
518 | boost::math::ltrunc(v1 * 1); | |
519 | boost::math::round(v1 * 1); | |
520 | boost::math::iround(v1 * 1); | |
521 | boost::math::lround(v1 * 1); | |
522 | //boost::math::modf(v1 * 1, &v1); | |
523 | //boost::math::modf(v1 * 1, &i); | |
524 | //long l; | |
525 | //boost::math::modf(v1 * 1, &l); | |
526 | #ifdef BOOST_HAS_LONG_LONG | |
527 | boost::math::lltrunc(v1 * 1); | |
528 | boost::math::llround(v1 * 1); | |
529 | //boost::long_long_type ll; | |
530 | //boost::math::modf(v1 * 1, &ll); | |
531 | #endif | |
532 | boost::math::pow<2>(v1 * 1); | |
533 | boost::math::nextafter(v1 * 1, v1 + 0); | |
534 | boost::math::float_next(v1 * 1); | |
535 | boost::math::float_prior(v1 * 1); | |
536 | boost::math::float_distance(v1 * 1, v1 * 1); | |
537 | boost::math::ulp(v1 * 1); | |
538 | boost::math::relative_difference(v1 * 1, v2 * 1); | |
539 | boost::math::epsilon_difference(v1 * 1, v2 * 1); | |
540 | #endif | |
541 | #ifndef BOOST_MATH_INSTANTIATE_MINIMUM | |
542 | #ifdef TEST_GROUP_5 | |
543 | // | |
544 | // All over again, with a policy this time: | |
545 | // | |
546 | test_policy pol; | |
547 | boost::math::tgamma(v1, pol); | |
548 | boost::math::tgamma1pm1(v1, pol); | |
549 | boost::math::lgamma(v1, pol); | |
550 | boost::math::lgamma(v1, &i, pol); | |
551 | boost::math::digamma(v1, pol); | |
552 | boost::math::trigamma(v1, pol); | |
553 | boost::math::polygamma(i, v1, pol); | |
554 | boost::math::tgamma_ratio(v1, v2, pol); | |
555 | boost::math::tgamma_delta_ratio(v1, v2, pol); | |
556 | boost::math::factorial<RealType>(i, pol); | |
557 | boost::math::unchecked_factorial<RealType>(i); | |
558 | i = boost::math::max_factorial<RealType>::value; | |
559 | boost::math::double_factorial<RealType>(i, pol); | |
560 | boost::math::rising_factorial(v1, i, pol); | |
561 | boost::math::falling_factorial(v1, i, pol); | |
562 | boost::math::tgamma(v1, v2, pol); | |
563 | boost::math::tgamma_lower(v1, v2, pol); | |
564 | boost::math::gamma_p(v1, v2, pol); | |
565 | boost::math::gamma_q(v1, v2, pol); | |
566 | boost::math::gamma_p_inv(v1, v2, pol); | |
567 | boost::math::gamma_q_inv(v1, v2, pol); | |
568 | boost::math::gamma_p_inva(v1, v2, pol); | |
569 | boost::math::gamma_q_inva(v1, v2, pol); | |
570 | boost::math::erf(v1, pol); | |
571 | boost::math::erfc(v1, pol); | |
572 | boost::math::erf_inv(v1, pol); | |
573 | boost::math::erfc_inv(v1, pol); | |
574 | boost::math::beta(v1, v2, pol); | |
575 | boost::math::beta(v1, v2, v3, pol); | |
576 | boost::math::betac(v1, v2, v3, pol); | |
577 | boost::math::ibeta(v1, v2, v3, pol); | |
578 | boost::math::ibetac(v1, v2, v3, pol); | |
579 | boost::math::ibeta_inv(v1, v2, v3, pol); | |
580 | boost::math::ibetac_inv(v1, v2, v3, pol); | |
581 | boost::math::ibeta_inva(v1, v2, v3, pol); | |
582 | boost::math::ibetac_inva(v1, v2, v3, pol); | |
583 | boost::math::ibeta_invb(v1, v2, v3, pol); | |
584 | boost::math::ibetac_invb(v1, v2, v3, pol); | |
585 | boost::math::gamma_p_derivative(v2, v3, pol); | |
586 | boost::math::ibeta_derivative(v1, v2, v3, pol); | |
587 | boost::math::binomial_coefficient<RealType>(i, i, pol); | |
588 | boost::math::log1p(v1, pol); | |
589 | boost::math::expm1(v1, pol); | |
590 | boost::math::cbrt(v1, pol); | |
591 | boost::math::sqrt1pm1(v1, pol); | |
592 | boost::math::powm1(v1, v2, pol); | |
593 | boost::math::legendre_p(1, v1, pol); | |
594 | boost::math::legendre_p(1, 0, v1, pol); | |
595 | boost::math::legendre_q(1, v1, pol); | |
596 | boost::math::legendre_next(2, v1, v2, v3); | |
597 | boost::math::legendre_next(2, 2, v1, v2, v3); | |
598 | boost::math::laguerre(1, v1, pol); | |
599 | boost::math::laguerre(2, 1, v1, pol); | |
600 | boost::math::laguerre_next(2, v1, v2, v3); | |
601 | boost::math::laguerre_next(2, 1, v1, v2, v3); | |
602 | boost::math::hermite(1, v1, pol); | |
603 | boost::math::hermite_next(2, v1, v2, v3); | |
604 | boost::math::spherical_harmonic_r(2, 1, v1, v2, pol); | |
605 | boost::math::spherical_harmonic_i(2, 1, v1, v2, pol); | |
606 | boost::math::ellint_1(v1, pol); | |
607 | boost::math::ellint_1(v1, v2, pol); | |
608 | boost::math::ellint_2(v1, pol); | |
609 | boost::math::ellint_2(v1, v2, pol); | |
610 | boost::math::ellint_3(v1, v2, pol); | |
611 | boost::math::ellint_3(v1, v2, v3, pol); | |
612 | boost::math::ellint_d(v1, pol); | |
613 | boost::math::ellint_d(v1, v2, pol); | |
614 | boost::math::jacobi_zeta(v1, v2, pol); | |
615 | boost::math::heuman_lambda(v1, v2, pol); | |
616 | boost::math::ellint_rc(v1, v2, pol); | |
617 | boost::math::ellint_rd(v1, v2, v3, pol); | |
618 | boost::math::ellint_rf(v1, v2, v3, pol); | |
619 | boost::math::ellint_rg(v1, v2, v3, pol); | |
620 | boost::math::ellint_rj(v1, v2, v3, v1, pol); | |
621 | boost::math::jacobi_elliptic(v1, v2, &v1, &v2, pol); | |
622 | boost::math::jacobi_cd(v1, v2, pol); | |
623 | boost::math::jacobi_cn(v1, v2, pol); | |
624 | boost::math::jacobi_cs(v1, v2, pol); | |
625 | boost::math::jacobi_dc(v1, v2, pol); | |
626 | boost::math::jacobi_dn(v1, v2, pol); | |
627 | boost::math::jacobi_ds(v1, v2, pol); | |
628 | boost::math::jacobi_nc(v1, v2, pol); | |
629 | boost::math::jacobi_nd(v1, v2, pol); | |
630 | boost::math::jacobi_ns(v1, v2, pol); | |
631 | boost::math::jacobi_sc(v1, v2, pol); | |
632 | boost::math::jacobi_sd(v1, v2, pol); | |
633 | boost::math::jacobi_sn(v1, v2, pol); | |
634 | boost::math::hypot(v1, v2, pol); | |
635 | boost::math::sinc_pi(v1, pol); | |
636 | boost::math::sinhc_pi(v1, pol); | |
637 | boost::math::asinh(v1, pol); | |
638 | boost::math::acosh(v1, pol); | |
639 | boost::math::atanh(v1, pol); | |
640 | boost::math::sin_pi(v1, pol); | |
641 | boost::math::cos_pi(v1, pol); | |
642 | boost::math::cyl_neumann(v1, v2, pol); | |
643 | boost::math::cyl_neumann(i, v2, pol); | |
644 | boost::math::cyl_bessel_j(v1, v2, pol); | |
645 | boost::math::cyl_bessel_j(i, v2, pol); | |
646 | boost::math::cyl_bessel_i(v1, v2, pol); | |
647 | boost::math::cyl_bessel_i(i, v2, pol); | |
648 | boost::math::cyl_bessel_k(v1, v2, pol); | |
649 | boost::math::cyl_bessel_k(i, v2, pol); | |
650 | boost::math::sph_bessel(i, v2, pol); | |
651 | boost::math::sph_bessel(i, 1, pol); | |
652 | boost::math::sph_neumann(i, v2, pol); | |
653 | boost::math::sph_neumann(i, i, pol); | |
654 | boost::math::cyl_neumann_prime(v1, v2, pol); | |
655 | boost::math::cyl_neumann_prime(i, v2, pol); | |
656 | boost::math::cyl_bessel_j_prime(v1, v2, pol); | |
657 | boost::math::cyl_bessel_j_prime(i, v2, pol); | |
658 | boost::math::cyl_bessel_i_prime(v1, v2, pol); | |
659 | boost::math::cyl_bessel_i_prime(i, v2, pol); | |
660 | boost::math::cyl_bessel_k_prime(v1, v2, pol); | |
661 | boost::math::cyl_bessel_k_prime(i, v2, pol); | |
662 | boost::math::sph_bessel_prime(i, v2, pol); | |
663 | boost::math::sph_bessel_prime(i, 1, pol); | |
664 | boost::math::sph_neumann_prime(i, v2, pol); | |
665 | boost::math::sph_neumann_prime(i, i, pol); | |
666 | boost::math::cyl_bessel_j_zero(v1, i, pol); | |
667 | boost::math::cyl_bessel_j_zero(v1, i, i, oi, pol); | |
668 | boost::math::cyl_neumann_zero(v1, i, pol); | |
669 | boost::math::cyl_neumann_zero(v1, i, i, oi, pol); | |
670 | #ifdef TEST_COMPLEX | |
671 | boost::math::cyl_hankel_1(v1, v2, pol); | |
672 | boost::math::cyl_hankel_1(i, v2, pol); | |
673 | boost::math::cyl_hankel_2(v1, v2, pol); | |
674 | boost::math::cyl_hankel_2(i, v2, pol); | |
675 | boost::math::sph_hankel_1(v1, v2, pol); | |
676 | boost::math::sph_hankel_1(i, v2, pol); | |
677 | boost::math::sph_hankel_2(v1, v2, pol); | |
678 | boost::math::sph_hankel_2(i, v2, pol); | |
679 | #endif | |
680 | boost::math::airy_ai(v1, pol); | |
681 | boost::math::airy_bi(v1, pol); | |
682 | boost::math::airy_ai_prime(v1, pol); | |
683 | boost::math::airy_bi_prime(v1, pol); | |
684 | ||
685 | boost::math::airy_ai_zero<RealType>(i, pol); | |
686 | boost::math::airy_bi_zero<RealType>(i, pol); | |
687 | boost::math::airy_ai_zero<RealType>(i, i, oi, pol); | |
688 | boost::math::airy_bi_zero<RealType>(i, i, oi, pol); | |
689 | ||
690 | boost::math::expint(v1, pol); | |
691 | boost::math::expint(i, pol); | |
692 | boost::math::expint(i, v2, pol); | |
693 | boost::math::expint(i, i, pol); | |
694 | boost::math::zeta(v1, pol); | |
695 | boost::math::zeta(i, pol); | |
696 | boost::math::owens_t(v1, v2, pol); | |
697 | // | |
698 | // These next functions are intended to be found via ADL: | |
699 | // | |
700 | BOOST_MATH_STD_USING | |
701 | trunc(v1, pol); | |
702 | itrunc(v1, pol); | |
703 | ltrunc(v1, pol); | |
704 | round(v1, pol); | |
705 | iround(v1, pol); | |
706 | lround(v1, pol); | |
707 | modf(v1, &v1, pol); | |
708 | modf(v1, &i, pol); | |
709 | modf(v1, &l, pol); | |
710 | #ifdef BOOST_HAS_LONG_LONG | |
711 | using boost::math::lltrunc; | |
712 | using boost::math::llround; | |
713 | lltrunc(v1, pol); | |
714 | llround(v1, pol); | |
715 | modf(v1, &ll, pol); | |
716 | #endif | |
717 | boost::math::pow<2>(v1, pol); | |
718 | boost::math::nextafter(v1, v1, pol); | |
719 | boost::math::float_next(v1, pol); | |
720 | boost::math::float_prior(v1, pol); | |
721 | boost::math::float_distance(v1, v1, pol); | |
722 | boost::math::ulp(v1, pol); | |
723 | ||
724 | boost::math::bernoulli_b2n<RealType>(i, pol); | |
725 | boost::math::bernoulli_b2n<RealType>(i, i, &v1, pol); | |
726 | boost::math::tangent_t2n<RealType>(i, pol); | |
727 | boost::math::tangent_t2n<RealType>(i, i, &v1, pol); | |
728 | #endif | |
729 | #ifdef TEST_GROUP_6 | |
730 | // | |
731 | // All over again with the versions in test:: | |
732 | // | |
733 | test::tgamma(v1); | |
734 | test::tgamma1pm1(v1); | |
735 | test::lgamma(v1); | |
736 | test::lgamma(v1, &i); | |
737 | test::digamma(v1); | |
738 | test::trigamma(v1); | |
739 | test::polygamma(i, v1); | |
740 | test::tgamma_ratio(v1, v2); | |
741 | test::tgamma_delta_ratio(v1, v2); | |
742 | test::factorial<RealType>(i); | |
743 | test::unchecked_factorial<RealType>(i); | |
744 | i = test::max_factorial<RealType>::value; | |
745 | test::double_factorial<RealType>(i); | |
746 | test::rising_factorial(v1, i); | |
747 | test::falling_factorial(v1, i); | |
748 | test::tgamma(v1, v2); | |
749 | test::tgamma_lower(v1, v2); | |
750 | test::gamma_p(v1, v2); | |
751 | test::gamma_q(v1, v2); | |
752 | test::gamma_p_inv(v1, v2); | |
753 | test::gamma_q_inv(v1, v2); | |
754 | test::gamma_p_inva(v1, v2); | |
755 | test::gamma_q_inva(v1, v2); | |
756 | test::erf(v1); | |
757 | test::erfc(v1); | |
758 | test::erf_inv(v1); | |
759 | test::erfc_inv(v1); | |
760 | test::beta(v1, v2); | |
761 | test::beta(v1, v2, v3); | |
762 | test::betac(v1, v2, v3); | |
763 | test::ibeta(v1, v2, v3); | |
764 | test::ibetac(v1, v2, v3); | |
765 | test::ibeta_inv(v1, v2, v3); | |
766 | test::ibetac_inv(v1, v2, v3); | |
767 | test::ibeta_inva(v1, v2, v3); | |
768 | test::ibetac_inva(v1, v2, v3); | |
769 | test::ibeta_invb(v1, v2, v3); | |
770 | test::ibetac_invb(v1, v2, v3); | |
771 | test::gamma_p_derivative(v2, v3); | |
772 | test::ibeta_derivative(v1, v2, v3); | |
773 | test::binomial_coefficient<RealType>(i, i); | |
774 | (test::fpclassify)(v1); | |
775 | (test::isfinite)(v1); | |
776 | (test::isnormal)(v1); | |
777 | (test::isnan)(v1); | |
778 | (test::isinf)(v1); | |
779 | (test::signbit)(v1); | |
780 | (test::copysign)(v1, v2); | |
781 | (test::changesign)(v1); | |
782 | (test::sign)(v1); | |
783 | test::log1p(v1); | |
784 | test::expm1(v1); | |
785 | test::cbrt(v1); | |
786 | test::sqrt1pm1(v1); | |
787 | test::powm1(v1, v2); | |
788 | test::legendre_p(1, v1); | |
789 | test::legendre_p(1, 0, v1); | |
790 | test::legendre_q(1, v1); | |
791 | test::legendre_next(2, v1, v2, v3); | |
792 | test::legendre_next(2, 2, v1, v2, v3); | |
793 | test::laguerre(1, v1); | |
794 | test::laguerre(2, 1, v1); | |
795 | test::laguerre_next(2, v1, v2, v3); | |
796 | test::laguerre_next(2, 1, v1, v2, v3); | |
797 | test::hermite(1, v1); | |
798 | test::hermite_next(2, v1, v2, v3); | |
799 | test::spherical_harmonic_r(2, 1, v1, v2); | |
800 | test::spherical_harmonic_i(2, 1, v1, v2); | |
801 | test::ellint_1(v1); | |
802 | test::ellint_1(v1, v2); | |
803 | test::ellint_2(v1); | |
804 | test::ellint_2(v1, v2); | |
805 | test::ellint_3(v1, v2); | |
806 | test::ellint_3(v1, v2, v3); | |
807 | test::ellint_d(v1); | |
808 | test::ellint_d(v1, v2); | |
809 | test::jacobi_zeta(v1, v2); | |
810 | test::heuman_lambda(v1, v2); | |
811 | test::ellint_rc(v1, v2); | |
812 | test::ellint_rd(v1, v2, v3); | |
813 | test::ellint_rf(v1, v2, v3); | |
814 | test::ellint_rg(v1, v2, v3); | |
815 | test::ellint_rj(v1, v2, v3, v1); | |
816 | test::jacobi_elliptic(v1, v2, &v1, &v2); | |
817 | test::jacobi_cd(v1, v2); | |
818 | test::jacobi_cn(v1, v2); | |
819 | test::jacobi_cs(v1, v2); | |
820 | test::jacobi_dc(v1, v2); | |
821 | test::jacobi_dn(v1, v2); | |
822 | test::jacobi_ds(v1, v2); | |
823 | test::jacobi_nc(v1, v2); | |
824 | test::jacobi_nd(v1, v2); | |
825 | test::jacobi_ns(v1, v2); | |
826 | test::jacobi_sc(v1, v2); | |
827 | test::jacobi_sd(v1, v2); | |
828 | test::jacobi_sn(v1, v2); | |
829 | test::hypot(v1, v2); | |
830 | test::sinc_pi(v1); | |
831 | test::sinhc_pi(v1); | |
832 | test::asinh(v1); | |
833 | test::acosh(v1); | |
834 | test::atanh(v1); | |
835 | test::sin_pi(v1); | |
836 | test::cos_pi(v1); | |
837 | test::cyl_neumann(v1, v2); | |
838 | test::cyl_neumann(i, v2); | |
839 | test::cyl_bessel_j(v1, v2); | |
840 | test::cyl_bessel_j(i, v2); | |
841 | test::cyl_bessel_i(v1, v2); | |
842 | test::cyl_bessel_i(i, v2); | |
843 | test::cyl_bessel_k(v1, v2); | |
844 | test::cyl_bessel_k(i, v2); | |
845 | test::sph_bessel(i, v2); | |
846 | test::sph_bessel(i, 1); | |
847 | test::sph_neumann(i, v2); | |
848 | test::sph_neumann(i, i); | |
849 | test::cyl_neumann_prime(v1, v2); | |
850 | test::cyl_neumann_prime(i, v2); | |
851 | test::cyl_bessel_j_prime(v1, v2); | |
852 | test::cyl_bessel_j_prime(i, v2); | |
853 | test::cyl_bessel_i_prime(v1, v2); | |
854 | test::cyl_bessel_i_prime(i, v2); | |
855 | test::cyl_bessel_k_prime(v1, v2); | |
856 | test::cyl_bessel_k_prime(i, v2); | |
857 | test::sph_bessel_prime(i, v2); | |
858 | test::sph_bessel_prime(i, 1); | |
859 | test::sph_neumann_prime(i, v2); | |
860 | test::sph_neumann_prime(i, i); | |
861 | test::cyl_bessel_j_zero(v1, i); | |
862 | test::cyl_bessel_j_zero(v1, i, i, oi); | |
863 | test::cyl_neumann_zero(v1, i); | |
864 | test::cyl_neumann_zero(v1, i, i, oi); | |
865 | #ifdef TEST_COMPLEX | |
866 | test::cyl_hankel_1(v1, v2); | |
867 | test::cyl_hankel_1(i, v2); | |
868 | test::cyl_hankel_2(v1, v2); | |
869 | test::cyl_hankel_2(i, v2); | |
870 | test::sph_hankel_1(v1, v2); | |
871 | test::sph_hankel_1(i, v2); | |
872 | test::sph_hankel_2(v1, v2); | |
873 | test::sph_hankel_2(i, v2); | |
874 | #endif | |
875 | test::airy_ai(i); | |
876 | test::airy_bi(i); | |
877 | test::airy_ai_prime(i); | |
878 | test::airy_bi_prime(i); | |
879 | ||
880 | test::airy_ai_zero<RealType>(i); | |
881 | test::airy_bi_zero<RealType>(i); | |
882 | test::airy_ai_zero<RealType>(i, i, oi); | |
883 | test::airy_bi_zero<RealType>(i, i, oi); | |
884 | ||
885 | test::expint(v1); | |
886 | test::expint(i); | |
887 | test::expint(i, v2); | |
888 | test::expint(i, i); | |
889 | test::zeta(v1); | |
890 | test::zeta(i); | |
891 | test::owens_t(v1, v2); | |
892 | test::trunc(v1); | |
893 | test::itrunc(v1); | |
894 | test::ltrunc(v1); | |
895 | test::round(v1); | |
896 | test::iround(v1); | |
897 | test::lround(v1); | |
898 | test::modf(v1, &v1); | |
899 | test::modf(v1, &i); | |
900 | test::modf(v1, &l); | |
901 | #ifdef BOOST_HAS_LONG_LONG | |
902 | test::lltrunc(v1); | |
903 | test::llround(v1); | |
904 | test::modf(v1, &ll); | |
905 | #endif | |
906 | test::pow<2>(v1); | |
907 | test::nextafter(v1, v1); | |
908 | test::float_next(v1); | |
909 | test::float_prior(v1); | |
910 | test::float_distance(v1, v1); | |
911 | test::ulp(v1); | |
912 | #endif | |
913 | #endif | |
914 | } | |
915 | ||
916 | template <class RealType> | |
917 | void instantiate_mixed(RealType) | |
918 | { | |
919 | using namespace boost; | |
920 | using namespace boost::math; | |
921 | #ifndef BOOST_MATH_INSTANTIATE_MINIMUM | |
922 | int i = 1; | |
923 | long l = 1; | |
924 | short s = 1; | |
925 | float fr = 0.5F; | |
926 | double dr = 0.5; | |
927 | #ifndef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS | |
928 | long double lr = 0.5L; | |
929 | #else | |
930 | double lr = 0.5L; | |
931 | #endif | |
932 | #ifdef TEST_GROUP_7 | |
933 | boost::math::tgamma(i); | |
934 | boost::math::tgamma1pm1(i); | |
935 | boost::math::lgamma(i); | |
936 | boost::math::lgamma(i, &i); | |
937 | boost::math::digamma(i); | |
938 | boost::math::trigamma(i); | |
939 | boost::math::polygamma(i, i); | |
940 | boost::math::tgamma_ratio(i, l); | |
941 | boost::math::tgamma_ratio(fr, lr); | |
942 | boost::math::tgamma_delta_ratio(i, s); | |
943 | boost::math::tgamma_delta_ratio(fr, lr); | |
944 | boost::math::rising_factorial(s, i); | |
945 | boost::math::falling_factorial(s, i); | |
946 | boost::math::tgamma(i, l); | |
947 | boost::math::tgamma(fr, lr); | |
948 | boost::math::tgamma_lower(i, s); | |
949 | boost::math::tgamma_lower(fr, lr); | |
950 | boost::math::gamma_p(i, s); | |
951 | boost::math::gamma_p(fr, lr); | |
952 | boost::math::gamma_q(i, s); | |
953 | boost::math::gamma_q(fr, lr); | |
954 | boost::math::gamma_p_inv(i, fr); | |
955 | boost::math::gamma_q_inv(s, fr); | |
956 | boost::math::gamma_p_inva(i, lr); | |
957 | boost::math::gamma_q_inva(i, lr); | |
958 | boost::math::erf(i); | |
959 | boost::math::erfc(i); | |
960 | boost::math::erf_inv(i); | |
961 | boost::math::erfc_inv(i); | |
962 | boost::math::beta(i, s); | |
963 | boost::math::beta(fr, lr); | |
964 | boost::math::beta(i, s, l); | |
965 | boost::math::beta(fr, dr, lr); | |
966 | boost::math::betac(l, i, s); | |
967 | boost::math::betac(fr, dr, lr); | |
968 | boost::math::ibeta(l, i, s); | |
969 | boost::math::ibeta(fr, dr, lr); | |
970 | boost::math::ibetac(l, i, s); | |
971 | boost::math::ibetac(fr, dr, lr); | |
972 | boost::math::ibeta_inv(l, s, i); | |
973 | boost::math::ibeta_inv(fr, dr, lr); | |
974 | boost::math::ibetac_inv(l, i, s); | |
975 | boost::math::ibetac_inv(fr, dr, lr); | |
976 | boost::math::ibeta_inva(l, i, s); | |
977 | boost::math::ibeta_inva(fr, dr, lr); | |
978 | boost::math::ibetac_inva(l, i, s); | |
979 | boost::math::ibetac_inva(fr, dr, lr); | |
980 | boost::math::ibeta_invb(l, i, s); | |
981 | boost::math::ibeta_invb(fr, dr, lr); | |
982 | boost::math::ibetac_invb(l, i, s); | |
983 | boost::math::ibetac_invb(fr, dr, lr); | |
984 | boost::math::gamma_p_derivative(i, l); | |
985 | boost::math::gamma_p_derivative(fr, lr); | |
986 | boost::math::ibeta_derivative(l, i, s); | |
987 | boost::math::ibeta_derivative(fr, dr, lr); | |
988 | (boost::math::fpclassify)(i); | |
989 | (boost::math::isfinite)(s); | |
990 | (boost::math::isnormal)(l); | |
991 | (boost::math::isnan)(i); | |
992 | (boost::math::isinf)(l); | |
993 | boost::math::log1p(i); | |
994 | boost::math::expm1(s); | |
995 | boost::math::cbrt(l); | |
996 | boost::math::sqrt1pm1(s); | |
997 | boost::math::powm1(i, s); | |
998 | boost::math::powm1(fr, lr); | |
999 | //boost::math::legendre_p(1, i); | |
1000 | boost::math::legendre_p(1, 0, s); | |
1001 | boost::math::legendre_q(1, i); | |
1002 | boost::math::laguerre(1, i); | |
1003 | boost::math::laguerre(2, 1, i); | |
1004 | boost::math::laguerre(2u, 1u, s); | |
1005 | boost::math::hermite(1, s); | |
1006 | boost::math::spherical_harmonic_r(2, 1, s, i); | |
1007 | boost::math::spherical_harmonic_i(2, 1, fr, lr); | |
1008 | boost::math::ellint_1(i); | |
1009 | boost::math::ellint_1(i, s); | |
1010 | boost::math::ellint_1(fr, lr); | |
1011 | boost::math::ellint_2(i); | |
1012 | boost::math::ellint_2(i, l); | |
1013 | boost::math::ellint_2(fr, lr); | |
1014 | boost::math::ellint_3(i, l); | |
1015 | boost::math::ellint_3(fr, lr); | |
1016 | boost::math::ellint_3(s, l, i); | |
1017 | boost::math::ellint_3(fr, dr, lr); | |
1018 | boost::math::ellint_d(i); | |
1019 | boost::math::ellint_d(i, l); | |
1020 | boost::math::ellint_d(fr, lr); | |
1021 | boost::math::jacobi_zeta(i, l); | |
1022 | boost::math::jacobi_zeta(fr, lr); | |
1023 | boost::math::heuman_lambda(i, l); | |
1024 | boost::math::heuman_lambda(fr, lr); | |
1025 | boost::math::ellint_rc(i, s); | |
1026 | boost::math::ellint_rc(fr, lr); | |
1027 | boost::math::ellint_rd(s, i, l); | |
1028 | boost::math::ellint_rd(fr, lr, dr); | |
1029 | boost::math::ellint_rf(s, l, i); | |
1030 | boost::math::ellint_rf(fr, dr, lr); | |
1031 | boost::math::ellint_rg(s, l, i); | |
1032 | boost::math::ellint_rg(fr, dr, lr); | |
1033 | boost::math::ellint_rj(i, i, s, l); | |
1034 | boost::math::ellint_rj(i, fr, dr, lr); | |
1035 | boost::math::jacobi_cd(i, fr); | |
1036 | boost::math::jacobi_cn(i, fr); | |
1037 | boost::math::jacobi_cs(i, fr); | |
1038 | boost::math::jacobi_dc(i, fr); | |
1039 | boost::math::jacobi_dn(i, fr); | |
1040 | boost::math::jacobi_ds(i, fr); | |
1041 | boost::math::jacobi_nc(i, fr); | |
1042 | boost::math::jacobi_nd(i, fr); | |
1043 | boost::math::jacobi_ns(i, fr); | |
1044 | boost::math::jacobi_sc(i, fr); | |
1045 | boost::math::jacobi_sd(i, fr); | |
1046 | boost::math::jacobi_sn(i, fr); | |
1047 | boost::math::hypot(i, s); | |
1048 | boost::math::hypot(fr, lr); | |
1049 | boost::math::sinc_pi(i); | |
1050 | boost::math::sinhc_pi(i); | |
1051 | boost::math::asinh(s); | |
1052 | boost::math::acosh(l); | |
1053 | boost::math::atanh(l); | |
1054 | boost::math::sin_pi(s); | |
1055 | boost::math::cos_pi(s); | |
1056 | boost::math::cyl_neumann(fr, dr); | |
1057 | boost::math::cyl_neumann(i, s); | |
1058 | boost::math::cyl_bessel_j(fr, lr); | |
1059 | boost::math::cyl_bessel_j(i, s); | |
1060 | boost::math::cyl_bessel_i(fr, lr); | |
1061 | boost::math::cyl_bessel_i(i, s); | |
1062 | boost::math::cyl_bessel_k(fr, lr); | |
1063 | boost::math::cyl_bessel_k(i, s); | |
1064 | boost::math::sph_bessel(i, fr); | |
1065 | boost::math::sph_bessel(i, 1); | |
1066 | boost::math::sph_neumann(i, lr); | |
1067 | boost::math::sph_neumann(i, i); | |
1068 | boost::math::cyl_neumann_prime(fr, dr); | |
1069 | boost::math::cyl_neumann_prime(i, s); | |
1070 | boost::math::cyl_bessel_j_prime(fr, lr); | |
1071 | boost::math::cyl_bessel_j_prime(i, s); | |
1072 | boost::math::cyl_bessel_i_prime(fr, lr); | |
1073 | boost::math::cyl_bessel_i_prime(i, s); | |
1074 | boost::math::cyl_bessel_k_prime(fr, lr); | |
1075 | boost::math::cyl_bessel_k_prime(i, s); | |
1076 | boost::math::sph_bessel_prime(i, fr); | |
1077 | boost::math::sph_bessel_prime(i, 1); | |
1078 | boost::math::sph_neumann_prime(i, lr); | |
1079 | boost::math::sph_neumann_prime(i, i); | |
1080 | boost::math::owens_t(fr, dr); | |
1081 | boost::math::owens_t(i, s); | |
1082 | ||
1083 | boost::math::policies::policy<> pol; | |
1084 | ||
1085 | ||
1086 | boost::math::tgamma(i, pol); | |
1087 | boost::math::tgamma1pm1(i, pol); | |
1088 | boost::math::lgamma(i, pol); | |
1089 | boost::math::lgamma(i, &i, pol); | |
1090 | boost::math::digamma(i, pol); | |
1091 | boost::math::trigamma(i, pol); | |
1092 | boost::math::polygamma(i, i, pol); | |
1093 | boost::math::tgamma_ratio(i, l, pol); | |
1094 | boost::math::tgamma_ratio(fr, lr, pol); | |
1095 | boost::math::tgamma_delta_ratio(i, s, pol); | |
1096 | boost::math::tgamma_delta_ratio(fr, lr, pol); | |
1097 | boost::math::rising_factorial(s, i, pol); | |
1098 | boost::math::falling_factorial(s, i, pol); | |
1099 | boost::math::tgamma(i, l, pol); | |
1100 | boost::math::tgamma(fr, lr, pol); | |
1101 | boost::math::tgamma_lower(i, s, pol); | |
1102 | boost::math::tgamma_lower(fr, lr, pol); | |
1103 | boost::math::gamma_p(i, s, pol); | |
1104 | boost::math::gamma_p(fr, lr, pol); | |
1105 | boost::math::gamma_q(i, s, pol); | |
1106 | boost::math::gamma_q(fr, lr, pol); | |
1107 | boost::math::gamma_p_inv(i, fr, pol); | |
1108 | boost::math::gamma_q_inv(s, fr, pol); | |
1109 | boost::math::gamma_p_inva(i, lr, pol); | |
1110 | boost::math::gamma_q_inva(i, lr, pol); | |
1111 | boost::math::erf(i, pol); | |
1112 | boost::math::erfc(i, pol); | |
1113 | boost::math::erf_inv(i, pol); | |
1114 | boost::math::erfc_inv(i, pol); | |
1115 | boost::math::beta(i, s, pol); | |
1116 | boost::math::beta(fr, lr, pol); | |
1117 | boost::math::beta(i, s, l, pol); | |
1118 | boost::math::beta(fr, dr, lr, pol); | |
1119 | boost::math::betac(l, i, s, pol); | |
1120 | boost::math::betac(fr, dr, lr, pol); | |
1121 | boost::math::ibeta(l, i, s, pol); | |
1122 | boost::math::ibeta(fr, dr, lr, pol); | |
1123 | boost::math::ibetac(l, i, s, pol); | |
1124 | boost::math::ibetac(fr, dr, lr, pol); | |
1125 | boost::math::ibeta_inv(l, s, i, pol); | |
1126 | boost::math::ibeta_inv(fr, dr, lr, pol); | |
1127 | boost::math::ibetac_inv(l, i, s, pol); | |
1128 | boost::math::ibetac_inv(fr, dr, lr, pol); | |
1129 | boost::math::ibeta_inva(l, i, s, pol); | |
1130 | boost::math::ibeta_inva(fr, dr, lr, pol); | |
1131 | boost::math::ibetac_inva(l, i, s, pol); | |
1132 | boost::math::ibetac_inva(fr, dr, lr, pol); | |
1133 | boost::math::ibeta_invb(l, i, s, pol); | |
1134 | boost::math::ibeta_invb(fr, dr, lr, pol); | |
1135 | boost::math::ibetac_invb(l, i, s, pol); | |
1136 | boost::math::ibetac_invb(fr, dr, lr, pol); | |
1137 | boost::math::gamma_p_derivative(i, l, pol); | |
1138 | boost::math::gamma_p_derivative(fr, lr, pol); | |
1139 | boost::math::ibeta_derivative(l, i, s, pol); | |
1140 | boost::math::ibeta_derivative(fr, dr, lr, pol); | |
1141 | boost::math::log1p(i, pol); | |
1142 | boost::math::expm1(s, pol); | |
1143 | boost::math::cbrt(l, pol); | |
1144 | boost::math::sqrt1pm1(s, pol); | |
1145 | boost::math::powm1(i, s, pol); | |
1146 | boost::math::powm1(fr, lr, pol); | |
1147 | //boost::math::legendre_p(1, i, pol); | |
1148 | boost::math::legendre_p(1, 0, s, pol); | |
1149 | boost::math::legendre_q(1, i, pol); | |
1150 | boost::math::laguerre(1, i, pol); | |
1151 | boost::math::laguerre(2, 1, i, pol); | |
1152 | boost::math::laguerre(2u, 1u, s, pol); | |
1153 | boost::math::hermite(1, s, pol); | |
1154 | boost::math::spherical_harmonic_r(2, 1, s, i, pol); | |
1155 | boost::math::spherical_harmonic_i(2, 1, fr, lr, pol); | |
1156 | boost::math::ellint_1(i, pol); | |
1157 | boost::math::ellint_1(i, s, pol); | |
1158 | boost::math::ellint_1(fr, lr, pol); | |
1159 | boost::math::ellint_2(i, pol); | |
1160 | boost::math::ellint_2(i, l, pol); | |
1161 | boost::math::ellint_2(fr, lr, pol); | |
1162 | boost::math::ellint_3(i, l, pol); | |
1163 | boost::math::ellint_3(fr, lr, pol); | |
1164 | boost::math::ellint_3(s, l, i, pol); | |
1165 | boost::math::ellint_3(fr, dr, lr, pol); | |
1166 | boost::math::ellint_d(i, pol); | |
1167 | boost::math::ellint_d(i, l, pol); | |
1168 | boost::math::ellint_d(fr, lr, pol); | |
1169 | boost::math::jacobi_zeta(i, l, pol); | |
1170 | boost::math::jacobi_zeta(fr, lr, pol); | |
1171 | boost::math::heuman_lambda(i, l, pol); | |
1172 | boost::math::heuman_lambda(fr, lr, pol); | |
1173 | boost::math::ellint_rc(i, s, pol); | |
1174 | boost::math::ellint_rc(fr, lr, pol); | |
1175 | boost::math::ellint_rd(s, i, l, pol); | |
1176 | boost::math::ellint_rd(fr, lr, dr, pol); | |
1177 | boost::math::ellint_rf(s, l, i, pol); | |
1178 | boost::math::ellint_rf(fr, dr, lr, pol); | |
1179 | boost::math::ellint_rg(s, l, i, pol); | |
1180 | boost::math::ellint_rg(fr, dr, lr, pol); | |
1181 | boost::math::ellint_rj(i, i, s, l, pol); | |
1182 | boost::math::ellint_rj(i, fr, dr, lr, pol); | |
1183 | boost::math::jacobi_cd(i, fr, pol); | |
1184 | boost::math::jacobi_cn(i, fr, pol); | |
1185 | boost::math::jacobi_cs(i, fr, pol); | |
1186 | boost::math::jacobi_dc(i, fr, pol); | |
1187 | boost::math::jacobi_dn(i, fr, pol); | |
1188 | boost::math::jacobi_ds(i, fr, pol); | |
1189 | boost::math::jacobi_nc(i, fr, pol); | |
1190 | boost::math::jacobi_nd(i, fr, pol); | |
1191 | boost::math::jacobi_ns(i, fr, pol); | |
1192 | boost::math::jacobi_sc(i, fr, pol); | |
1193 | boost::math::jacobi_sd(i, fr, pol); | |
1194 | boost::math::jacobi_sn(i, fr, pol); | |
1195 | boost::math::hypot(i, s, pol); | |
1196 | boost::math::hypot(fr, lr, pol); | |
1197 | boost::math::sinc_pi(i, pol); | |
1198 | boost::math::sinhc_pi(i, pol); | |
1199 | boost::math::asinh(s, pol); | |
1200 | boost::math::acosh(l, pol); | |
1201 | boost::math::atanh(l, pol); | |
1202 | boost::math::sin_pi(s, pol); | |
1203 | boost::math::cos_pi(s, pol); | |
1204 | boost::math::cyl_neumann(fr, dr, pol); | |
1205 | boost::math::cyl_neumann(i, s, pol); | |
1206 | boost::math::cyl_bessel_j(fr, lr, pol); | |
1207 | boost::math::cyl_bessel_j(i, s, pol); | |
1208 | boost::math::cyl_bessel_i(fr, lr, pol); | |
1209 | boost::math::cyl_bessel_i(i, s, pol); | |
1210 | boost::math::cyl_bessel_k(fr, lr, pol); | |
1211 | boost::math::cyl_bessel_k(i, s, pol); | |
1212 | boost::math::sph_bessel(i, fr, pol); | |
1213 | boost::math::sph_bessel(i, 1, pol); | |
1214 | boost::math::sph_neumann(i, lr, pol); | |
1215 | boost::math::sph_neumann(i, i, pol); | |
1216 | boost::math::cyl_neumann_prime(fr, dr, pol); | |
1217 | boost::math::cyl_neumann_prime(i, s, pol); | |
1218 | boost::math::cyl_bessel_j_prime(fr, lr, pol); | |
1219 | boost::math::cyl_bessel_j_prime(i, s, pol); | |
1220 | boost::math::cyl_bessel_i_prime(fr, lr, pol); | |
1221 | boost::math::cyl_bessel_i_prime(i, s, pol); | |
1222 | boost::math::cyl_bessel_k_prime(fr, lr, pol); | |
1223 | boost::math::cyl_bessel_k_prime(i, s, pol); | |
1224 | boost::math::sph_bessel_prime(i, fr, pol); | |
1225 | boost::math::sph_bessel_prime(i, 1, pol); | |
1226 | boost::math::sph_neumann_prime(i, lr, pol); | |
1227 | boost::math::sph_neumann_prime(i, i, pol); | |
1228 | boost::math::owens_t(fr, dr, pol); | |
1229 | boost::math::owens_t(i, s, pol); | |
1230 | #endif | |
1231 | #ifdef TEST_GROUP_8 | |
1232 | test::tgamma(i); | |
1233 | test::tgamma1pm1(i); | |
1234 | test::lgamma(i); | |
1235 | test::lgamma(i, &i); | |
1236 | test::digamma(i); | |
1237 | test::trigamma(i); | |
1238 | test::polygamma(i, i); | |
1239 | test::tgamma_ratio(i, l); | |
1240 | test::tgamma_ratio(fr, lr); | |
1241 | test::tgamma_delta_ratio(i, s); | |
1242 | test::tgamma_delta_ratio(fr, lr); | |
1243 | test::rising_factorial(s, i); | |
1244 | test::falling_factorial(s, i); | |
1245 | test::tgamma(i, l); | |
1246 | test::tgamma(fr, lr); | |
1247 | test::tgamma_lower(i, s); | |
1248 | test::tgamma_lower(fr, lr); | |
1249 | test::gamma_p(i, s); | |
1250 | test::gamma_p(fr, lr); | |
1251 | test::gamma_q(i, s); | |
1252 | test::gamma_q(fr, lr); | |
1253 | test::gamma_p_inv(i, fr); | |
1254 | test::gamma_q_inv(s, fr); | |
1255 | test::gamma_p_inva(i, lr); | |
1256 | test::gamma_q_inva(i, lr); | |
1257 | test::erf(i); | |
1258 | test::erfc(i); | |
1259 | test::erf_inv(i); | |
1260 | test::erfc_inv(i); | |
1261 | test::beta(i, s); | |
1262 | test::beta(fr, lr); | |
1263 | test::beta(i, s, l); | |
1264 | test::beta(fr, dr, lr); | |
1265 | test::betac(l, i, s); | |
1266 | test::betac(fr, dr, lr); | |
1267 | test::ibeta(l, i, s); | |
1268 | test::ibeta(fr, dr, lr); | |
1269 | test::ibetac(l, i, s); | |
1270 | test::ibetac(fr, dr, lr); | |
1271 | test::ibeta_inv(l, s, i); | |
1272 | test::ibeta_inv(fr, dr, lr); | |
1273 | test::ibetac_inv(l, i, s); | |
1274 | test::ibetac_inv(fr, dr, lr); | |
1275 | test::ibeta_inva(l, i, s); | |
1276 | test::ibeta_inva(fr, dr, lr); | |
1277 | test::ibetac_inva(l, i, s); | |
1278 | test::ibetac_inva(fr, dr, lr); | |
1279 | test::ibeta_invb(l, i, s); | |
1280 | test::ibeta_invb(fr, dr, lr); | |
1281 | test::ibetac_invb(l, i, s); | |
1282 | test::ibetac_invb(fr, dr, lr); | |
1283 | test::gamma_p_derivative(i, l); | |
1284 | test::gamma_p_derivative(fr, lr); | |
1285 | test::ibeta_derivative(l, i, s); | |
1286 | test::ibeta_derivative(fr, dr, lr); | |
1287 | (test::fpclassify)(i); | |
1288 | (test::isfinite)(s); | |
1289 | (test::isnormal)(l); | |
1290 | (test::isnan)(i); | |
1291 | (test::isinf)(l); | |
1292 | test::log1p(i); | |
1293 | test::expm1(s); | |
1294 | test::cbrt(l); | |
1295 | test::sqrt1pm1(s); | |
1296 | test::powm1(i, s); | |
1297 | test::powm1(fr, lr); | |
1298 | //test::legendre_p(1, i); | |
1299 | test::legendre_p(1, 0, s); | |
1300 | test::legendre_q(1, i); | |
1301 | test::laguerre(1, i); | |
1302 | test::laguerre(2, 1, i); | |
1303 | test::laguerre(2u, 1u, s); | |
1304 | test::hermite(1, s); | |
1305 | test::spherical_harmonic_r(2, 1, s, i); | |
1306 | test::spherical_harmonic_i(2, 1, fr, lr); | |
1307 | test::ellint_1(i); | |
1308 | test::ellint_1(i, s); | |
1309 | test::ellint_1(fr, lr); | |
1310 | test::ellint_2(i); | |
1311 | test::ellint_2(i, l); | |
1312 | test::ellint_2(fr, lr); | |
1313 | test::ellint_3(i, l); | |
1314 | test::ellint_3(fr, lr); | |
1315 | test::ellint_3(s, l, i); | |
1316 | test::ellint_3(fr, dr, lr); | |
1317 | test::ellint_d(i); | |
1318 | test::ellint_d(i, l); | |
1319 | test::ellint_d(fr, lr); | |
1320 | test::jacobi_zeta(i, l); | |
1321 | test::jacobi_zeta(fr, lr); | |
1322 | test::heuman_lambda(i, l); | |
1323 | test::heuman_lambda(fr, lr); | |
1324 | test::ellint_rc(i, s); | |
1325 | test::ellint_rc(fr, lr); | |
1326 | test::ellint_rd(s, i, l); | |
1327 | test::ellint_rd(fr, lr, dr); | |
1328 | test::ellint_rf(s, l, i); | |
1329 | test::ellint_rf(fr, dr, lr); | |
1330 | test::ellint_rg(s, l, i); | |
1331 | test::ellint_rg(fr, dr, lr); | |
1332 | test::ellint_rj(i, i, s, l); | |
1333 | test::ellint_rj(i, fr, dr, lr); | |
1334 | test::hypot(i, s); | |
1335 | test::hypot(fr, lr); | |
1336 | test::sinc_pi(i); | |
1337 | test::sinhc_pi(i); | |
1338 | test::asinh(s); | |
1339 | test::acosh(l); | |
1340 | test::atanh(l); | |
1341 | test::sin_pi(s); | |
1342 | test::cos_pi(s); | |
1343 | test::cyl_neumann(fr, dr); | |
1344 | test::cyl_neumann(i, s); | |
1345 | test::cyl_bessel_j(fr, lr); | |
1346 | test::cyl_bessel_j(i, s); | |
1347 | test::cyl_bessel_i(fr, lr); | |
1348 | test::cyl_bessel_i(i, s); | |
1349 | test::cyl_bessel_k(fr, lr); | |
1350 | test::cyl_bessel_k(i, s); | |
1351 | test::sph_bessel(i, fr); | |
1352 | test::sph_bessel(i, 1); | |
1353 | test::sph_neumann(i, lr); | |
1354 | test::sph_neumann(i, i); | |
1355 | test::cyl_neumann_prime(fr, dr); | |
1356 | test::cyl_neumann_prime(i, s); | |
1357 | test::cyl_bessel_j_prime(fr, lr); | |
1358 | test::cyl_bessel_j_prime(i, s); | |
1359 | test::cyl_bessel_i_prime(fr, lr); | |
1360 | test::cyl_bessel_i_prime(i, s); | |
1361 | test::cyl_bessel_k_prime(fr, lr); | |
1362 | test::cyl_bessel_k_prime(i, s); | |
1363 | test::sph_bessel_prime(i, fr); | |
1364 | test::sph_bessel_prime(i, 1); | |
1365 | test::sph_neumann_prime(i, lr); | |
1366 | test::sph_neumann_prime(i, i); | |
1367 | test::airy_ai(i); | |
1368 | test::airy_bi(i); | |
1369 | test::airy_ai_prime(i); | |
1370 | test::airy_bi_prime(i); | |
1371 | test::owens_t(fr, dr); | |
1372 | test::owens_t(i, s); | |
1373 | #endif | |
1374 | #endif | |
1375 | } | |
1376 | ||
1377 | ||
1378 | #endif // BOOST_LIBS_MATH_TEST_INSTANTIATE_HPP | |
1379 |