Maxima doesn't find an expected solution for a diff eq with desolve
Subject: Maxima doesn't find an expected solution for a diff eq with desolve
From: Marcus Menzel
Date: Sun, 27 Oct 2013 22:31:21 +0100
During my practicing with wxmaxima 11.08.0 (maxima 5.24.0 from Ubuntu) I
followed examples from P.Lutus
(http://arachnoid.com/maxima/differential_equations.html)
and his second example didn't worked out for me.
I asked this question on stackoverflow
(http://stackoverflow.com/questions/19078809/maxima-doesnt-find-a-solution-for-diff-eq-with-desolve)
some time ago and was adviced to this list.
-------------------
eq: y(t) = -r*c*'diff(y(t),t)+m*sin(%omega*t);
assume(%omega > 0)$
sol:desolve( eq, y(t) );
then Maxima isn't reacting anymore until I restart it.
After an update via PPA to wxMaxima 13.04.0 & Maxima 5.29.1 desolve finished,
but the last term is different to the result Mr Lutus got.
his result was:
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);
my result is:
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))
-------------------
If I define the result from Mr. Lutus by hand and try to get ride of the
e^?t*... part of the equation following the example steps it doesn't work
either.
init_val:-(c*m*r*(%e^-(t/r*c))*%omega)/(c^2*r^2*%omega^2+1);
atvalue(y(t),t=0, init_val);
desolve(sol,y(t));
%o 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)*%e^(?t/(c*r))
-------------------
I tried a self compiled version of Maxima 5.31.2, build with clisp (Ubuntu
12.04 repro). The results were the same as under version 5.29.1 with sbcl.
Trying this steps under Windows 7 with Maxima 5.30 (freshly installed) gave
the same result.
Maybe I missed some predefinitions or something else to retrive the example
results, since I'm a beginner with maxima.
Best regards
Marcus Menzel