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 = 0.448453 (sec), leaf count = 131
\[\text {Solve}\left [c_1=\int _1^{y(x)}\left (-\frac {n}{\left (m+n f\left (x^m K[2]^n\right )\right ) K[2]}-\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 (m+n f\left (K[1]^m K[2]^n\right )\right )^2}dK[1]\right )dK[2]+\int _1^x\frac {n f\left (K[1]^m y(x)^n\right )}{\left (m+n f\left (K[1]^m y(x)^n\right )\right ) K[1]}dK[1],y(x)\right ]\]
Maple ✓
cpu = 0.124 (sec), leaf count = 39
\[\left [\int _{\textit {\_b}}^{y \left (x \right )}\frac {1}{\left (f \left (x^{m} \textit {\_a}^{n}\right ) n +m \right ) \textit {\_a}}d \textit {\_a} -\frac {\ln \left (x \right )}{n}-\textit {\_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] == Inactive[Integrate][(n*f[K[1]^m*y[x]^n])/((m + n*f[K[1]^m*y[x]^n])
*K[1]), {K[1], 1, x}] + Inactive[Integrate][-(n/((m + n*f[x^m*K[2]^n])*K[2])) -
Inactive[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], 1, y[x]}], y[x]]
Maple raw input
dsolve(x*diff(y(x),x) = y(x)*f(x^m*y(x)^n), y(x))
Maple raw output
[Int(1/(f(x^m*_a^n)*n+m)/_a,_a = _b .. y(x))-ln(x)/n-_C1 = 0]