4.12.14 \(x (x-a y(x)) y'(x)=y(x) (y(x)-a x)\)

ODE
\[ x (x-a y(x)) y'(x)=y(x) (y(x)-a x) \] ODE Classification

[[_homogeneous, `class A`], _rational, [_Abel, `2nd type``class B`]]

Book solution method
Homogeneous equation

Mathematica
cpu = 0.0312607 (sec), leaf count = 34

\[\text {Solve}\left [(a-1) \log \left (1-\frac {y(x)}{x}\right )+(a+1) \log (x)+\log \left (\frac {y(x)}{x}\right )=c_1,y(x)\right ]\]

Maple
cpu = 0.023 (sec), leaf count = 51

\[ \left \{ {\frac {1}{1+a} \left (\left (1-a \right ) \ln \left ({\frac {y \relax (x ) -x}{x}} \right ) -\ln \left ({\frac {y \relax (x ) }{x}} \right ) + \left (-a-1 \right ) \ln \relax (x ) -{\it \_C1}\,a-{\it \_C1} \right ) }=0 \right \} \] Mathematica raw input

DSolve[x*(x - a*y[x])*y'[x] == y[x]*(-(a*x) + y[x]),y[x],x]

Mathematica raw output

Solve[(1 + a)*Log[x] + Log[y[x]/x] + (-1 + a)*Log[1 - y[x]/x] == C[1], y[x]]

Maple raw input

dsolve(x*(x-a*y(x))*diff(y(x),x) = y(x)*(y(x)-a*x), y(x),'implicit')

Maple raw output

((1-a)*ln((y(x)-x)/x)-ln(y(x)/x)+(-a-1)*ln(x)-_C1*a-_C1)/(1+a) = 0