Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用matplotlib.pyplot制作一维波动方程的动画_Python_Animation_Matplotlib - Fatal编程技术网

Python 使用matplotlib.pyplot制作一维波动方程的动画

Python 使用matplotlib.pyplot制作一维波动方程的动画,python,animation,matplotlib,Python,Animation,Matplotlib,我一直在使用python中的matplotlib来显示一维波动方程的动画。但我在制作动画时遇到了一个问题。我希望波动图像随时间变化。这意味着我可能需要一个循环来形成波动方程的许多不同图片。但似乎时间无法放入波函数中,所以图像一点也没有改变。请帮我纠正我犯的错误。 以下是我编写的代码:(部分代码来自《计算科学的Python脚本编写》一书) 从numpy导入零、linspace、sin、pi 将matplotlib.pyplot导入为mpl 定义I(x): 返回sin(2*x*pi/L) def f

我一直在使用python中的matplotlib来显示一维波动方程的动画。但我在制作动画时遇到了一个问题。我希望波动图像随时间变化。这意味着我可能需要一个循环来形成波动方程的许多不同图片。但似乎时间无法放入波函数中,所以图像一点也没有改变。请帮我纠正我犯的错误。 以下是我编写的代码:(部分代码来自《计算科学的Python脚本编写》一书)

从numpy导入零、linspace、sin、pi
将matplotlib.pyplot导入为mpl
定义I(x):
返回sin(2*x*pi/L)
def f(x,t):
返回sin(x*t)
def solver0(I、f、c、L、n、dt、tstop):
#f是x和t的函数,I是x的函数
x=linspace(0,L,n+1)
dx=升/浮点数(n)

如果dt也许这就是你需要的

y = solver0(I,f,c,L,n,dt,t)

在我将“tstop”改为“t”后,它确实起了作用。我一直认为制作动画的代码是错误的,因为函数“solver0”是从《计算科学的Python脚本》一书中复制的,而代码的另一部分是我自己编写的。不管怎样,你真的帮了我一个大忙。非常感谢你!如果答案解决了你的问题,别忘了接受它,@Richard.L
y = solver0(I,f,c,L,n,dt,t)