scipy.special.ellipkm1#
- scipy.special.ellipkm1(p, out=None) = <ufunc 'ellipkm1'>#
Complete elliptic integral of the first kind around m = 1
This function is defined as
\[K(p) = \int_0^{\pi/2} [1 - m \sin(t)^2]^{-1/2} dt\]where m = 1 - p.
- Parameters:
- parray_like
Defines the parameter of the elliptic integral as m = 1 - p.
- outndarray, optional
Optional output array for the function values
- Returns:
- Kscalar or ndarray
Value of the elliptic integral.
See also
Notes
Wrapper for the Cephes [1] routine ellpk.
For
p <= 1
, computation uses the approximation,\[K(p) \approx P(p) - \log(p) Q(p)\]where \(P\) and \(Q\) are tenth-order polynomials. The argument p is used internally rather than m so that the logarithmic singularity at
m = 1
will be shifted to the origin; this preserves maximum accuracy. Forp > 1
, the identity\[K(p) = K(1/p)/\sqrt{p}\]is used.
ellipkm1
has experimental support for Python Array API Standard compatible backends in addition to NumPy. Please consider testing these features by setting an environment variableSCIPY_ARRAY_API=1
and providing CuPy, PyTorch, JAX, or Dask arrays as array arguments. The following combinations of backend and device (or other capability) are supported.Library
CPU
GPU
NumPy
✅
n/a
CuPy
n/a
✅
PyTorch
✅
⛔
JAX
⚠️ no JIT
⛔
Dask
✅
n/a
See Support for the array API standard for more information.
References
[1]Cephes Mathematical Functions Library, http://www.netlib.org/cephes/