Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / math / doc / sf / bessel_prime.qbk
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 ]