123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- [section:bessel_derivatives Derivatives of the Bessel Functions]
- [h4 Synopsis]
- `#include <boost/math/special_functions/bessel_prime.hpp>`
- template <class T1, class T2>
- ``__sf_result`` cyl_bessel_j_prime(T1 v, T2 x);
- template <class T1, class T2, class ``__Policy``>
- ``__sf_result`` cyl_bessel_j_prime(T1 v, T2 x, const ``__Policy``&);
- template <class T1, class T2>
- ``__sf_result`` cyl_neumann_prime(T1 v, T2 x);
- template <class T1, class T2, class ``__Policy``>
- ``__sf_result`` cyl_neumann_prime(T1 v, T2 x, const ``__Policy``&);
- template <class T1, class T2>
- ``__sf_result`` cyl_bessel_i_prime(T1 v, T2 x);
- template <class T1, class T2, class ``__Policy``>
- ``__sf_result`` cyl_bessel_i_prime(T1 v, T2 x, const ``__Policy``&);
- template <class T1, class T2>
- ``__sf_result`` cyl_bessel_k_prime(T1 v, T2 x);
- template <class T1, class T2, class ``__Policy``>
- ``__sf_result`` cyl_bessel_k_prime(T1 v, T2 x, const ``__Policy``&);
- template <class T1, class T2>
- ``__sf_result`` sph_bessel_prime(T1 v, T2 x);
- template <class T1, class T2, class ``__Policy``>
- ``__sf_result`` sph_bessel_prime(T1 v, T2 x, const ``__Policy``&);
- template <class T1, class T2>
- ``__sf_result`` sph_neumann_prime(T1 v, T2 x);
- template <class T1, class T2, class ``__Policy``>
- ``__sf_result`` sph_neumann_prime(T1 v, T2 x, const ``__Policy``&);
- [h4 Description]
- These functions return the first derivative with respect to /x/ of the corresponding Bessel function.
- The return type of these functions is computed using the __arg_promotion_rules
- when T1 and T2 are different types. The functions are also optimised for the
- relatively common case that T1 is an integer.
- [optional_policy]
- The functions return the result of __domain_error whenever the result is
- undefined or complex.
- [h4 Testing]
- There are two sets of test values: spot values calculated using
- [@http://www.wolframalpha.com/ wolframalpha.com],
- and a much larger set of tests computed using
- a relation to the underlying Bessel functions that the implementation
- does not use.
- [h4 Accuracy]
- The accuracy of these functions is broadly similar to the underlying Bessel functions.
- [table_cyl_bessel_i_prime_integer_orders_]
- [table_cyl_bessel_i_prime]
- [table_cyl_bessel_j_prime_integer_orders_]
- [table_cyl_bessel_j_prime]
- [table_cyl_bessel_k_prime_integer_orders_]
- [table_cyl_bessel_k_prime]
- [table_sph_bessel_prime]
- [table_sph_neumann_prime]
- [h4 Implementation]
- In the general case, the derivatives are calculated using the relations:
- [equation bessel_derivatives1]
- There are also a number of special cases, for large x we have:
- [equation bessel_derivatives4]
- And for small x:
- [equation bessel_derivatives5]
- [endsect] [/section:bessel_derivatives Derivatives of the Bessel Functions]
- [/
- Copyright 2013, 2013 John Maddock, Anton Bikineev.
- Distributed under the Boost Software License, Version 1.0.
- (See accompanying file LICENSE_1_0.txt or copy at
- http://www.boost.org/LICENSE_1_0.txt).
- ]
|