dsolYU = DSolveChangeVariables[
Inactive[DSolve][(-2 - 2 x) t'[x] ==
t[x] - t[x]^3 + (1 + x) t[x]^5 - (1 + x)^2 t[x]^7, t, x], y, u,
x == u - 1] // Activate
quickly returns the implicit solution
Solve[Log[y[u]] +
1/12 (6 Log[u] -
I (-3 I + Sqrt[3]) Log[I + Sqrt[3] - 2 I u y[u]^2] +
I (3 I + Sqrt[3]) Log[-I + Sqrt[3] + 2 I u y[u]^2] + (
6 (-1 + y[u]^2))/(u y[u]^2)) == C[1], y[u]]
You may transform it back with
dsol = dsolYU /. {Solve -> Inactive[Solve], y[u] -> t[x], u -> x + 1}
to get
Inactive[Solve][
Log[t[x]] +
1/12 (6 Log[1 + x] -
I (-3 I + Sqrt[3]) Log[I + Sqrt[3] - 2 I (1 + x) t[x]^2] +
I (3 I + Sqrt[3]) Log[-I + Sqrt[3] + 2 I (1 + x) t[x]^2] + (
6 (-1 + t[x]^2))/((1 + x) t[x]^2)) == C[1], t[x]]
Be careful: The Solve[..]
returned by DSolve
appears to have been Defer[]
-ed. If you use %
or let the Solve
evaluate, it won't finish even for a very long time, if ever.