2.20.6 Problem 39

2.20.6.1 Maple
2.20.6.2 Mathematica
2.20.6.3 Sympy

Internal problem ID [13486]
Book : Handbook of exact solutions for ordinary differential equations. By Polyanin and Zaitsev. Second edition
Section : Chapter 1, section 1.2. Riccati Equation. subsection 1.2.8-2. Equations containing arbitrary functions and their derivatives.
Problem number : 39
Date solved : Friday, December 19, 2025 at 04:57:57 AM
CAS classification : [_Riccati]

\begin{align*} f \left (x \right )^{2} y^{\prime }-f^{\prime }\left (x \right ) y^{2}+g \left (x \right ) \left (y-f \left (x \right )\right )&=0 \\ \end{align*}
Unknown ode type.
2.20.6.1 Maple
ode:=f(x)^2*diff(y(x),x)-diff(f(x),x)*y(x)^2+g(x)*(y(x)-f(x)) = 0; 
dsolve(ode,y(x), singsol=all);
 
\[ \text {No solution found} \]

Maple trace

Methods for first order ODEs: 
--- Trying classification methods --- 
trying a quadrature 
trying 1st order linear 
trying Bernoulli 
trying separable 
trying inverse linear 
trying homogeneous types: 
trying Chini 
differential order: 1; looking for linear symmetries 
trying exact 
Looking for potential symmetries 
trying Riccati 
trying Riccati sub-methods: 
   trying Riccati_symmetries 
   trying Riccati to 2nd Order 
   -> Calling odsolve with the ODE, diff(diff(y(x),x),x) = (diff(diff(f(x),x),x 
)*f(x)^2-2*diff(f(x),x)^2*f(x)-g(x)*diff(f(x),x))/f(x)^2/diff(f(x),x)*diff(y(x) 
,x)-1/f(x)^3*diff(f(x),x)*g(x)*y(x), y(x) 
      *** Sublevel 2 *** 
      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 
      <- 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 
         -> 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 to convert to an ODE of Bessel type 
   -> Trying a change of variables to reduce to Bernoulli 
   -> Calling odsolve with the ODE, diff(y(x),x)-(1/f(x)^2*diff(f(x),x)*y(x)^2+ 
y(x)-1/f(x)^2*g(x)*y(x)*x+x^2/f(x)*g(x))/x, y(x), explicit 
      *** Sublevel 2 *** 
      Methods for first order ODEs: 
      --- Trying classification methods --- 
      trying a quadrature 
      trying 1st order linear 
      trying Bernoulli 
      trying separable 
      trying inverse linear 
      trying homogeneous types: 
      trying Chini 
      differential order: 1; looking for linear symmetries 
      trying exact 
      Looking for potential symmetries 
      trying Riccati 
      trying Riccati sub-methods: 
         trying Riccati_symmetries 
      trying inverse_Riccati 
      trying 1st order ODE linearizable_by_differentiation 
   -> 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 inverse_Riccati 
trying 1st order ODE linearizable_by_differentiation 
--- Trying Lie symmetry methods, 1st order --- 
   -> Computing symmetries using: way = 4 
   -> Computing symmetries using: way = 2 
   -> Computing symmetries using: way = 6
 

Maple step by step

\[ \begin {array}{lll} & {} & \textrm {Let's solve}\hspace {3pt} \\ {} & {} & f \left (x \right )^{2} \left (\frac {d}{d x}y \left (x \right )\right )-\left (\frac {d}{d x}f \left (x \right )\right ) y \left (x \right )^{2}+g \left (x \right ) \left (y \left (x \right )-f \left (x \right )\right )=0 \\ \bullet & {} & \textrm {Highest derivative means the order of the ODE is}\hspace {3pt} 1 \\ {} & {} & \frac {d}{d x}y \left (x \right ) \\ \bullet & {} & \textrm {Solve for the highest derivative}\hspace {3pt} \\ {} & {} & \frac {d}{d x}y \left (x \right )=\frac {\left (\frac {d}{d x}f \left (x \right )\right ) y \left (x \right )^{2}-g \left (x \right ) \left (y \left (x \right )-f \left (x \right )\right )}{f \left (x \right )^{2}} \end {array} \]
2.20.6.2 Mathematica
ode=f[x]^2*D[y[x],x]-D[ f[x],x]*y[x]^2+g[x]*(y[x]-f[x])==0; 
ic={}; 
DSolve[{ode,ic},y[x],x,IncludeSingularSolutions->True]
 

Not solved

2.20.6.3 Sympy
from sympy import * 
x = symbols("x") 
y = Function("y") 
f = Function("f") 
g = Function("g") 
ode = Eq((-f(x) + y(x))*g(x) + f(x)**2*Derivative(y(x), x) - y(x)**2*Derivative(f(x), x),0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
NotImplementedError : The given ODE -((-g(x) + y(x)*Derivative(f(x), x))*y(x) + f(x)*g(x))/f(x)**2 + Derivative(y(x), x) cannot be solved by the factorable group method