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

66 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

John D'Errico
John D'Errico il 13 Set 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 Commenti
John D'Errico
John D'Errico il 13 Set 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 il 14 Set 2019
Finally! 8 years, guys
Congratulation

Accedi per commentare.

Più risposte (1)

Walter Roberson
Walter Roberson il 25 Set 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