Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am not a math major, so I thought to check with the experts here on this.

Given some ODE $y'(x)=f(y,x)$ solved by CAS system A which gives answer $y_1(x)$. Same ODE solved by CAS system B with answer $y_2(x)$.

Since the ODE does not involve initial conditions, Answers will contain constant(s) of integration. Lets say there is one constant of integration $C_0$ for now. (it was a first order ODE)

To verify that $y_1(x)$ is the same as $y_2(x)$, both solutions are plotted over some small range of $x$ around the origin to see if the solutions are the same.

Since there is a constant of integration, it is given some constant value, say the number $1$ in order just to be able to make a plot.

Is this a valid approach? Some of the answers are too complicated to visually verify the expressions are equivalent. But sometimes the solutions to the same ODE do not come up the same in the plot. There remains some difference. That is why I am asking here, if there is a better way to do this.

To make things more clear, an example below is given, with the solution from Maple and Mathematica. Both involve one constant of integration. Using $C_0=1$ the plots of the solutions are generated. Yet we see the plots of $y(x)$ are not exactly the same. There is still a shift involved. (The method has to be numerical, as it is simpler for quick verification).

the ODE is Kamke's #131 given by $\left( 1+2x\right) y^{\prime}\left( x\right) +2-4e^{-y\left( x\right) }=0$

The ODE is in Mathematica syntax:

ode131 = (2*x + 1)*D[y[x], x] - 4*Exp[-y[x]] + 2 == 0
DSolve[%, y[x], x]

which gives

{{y[x] -> Log[2 - E^C[1]/(1 + 2*x)]}}

In Maple 16


which gives

y(x) = -ln((1+2*x)/(-1+2*exp(2*_C1)+4*x*exp(2*_C1)))-2*_C1

Here is a plot of both solutions next to each others. We see the shift. Actually using different numerical value for the constant of integration, makes the solutions even more different looking. This is with $C_0=1$

(ps. Log is natural log in Mathematica)

enter image description here

FYI, the equation from the book (it is written in German) and solution is

enter image description here


Using suggestion below by Mhenni Benghorbal, Maple says both solutions are the same:

ode := (2*x+1)*diff(y(x),x)-4*exp(-y(x))+2:
mapleSol := dsolve( ode ):
odetest( mapleSol, ode );


mathematicaSol:=y(x)=ln(2 - (exp^_C1)/(1 + 2*x)):
odetest( mathematicaSol, ode );

So the answers the same. I'd still like to know if possible from Mathematics point of view why just plugging the same constant in the solutions and plotting the resulting function do not show the same shapes.

share|cite|improve this question
Try to ask at as well, Nasser. – Babak S. Dec 5 '12 at 9:28
up vote 1 down vote accepted

In maple, you can run the "odetest" command, for example

ode := (2*x+1)*diff(y(x),x)-4*exp(-y(x))+2;

sol := dsolve( ode );

odetest( sol, ode );

If the function satisfies the ode then "odetest" returns $0$. So you can take mathematica answer and write in the maple worksheet and run the "odetest" and see what you get.

share|cite|improve this answer
Thanks, that is useful. I just did , please see edit. I get 0 for both answers. – Nasser Dec 5 '12 at 10:12
@NasserM.Abbasi: Constants are determined by the initial conditions. – Mhenni Benghorbal Dec 5 '12 at 10:17
@NasserM.Abbasi: Since you have two different forms of solutions, then you need to relate the constants in the two solutions first. – Mhenni Benghorbal Dec 5 '12 at 10:20

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.