Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

For some non-linear ODEs there is only implicit form of solution using DSolve. For example

DSolve[(y[x] + x - 1)*y'[x] - y[x] + 2 x + 3 == 0, y[x], x]

gives implicit solution

Solve[2/3 (Sqrt[2]ArcTan[(-2 + (2 (2 + 3 x))/(-1 + x + y[x]))/(2 Sqrt[2])]-Log[((-1 + x +y[x])^2 (3 + ((2 + 3 x) (-2 + (2 + 3 x)/(-1 + x +y[x])))/(-1 + x + y[x])))/(2 + 3 x)^2]) == C[1] + 4/3 Log[2 + 3 x], y[x]]

I'm solving a non-linear second-order ODE that has 4 explicit solutions. The formulas for these solutions are gigantic so I would like to see it in the implicit form because I hope it might be simpler.

Is there a way how to show the implicit form of solution of ODE even though the equation has the explicit solution?

(Just to be specific - the equation I'm solving reads

DSolve[(1 + G (A + y[x])^3) y''[x] + 3*G (A + y[x])^2 (y'[x])^2 + R == 0, y[x], x]

where $A,G,R \in \mathbb{R}$.)

Thank you for any kind of help.

share|improve this question

1 Answer 1

up vote 3 down vote accepted

I did not see there is an easy way to do it within DSolve. But for ODEs which could be integrated directly, using Integrate would be a possible choice to get the implicit solution. For the problem mentioned, it could be integrated directly by

Integrate[ 
  Integrate[ (1 + G (A + y[x])^3) y''[x] + 3G (A + y[x])^2 (y'[x])^2 + R, x] 
  - C[1], x] - C[2] == 0
(R x^2)/2 - x C[1] - C[2] + y[x] + A^3 G y[x] + 3/2 A^2 G y[x]^2 
 + A G y[x]^3 + 1/4 G y[x]^4 == 0

Here C[1] and C[2] are integration constants.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.