我试着用颤抖函数来绘制一个动态系统的矢量场。
我有两个清单X和V。
我需要构建两个列表UE和VE,分别包含f返回的第一个和第二个值,但是我有以下错误:
有太多的价值需要打开。
这是我的密码。
import numpy as np
import scipy # donne acces aux librairies scipy, scipy.linalg et scipy.integrate
import scipy.linalg
import scipy.integrate
import matplotlib.pyplot as plt
import math
%matplotlib inline
def f(x,v,t):
return v,-(float(g)/l)*np.sin(x)
t0=0
x0=1
v0=0
T=20
l=1
g=9.81
UE, VE = np.array([f(x,v,0) for x,v in zip(X,V)])
plt.quiver(X, Y, UE, VE)任何帮助都是非常感谢的。
谢谢。
发布于 2018-04-22 17:08:03
通过查看错误处的详细信息,您应该能够发现该错误发生在
np.array([f(x,v,0) for x,v in zip(X,V)])其中的问题是数组包含两个以上的元素,因此不可能将其解压缩到UE和VE中。
在你的例子中,你真正想要的是数组的转置,
np.array([f(x,v,0) for x,v in zip(X,V)]).Thttps://stackoverflow.com/questions/49968526
复制相似问题