nm

11363 Reputation

20 Badges

13 years, 37 days

MaplePrimes Activity


These are questions asked by nm

convert(...,Int) in Maple 2018.2 works for fourier, invfourier, laplace, but does not work for invlaplace.  

Why is that? Is there a workaround?

expr:=fourier(f(x), x, w):
convert(expr,Int);

expr:=invfourier(f(w), w, x):
convert(expr,Int);

expr:=laplace(f(s),s,t):
convert(expr,Int)

expr:=invlaplace(f(s),s,t):
convert(expr,Int)

Was expecting to see the Mellin's inverse formula.

Maple 2018.2 on windows 10

 

Using Latest Physics updates (I am not sure when this started), pdsolve gives Error, (in PDEtools/eval/2) numeric exception: division by zero on the following problem from a HW from text book.

restart;
PackageTools:-IsPackageInstalled("Physics Updates");
                             "220"


pde:=diff(w(x,t),t)+3*t*diff(w(x,t),x)=w(x,t);
ic:=w(x,0)=f(x);
sol:=pdsolve([pde,ic],w(x,t));

Error, (in PDEtools/eval/2) numeric exception: division by zero
 

Mathematica answer btw is 

pde = D[w[x, t], t] + 3 t D[w[x, t], x] == w[x, t];
ic = w[x, 0] == f[x];
sol = Simplify[DSolve[{pde, ic}, w[x, t], {x, t}]]

 

This is on Maple 2018.2 on windows 10 64 bit.

Any idea what is causing this and any workaround? Do others get the same exception?

 

Trying Maple on a textbook problem to verify my hand solution. 

But Maple pdsolve hangs with the mserver.exe tallomg almost 100% CPU and over 10 GB of RAM!

I waited for almost 20 minutes. Tried another time, same thing.

It is no problem if Maple can't solve this, but Maple seems to suffer from too many hangs when it is not able to solve a problem. I've had similar problems with dsolve also.

This is on windows 10, 64 bit with Maple 2018.2 With Physics updates version 218

restart;
PackageTools:-IsPackageInstalled("Physics Updates");

218

interface(showassumed=0);
infolevel[pdsolve]:=2;
pde :=  diff(u(x,t),t)=k*diff(u(x,t),x$2)+Q(x,t);
ic  :=  u(x,0)=f(x);
bc  :=  eval(diff(u(x,t),x),x=0)=A(t),eval(diff(u(x,t),x),x=1)=B(t);
sol:=pdsolve({pde,ic,bc},u(x,t)) assuming t>0,k>0;

then


* trying method "_Fn" for 2nd order PDEs
   -> trying "linear_in_xt"
   -> trying "BC_equal_0"
* trying method "_Cn_cn" for 2nd order PDEs
Trying travelling wave solutions as power series in tanh ...
Trying travelling wave solutions as power series in ln ...
Trying travelling wave solutions as power series in tanh ...
Trying travelling wave solutions as power series in ln ...
* trying method "Wave" for 2nd order PDEs
   -> trying "Cauchy"
   -> trying "SemiInfiniteDomain"
   -> trying "WithSourceTerm"
* trying method "Heat" for 2nd order PDEs
   -> trying "SemiInfiniteDomain"
   -> trying "WithSourceTerm"
* trying method "Series" for 2nd order PDEs
   -> trying "ThreeBCsincos"
   -> trying "FourBC"
   -> trying "ThreeBC"
   -> trying "ThreeBCPeriodic"
   -> trying "WithSourceTerm"
      * trying method "_Fn" for 2nd order PDEs
         -> trying "linear_in_xt"
         -> trying "BC_equal_0"
      * trying method "_Cn_cn" for 2nd order PDEs

And here is hangs. Notice that because both ends are Neumann, there is no unique solution to this problem.  So the solution will contain arbitrary constant. May be this is what made pdsolve hang? 

No it is not. Trying with only one end nonhomogeneous  Neumann, and the other end Dirichlet, it still hangs. The problem seems to be with one end is nonhomogeneous  Neumann, which is a function of time. So this hangs also (same place)

restart;
interface(showassumed=0);
infolevel[pdsolve]:=2;
pde :=  diff(u(x,t),t)=k*diff(u(x,t),x$2)+Q(x,t);
ic  :=  u(x,0)=f(x);
bc  :=  eval(diff(u(x,t),x),x=0)=A(t),eval(diff(u(x,t),x),x=1)=0;
sol:=pdsolve({pde,ic,bc},u(x,t)) assuming t>0,k>0;

And this also

restart;
interface(showassumed=0);
infolevel[pdsolve]:=2;
pde :=  diff(u(x,t),t)=k*diff(u(x,t),x$2)+Q(x,t);
ic  :=  u(x,0)=f(x);
bc  :=  eval(diff(u(x,t),x),x=0)=sin(t),eval(diff(u(x,t),x),x=1)=0;
sol:=pdsolve({pde,ic,bc},u(x,t)) assuming t>0,k>0;

But this does not hang

interface(showassumed=0);
infolevel[pdsolve]:=2;
pde :=  diff(u(x,t),t)=k*diff(u(x,t),x$2)+Q(x,t);
ic  :=  u(x,0)=f(x);
bc  :=  eval(diff(u(x,t),x),x=0)=1,eval(u(x,t),x=1)=0;
sol:=pdsolve({pde,ic,bc},u(x,t)) assuming t>0,k>0;

The issue seems to be when one end is nonhomogeneous  Neumann which is function of time. 

Is there a workaround so it does not hang? The complaint is that Maple hangs, and not that Maple unable to solve the PDE.

 

Why  

eval(diff(u(x,t),x),x=0)=A(t)

gives

But

eval(diff(u(x,t),x),x=L)=A(t)

gives

I was expecting the same syntax in both cases. It seems for numbers Maple uses the first syntax and for symbols it uses the second syntax.

Does one need to worry about this difference?

 

Maple 2018.2 generates wrong latex in this example. In Latex a space in command name is important. So "\tau L" is not the same as "\tauL".  Since in the later case, Latex will complain that there is no command "\tauL"

Maple generates "\tauL" in the latex, when it should be "\tau L" in the following example, so the latex fails to compile because there is no command called "\tauL" in Latex.

Here is screen shot showing the problem and the Maple command to reproduce it

 

 

restart;
interface(showassumed=0);
pde :=  diff(u(x,t),t)=k*diff(u(x,t),x$2)+(exp(-c*t)*sin(2*Pi*x/L));
ic  :=  u(x,0)=f(x);
bc  :=  D[1](u)(0,t)=0, D[1](u)(L,t)=0;
sol:=pdsolve({pde,ic,bc},u(x,t)) assuming L>0,t>0,k>0;

latex(sol)

Any chance Maplesoft could fix this?

Possible workaround for now is to use something like "\newcommand{\tauL}{\tau L}" in preamble for this specific case.

 

First 149 150 151 152 153 154 155 Last Page 151 of 199