Wolfram mathematica 求解二维运动微分方程

Wolfram mathematica 求解二维运动微分方程,wolfram-mathematica,Wolfram Mathematica,我试图解决一个非常简单的问题,在力{k1+k2*y,k3*t}的作用下找到物体的位置。以下是我进入Mathematica 7的内容: DSolve[{ x''[t]*m == k1 + k2*y[t], y''[t]*m == k3*t, y'[0] == 0, y[0] == 0, x'[0] == 0, x[0] == 0 }, {x[t], y[t]}, t] 我得到了这个错误: DSolve::deqn:在第一个参数{C m(x^[Prime])[t]^2==k

我试图解决一个非常简单的问题,在力{k1+k2*y,k3*t}的作用下找到物体的位置。以下是我进入Mathematica 7的内容:

DSolve[{
  x''[t]*m == k1 + k2*y[t],
  y''[t]*m == k3*t,
  y'[0] == 0,
  y[0] == 0,
  x'[0] == 0,
  x[0] == 0
}, {x[t], y[t]}, t]
我得到了这个错误:

DSolve::deqn:在第一个参数{C m(x^[Prime])[t]^2==k1+k2 y[t],m(y^[Prime][Prime])[t]==k3 t,True,y[0]==0,True,x[0]==0}中预期的方程或方程列表

Mathematica似乎对边界条件x'[0]==0不满意。这是为什么?

它在您键入时起作用。。。试着在一个新的笔记本上做这件事

当我剪切并粘贴您发布到M'ma 7.0.1中的代码并进行计算时,我得到了结果

{{x[t] -> (60*k1*m*t^2 + k2*k3*t^5)/(120*m^2), y[t] -> (k3*t^3)/(6*m)}} {{x[t]->(60*k1*m*t^2+k2*k3*t^5)/(120*m^2), y[t]->(k3*t^3)/(6*m)} 您的M'ma错误消息告诉我,在实际的M'ma输入中,x上实际上只有一个素数(即
x'[t]
)。它引用的等式,
-cm(x^[Prime])[t]^2==k1+k2y[t]
,与上面代码的第一行不匹配


我还怀疑x'[0]和y'[0]以前被分配为零,这导致
x'[0]==0,…,y'[0]==0
同时塌陷为
True
。最好的测试方法:杀掉你的内核并重新评估上面的输入(在修正了打字错误之后)。

belisarius和Eric Towers都建议杀掉内核并重新评估。它们很可能是正确的,因为某些东西有一个先验的定义。您可以通过以下方式检查这是否属实:

?<variable name>
或者,如果您真的想去掉变量的任何定义,可以使用
Remove
。这样,您就不必重新计算当前会话中的任何其他内容

Clear[x, y, k1, k2, k3, m]