scipy.special.kv#
-
scipy.special.kv(v, z, выход=None) =
'kv'> # Модифицированная функция Бесселя второго рода вещественного порядка v
Возвращает модифицированную функцию Бесселя второго рода для вещественного порядка v в комплексной z.
Их также иногда называют функциями третьего рода, функциями Бассета или функциями Макдональда. Они определяются как те решения модифицированного уравнения Бесселя, для которых,
\[K_v(x) \sim \sqrt{\pi/(2x)} \exp(-x)\]как \(x \to \infty\) [3].
- Параметры:
- varray_like из float
Порядок функций Бесселя
- zarray_like комплексных чисел
Аргумент, в котором вычисляются функции Бесселя
- выходndarray, необязательно
Необязательный выходной массив для результатов функции
- Возвращает:
- скаляр или ndarray
Результаты. Обратите внимание, что входные данные должны быть комплексного типа, чтобы получить комплексный вывод, например.
kv(3, -2+0j)вместоkv(3, -2).
Смотрите также
Примечания
Оболочка для AMOS [1] рутина zbesk. Для обсуждения используемого алгоритма см. [2] и ссылки в нём.
Ссылки
[1]Дональд Э. Амос, «AMOS, переносимый пакет для функций Бесселя комплексного аргумента и неотрицательного порядка», http://netlib.org/amos/
[2]Дональд Э. Амос, "Алгоритм 644: Переносимый пакет для функций Бесселя комплексного аргумента и неотрицательного порядка", ACM TOMS Том. 12 Выпуск 3, сентябрь 1986, стр. 265
[3]NIST Digital Library of Mathematical Functions, Уравнение 10.25.E3. https://dlmf.nist.gov/10.25.E3
Примеры
Построить график функции нескольких порядков для вещественного входа:
>>> import numpy as np >>> from scipy.special import kv >>> import matplotlib.pyplot as plt >>> x = np.linspace(0, 5, 1000) >>> for N in np.linspace(0, 6, 5): ... plt.plot(x, kv(N, x), label='$K_{{{}}}(x)$'.format(N)) >>> plt.ylim(0, 10) >>> plt.legend() >>> plt.title(r'Modified Bessel function of the second kind $K_\nu(x)$') >>> plt.show()
Вычислить для одного значения при нескольких порядках:
>>> kv([4, 4.5, 5], 1+2j) array([ 0.1992+2.3892j, 2.3493+3.6j , 7.2827+3.8104j])