Question: dsolve does not return solution unless given implicit option

I have thought before that Maple's dsolve will try to return implicit solution automatically if unable to find explicit one or for some  other reasons it prefers implicit.

But In this ode, we see Maple returns no solution at all for this first order quadrature ode, even though it can find solution when given implicit option.

Is this a correct behaviour? Should it not have returned this solution automatically?

interface(version);

`Standard Worksheet Interface, Maple 2024.1, Windows 10, June 25 2024 Build ID 1835466`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1774 and is the same as the version installed in this computer, created 2024, July 16, 17:18 hours Pacific Time.`

restart;

ode:=diff(y(x),x)=sin(y(x));
IC:=y(a)=b;

diff(y(x), x) = sin(y(x))

y(a) = b

maple_sol:=dsolve([ode,IC]);

maple_sol:=dsolve([ode,IC],explicit);

maple_sol:=dsolve([ode,IC],implicit);

x-ln(csc(y(x))-cot(y(x)))-a+ln(csc(b)-cot(b)) = 0

 

 

Download why_no_solution_by_dsolve_july_18_2024.mw

Update

I found another example of this problem. Maple gives no solution to this ODE unless option implicit is given. This is not right behaviour. If Maple can't give explicit solution, it should return the implicit one automatically. How is the user supposed to know there is a solution to this ode otherwise?
 

restart;

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1786 and is the same as the version installed in this computer, created 2024, August 10, 8:50 hours Pacific Time.`

restart;

libname;

"C:\Users\Owner\maple\toolbox\2024\Physics Updates\lib", "C:\Program Files\Maple 2024\lib"

ode:=(x^2+y(x)^2-2*y(x))*diff(y(x),x) = 2*x:
IC:=y(0)=1:
sol:=dsolve([ode,IC],y(x));

sol:=dsolve([ode,IC],y(x),'implicit');

-exp(-1)+exp(-y(x))*x^2+exp(-y(x))*y(x)^2 = 0

sol:=dsolve([ode,IC],y(x),'useInt');

y(x) = -RootOf(exp(_Z)*x^2-(Int(_b*(_b-2)/exp(_a), _b = 0 .. -_Z))+Int(_b*(_b-2)/exp(_a), _b = 0 .. 1))

sol:=dsolve([ode,IC],y(x),'explicit');

 


 

Download why_does_not_solve_unless_implicit_august_12_2024.mw

 

Please Wait...