scipy.special.

ivp#

scipy.special.ivp(v, z, n=1)[source]#

計算第一類變形貝索函數的導數。

計算變形貝索函數 Iv 對於 z 的第 n 階導數。

參數:
varray_like 或 float

貝索函數的階數

zarray_like

計算導數時的參數值;可以是實數或複數。

nint,預設值為 1

導數的階數。若為 0,則返回貝索函數 iv 本身。

返回:
純量或 ndarray

變形貝索函數的第 n 階導數。

參見

iv

註解

此導數的計算使用關係式 DLFM 10.29.5 [2]

參考文獻

[1]

Zhang, Shanjie 和 Jin, Jianming. “Computation of Special Functions”, John Wiley and Sons, 1996, chapter 6. https://people.sc.fsu.edu/~jburkardt/f77_src/special_functions/special_functions.html

[2]

NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/10.29.E5

範例

計算 0 階第一類變形貝索函數及其在 1 的前兩個導數。

>>> from scipy.special import ivp
>>> ivp(0, 1, 0), ivp(0, 1, 1), ivp(0, 1, 2)
(1.2660658777520084, 0.565159103992485, 0.7009067737595233)

透過為 v 提供陣列,計算多個階數的第一類變形貝索函數在 1 的一階導數。

>>> ivp([0, 1, 2], 1, 1)
array([0.5651591 , 0.70090677, 0.29366376])

透過為 z 提供陣列,計算 0 階第一類變形貝索函數在多個點的一階導數。

>>> import numpy as np
>>> points = np.array([0., 1.5, 3.])
>>> ivp(0, points, 1)
array([0.        , 0.98166643, 3.95337022])

繪製 1 階第一類變形貝索函數及其前三個導數。

>>> import matplotlib.pyplot as plt
>>> x = np.linspace(-5, 5, 1000)
>>> fig, ax = plt.subplots()
>>> ax.plot(x, ivp(1, x, 0), label=r"$I_1$")
>>> ax.plot(x, ivp(1, x, 1), label=r"$I_1'$")
>>> ax.plot(x, ivp(1, x, 2), label=r"$I_1''$")
>>> ax.plot(x, ivp(1, x, 3), label=r"$I_1'''$")
>>> plt.legend()
>>> plt.show()
../../_images/scipy-special-ivp-1.png