4.18.26 \(a y(x) y'(x)+b x+x y'(x)^2=0\)

ODE
\[ a y(x) y'(x)+b x+x y'(x)^2=0 \] ODE Classification

[[_homogeneous, `class A`], _dAlembert]

Book solution method
No Missing Variables ODE, Solve for \(y\)

Mathematica
cpu = 0.591939 (sec), leaf count = 223

\[\left \{\text {Solve}\left [\frac {-2 a \tan ^{-1}\left (\frac {a y(x)}{x \sqrt {4 b-\frac {a^2 y(x)^2}{x^2}}}\right )+(a+2) \left (2 \tan ^{-1}\left (\frac {(a+2) y(x)}{x \sqrt {4 b-\frac {a^2 y(x)^2}{x^2}}}\right )-i \log \left (\frac {(a+1) y(x)^2}{x^2}+b\right )\right )}{8 (a+1)}=c_1+\frac {1}{2} i \log (x),y(x)\right ],\text {Solve}\left [\frac {-2 a \tan ^{-1}\left (\frac {a y(x)}{x \sqrt {4 b-\frac {a^2 y(x)^2}{x^2}}}\right )+(a+2) \left (2 \tan ^{-1}\left (\frac {(a+2) y(x)}{x \sqrt {4 b-\frac {a^2 y(x)^2}{x^2}}}\right )+i \log \left (\frac {(a+1) y(x)^2}{x^2}+b\right )\right )}{8 (a+1)}=c_1-\frac {1}{2} i \log (x),y(x)\right ]\right \}\]

Maple
cpu = 0.044 (sec), leaf count = 96

\[ \left \{ [x \left ( {\it \_T} \right ) ={\frac {{\it \_T}\,{\it \_C1}}{ \left ( \left ( 1+a \right ) {{\it \_T}}^{2}+b \right ) ^{ \left ( 1+a \right ) ^{-1}}} \left ( \left ( 1+a \right ) {{\it \_T}}^{2}+b \right ) ^{-{\frac {a}{2+2\,a}}}},y \left ( {\it \_T} \right ) =-{\frac { \left ( {{\it \_T}}^{2}+b \right ) {\it \_C1}}{a \left ( \left ( 1+a \right ) {{\it \_T}}^{2}+b \right ) ^{ \left ( 1+a \right ) ^{-1}}} \left ( \left ( 1+a \right ) {{\it \_T}}^{2}+b \right ) ^{-{\frac {a}{2+2\,a}}}}] \right \} \] Mathematica raw input

DSolve[b*x + a*y[x]*y'[x] + x*y'[x]^2 == 0,y[x],x]

Mathematica raw output

{Solve[(-2*a*ArcTan[(a*y[x])/(x*Sqrt[4*b - (a^2*y[x]^2)/x^2])] + (2 + a)*(2*ArcT
an[((2 + a)*y[x])/(x*Sqrt[4*b - (a^2*y[x]^2)/x^2])] - I*Log[b + ((1 + a)*y[x]^2)
/x^2]))/(8*(1 + a)) == C[1] + (I/2)*Log[x], y[x]], Solve[(-2*a*ArcTan[(a*y[x])/(
x*Sqrt[4*b - (a^2*y[x]^2)/x^2])] + (2 + a)*(2*ArcTan[((2 + a)*y[x])/(x*Sqrt[4*b 
- (a^2*y[x]^2)/x^2])] + I*Log[b + ((1 + a)*y[x]^2)/x^2]))/(8*(1 + a)) == C[1] - 
(I/2)*Log[x], y[x]]}

Maple raw input

dsolve(x*diff(y(x),x)^2+a*y(x)*diff(y(x),x)+b*x = 0, y(x),'implicit')

Maple raw output

[x(_T) = ((1+a)*_T^2+b)^(-a/(2+2*a))/(((1+a)*_T^2+b)^(1/(1+a)))*_T*_C1, y(_T) = 
-(_T^2+b)/a*((1+a)*_T^2+b)^(-a/(2+2*a))/(((1+a)*_T^2+b)^(1/(1+a)))*_C1]