2.1.3.4 Sympy. Time used: 0.213 (sec). Leaf size: 15
from sympy import * 
x = symbols("x") 
k = symbols("k") 
y = Function("y") 
ode = Eq(k**2*y(x) + Derivative(y(x), (x, 2)) + Derivative(y(x), x)/x,0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
\begin{gather*} \begin {aligned} y{\left (x \right )} = C_{1} J_{0}\left (k x\right ) + C_{2} Y_{0}\left (k x\right ) \end {aligned} \end{gather*}
Python version: 3.12.3 (main, Aug 14 2025, 17:47:21) [GCC 13.3.0] 
Sympy version 1.14.0
 
classify_ode(ode,func=y(x)) 
 
('factorable', '2nd_linear_bessel', '2nd_power_series_regular')