Python SciPy special.XX用法及代码示例(个人学习笔记,仅供参考)
(一)、第二类实阶v的修正贝塞尔函数(Python SciPy special.kv
import numpy as np #表示将umPy库导入到程序中,并用别名np表示
from scipy.special import kv #调用scipy库中的特殊函数,导入函数kv
import matplotlib.pyplot as plt #导入pyplot模块,并用别名plt表示
x = np.linspace(0, 5, 1000) #将自变量x的区间[0, 5]等分成1000份
for N in np.linspace(0, 6, 5): #N取值为区间[0,6]均分为5分的值,即N=0, 1.5, 3.0, 4.5, 6.0
plt.plot(x, kv(N, x), label='$K_{{{}}}(x)$'.format(N)) #绘制函数kv(N,x)图像
plt.ylim(0, 10) #因变量y的取值范围
plt.legend() #显示该label的内容
plt.title(r'Modified Bessel function of the second kind $K_\nu(x)$') #显示图标的标题
plt.show() #显示图表
(二)、第一类实阶修正贝塞尔函数(Python SciPy special.iv)
import numpy as np #表示将umPy库导入到程序中,并用别名np表示
from scipy.special import iv #调用scipy库中的特殊函数,导入函数iv
import matplotlib.pyplot as plt #导入pyplot模块,并用别名plt表示
x = np.linspace(0, 5, 1000) #将自变量x的区间[0, 5]等分成1000份
for N in np.linspace(0, 6, 5): #N取值为区间[0,6]均分为5分的值,即N=0, 1.5, 3.0, 4.5, 6.0
plt.plot(x, iv(N, x), label='$K_{{{}}}(x)$'.format(N)) #绘制函数图像
plt.ylim(0, 10) #因变量y的取值范围
plt.legend() #显示该label的内容
plt.title(r'Modified Bessel function of the first kind $K_\nu(x)$') #显示图标的标题
plt.show()
(三)、第二类实数和复数参数的贝塞尔函数(Python SciPy special.yv)
import numpy as np #表示将umPy库导入到程序中,并用别名np表示
from scipy.special import yv #调用scipy库中的特殊函数,导入函数yv
import matplotlib.pyplot as plt #导入pyplot模块,并用别名plt表示
x = np.linspace(0, 5, 1000) #将自变量x的区间[0, 5]等分成1000份
for N in np.linspace(0, 6, 5): #N取值为区间[0,6]均分为5分的值,即N=0, 1.5, 3.0, 4.5, 6.0
plt.plot(x, yv(N, x), label='$K_{{{}}}(x)$'.format(N)) #绘制函数图像
plt.ylim(-10, 2) #因变量y的取值范围
plt.legend() #显示该label的内容
plt.title(r'Modified Bessel function of the first kind $K_\nu(x)$') #显示图标的标题
plt.show()
(四)、第一类贝塞尔函数(Python SciPy special.jv)
import numpy as np #表示将umPy库导入到程序中,并用别名np表示
from scipy.special import jv #调用scipy库中的特殊函数,导入函数yv
import matplotlib.pyplot as plt #导入pyplot模块,并用别名plt表示
x = np.linspace(0, 5, 1000) #将自变量x的区间[0, 5]等分成1000份
for N in np.linspace(0, 6, 5): #N取值为区间[0,6]均分为5分的值,即N=0, 1.5, 3.0, 4.5, 6.0
plt.plot(x, jv(N, x), label='$K_{{{}}}(x)$'.format(N)) #绘制函数图像
plt.ylim(-2, 2) #因变量y的取值范围
plt.legend() #显示该label的内容
plt.title(r'Bessel functions of the first kind $K_\nu(x)$') #显示图标的标题
plt.show()