bessel_prime.qbk 3.0 KB

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