Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

besselk

第二类修正贝塞尔函数

说明

示例

K = besselk(nu,Z) 为数组 Z 中的每个元素计算第二类修正贝塞尔函数 Kν(z)

示例

K = besselk(nu,Z,scale) 指定是否呈指数缩放第二类修正贝塞尔函数以避免下溢或精度损失。如果 scale1,则 besselk 的输出按因子 exp(Z) 进行缩放。

示例

全部折叠

定义域。

z = 0:0.01:5;

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

K = zeros(5,501);
for i = 0:4
    K(i+1,:) = besselk(i,z);
end

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

plot(z,K)
axis([0 5 0 8])
grid on
legend('K_0','K_1','K_2','K_3','K_4','Location','Best')
title('Modified Bessel Functions of the Second Kind for $\nu \in [0,4]$','interpreter','latex')
xlabel('z','interpreter','latex')
ylabel('$K_\nu(z)$','interpreter','latex')

Figure contains an axes object. The axes object with title Modified Bessel Functions of the Second Kind for nu in bracketleft 0 , 4 bracketright, xlabel z, ylabel K indexOf nu baseline leftParenthesis z rightParenthesis contains 5 objects of type line. These objects represent K_0, K_1, K_2, K_3, K_4.

对于 z 在区间 [0,5] 中的值和 0 到 3 之间的阶 ν,计算经过缩放的第二类修正贝塞尔函数 Kν(z)e z

z = linspace(0,5);
scale = 1;
Ks = zeros(4,100);
for nu = 0:3
  Ks(nu+1,:) = besselk(nu,z,scale);
end

在同一图窗中绘制所有函数。对于 z 的大值,经过缩放的函数不会像未缩放的函数一样快速下溢出双精度的限制,从而扩展了其可计算性范围。

plot(z,Ks)
ylim([0 3])
legend('K_0','K_1','K_2','K_3')
title('Scaled Mod. Bessel Functions of the Second Kind for $\nu \in \left[0, 3 \right]$','interpreter','latex')
xlabel('z','interpreter','latex')
ylabel('$K_\nu(z) \cdot e^{z}$','interpreter','latex')

Figure contains an axes object. The axes object with title Scaled Mod. Bessel Functions of the Second Kind for nu in bracketleft 0 , 3 bracketright, xlabel z, ylabel K indexOf nu baseline leftParenthesis z rightParenthesis cdot e toThePowerOf z baseline contains 4 objects of type line. These objects represent K_0, K_1, K_2, K_3.

输入参数

全部折叠

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

示例: besselk(3,Z)

数据类型: single | double

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

示例: besselk(nu,0:3)

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

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

  • 0(默认值)- 无缩放

  • 1 - 按 exp(Z) 缩放 besselk 的输出

besselk 的值随着 Z 的值增加而快速降低,因此呈指数缩放输出对于 Z 的大值很有用;如果不这样处理,结果会很快损失精度或下溢超出双精度的限制。

示例: besselk(nu,Z,1)

详细信息

全部折叠

修正贝塞尔函数

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

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

它的解称为修正贝塞尔函数

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

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

您可以使用 besseli 计算第一类修正贝塞尔函数。

第二类修正贝塞尔函数(表示为 Kν(z))构成独立于 Iν(z) 的另一个解,它通过以下方程定义:

Kν(z)=(π2)Iν(z)Iν(z)sin(νπ).

扩展功能

版本历史记录

在 R2006a 之前推出

另请参阅

| | | |