2.34.13 Problem 251

2.34.13.1 Maple
2.34.13.2 Mathematica
2.34.13.3 Sympy

Internal problem ID [13911]
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-8. Other equations.
Problem number : 251
Date solved : Friday, December 19, 2025 at 08:28:22 PM
CAS classification : [[_2nd_order, _with_linear_symmetries]]

\begin{align*} x \left (x^{n}+1\right ) y^{\prime \prime }+\left (\left (a -b \right ) x^{n}+a -n \right ) y^{\prime }+b \left (-a +1\right ) x^{n -1} y&=0 \\ \end{align*}
2.34.13.1 Maple. Time used: 0.020 (sec). Leaf size: 65
ode:=x*(x^n+1)*diff(diff(y(x),x),x)+((a-b)*x^n+a-n)*diff(y(x),x)+b*(1-a)*x^(n-1)*y(x) = 0; 
dsolve(ode,y(x), singsol=all);
 
\[ y = \left (x^{-a +n +1} c_2 \operatorname {hypergeom}\left (\left [\frac {b +n}{n}, \frac {-a +n +1}{n}\right ], \left [\frac {2 n +1-a}{n}\right ], -x^{n}\right )+c_1 \right ) \left (x^{n}+1\right )^{\frac {b}{n}} \]

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 Liouvillian solution using Kovacics algorithm 
      A Liouvillian solution exists 
      Reducible group (found an exponential solution) 
      Group is reducible, not completely reducible 
   <- Kovacics algorithm successful 
<- Equivalence, under non-integer power transformations successful
 
2.34.13.2 Mathematica. Time used: 0.058 (sec). Leaf size: 69
ode=x*(x^n+1)*D[y[x],{x,2}]+((a-b)*x^n+a-n)*D[y[x],x]+b*(1-a)*x^(n-1)*y[x]==0; 
ic={}; 
DSolve[{ode,ic},y[x],x,IncludeSingularSolutions->True]
 
\begin{align*} y(x)&\to c_2 \left (x^n\right )^{\frac {-a+n+1}{n}} \operatorname {Hypergeometric2F1}\left (1,\frac {-a-b+n+1}{n},\frac {-a+2 n+1}{n},-x^n\right )+c_1 \left (x^n+1\right )^{b/n} \end{align*}
2.34.13.3 Sympy
from sympy import * 
x = symbols("x") 
a = symbols("a") 
b = symbols("b") 
n = symbols("n") 
y = Function("y") 
ode = Eq(b*x**(n - 1)*(1 - a)*y(x) + x*(x**n + 1)*Derivative(y(x), (x, 2)) + (a - n + x**n*(a - b))*Derivative(y(x), x),0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
TypeError : Add object cannot be interpreted as an integer
 
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_hypergeometric', '2nd_hypergeometric_Integral', '2nd_power_series_regular')