📄 bessel_spherical.qbk
字号:
[section:sph_bessel Spherical Bessel Functions of the First and Second Kinds][h4 Synopsis] template <class T1, class T2> ``__sf_result`` sph_bessel(unsigned v, T2 x); template <class T1, class T2, class ``__Policy``> ``__sf_result`` sph_bessel(unsigned v, T2 x, const ``__Policy``&); template <class T1, class T2> ``__sf_result`` sph_neumann(unsigned v, T2 x); template <class T1, class T2, class ``__Policy``> ``__sf_result`` sph_neumann(unsigned v, T2 x, const ``__Policy``&); [h4 Description]The functions __sph_bessel and __sph_neumann return the result of theSpherical Bessel functions of the first and second kinds respectively:sph_bessel(v, x) = j[sub v](x)sph_neumann(v, x) = y[sub v](x) = n[sub v](x)where:[equation sbessel2]The return type of these functions is computed using the __arg_pomotion_rulesfor the single argument type T.[optional_policy]The functions return the result of __domain_error whenever the result isundefined or complex: this occurs when `x < 0`.The j[sub v][space] function is cyclic like J[sub v][space] but differsin its behaviour at the origin:[graph sph_bessel]Likewise y[sub v][space] is also cyclic for large x, but tends to -[infin][space]for small /x/:[graph sph_neumann][h4 Testing]There are two sets of test values: spot values calculated using[@http://functions.wolfram.com/ functions.wolfram.com],and a much larger set of tests computed usinga simplified version of this implementation(with all the special case handling removed).[h4 Accuracy]Other than for some special cases, these functions are computed in terms of__cyl_bessel_j and __cyl_neumann: refer to these functions for accuracy data.[h4 Implementation]Other than error handling and a couple of special cases these functionsare implemented directly in terms of their definitions:[equation sbessel2]The special cases occur for:j[sub 0][space]= __sinc_pi(x) = sin(x) / xand for small ['x < 1], we can use the series:[equation sbessel5]which neatly avoids the problem of calculating 0/0 that can occur with themain definition as x [rarr] 0.[endsect][/ Copyright 2006 John Maddock, Paul A. Bristow and Xiaogang Zhang. 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).]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -