1 | initial version |
[ Not really an answer, but the damn server software refuses this as a comment... ]
I don't understand your beef with desolve
's answer :
sage: y=function("y")(x)
sage: E1=diff(y(x),x)==4*y(x)/x+x*sqrt(y(x))
sage: S1=desolve(E1,y(x));S1
1/4*(2*_C + log(x))^2*x^4
sage: var("_C")
_C
sage: bool(E1.subs(y(x)==S1).subs(diff(y(x),x)==diff(S1,x)).canonicalize_radical())
True
Therefore, S1 is a set of solutions of E1 (though possibly not the set of solutions of S1, but this is another question).
BTW, both mathematica
and sympy
give the same answers (modulo presentation and constant's name) :
sage: mathematica("Factor[Part[DSolve[D[y[x],x]==4*y[x]/x+x*Sqrt[y[x]],y[x],x],1,1]]")
y[x] -> (x^4*(2*C[1] + Log[x])^2)/4
sage: import sympy
sage: sympy.dsolve(*[sympy.sympify(u) for u in [E1,y(x)]])_sage_()
y(x) == 1/4*(2*C1 + log(x))^2*x^4
algorithm="fricas"
can't (currently) solve this ODE. Open question : quid of giac
?