Namespaces
Variants

std:: sph_bessel, std:: sph_besself, std:: sph_bessell

From cppreference.net
ヘッダー <cmath> で定義
(1)
float sph_bessel ( unsigned int n, float x ) ;

double sph_bessel ( unsigned int n, double x ) ;

long double sph_bessel ( unsigned int n, long double x ) ;
(C++17以降)
(C++23以前)
/*floating-point-type*/ sph_bessel ( unsigned int n,
/*floating-point-type*/ x ) ;
(C++23以降)
float sph_besself ( unsigned int n, float x ) ;
(2) (C++17以降)
long double sph_bessell ( unsigned int n, long double x ) ;
(3) (C++17以降)
ヘッダー <cmath> で定義
template < class Integer >
double sph_bessel ( unsigned int n, Integer x ) ;
(A) (C++17以降)
1-3) n および x 第一種球ベッセル関数 を計算する。 ライブラリは、パラメータ x の型として、すべてのcv修飾されていない浮動小数点型に対する std::sph_bessel のオーバーロードを提供する。 (C++23以降)
A) すべての整数型に対して追加のオーバーロードが提供されており、これらは double として扱われます。

目次

パラメータ

n - 関数の次数
x - 関数の引数

戻り値

エラーが発生しない場合、第1種球ベッセル関数の値を返します。これは n および x に対する関数であり、具体的には j n (x) = (π/2x) 1/2
J n+1/2 (x)
で表されます。ここで J n (x) std:: cyl_bessel_j ( n, x ) であり、 x≥0 です。

エラーハンドリング

エラーは math_errhandling で指定されている通りに報告される場合があります。

  • 引数がNaNの場合、NaNが返され、定義域エラーは報告されません。
  • n≥128 の場合、動作は実装定義となります。

注記

C++17をサポートしていないが、 ISO 29124:2010 をサポートする実装では、実装によって __STDCPP_MATH_SPEC_FUNCS__ が少なくとも201003L以上の値に定義されており、かつユーザーが標準ライブラリヘッダーをインクルードする前に __STDCPP_WANT_MATH_SPEC_FUNCS__ を定義している場合、この関数を提供します。

ISO 29124:2010をサポートせず、TR 19768:2007 (TR1) をサポートする実装では、この関数はヘッダー tr1/cmath および名前空間 std::tr1 で提供されます。

この関数の実装は boost.math でも利用可能です。

追加のオーバーロードは (A) と完全に同一である必要はありません。整数型の引数 num に対して、 std :: sph_bessel ( int_num, num ) std :: sph_bessel ( int_num, static_cast < double > ( num ) ) と同じ効果を持つことを保証するのに十分なものであればよいのです。

#include <cmath>
#include <iostream>
int main()
{
    // n == 1 のスポットチェック
    double x = 1.2345;
    std::cout << "j_1(" << x << ") = " << std::sph_bessel(1, x) << '\n';
    // j_1 の厳密解
    std::cout << "sin(x)/x² - cos(x)/x = "
              << std::sin(x) / (x * x) - std::cos(x) / x << '\n';
}

出力:

j_1(1.2345) = 0.352106
sin(x)/x² - cos(x)/x = 0.352106

関連項目

円筒ベッセル関数(第一種)
(関数)
球ノイマン関数
(関数)

外部リンク

Weisstein, Eric W. "Spherical Bessel Function of the First Kind." From MathWorld — A Wolfram Web Resource.
Weisstein, Eric W. "球面ベッセル関数(第一種)。" MathWorld — Wolfram Webリソースより。