4.20.41 ((1a2)x2+y(x)2)y(x)2+2a2xy(x)y(x)+(1a2)y(x)2+x2=0

ODE
((1a2)x2+y(x)2)y(x)2+2a2xy(x)y(x)+(1a2)y(x)2+x2=0 ODE Classification

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

Book solution method
Homogeneous ODE, xnf(yx,y)=0, Solve for p

Mathematica
cpu = 0.176591 (sec), leaf count = 93

{Solve[a1a+1tan1(y(x)x)=c1+12log(y(x)2x2+1)+log(x),y(x)],Solve[a1a+1tan1(y(x)x)+12log(y(x)2x2+1)+log(x)=c1,y(x)]}

Maple
cpu = 0.545 (sec), leaf count = 78

{ln(x)+12ln(x2+(y(x))2x2)a21arctan(y(x)x)_C1=0,ln(x)+12ln(x2+(y(x))2x2)+a21arctan(y(x)x)_C1=0} Mathematica raw input

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

Mathematica raw output

{Solve[Sqrt[-1 + a]*Sqrt[1 + a]*ArcTan[y[x]/x] == C[1] + Log[x] + Log[1 + y[x]^2
/x^2]/2, y[x]], Solve[Sqrt[-1 + a]*Sqrt[1 + a]*ArcTan[y[x]/x] + Log[x] + Log[1 +
 y[x]^2/x^2]/2 == C[1], y[x]]}

Maple raw input

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

Maple raw output

ln(x)+1/2*ln((x^2+y(x)^2)/x^2)-(a^2-1)^(1/2)*arctan(y(x)/x)-_C1 = 0, ln(x)+1/2*l
n((x^2+y(x)^2)/x^2)+(a^2-1)^(1/2)*arctan(y(x)/x)-_C1 = 0