特殊函数 (scipy.special)#
几乎所有以下函数都接受 NumPy 数组作为输入参数以及单个数字。这意味着它们遵循广播和自动数组循环规则。严格来说,它们是 NumPy 通用函数。不接受 NumPy 数组的函数在章节描述中会有一个警告标记。
另请参阅
scipy.special.cython_special – 特殊函数的类型化 Cython 版本
错误处理#
错误通过返回 NaN 或其他适当的值来处理。某些特殊函数例程在发生错误时会发出警告或引发异常。默认情况下,除了内存分配错误(这会导致引发异常)之外,此功能是禁用的。为了查询和控制当前的错误处理状态,提供了以下函数。
可用函数#
艾里函数#
椭圆函数和积分#
|
雅可比椭圆函数 |
|
第一类完全椭圆积分。 |
|
m = 1 附近的第二类完全椭圆积分 |
|
第一类不完全椭圆积分 |
|
第二类完全椭圆积分 |
|
第二类不完全椭圆积分 |
|
退化对称椭圆积分。 |
|
第二类对称椭圆积分。 |
|
第一类完全对称椭圆积分。 |
|
第二类完全对称椭圆积分。 |
|
第三类对称椭圆积分。 |
贝塞尔函数#
|
实数阶和复数自变量的第一类贝塞尔函数。 |
|
v 阶指数尺度第一类贝塞尔函数。 |
|
整数阶和实数自变量的第二类贝塞尔函数。 |
|
实数阶和复数自变量的第二类贝塞尔函数。 |
|
实数阶指数尺度第二类贝塞尔函数。 |
|
实数阶第一类修正贝塞尔函数。 |
|
指数尺度第一类修正贝塞尔函数。 |
|
整数阶 n 的第二类修正贝塞尔函数 |
|
实数阶 v 的第二类修正贝塞尔函数 |
|
指数尺度第二类修正贝塞尔函数。 |
|
第一类汉克尔函数 |
|
指数尺度第一类汉克尔函数 |
|
第二类汉克尔函数 |
|
指数尺度第二类汉克尔函数 |
|
赖特广义贝塞尔函数。 |
|
赖特广义贝塞尔函数的自然对数,参见 |
以下函数不接受 NumPy 数组(它们不是通用函数)
|
詹克-恩登 Lambda 函数,Lambdav(x)。 |
贝塞尔函数的零点#
以下函数不接受 NumPy 数组(它们不是通用函数)
|
计算整数阶贝塞尔函数 Jn 和 Jn' 的零点。 |
|
计算贝塞尔函数 Jn(x)、Jn'(x)、Yn(x) 和 Yn'(x) 的 nt 个零点。 |
|
计算整数阶贝塞尔函数 Jn 的零点。 |
|
计算整数阶贝塞尔函数导数 Jn' 的零点。 |
|
计算整数阶贝塞尔函数 Yn(x) 的零点。 |
|
计算整数阶贝塞尔函数导数 Yn'(x) 的零点。 |
|
计算贝塞尔函数 Y0(z) 的 nt 个零点,以及每个零点处的导数。 |
|
计算贝塞尔函数 Y1(z) 的 nt 个零点,以及每个零点处的导数。 |
|
计算贝塞尔导数 Y1'(z) 的 nt 个零点,以及每个零点处的值。 |
更快版本的常用贝塞尔函数#
|
0 阶第一类贝塞尔函数。 |
|
1 阶第一类贝塞尔函数。 |
|
0 阶第二类贝塞尔函数。 |
|
1 阶第二类贝塞尔函数。 |
|
0 阶修正贝塞尔函数。 |
|
0 阶指数尺度修正贝塞尔函数。 |
|
1 阶修正贝塞尔函数。 |
|
1 阶指数尺度修正贝塞尔函数。 |
|
0 阶第二类修正贝塞尔函数,\(K_0\)。 |
|
0 阶指数尺度修正贝塞尔函数 K |
|
1 阶第二类修正贝塞尔函数,\(K_1(x)\)。 |
|
1 阶指数尺度修正贝塞尔函数 K |
贝塞尔函数的积分#
|
0 阶第一类贝塞尔函数的积分。 |
|
与 0 阶第一类贝塞尔函数相关的积分。 |
|
0 阶修正贝塞尔函数的积分。 |
|
与 0 阶修正贝塞尔函数相关的积分。 |
|
第一类贝塞尔函数的加权积分。 |
贝塞尔函数的导数#
球面贝塞尔函数#
|
第一类球面贝塞尔函数或其导数。 |
|
第二类球面贝塞尔函数或其导数。 |
|
第一类修正球面贝塞尔函数或其导数。 |
|
第二类修正球面贝塞尔函数或其导数。 |
黎卡提-贝塞尔函数#
以下函数不接受 NumPy 数组(它们不是通用函数)
|
计算第一类黎卡提-贝塞尔函数及其导数。 |
|
计算第二类黎卡提-贝塞尔函数及其导数。 |
斯特鲁夫函数#
|
斯特鲁夫函数。 |
|
修正斯特鲁夫函数。 |
|
0 阶斯特鲁夫函数的积分。 |
|
与 0 阶斯特鲁夫函数相关的积分。 |
|
0 阶修正斯特鲁夫函数的积分。 |
原始统计函数#
另请参阅
scipy.stats:这些函数的友好版本。
二项分布#
Beta 分布#
F 分布#
Gamma 分布#
负二项分布#
非中心 F 分布#
|
非中心 F 分布的累积分布函数。 |
|
计算非中心 F 分布的分母自由度。 |
|
计算非中心 F 分布的分子自由度。 |
|
非中心 F 分布 CDF 相对于 f 的反函数。 |
|
计算非中心 F 分布的非中心参数。 |
非中心 t 分布#
正态分布#
泊松分布#
学生 t 分布#
卡方分布#
非中心卡方分布#
柯尔莫哥洛夫分布#
|
柯尔莫哥洛夫-斯米尔诺夫互补累积分布函数 |
|
smirnov 的反函数 |
|
柯尔莫哥洛夫分布的互补累积分布(生存函数)。 |
|
柯尔莫哥洛夫分布的逆生存函数 |
Box-Cox 变换#
|
计算 Box-Cox 变换。 |
|
计算 1 + x 的 Box-Cox 变换。 |
|
计算 Box-Cox 变换的逆变换。 |
|
计算 Box-Cox 变换的逆变换。 |
Sigmoid 函数#
杂项#
信息论函数#
|
用于计算熵的逐元素函数。 |
|
用于计算相对熵的逐元素函数。 |
|
用于计算 Kullback-Leibler 散度的逐元素函数。 |
|
Huber 损失函数。 |
|
伪 Huber 损失函数。 |
误差函数和菲涅尔积分#
|
返回复数自变量的误差函数。 |
|
互补误差函数, |
|
尺度互补误差函数, |
|
虚误差函数, |
|
误差函数的反函数。 |
|
互补误差函数的反函数。 |
|
Faddeeva 函数 |
|
道森积分。 |
|
菲涅尔积分。 |
|
计算正弦和余弦菲涅尔积分 S(z) 和 C(z) 的 nt 个复数零点。 |
|
修正菲涅尔正积分 |
|
修正菲涅尔负积分 |
|
Voigt 线形。 |
以下函数不接受 NumPy 数组(它们不是通用函数)
|
计算第一象限内按绝对值排序的前 nt 个零点。 |
|
计算余弦菲涅尔积分 C(z) 的 nt 个复数零点。 |
|
计算正弦菲涅尔积分 S(z) 的 nt 个复数零点。 |
勒让德函数#
|
第一类勒让德多项式。 |
|
所有第一类勒让德多项式,直到指定阶数 |
|
第一类伴随勒让德多项式。 |
|
所有第一类伴随勒让德多项式,直到指定阶数 |
|
第一类球面勒让德多项式。 |
|
所有第一类球面勒让德多项式,直到指定阶数 |
|
球面谐波。 |
|
所有球面谐波,直到指定阶数 |
以下函数正在被弃用,以支持上面提供更灵活和一致接口的函数。
椭球谐波#
|
椭球谐函数 E^p_n(l) |
|
椭球谐函数 F^p_n(l) |
|
椭球谐归一化常数 gamma^p_n |
正交多项式#
以下函数用于计算正交多项式的值
|
计算 n 次 k 阶广义(伴随)拉盖尔多项式。 |
|
计算某一点的勒让德多项式。 |
|
计算某一点的第一类切比雪夫多项式。 |
|
计算某一点的第二类切比雪夫多项式。 |
|
计算某一点在 [-2, 2] 上的第一类切比雪夫多项式。 |
|
计算某一点在 [-2, 2] 上的第二类切比雪夫多项式。 |
|
计算某一点的雅可比多项式。 |
|
计算某一点的拉盖尔多项式。 |
|
计算某一点的广义拉盖尔多项式。 |
|
计算某一点的物理学家厄米多项式。 |
|
计算某一点的概率学家(归一化)厄米多项式。 |
|
计算某一点的盖根鲍尔多项式。 |
|
计算某一点的移位勒让德多项式。 |
|
计算某一点的移位第一类切比雪夫多项式。 |
|
计算某一点的移位第二类切比雪夫多项式。 |
|
计算某一点的移位雅可比多项式。 |
以下函数计算正交多项式的根和求积权重
|
高斯-勒让德求积。 |
|
高斯-切比雪夫(第一类)求积。 |
|
高斯-切比雪夫(第二类)求积。 |
|
高斯-切比雪夫(第一类)求积。 |
|
高斯-切比雪夫(第二类)求积。 |
|
高斯-雅可比求积。 |
|
高斯-拉盖尔求积。 |
|
高斯-广义拉盖尔求积。 |
|
高斯-厄米(物理学家)求积。 |
|
高斯-厄米(统计学家)求积。 |
|
高斯-盖根鲍尔求积。 |
|
高斯-勒让德(移位)求积。 |
|
高斯-切比雪夫(第一类,移位)求积。 |
|
高斯-切比雪夫(第二类,移位)求积。 |
|
高斯-雅可比(移位)求积。 |
以下函数返回 orthopoly1d 对象中的多项式系数,其功能与 numpy.poly1d 类似。orthopoly1d 类还具有一个属性 weights,它返回高斯求积的适当形式的根、权重和总权重。这些以 n x 3 数组的形式返回,其中根在第一列,权重在第二列,总权重在最后一列。请注意,orthopoly1d 对象在进行算术运算时会转换为 poly1d,并丢失原始正交多项式的信息。
|
勒让德多项式。 |
|
第一类切比雪夫多项式。 |
|
第二类切比雪夫多项式。 |
|
在 \([-2, 2]\) 上的第一类切比雪夫多项式。 |
|
在 \([-2, 2]\) 上的第二类切比雪夫多项式。 |
|
雅可比多项式。 |
|
拉盖尔多项式。 |
|
广义(伴随)拉盖尔多项式。 |
|
物理学家厄米多项式。 |
|
归一化(概率学家)厄米多项式。 |
|
盖根鲍尔(超球)多项式。 |
|
移位勒让德多项式。 |
|
移位第一类切比雪夫多项式。 |
|
移位第二类切比雪夫多项式。 |
|
移位雅可比多项式。 |
警告
使用多项式系数计算高阶多项式(大约 order > 20)在数值上不稳定。要计算多项式值,应改用 eval_* 函数。
超几何函数#
抛物柱面函数#
以下函数不接受 NumPy 数组(它们不是通用函数)
扁长球波函数#
|
第一类扁长球角函数及其导数 |
|
第一类扁长球径向函数及其导数 |
|
第二类扁长球径向函数及其导数 |
|
第一类扁球角函数及其导数 |
|
第一类扁球径向函数及其导数 |
|
第二类扁球径向函数及其导数。 |
|
扁长球函数的特征值 |
|
扁球函数的特征值 |
|
扁长球波函数的特征值。 |
|
扁球波函数的特征值。 |
以下函数需要预先计算特征值
|
预先计算特征值的扁长球角函数 pro_ang1 |
|
预先计算特征值的扁长球径向函数 pro_rad1 |
|
预先计算特征值的扁长球径向函数 pro_rad2 |
|
预先计算特征值的扁球角函数 obl_ang1 |
|
预先计算特征值的扁球径向函数 obl_rad1 |
|
预先计算特征值的扁球径向函数 obl_rad2 |
开尔文函数#
|
作为复数的开尔文函数 |
|
计算所有开尔文函数的 nt 个零点。 |
|
开尔文函数 ber。 |
|
开尔文函数 bei。 |
|
开尔文函数 ber 的导数。 |
|
开尔文函数 bei 的导数。 |
|
开尔文函数 ker。 |
|
开尔文函数 kei。 |
|
开尔文函数 ker 的导数。 |
|
开尔文函数 kei 的导数。 |
以下函数不接受 NumPy 数组(它们不是通用函数)
|
计算开尔文函数 ber 的 nt 个零点。 |
|
计算开尔文函数 bei 的 nt 个零点。 |
|
计算开尔文函数 ber 的导数的 nt 个零点。 |
|
计算开尔文函数 bei 的导数的 nt 个零点。 |
|
计算开尔文函数 ker 的 nt 个零点。 |
|
计算开尔文函数 kei 的 nt 个零点。 |
|
计算开尔文函数 ker 的导数的 nt 个零点。 |
|
计算开尔文函数 kei 的导数的 nt 个零点。 |
组合数学#
其他特殊函数#
|
计算 a 和 b 的算术几何平均值。 |
|
伯努利数 B0..Bn(包括)。 |
|
二项式系数,被视为两个实变量的函数。 |
|
周期正弦函数,也称为狄利克雷核。 |
|
欧拉数 E(0), E(1), ..., E(n)。 |
|
广义指数积分 En。 |
|
指数积分 E1。 |
|
指数积分 Ei。 |
|
一个数字或数字数组的阶乘。 |
|
双阶乘。 |
|
n 的 k 阶多重阶乘,n(!!...!)。 |
|
双曲正弦和余弦积分。 |
|
正弦和余弦积分。 |
|
计算 softmax 函数。 |
|
计算 softmax 函数的对数。 |
|
斯彭斯函数,也称为对数积分。 |
|
黎曼或赫尔维茨 zeta 函数。 |
|
黎曼 zeta 函数减 1。 |
|
逐元素计算 softplus 函数。 |
便捷函数#
|
逐元素计算 x 的立方根。 |
|
逐元素计算 |
|
逐元素计算 |
|
将度转换为弧度。 |
|
给定角度 x(以度为单位)的余弦。 |
|
给定角度 x(以度为单位)的正弦。 |
|
给定角度 x(以度为单位)的正切。 |
|
给定角度 x(以度为单位)的余切。 |
|
当 x 接近零时,计算 log(1 + x)。 |
|
计算 |
|
当 x 接近零时,计算 cos(x) - 1。 |
|
计算 |
|
四舍五入到最近的整数。 |
|
计算 |
|
计算 |
|
计算输入元素的指数和的对数。 |
|
相对误差指数, |
|
返回归一化 sinc 函数。 |