1 [section:bessel_derivatives Derivatives of the Bessel Functions] 2 3 [h4 Synopsis] 4 5 `#include <boost/math/special_functions/bessel_prime.hpp>` 6 7 template <class T1, class T2> 8 ``__sf_result`` cyl_bessel_j_prime(T1 v, T2 x); 9 10 template <class T1, class T2, class ``__Policy``> 11 ``__sf_result`` cyl_bessel_j_prime(T1 v, T2 x, const ``__Policy``&); 12 13 template <class T1, class T2> 14 ``__sf_result`` cyl_neumann_prime(T1 v, T2 x); 15 16 template <class T1, class T2, class ``__Policy``> 17 ``__sf_result`` cyl_neumann_prime(T1 v, T2 x, const ``__Policy``&); 18 19 template <class T1, class T2> 20 ``__sf_result`` cyl_bessel_i_prime(T1 v, T2 x); 21 22 template <class T1, class T2, class ``__Policy``> 23 ``__sf_result`` cyl_bessel_i_prime(T1 v, T2 x, const ``__Policy``&); 24 25 template <class T1, class T2> 26 ``__sf_result`` cyl_bessel_k_prime(T1 v, T2 x); 27 28 template <class T1, class T2, class ``__Policy``> 29 ``__sf_result`` cyl_bessel_k_prime(T1 v, T2 x, const ``__Policy``&); 30 31 template <class T1, class T2> 32 ``__sf_result`` sph_bessel_prime(T1 v, T2 x); 33 34 template <class T1, class T2, class ``__Policy``> 35 ``__sf_result`` sph_bessel_prime(T1 v, T2 x, const ``__Policy``&); 36 37 template <class T1, class T2> 38 ``__sf_result`` sph_neumann_prime(T1 v, T2 x); 39 40 template <class T1, class T2, class ``__Policy``> 41 ``__sf_result`` sph_neumann_prime(T1 v, T2 x, const ``__Policy``&); 42 43 44 [h4 Description] 45 46 These functions return the first derivative with respect to /x/ of the corresponding Bessel function. 47 48 The return type of these functions is computed using the __arg_promotion_rules 49 when T1 and T2 are different types. The functions are also optimised for the 50 relatively common case that T1 is an integer. 51 52 [optional_policy] 53 54 The functions return the result of __domain_error whenever the result is 55 undefined or complex. 56 57 [h4 Testing] 58 59 There are two sets of test values: spot values calculated using 60 [@http://www.wolframalpha.com/ wolframalpha.com], 61 and a much larger set of tests computed using 62 a relation to the underlying Bessel functions that the implementation 63 does not use. 64 65 [h4 Accuracy] 66 67 The accuracy of these functions is broadly similar to the underlying Bessel functions. 68 69 [table_cyl_bessel_i_prime_integer_orders_] 70 71 [table_cyl_bessel_i_prime] 72 73 [table_cyl_bessel_j_prime_integer_orders_] 74 75 [table_cyl_bessel_j_prime] 76 77 [table_cyl_bessel_k_prime_integer_orders_] 78 79 [table_cyl_bessel_k_prime] 80 81 [table_sph_bessel_prime] 82 83 [table_sph_neumann_prime] 84 85 86 [h4 Implementation] 87 88 In the general case, the derivatives are calculated using the relations: 89 90 [equation bessel_derivatives1] 91 92 There are also a number of special cases, for large x we have: 93 94 [equation bessel_derivatives4] 95 96 And for small x: 97 98 [equation bessel_derivatives5] 99 100 [endsect] [/section:bessel_derivatives Derivatives of the Bessel Functions] 101 102 [/ 103 Copyright 2013, 2013 John Maddock, Anton Bikineev. 104 105 Distributed under the Boost Software License, Version 1.0. 106 (See accompanying file LICENSE_1_0.txt or copy at 107 http://www.boost.org/LICENSE_1_0.txt). 108 ] 109