我试图用指数拟合来找到这个数据的Lyapunov指数,但是,我不断得到这个错误:
m=math.log10(abs(x))
TypeError: only length-1 arrays can be converted to Python scalars
代码如下:
f=np.loadtxt('Single Small Angle 1.txt',unpack=True,skiprows=2)
g=np.loadtxt('Single Small Angle 5.txt',unpack=True,skiprows=2)
x = f-g[:,:11944]
t=range(len(x))
m=math.log10(abs(x))
np.polyfit(t,m)
plt.plot(t,abs(x))
#plt.xlabel("${\Theta}$ [rad]")
#plt.ylabel("${\Omega}$ [rad/s]")
#plt.title("Small Angle Approximation Phase Space")
plt.show()
您应该使用
np.log10()
而不是math.log10
。内置的数学库不处理numpy数组,因此numpylog10函数更合适。你知道吗相关问题 更多 >
编程相关推荐