2.11.5 Problem 31

2.11.5.1 Solved using first_order_ode_riccati_by_guessing_particular_solution
2.11.5.2 Maple
2.11.5.3 Mathematica
2.11.5.4 Sympy

Internal problem ID [13393]
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.6-3. Equations with tangent.
Problem number : 31
Date solved : Wednesday, December 31, 2025 at 02:20:22 PM
CAS classification : [_Riccati]

2.11.5.1 Solved using first_order_ode_riccati_by_guessing_particular_solution

1.606 (sec)

Entering first order ode riccati guess solver

\begin{align*} y^{\prime }&=y^{2}+a \tan \left (\beta x \right ) y+a b \tan \left (\beta x \right )-b^{2} \\ \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) & =a b \tan \left (\beta x \right )-b^{2}\\ f_1(x) & =\tan \left (\beta x \right ) a\\ f_2(x) &=1 \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}^{\frac {a \ln \left (1+\tan \left (\beta x \right )^{2}\right )}{2 \beta }-2 b x}}{c_1 -\int {\mathrm e}^{\frac {a \ln \left (1+\tan \left (\beta x \right )^{2}\right )}{2 \beta }-2 b x}d x} \]

Summary of solutions found

\begin{align*} y &= -b +\frac {{\mathrm e}^{\frac {a \ln \left (1+\tan \left (\beta x \right )^{2}\right )}{2 \beta }-2 b x}}{c_1 -\int {\mathrm e}^{\frac {a \ln \left (1+\tan \left (\beta x \right )^{2}\right )}{2 \beta }-2 b x}d x} \\ \end{align*}
2.11.5.2 Maple. Time used: 0.003 (sec). Leaf size: 54
ode:=diff(y(x),x) = y(x)^2+a*tan(beta*x)*y(x)+a*b*tan(beta*x)-b^2; 
dsolve(ode,y(x), singsol=all);
 
\[ y = -b +\frac {\left (\sec \left (\beta x \right )^{2}\right )^{\frac {a}{2 \beta }} {\mathrm e}^{-2 b x}}{-\int \left (\sec \left (\beta x \right )^{2}\right )^{\frac {a}{2 \beta }} {\mathrm e}^{-2 b x}d x +c_1} \]

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: 
   <- Riccati particular case Kamke (b) successful
 

Maple step by step

\[ \begin {array}{lll} & {} & \textrm {Let's solve}\hspace {3pt} \\ {} & {} & \frac {d}{d x}y \left (x \right )=y \left (x \right )^{2}+a \tan \left (\beta x \right ) y \left (x \right )+a b \tan \left (\beta x \right )-b^{2} \\ \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 )=y \left (x \right )^{2}+a \tan \left (\beta x \right ) y \left (x \right )+a b \tan \left (\beta x \right )-b^{2} \end {array} \]
2.11.5.3 Mathematica. Time used: 4.036 (sec). Leaf size: 187
ode=D[y[x],x]==y[x]^2+a*Tan[\[Beta]*x]*y[x]+a*b*Tan[\[Beta]*x]-b^2; 
ic={}; 
DSolve[{ode,ic},y[x],x,IncludeSingularSolutions->True]
 
\[ \text {Solve}\left [\int _1^x-\frac {e^{-2 b K[1]} \cos ^{-\frac {a}{\beta }}(\beta K[1]) (-b+a \tan (\beta K[1])+y(x))}{a \beta (b+y(x))}dK[1]+\int _1^{y(x)}\left (\frac {e^{-2 b x} \cos ^{-\frac {a}{\beta }}(x \beta )}{a \beta (b+K[2])^2}-\int _1^x\left (\frac {e^{-2 b K[1]} \cos ^{-\frac {a}{\beta }}(\beta K[1]) (-b+K[2]+a \tan (\beta K[1]))}{a \beta (b+K[2])^2}-\frac {e^{-2 b K[1]} \cos ^{-\frac {a}{\beta }}(\beta K[1])}{a \beta (b+K[2])}\right )dK[1]\right )dK[2]=c_1,y(x)\right ] \]
2.11.5.4 Sympy
from sympy import * 
x = symbols("x") 
BETA = symbols("BETA") 
a = symbols("a") 
b = symbols("b") 
y = Function("y") 
ode = Eq(-a*b*tan(BETA*x) - a*y(x)*tan(BETA*x) + b**2 - y(x)**2 + Derivative(y(x), x),0) 
ics = {} 
dsolve(ode,func=y(x),ics=ics)
 
NotImplementedError : The given ODE -a*b*tan(BETA*x) - a*y(x)*tan(BETA*x) + b**2 - y(x)**2 + Derivative(y(x), x) cannot be solved by the lie group method