我想用Scipy模塊在Python中繪製圖。據http://docs.scipy.org/doc/scipy/reference/special.html我寫代碼scipy.special.spherical_jn(n,x,0)
:Scipy - 使用球形貝塞爾函數時出現錯誤
import matplotlib.pyplot as plt
import numpy as np
import scipy.special as sp
from matplotlib import rcParams
rcParams.update({'figure.autolayout': True})
def odrazTE(a,o,d):
temp1 = sp.spherical_jn[1,a,0]
temp2 = 1
return abs(temp1/temp2)**2
t = np.arange(0.001, 2, 0.001)
plt.plot(t,odrazTE(t,t,1),label='TE1')
plt.show()
雖然我編譯程序,我得到的是這樣的錯誤:
Traceback (most recent call last):
File "standing-sphere.py", line 33, in <module>
plt.plot(t,odrazTE(t,t,1),label='TE1')
File "standing-sphere.py", line 15, in odrazTE
temp1 = sp.spherical_jn[1,a,0]
AttributeError: 'module' object has no attribute 'spherical_jn'
有辦法如何與普通貝塞爾函數做貝塞爾函數和球形貝塞爾函數之間的關係,但我不喜歡這個解決方案,因爲sph.bess的派生。我需要的功能。
我是否有任何機會錯誤地設置了某些東西,並且它可以修復爲scipy.special.spherical_jn工作?
那些在'spherical_jn'後面的方括號是什麼? – Carsten
我的錯,但括號沒有變化。 –