Main Content

besselj

第一类贝塞尔函数

说明

示例

J = besselj(nu,Z) 为数组 Z 中的每个元素计算第一类贝塞尔函数 Jν(z)

示例

J = besselj(nu,Z,scale) 指定是否呈指数缩放第一类贝塞尔函数以避免溢出或精度损失。如果 scale1,则 besselj 的输出按因子 exp(-abs(imag(Z))) 进行缩放。

示例

全部折叠

定义域。

z = 0:0.1:20;

计算前五个第一类贝塞尔函数。J 的每一行包含在 z 中的点上计算的某阶函数的值。

J = zeros(5,201);
for i = 0:4
    J(i+1,:) = besselj(i,z);
end

在同一图窗中绘制所有函数。

plot(z,J)
grid on
legend('J_0','J_1','J_2','J_3','J_4','Location','Best')
title('Bessel Functions of the First Kind for $\nu \in [0, 4]$','interpreter','latex')
xlabel('z','interpreter','latex')
ylabel('$J_\nu(z)$','interpreter','latex')

z 的复数值计算未缩放的 (J) 和经过缩放的 (Js) 第一类贝塞尔函数 J2(z)

x = -10:0.3:10;
y = x';
z = x + 1i*y;
scale = 1;
J = besselj(2,z);
Js = besselj(2,z,scale);

比较经过缩放的函数和未缩放函数的虚部图。对于 abs(imag(z)) 的大值,未缩放的函数很快上溢超出双精度的限制,不再可计算。经过缩放的函数从计算中消除了这种占主导状态的指数行为,因此与未缩放的函数相比,具有更大的可计算性范围。

surf(x,y,imag(J))
title('Bessel Function of the First Kind','interpreter','latex')
xlabel('real(z)','interpreter','latex')
ylabel('imag(z)','interpreter','latex')

surf(x,y,imag(Js))
title('Scaled Bessel Function of the First Kind','interpreter','latex')
xlabel('real(z)','interpreter','latex')
ylabel('imag(z)','interpreter','latex')

输入参数

全部折叠

方程的阶,指定为标量、向量、矩阵或多维数组。nu 是一个实数,用于指定第一类贝塞尔函数的阶。nuZ 的大小必须相同,或者其中一个可以为标量。

示例: besselj(3,0:5)

数据类型: single | double

函数的域,指定为标量、向量、矩阵或多维数组。besselj 是实数值,其中 Z 是正值。nuZ 的大小必须相同,或者其中一个可以为标量。

示例: besselj(1,[1-1i 1+0i 1+1i])

数据类型: single | double
复数支持:

切换到缩放函数,指定为下列值之一:

  • 0(默认值)- 无缩放

  • 1 - 按 exp(-abs(imag(Z))) 缩放 besselj 的输出

在复平面上,besselj 的模随着 abs(imag(Z)) 的值增加而快速增长,因此呈指数缩放输出对于 abs(imag(Z)) 的大值很有用;如果不这样处理,结果会很快损失精度或上溢超出双精度的限制。

示例: besselj(3,0:5,1)

详细信息

全部折叠

贝塞尔函数

以下微分方程(其中 ν 是实数常量)称为贝塞尔方程

z2d2ydz2+zdydz+(z2ν2)y=0.

它的解称为贝塞尔函数

第一类贝塞尔函数(表示为 Jν(z)J–ν(z))构成了非整数 ν 的贝塞尔方程的一组基本解。Jν(z) 通过以下方式定义:

Jν(z)=(z2)ν(k=0)(z24)kk!Γ(ν+k+1).

第二类贝塞尔函数(表示为 Yν(z))构成了贝塞尔方程的另一个解,与 Jν(z) 线性无关。Yν(z) 通过以下方式定义:

Yν(z)=Jν(z)cos(νπ)Jν(z)sin(νπ).

您可以使用 bessely 计算第二类贝塞尔函数。

提示

贝塞尔函数与汉克尔函数相关,也称为第三类贝塞尔函数,

Hν(1)(z)=Jν(z)+iYν(z)Hν(2)(z)=Jν(z)iYν(z).

Hν(K)(z)besselhJν(z)besseljYν(z)bessely。汉克尔函数同样构成贝塞尔方程的一组基本解(请参阅 besselh)。

扩展功能

版本历史记录

在 R2006a 之前推出

另请参阅

| | |