nm

11738 Reputation

20 Badges

13 years, 160 days

MaplePrimes Activity


These are questions asked by nm

Maple 2019.2.

These two expressions are mathematically equivalent:

But simplify(expr1-expr2) does not give zero where simplify(convert(expr1,trig)-expr2) does.

Is this normal behavior or can be expected sometimes? As a user I would have expected Maple internally to figure all of this itself. Compare to Mathematica:

Is there a different command in Maple that will show mathematical equivalence of two expressions to try other than simplify?

Thanks
 

restart;

expr1:=(-exp(n*Pi*(2*b - y)/a) + exp(n*Pi*y/a))/((exp(2*n*Pi*b/a) - 1)):
expr2:= sinh(n*Pi/a*y)/tanh(n*Pi/a*b)-cosh(n*Pi/a*y):
simplify(expr1-expr2);

(-sinh(n*Pi*b/a)*exp(n*Pi*(2*b-y)/a)+(-sinh(n*Pi*y/a)*cosh(n*Pi*b/a)+cosh(n*Pi*y/a)*sinh(n*Pi*b/a))*exp(2*n*Pi*b/a)+(exp(n*Pi*y/a)-cosh(n*Pi*y/a))*sinh(n*Pi*b/a)+sinh(n*Pi*y/a)*cosh(n*Pi*b/a))/((exp(2*n*Pi*b/a)-1)*sinh(n*Pi*b/a))

simplify(convert(expr1,trig)-expr2);

0

 


 

Download q.mw

 

from help, it says about option of 'spacestep'=numeric to pdsolve numerical solver the following

Specifies the spacing of the spatial points on the discrete mesh on which the solution 
is computed, and defaults to 1/20th of the spatial range of the problem, 
r-L, where L is the left boundary, and r is the right. Note: The spacing must 
be small enough that a sufficient number of points are in the spatial domain 
for the given method, boundary conditions, and spatial interpolation (see below). 
If the given value of spacestep does not fit into the input domain an integral 
number of times, the closest smaller step size that does is used. For problems 
using error estimates, or an adaptive approach, the total number of spatial 
points must be odd, so again, if this is not the case for the specified 
spacestep, then it is reduced to satisfy this requirement.

In this problem, the domain is [-1,1]. So the default is 1/20 of this which is 1/10.  Why is it when using spacestep smaller than 1/11, the animator generated from the solution does not work right?  i.e. playing the animate does not produce correct result as the case when using spacestep=1/11 or spacestep=1/10?   

When using spacestep=1/16 or 1/15 or 1/14 or 1/13 or 1/12, it all produce bad animation.  I do not see why that is. 

Any ideas?  Am I doing something wrong?
 

pde := diff(u(x,t),t$2)=diff(u(x,t),x$2):
bc  := u(-1,t)=u(1,t),D[1](u)(-1,t)=D[1](u)(1,t):
f:=x->piecewise(-1/2<x and x<0,x+1/2,0<x and x<1/2,1/2-x,true,0):
plot(f(x),x=-1..1):
ic  := u(x,0)=f(x),D[2](u)(x,0)=0:
sol:=pdsolve(pde,{bc,ic},u(x,t),numeric,time=t,range=-1..1,  timestep=1/16,spacestep=1/16)

_m1793827573184

sol:-animate(t=1,frames=50,title="time = %f");

sol:=pdsolve(pde,{bc,ic},u(x,t),numeric,time=t,range=-1..1,  timestep=1/16,spacestep=1/12):
sol:-animate(t=1,frames=50,title="time = %f");

sol:=pdsolve(pde,{bc,ic},u(x,t),numeric,time=t,range=-1..1,  timestep=1/16,spacestep=1/11):
sol:-animate(t=1,frames=50,title="time = %f");

 

 

Download solving_wave_pde_2.mw

 

 

When solving this 1D wave PDE numerically, if the range used is -Pi..Pi then I get this error

sol:-plot(t=0,numpoints=100);
Error, (in Vector) unable to store '-Pi' when datatype=float[8]

When trying to plot the solution. Changing the range to -1..1 the error goes away.

I would expect the numerical solver to handle these things automatically? 

Please see attached worksheet.   How to work around this if one wants to use range from -Pi..Pi?

 

#wave PDE with periodic BC.
restart;

pde := diff(u(x,t),t$2)=diff(u(x,t),x$2);
bc  := u(-Pi,t)=u(Pi,t),D[1](u)(-Pi,t)=D[1](u)(Pi,t);
f:=x->piecewise(-Pi/2<x and x<Pi/2,1,true,0);
plot(f(x),x=-Pi..Pi);
ic  := u(x,0)=f(x),D[2](u)(x,0)=0;
sol:=pdsolve(pde,{bc,ic},u(x,t),numeric,time=t,range=-Pi..Pi)

pde := diff(u(x, t), t, t) = diff(u(x, t), x, x)

bc := u(-Pi, t) = u(Pi, t), (D[1](u))(-Pi, t) = (D[1](u))(Pi, t)

f := proc (x) options operator, arrow; piecewise(-(1/2)*Pi < x and x < (1/2)*Pi, 1, true, 0) end proc

u(x, 0) = piecewise(-(1/2)*Pi < x and x < (1/2)*Pi, 1, 0), (D[2](u))(x, 0) = 0

_m1174810042944

sol:-plot(t=0,numpoints=100);

Error, (in Vector) unable to store '-Pi' when datatype=float[8]

pde := diff(u(x,t),t$2)=diff(u(x,t),x$2);
bc  := u(-1,t)=u(1,t),D[1](u)(-1,t)=D[1](u)(1,t);
f:=x->piecewise(-1/2<x and x<1/2,1,true,0);
plot(f(x),x=-1..1);
ic  := u(x,0)=f(x),D[2](u)(x,0)=0;
sol:=pdsolve(pde,{bc,ic},u(x,t),numeric,time=t,range=-1..1)

pde := diff(u(x, t), t, t) = diff(u(x, t), x, x)

bc := u(-1, t) = u(1, t), (D[1](u))(-1, t) = (D[1](u))(1, t)

f := proc (x) options operator, arrow; piecewise(-1/2 < x and x < 1/2, 1, true, 0) end proc

u(x, 0) = piecewise(-1/2 < x and x < 1/2, 1, 0), (D[2](u))(x, 0) = 0

_m1174805392512

sol:-plot(t=0,numpoints=100);

 


 

Download solving_wave_pde.mw

This is a solution to a PDE. I solved this by hand and got a much simpler solution. Maple solution is also correct but very complicated. They are both the same, as when I plot them  for different t values, they match. I am sure they are the same. 

How would one simplify Maple solution to the simpler one? Tried number of options to simplify, but can't get Maple to simplify it to the hand solution. Also tried different assumptions on t and x (real, positive etc..) nothing helps.

Maple 2019.1 on windows 10. Physics 436

restart;
pde := diff(u(x,t), t) +1/(x^2+4)*diff(u(x,t),x) =0:
ic:=u(x,0)=exp(x^3+12*x):
maple_sol:=rhs(pdsolve([pde,ic],u(x,t)));

exp(((1/2)*(4*x^3+48*x-12*t+4*(9*(-(1/3)*x^3-4*x+t)^2+256)^(1/2))^(1/3)-8/(4*x^3+48*x-12*t+4*(9*(-(1/3)*x^3-4*x+t)^2+256)^(1/2))^(1/3))*(((1/2)*(4*x^3+48*x-12*t+4*(9*(-(1/3)*x^3-4*x+t)^2+256)^(1/2))^(1/3)-8/(4*x^3+48*x-12*t+4*(9*(-(1/3)*x^3-4*x+t)^2+256)^(1/2))^(1/3))^2+12))

hand_sol:=exp(x^3 - 3*t + 12*x); #this is much simpler

exp(x^3-3*t+12*x)

simplify(maple_sol)

exp(3*((4*x^3+48*x-12*t+4*(x^6-6*t*x^3+24*x^4+9*t^2-72*t*x+144*x^2+256)^(1/2))^(1/3)-4)*((-(1/3)*x^3+t-4*x-(1/3)*(x^6-6*t*x^3+24*x^4+9*t^2-72*t*x+144*x^2+256)^(1/2))*(4*x^3+48*x-12*t+4*(x^6-6*t*x^3+24*x^4+9*t^2-72*t*x+144*x^2+256)^(1/2))^(1/3)-(4/3)*(4*x^3+48*x-12*t+4*(x^6-6*t*x^3+24*x^4+9*t^2-72*t*x+144*x^2+256)^(1/2))^(2/3)-64/3)*((4*x^3+48*x-12*t+4*(x^6-6*t*x^3+24*x^4+9*t^2-72*t*x+144*x^2+256)^(1/2))^(1/3)+4)/(-8*x^3+24*t-96*x-8*(x^6-6*t*x^3+24*x^4+9*t^2-72*t*x+144*x^2+256)^(1/2)))

plot([subs(t=0.1,maple_sol),subs(t=0.1,hand_sol)],x=-1..0.3)

plot([subs(t=5,maple_sol),subs(t=5,hand_sol)],x=-1..0.3)

 

 

Download how_to_simplify.mw

Fyi, this solution to 1D wave pde is wrong. The solution does not even satisfy the PDE itself. Compared it to a numerical solution and they are not the same solution. Do not have time now to write the hand solution. But it is clear the solution is not valid.

I do not know now how to roll back to earlier version of the Physcis packages to see if this used to work OK before. Since when typing Physics:-Version(420) It gives error

Error, (in Physics:-Version) unable to determine the Physics Updates version, could you please report the problem to support@maplesoft.com

And Physics:-Version(425) seems to hang. I am not sure if these commands are supposed to automatically download the physics package from the cloud and install it on my PC or what.

Any way, could someone please verify the solution they get is the same as shown below? May be someone with earlier physics package could try to see if they get different solution?

restart

Physics:-Version()

`The "Physics Updates" version in the MapleCloud is 429 and is the same as the version installed in this computer, created 2019, September 23, 0:14 hours, found in the directory C:\Users\me\maple\toolbox\2019\Physics Updates\lib\`

pde:=diff(u(x,t),t$2)=4*diff(u(x,t),x$2);
ic:=u(x,0)=0,D[2](u)(x,0)=sin(x)^2;
bc:=u(-Pi,t)=0,u(Pi,t)=0;
sol:=pdsolve([pde,ic,bc],u(x,t))

diff(diff(u(x, t), t), t) = 4*(diff(diff(u(x, t), x), x))

u(x, 0) = 0, (D[2](u))(x, 0) = sin(x)^2

u(-Pi, t) = 0, u(Pi, t) = 0

u(x, t) = t*sin(x)^2

pdetest(sol,pde)

-8*t*(2*cos(x)^2-1)

simplify(diff(rhs(sol),t$2)-4*diff(rhs(sol),x$2))

-16*t*cos(x)^2+8*t

 


 

Download sept_23_2019.mw

First 141 142 143 144 145 146 147 Last Page 143 of 208