gpt4 book ai didi

python - 我试图在无摩擦的地板上模拟一个质量,并用 Spring 固定在一端。不工作

转载 作者:行者123 更新时间:2023-11-30 23:17:06 27 4
gpt4 key购买 nike

我在上述模拟中使用 SHM 的标准微分方程,a = -w^2*x。我正在使用 Python,并以 odeint 作为求解器。尽管对其进行了多次编辑,我仍然将输出视为直线而不是正弦曲线。代码是:

from scipy.integrate import odeint
from pylab import *

k = 80 #Spring Constant
m = 8 #mass of block
omega = sqrt(k/m) #angular velocity

def deriv(x,t):
return array([x[1],(-1)*(k/m)*x[0]])

t = linspace(0,3.62,100)

xinit = array([0,0])

x = odeint(deriv,xinit,t)

acc_mass = zeros(t.shape[0])

for q in range(0,t.shape[0]):
acc_mass[q] = (-1)*(omega**2)*x[q][0]

f, springer = subplots(3, sharex = True)
springer[0].plot(t,x[:,0],'r')
springer[0].set_title('Position Variation')
springer[1].plot(t,x[:,1],'b')
springer[1].set_title('Velocity Variation')
springer[2].plot(t,acc_mass,'g')
springer[2].set_title('Acceleration Variation')

最佳答案

正如 Warren Weckesser 所指出的,代码是正确的,但由于位移的初始条件为 0,所以输出也是 0。因此,根据他的建议,我更改了初始条件并得到了所需的输出是一条正弦曲线。

关于python - 我试图在无摩擦的地板上模拟一个质量,并用 Spring 固定在一端。不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27436701/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com