Nonlinear first order differential equation

These are called singular solutions. Mathematica sometimes do not find them.

A singular solution, when it exists, is tangent to the family of the general solutions (parameterized be the constant of integration you see there, which is $c_1$). Singular solutions can not be obtained from the general solution by substituting any value for the constant of integration.

Mathematica graphics

For each specific value of $c_1$, we have one solution curve.

The tangent curve to all these solution curves (if it exists) is a singular solution. It exists at the max or min of the solution curves. Hence to find singular solution one way is to do the following (there can be more than one singular solution also)

 sol = y[x] /. First@DSolve[y[x] - y'[x] x - y'[x]^2 == 0, y[x], x]

Mathematica graphics

  envelope = y[x] - sol

Mathematica graphics

Now solve for y[x], the singular solution

Solve[{envelope == 0, D[envelope, C[1]] == 0}, {y[x], C[1]}]

Mathematica graphics

Verify it satisfies the ode

sol = {{y -> Function[{x}, -(x^2/4)]}};
ode /. sol

Mathematica graphics

second example

ode = 1 + y'[x]^2 == 1/y[x]^2;
sol = y[x] /. DSolve[ode, y[x], x]

Mathematica graphics

Mathematica does not find solution $y(x)=-1, y(x)=+1$. To find these

envelope = y[x] - sol[[1]];
Solve[{envelope == 0, D[envelope, C[1]] == 0}, {y[x], C[1]}];

Mathematica graphics

sol = {{y -> Function[{x}, -1]}};
ode /. sol

Mathematica graphics

envelope = y[x] - sol[[2]];
Solve[{envelope == 0, D[envelope, C[1]] == 0}, {y[x], C[1]}]

Mathematica graphics

Third example

ode = y'[x]^2 == 4 y[x];
sol = DSolve[ode, y[x], x]

Mathematica graphics

Mathematica does not give the solution $y=0$ which can't be obtained from the above for any values for $c_1$.

envelope = y[x] - (y[x] /. sol)[[1]]
Solve[{envelope == 0, D[envelope, C[1]] == 0}, {y[x], C[1]}]

Mathematica graphics

sol2 = {{y -> Function[{x}, 0]}};
ode /. sol2

Mathematica graphics

References

(1) https://www.math24.net/singular-solutions-differential-equations/

(2) https://www.britannica.com/science/singular-solution

(3) https://groups.google.com/forum/#!topic/comp.soft-sys.math.mathematica/rxO6yVz-_pk See answer in this link by Devendra Kapadia which the above is mostly based on.

There are other ways to find these singular solutions. Reference (1) above shows more formal methods.


The equilibrium manifold as well as a generic solution can be obtained thru

n = 2;
y[x_] := Sum[Subscript[a, k] x^k, {k, 0, n}]
A = Table[Subscript[a, k], {k, 0, n}]
dif = y[x] - x y'[x] - y'[x]^2
coef = Take[CoefficientList[dif, x], {1, n + 1}]
sols = NSolve[coef == 0, A, Reals]
y[x] /. sols