2.28.49 Problem 59

2.28.49.1 Maple
2.28.49.2 Mathematica
2.28.49.3 Sympy

Internal problem ID [13720]
Book : Handbook of exact solutions for ordinary differential equations. By Polyanin and Zaitsev. Second edition
Section : Chapter 2, Second-Order Differential Equations. section 2.1.2-2
Problem number : 59
Date solved : Friday, December 19, 2025 at 11:10:38 AM
CAS classification : [[_2nd_order, _with_linear_symmetries]]

\begin{align*} y^{\prime \prime }+\left (x^{n} a +b \,x^{m}\right ) y^{\prime }+\left (a b \,x^{m +n}+b \left (m +1\right ) x^{m -1}-a \,x^{n -1}\right ) y&=0 \\ \end{align*}
2.28.49.1 Maple
ode:=diff(diff(y(x),x),x)+(a*x^n+b*x^m)*diff(y(x),x)+(x^(m+n)*a*b+b*(m+1)*x^(m-1)-a*x^(n-1))*y(x) = 0; 
dsolve(ode,y(x), singsol=all);
 
\[ \text {No solution found} \]

Maple trace

Methods for second order ODEs: 
--- Trying classification methods --- 
trying a symmetry of the form [xi=0, eta=F(x)] 
checking if the LODE is missing y 
-> Trying an equivalence, under non-integer power transformations, 
   to LODEs admitting Liouvillian solutions. 
-> Trying a solution in terms of special functions: 
   -> Bessel 
   -> elliptic 
   -> Legendre 
   -> Kummer 
      -> hyper3: Equivalence to 1F1 under a power @ Moebius 
   -> hypergeometric 
      -> heuristic approach 
      -> hyper3: Equivalence to 2F1, 1F1 or 0F1 under a power @ Moebius 
   -> Mathieu 
      -> Equivalence to the rational form of Mathieu ODE under a power @ Moebi\ 
us 
-> Heun: Equivalence to the GHE or one of its 4 confluent cases under a power \ 
@ Moebius 
-> Heun: Equivalence to the GHE or one of its 4 confluent cases under a power \ 
@ Moebius 
-> trying a solution of the form r0(x) * Y + r1(x) * Y where Y = exp(int(r(x),\ 
 dx)) * 2F1([a1, a2], [b1], f) 
-> Trying changes of variables to rationalize or make the ODE simpler 
<- unable to find a useful change of variables 
   trying a symmetry of the form [xi=0, eta=F(x)] 
   trying 2nd order exact linear 
   trying symmetries linear in x and y(x) 
   trying to convert to a linear ODE with constant coefficients 
   trying 2nd order, integrating factor of the form mu(x,y) 
   trying a symmetry of the form [xi=0, eta=F(x)] 
   checking if the LODE is missing y 
   -> Trying an equivalence, under non-integer power transformations, 
      to LODEs admitting Liouvillian solutions. 
   -> Trying a solution in terms of special functions: 
      -> Bessel 
      -> elliptic 
      -> Legendre 
      -> Kummer 
         -> hyper3: Equivalence to 1F1 under a power @ Moebius 
      -> hypergeometric 
         -> heuristic approach 
         -> hyper3: Equivalence to 2F1, 1F1 or 0F1 under a power @ Moebius 
      -> Mathieu 
         -> Equivalence to the rational form of Mathieu ODE under a power @ Mo\ 
ebius 
   -> Heun: Equivalence to the GHE or one of its 4 confluent cases under a pow\ 
er @ Moebius 
   -> Heun: Equivalence to the GHE or one of its 4 confluent cases under a pow\ 
er @ Moebius 
   -> trying a solution of the form r0(x) * Y + r1(x) * Y where Y = exp(int(r(\ 
x), dx)) * 2F1([a1, a2], [b1], f) 
   -> Trying changes of variables to rationalize or make the ODE simpler 
   <- unable to find a useful change of variables 
      trying a symmetry of the form [xi=0, eta=F(x)] 
   trying to convert to an ODE of Bessel type 
   -> trying reduction of order to Riccati 
      trying Riccati sub-methods: 
         trying Riccati_symmetries 
         -> trying a symmetry pattern of the form [F(x)*G(y), 0] 
         -> trying a symmetry pattern of the form [0, F(x)*G(y)] 
         -> trying a symmetry pattern of the form [F(x),G(x)*y+H(x)] 
--- Trying Lie symmetry methods, 2nd order --- 
   -> Computing symmetries using: way = 3 
[0, y] 
   <- successful computation of symmetries. 
   -> Computing symmetries using: way = 5
 
2.28.49.2 Mathematica
ode=D[y[x],{x,2}]+(a*x^n+b*x^m)*D[y[x],x]+(a*b*x^(n+m)+b*(m+1)*x^(m-1)-a*x^(n-1))*y[x]==0; 
ic={}; 
DSolve[{ode,ic},y[x],x,IncludeSingularSolutions->True]
 

Not solved

2.28.49.3 Sympy
from sympy import * 
x = symbols("x") 
a = symbols("a") 
b = symbols("b") 
m = symbols("m") 
n = symbols("n") 
y = Function("y") 
ode = Eq((a*x**n + b*x**m)*Derivative(y(x), x) + (a*b*x**(m + n) - a*x**(n - 1) + b*x**(m - 1)*(m + 1))*y(x) + Derivative(y(x), (x, 2)),0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
TypeError : Add object cannot be interpreted as an integer