4.5.23 \(x y'(x)=y(x) f\left (x^m y(x)^n\right )\)

ODE
\[ x y'(x)=y(x) f\left (x^m y(x)^n\right ) \] ODE Classification

[[_homogeneous, `class G`]]

Book solution method
Change of Variable, new dependent variable

Mathematica
cpu = 527.297 (sec), leaf count = 142

\[\text {Solve}\left [c_1=\int _1^{y(x)} -\frac {K[2] \left (n f\left (x^m K[2]^n\right )+m\right ) \left (\int _1^x \frac {m n^2 K[1]^{m-1} K[2]^{n-1} f'\left (K[1]^m K[2]^n\right )}{\left (n f\left (K[1]^m K[2]^n\right )+m\right )^2} \, dK[1]\right )+n}{K[2] \left (n f\left (x^m K[2]^n\right )+m\right )} \, dK[2]+\int _1^x \frac {n f\left (y(x)^n K[1]^m\right )}{K[1] \left (n f\left (y(x)^n K[1]^m\right )+m\right )} \, dK[1],y(x)\right ]\]

Maple
cpu = 0.107 (sec), leaf count = 39

\[ \left \{ \int _{{\it \_b}}^{y \left ( x \right ) }\!{\frac {1}{ \left ( f \left ( {x}^{m}{{\it \_a}}^{n} \right ) n+m \right ) {\it \_a}}}\,{\rm d}{\it \_a}-{\frac {\ln \left ( x \right ) }{n}}-{\it \_C1}=0 \right \} \] Mathematica raw input

DSolve[x*y'[x] == f[x^m*y[x]^n]*y[x],y[x],x]

Mathematica raw output

Solve[C[1] == Integrate[(n*f[K[1]^m*y[x]^n])/((m + n*f[K[1]^m*y[x]^n])*K[1]), {K
[1], 1, x}] + Integrate[-((n + (m + n*f[x^m*K[2]^n])*Integrate[(m*n^2*K[1]^(-1 +
 m)*K[2]^(-1 + n)*Derivative[1][f][K[1]^m*K[2]^n])/(m + n*f[K[1]^m*K[2]^n])^2, {
K[1], 1, x}]*K[2])/((m + n*f[x^m*K[2]^n])*K[2])), {K[2], 1, y[x]}], y[x]]

Maple raw input

dsolve(x*diff(y(x),x) = y(x)*f(x^m*y(x)^n), y(x),'implicit')

Maple raw output

Int(1/(f(x^m*_a^n)*n+m)/_a,_a = _b .. y(x))-ln(x)/n-_C1 = 0