A particular differential equation... why can't I solve it?

14 vues (au cours des 30 derniers jours)
Yingquan Li
Yingquan Li le 25 Sep 2011
Commenté : darova le 14 Sep 2019
the differential equation: dy/dt = (t-e^-t)/(y+e^y) was assigned by my teacher and supposedly dsolve() can solve it, resulting in an implicit solution. No matter what I try, I think the teacher is wrong because I just get the empty matrix, which according to the documentations means that no solution could be found. Any thoughts? I'm getting nowhere digging in the documentation.

Réponse acceptée

John D'Errico
John D'Errico le 13 Sep 2019
Easier than you might think to solve, even with pencil and paper. But sometimes a computer won't see the trick, at least, not without help. I've seen cases where that happens, but not here. Of course, since this is now an 8 year old, unanswered question. it may also be that dsolve has become smarter since it was originally posed too.
Here, I think it is possible the transcription error was Walter's fault in what he tried, because dsolve succeeds.
syms t y(t)
>> dsolve(diff(y(t), t) == (t-exp(-t))/(y(t)+exp(y(t))))
Warning: Unable to find explicit solution. Returning implicit solution instead.
> In dsolve (line 208)
ans =
solve(2*exp(y) + y^2 == 2*C8 + 2*exp(-t) + t^2, y)
So the solution is indeed an implicit euation. How would we arrive at it without the help of MATLAB? This is a separable equation, if you multiply by the denominators (y + exp(y))*dt. So we have the problem...
(y + exp(y)) dy = (t - exp(-t)) dt
Integrating each side, we get
y^2 / 2 + exp(y) = t^2 /2 + exp(-t) + C
If you now multiply by 2, you should see it is the same implicit problem returned by dsolve. C is of course an unknown constant of integration.
  3 commentaires
John D'Errico
John D'Errico le 13 Sep 2019
Yes. I thought it may have been a transcription error indeed. Its an easy mistake to make too, because the eye sees the exponential, and one mentally puts in a t there to match the numerator.
darova
darova le 14 Sep 2019
Finally! 8 years, guys
Congratulation

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 25 Sep 2011
In Maple,
dsolve(diff(y(t), t) = (t-exp(-t))/(y(t)+exp(t)));
returns empty as well. That suggests that perhaps the equation is not transcribed correctly.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by