2.35.3 Problem 3

2.35.3.1 Maple
2.35.3.2 Mathematica
2.35.3.3 Sympy

Internal problem ID [13927]
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.3-1. Equations with exponential functions
Problem number : 3
Date solved : Friday, December 19, 2025 at 08:50:17 PM
CAS classification : [[_2nd_order, _with_linear_symmetries]]

\begin{align*} y^{\prime \prime }+a \left (\lambda \,{\mathrm e}^{\lambda x}-a \,{\mathrm e}^{2 \lambda x}\right ) y&=0 \\ \end{align*}
2.35.3.1 Maple. Time used: 0.014 (sec). Leaf size: 32
ode:=diff(diff(y(x),x),x)+a*(lambda*exp(lambda*x)-a*exp(2*lambda*x))*y(x) = 0; 
dsolve(ode,y(x), singsol=all);
 
\[ y = {\mathrm e}^{-\frac {a \,{\mathrm e}^{\lambda x}}{\lambda }} \left (c_2 \,\operatorname {Ei}_{1}\left (-\frac {2 a \,{\mathrm e}^{\lambda x}}{\lambda }\right )+c_1 \right ) \]

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 
-> 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 
   trying a quadrature 
   checking if the LODE has constant coefficients 
   checking if the LODE is of Euler type 
   trying a symmetry of the form [xi=0, eta=F(x)] 
   checking if the LODE is missing y 
   -> 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 
   Change of variables used: 
      [x = ln(t)/lambda] 
   Linear ODE actually solved: 
      (-a^2*t+a*lambda)*u(t)+lambda^2*diff(u(t),t)+lambda^2*t*diff(diff(u(t),t)\ 
,t) = 0 
<- change of variables successful
 
2.35.3.2 Mathematica. Time used: 0.386 (sec). Leaf size: 37
ode=D[y[x],{x,2}]+a*(\[Lambda]*Exp[\[Lambda]*x]-a*Exp[2*\[Lambda]*x])*y[x]==0; 
ic={}; 
DSolve[{ode,ic},y[x],x,IncludeSingularSolutions->True]
 
\begin{align*} y(x)&\to e^{-\frac {a e^{\lambda x}}{\lambda }} \left (c_2 \operatorname {ExpIntegralEi}\left (\frac {2 a e^{x \lambda }}{\lambda }\right )+c_1\right ) \end{align*}
2.35.3.3 Sympy
from sympy import * 
x = symbols("x") 
a = symbols("a") 
lambda_ = symbols("lambda_") 
y = Function("y") 
ode = Eq(a*(-a*exp(2*lambda_*x) + lambda_*exp(lambda_*x))*y(x) + Derivative(y(x), (x, 2)),0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
False
 
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)) 
 
('2nd_power_series_ordinary',)