scipy.special.ellipkm1#

scipy.special.ellipkm1(p, out=None) = <ufunc 'ellipkm1'>#

第一类完全椭圆积分在 m = 1 附近

此函数定义为

\[K(p) = \int_0^{\pi/2} [1 - m \sin(t)^2]^{-1/2} dt\]

其中 m = 1 - p

参数:
parray_like

将椭圆积分的参数定义为 m = 1 - p

outndarray, optional

可选的输出数组,用于存储函数值

返回:
Kscalar or ndarray

椭圆积分的值。

另请参阅

ellipk

第一类完全椭圆积分

ellipkinc

第一类不完全椭圆积分

ellipe

第二类完全椭圆积分

ellipeinc

第二类不完全椭圆积分

elliprf

第一类完全对称椭圆积分。

附注

Cephes [1] 例程 ellpk 的封装。

对于 p <= 1,计算使用近似值:

\[K(p) \approx P(p) - \log(p) Q(p)\]

其中 \(P\)\(Q\) 是十阶多项式。参数 p 在内部使用,而不是 m,以便将 m = 1 处的对数奇点移动到原点;这可以保持最大的精度。对于 p > 1,使用恒等式:

\[K(p) = K(1/p)/\sqrt{p}\]

数组 API 标准支持

ellipkm1 对 Python Array API 标准兼容的后端具有实验性支持,除了 NumPy 之外。请考虑通过设置环境变量 SCIPY_ARRAY_API=1 并提供 CuPy、PyTorch、JAX 或 Dask 数组作为数组参数来测试这些功能。支持以下后端和设备(或其他功能)的组合。

CPU

GPU

NumPy

不适用

CuPy

不适用

PyTorch

JAX

⚠️ 无 JIT

Dask

不适用

有关更多信息,请参阅 对数组 API 标准的支持

参考文献

[1]

Cephes 数学函数库, http://www.netlib.org/cephes/