scipy.special.elliprd#

scipy.special.elliprd(x, y, z, выход=None) = 'elliprd'>#

Симметричный эллиптический интеграл второго рода.

Функция RD определена как [1]

\[R_{\mathrm{D}}(x, y, z) = \frac{3}{2} \int_0^{+\infty} [(t + x) (t + y)]^{-1/2} (t + z)^{-3/2} dt\]
Параметры:
x, y, zarray_like

Вещественные или комплексные входные параметры. x или y может быть любым числом в комплексной плоскости с разрезом вдоль отрицательной вещественной оси, но не более одного из них может быть нулём, в то время как z должен быть ненулевым.

выходndarray, необязательно

Необязательный выходной массив для значений функции

Возвращает:
Rскаляр или ndarray

Значение интеграла. Если все x, y, и z являются вещественными, возвращаемое значение вещественное. В противном случае возвращаемое значение комплексное.

Смотрите также

elliprc

Вырожденный симметричный эллиптический интеграл.

elliprf

Полностью-симметричный эллиптический интеграл первого рода.

elliprg

Полностью-симметричный эллиптический интеграл второго рода.

elliprj

Симметричный эллиптический интеграл третьего рода.

Примечания

RD является вырожденным случаем эллиптического интеграла RJ: elliprd(x, y, z) == elliprj(x, y, z, z).

Код реализует алгоритм Карлсона на основе теорем дублирования и разложения в ряд до 7-го порядка. [2]

Добавлено в версии 1.8.0.

Ссылки

[1]

B. C. Carlson, ed., Chapter 19 in “Digital Library of Mathematical Functions,” NIST, US Dept. of Commerce. https://dlmf.nist.gov/19.16.E5

[2]

B. C. Carlson, "Numerical computation of real or complex elliptic integrals," Numer. Algorithm, vol. 10, no. 1, pp. 13-26, 1995. https://arxiv.org/abs/math/9409227 https://doi.org/10.1007/BF02198293

Примеры

Основное свойство однородности:

>>> import numpy as np
>>> from scipy.special import elliprd
>>> x = 1.2 + 3.4j
>>> y = 5.
>>> z = 6.
>>> scale = 0.3 + 0.4j
>>> elliprd(scale*x, scale*y, scale*z)
(-0.03703043835680379-0.24500934665683802j)
>>> elliprd(x, y, z)*np.power(scale, -1.5)
(-0.0370304383568038-0.24500934665683805j)

Все три аргумента совпадают:

>>> x = 1.2 + 3.4j
>>> elliprd(x, x, x)
(-0.03986825876151896-0.14051741840449586j)
>>> np.power(x, -1.5)
(-0.03986825876151894-0.14051741840449583j)

Так называемая «вторая лемнискатная постоянная»:

>>> elliprd(0, 2, 1)/3
0.5990701173677961
>>> from scipy.special import gamma
>>> gamma(0.75)**2/np.sqrt(2*np.pi)
0.5990701173677959