Maxima没有为des eq找到diff eq的解决方案

时间:2013-09-29 13:51:34

标签: differential-equations maxima computer-algebra-systems

在我使用wxmaxima 11.08.0(ubuntu 12.04,Maxima版本:5.24.0)的练习中 我跟着一个example from P.Lutus,他的第二个例子对我不起作用。

eq: y(t) = -r*c*'diff(y(t),t)+m*sin(%omega*t);
sol:desolve( eq, y(t) );
Is  %omega  zero or nonzero? nonzero

然后Maxima再也没有反应,直到我重新启动它 我需要激活或定义的最大值是否有变化才能得到结果?

预期输出应为:
Intermediate result

如果我手动定义等式,我的问题的第二部分是:

sol: y(t) = (m * sin(%omega*t))              / (%omega^2*c^2*r^2 + 1) - 
            (%omega*c*m*r*cos(%omega*t))     / (%omega^2*c^2*r^2 + 1) +
            (%omega*c*m*r*%e^-((1*t)/(c*r))) / (%omega^2*c^2*r^2 + 1);

连续过程的初始条件:

init_val:-(c*m*r*(%e^-(t/r*c))*%omega)/(c^2*r^2*%omega^2+1); 
atvalue(y(t),t=0, init_val);
try2 : desolve(sol,y(t));
"Is  "%omega"  zero or nonzero?" nonzero;

last term still there

这里的最后一个词仍然存在。这些问题是否基于三角函数的使用?

祝你好运, 马库斯


我通过PPA更新到wxMaxima 13.04.0&千里马5.29.1。现在解决了,但最后一个术语似乎非常复杂。 maxima 5.29.1 desolve result

使用negativ last term和desolve命令执行init_val仍然会在等式中留下%e ^(..)* ....

1 个答案:

答案 0 :(得分:1)

您可能会在Maxima邮件列表中对此问题更感兴趣。请参阅:http://maxima.sourceforge.net/maximalist.html

对于Lutus示例2的第一个版本,我得到:

y(t) = m*sin(%omega*t)/(%omega^2*c^2*r^2+1)
 -%omega*c*m*r*cos(%omega*t)/(%omega^2*c^2*r^2+1)
 +(y(0)*%omega^2*c^3*r^3+%omega*c^2*m*r^2+y(0)*c*r)*%e^-(t/(c*r))
  /(c*r*(%omega^2*c^2*r^2+1))$
如果y(0)= 0,

与预期结果相同。但是,我没有看到假设的位置。

atvalue(y(t),t=0,init_val)之后,我得到与Lutus相同的结果,即:

y(t) = m*sin(%omega*t)/(%omega^2*c^2*r^2+1)
 -%omega*c*m*r*cos(%omega*t)/(%omega^2*c^2*r^2+1)$

我正在使用在Linux上使用Clisp构建的Maxima 5.31.1。