2.18.3 Problem 31

2.18.3.1 Solved using first_order_ode_riccati_by_guessing_particular_solution
2.18.3.2 Maple
2.18.3.3 Mathematica
2.18.3.4 Sympy

Internal problem ID [13445]
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.7-3. Equations containing arctangent.
Problem number : 31
Date solved : Wednesday, December 31, 2025 at 09:36:23 PM
CAS classification : [_Riccati]

2.18.3.1 Solved using first_order_ode_riccati_by_guessing_particular_solution

1.742 (sec)

Entering first order ode riccati guess solver

\begin{align*} y^{\prime }&=\lambda \operatorname {arccot}\left (x \right )^{n} y^{2}+a y+a b -b^{2} \lambda \operatorname {arccot}\left (x \right )^{n} \\ \end{align*}
This is a Riccati ODE. Comparing the above ODE to solve with the Riccati standard form
\[ y' = f_0(x)+ f_1(x)y+f_2(x)y^{2} \]
Shows that
\begin{align*} f_0(x) & =-b^{2} \lambda \operatorname {arccot}\left (x \right )^{n}+a b\\ f_1(x) & =a\\ f_2(x) &=\operatorname {arccot}\left (x \right )^{n} \lambda \end{align*}

Using trial and error, the following particular solution was found

\[ y_p = -b \]
Since a particular solution is known, then the general solution is given by
\begin{align*} y &= y_p + \frac { \phi (x) }{ c_1 - \int { \phi (x) f_2 \,dx} } \end{align*}

Where

\begin{align*} \phi (x) &= e^{ \int 2 f_2 y_p + f_1 \,dx } \end{align*}

Evaluating the above gives the general solution as

\[ y = -b +\frac {{\mathrm e}^{\int \left (-2 \operatorname {arccot}\left (x \right )^{n} \lambda b +a \right )d x}}{c_1 -\int {\mathrm e}^{\int \left (-2 \operatorname {arccot}\left (x \right )^{n} \lambda b +a \right )d x} \operatorname {arccot}\left (x \right )^{n} \lambda d x} \]

Summary of solutions found

\begin{align*} y &= -b +\frac {{\mathrm e}^{\int \left (-2 \operatorname {arccot}\left (x \right )^{n} \lambda b +a \right )d x}}{c_1 -\int {\mathrm e}^{\int \left (-2 \operatorname {arccot}\left (x \right )^{n} \lambda b +a \right )d x} \operatorname {arccot}\left (x \right )^{n} \lambda d x} \\ \end{align*}
2.18.3.2 Maple. Time used: 0.006 (sec). Leaf size: 87
ode:=diff(y(x),x) = lambda*arccot(x)^n*y(x)^2+a*y(x)+a*b-b^2*lambda*arccot(x)^n; 
dsolve(ode,y(x), singsol=all);
 
\[ y = \frac {-\int \operatorname {arccot}\left (x \right )^{n} {\mathrm e}^{-\int \left (2 \operatorname {arccot}\left (x \right )^{n} \lambda b -a \right )d x}d x b \lambda -c_1 b -{\mathrm e}^{-\int \left (2 \operatorname {arccot}\left (x \right )^{n} \lambda b -a \right )d x}}{c_1 +\lambda \int \operatorname {arccot}\left (x \right )^{n} {\mathrm e}^{-\int \left (2 \operatorname {arccot}\left (x \right )^{n} \lambda b -a \right )d x}d x} \]

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) = (arccot(x)*a*x^2+ 
arccot(x)*a-n)/(x^2+1)/arccot(x)*diff(y(x),x)+lambda*arccot(x)^n*b*(arccot(x)^n 
*lambda*b-a)*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 
         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 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 with_periodic_functions in the coefficients 
      <- 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 
            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 und\ 
er a power @ Moebius 
            -> trying a solution of the form r0(x) * Y + r1(x) * Y where Y = e\ 
xp(int(r(x), dx)) * 2F1([a1, a2], [b1], f) 
               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 with_periodic_functions in the coefficients 
         <- 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)-(lambda*arccot(x)^n*y(x)^2+y(x 
)+a*y(x)*x+x^2*(a*b-b^2*lambda*arccot(x)^n))/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)] 
   <- symmetry pattern of the form [0, F(x)*G(y)] successful 
   <- Riccati with symmetry pattern of the form [0,F(x)*G(y)] successful
 

Maple step by step

\[ \begin {array}{lll} & {} & \textrm {Let's solve}\hspace {3pt} \\ {} & {} & \frac {d}{d x}y \left (x \right )=\lambda \mathrm {arccot}\left (x \right )^{13445} y \left (x \right )^{2}+a y \left (x \right )+a b -b^{2} \lambda \mathrm {arccot}\left (x \right )^{13445} \\ \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 )=\lambda \mathrm {arccot}\left (x \right )^{13445} y \left (x \right )^{2}+a y \left (x \right )+a b -b^{2} \lambda \mathrm {arccot}\left (x \right )^{13445} \end {array} \]
2.18.3.3 Mathematica. Time used: 1.241 (sec). Leaf size: 240
ode=D[y[x],x]==\[Lambda]*ArcCot[x]^n*y[x]^2+a*y[x]+a*b-b^2*\[Lambda]*ArcCot[x]^n; 
ic={}; 
DSolve[{ode,ic},y[x],x,IncludeSingularSolutions->True]
 
\[ \text {Solve}\left [\int _1^x-\frac {\exp \left (-\int _1^{K[2]}\left (2 b \lambda \cot ^{-1}(K[1])^n-a\right )dK[1]\right ) \left (-b \lambda \cot ^{-1}(K[2])^n+\lambda y(x) \cot ^{-1}(K[2])^n+a\right )}{a n \lambda (b+y(x))}dK[2]+\int _1^{y(x)}\left (\frac {\exp \left (-\int _1^x\left (2 b \lambda \cot ^{-1}(K[1])^n-a\right )dK[1]\right )}{a n \lambda (b+K[3])^2}-\int _1^x\left (\frac {\exp \left (-\int _1^{K[2]}\left (2 b \lambda \cot ^{-1}(K[1])^n-a\right )dK[1]\right ) \left (-b \lambda \cot ^{-1}(K[2])^n+\lambda K[3] \cot ^{-1}(K[2])^n+a\right )}{a n \lambda (b+K[3])^2}-\frac {\exp \left (-\int _1^{K[2]}\left (2 b \lambda \cot ^{-1}(K[1])^n-a\right )dK[1]\right ) \cot ^{-1}(K[2])^n}{a n (b+K[3])}\right )dK[2]\right )dK[3]=c_1,y(x)\right ] \]
2.18.3.4 Sympy
from sympy import * 
x = symbols("x") 
a = symbols("a") 
b = symbols("b") 
lambda_ = symbols("lambda_") 
n = symbols("n") 
y = Function("y") 
ode = Eq(-a*b - a*y(x) + b**2*lambda_*(-atan(x) + pi/2)**n - lambda_*(-atan(x) + pi/2)**n*y(x)**2 + Derivative(y(x), x),0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
Timed Out