nm

11438 Reputation

20 Badges

13 years, 75 days

MaplePrimes Activity


These are questions asked by nm

This is on Maple 2017.3 under windows

After obtaining solution from pdsolve(), I tried to see if Maple can convert it to hyperbolic trig functions by calling `convert(sol,trigh)`. 

 

I waited and waited and nothing happened. Then clicked on the `interrupt current operation` button at top of menu. 

But I found that mserver.exe has hanged in a loop. Taking 100% CPU and still running. So Had to terminate it from task manager.

Question is: It is ok if Maple can't do the conversion, but why does it hang? Maybe if I want for one hr it will finish, I do not know. But the important part, why does `interrupt current operation` does not work, in the sense that the mserver.exe is still running?

Is this common thing to happen? Should this be fixed? 

Here is example

 

restart;
interface(showassumed=0);
pde:=diff(u(x,y),x$2)+diff(u(x,y),y$2)=0;
f:=x-> piecewise(x>0 and x<1/2, 2*x, x>1/2 and x<1, 2-2*x);
bc:=u(0,y)=0,u(1,y)=0,u(x,0)=f(x),u(x,2)=f(x);
sol:=pdsolve([pde,bc],u(x,y)) assuming x>0,y>0;

The above works OK and generates a solution. Now the next call hangs mserver.exe

convert(sol,trigh);

In case your Maple version can't solve the above PDE. Here is the solution obtained, so you can try this below without having to solve the PDE

 

sol := u(x, y) = Sum(8*sin((1/2)*n*Pi)*sin(Pi*x*n)*(exp(Pi*n*(3*y-2))-
         exp(Pi*n*(3*y-4))+exp(Pi*y*n)-exp(Pi*n*(y-2)))*exp(-2*Pi*n*(y-2))/(Pi^2*n^2*(exp(4*n*Pi)-1)),
            n = 0 .. infinity);
convert(sol,trigh);

I also tried convert(rhs(sol),trigh); but it made no difference.

 

I might be doing something wrong since I expected Maple to be able to solve this. Could some Maple manage to make Maple solve the following beam PDE problem taken from a textbook?

 

This is what I tried.

restart;
pde:=diff(u(x,t),t$2)+diff(u(x,t),x$4)=0;
bc:=u(0,t)=-12*t^2,u(1,t)=1-12*t^2,D[1,1](u)(0,t)=0,D[1,1](u)(1,t)=12;
ic:=u(x,0)=x^4,D[2](u)(x,0)=0;
sol:=pdsolve({pde,ic,bc},u(x,t));

But Maple returns no solution.

I am using Maple 2017.3 on windows.

 

I am trying to see if Maple can solve Laplace PDE inside the disk in polar coordinates. Standard textbook problem. Radius of disk is `a`. The boundary conditions on the disk is `f(theta)`. One of the conditions needed also is that the solution is finite in the center of the disk.

I do not know how to tell Maple that the solution should be finite in the center of the disk. If I do not give this conditions, Maple gives me strange looking solution, which does not look like anything close to the standard series solution one gets from hand solution. There is not even a series solution.

This is what I tried

restart;
pde:=diff(u(r,theta),r$2)+1/r*diff(u(r,theta),r)+1/r^2*diff(u(r,theta),theta$2)=0;
bc:=u(a,theta)=cos(theta);
sol:=pdsolve([pde,bc],u(r,theta)) assuming r<=a,r>0

Now, how to tell it that `u(0,theta)` is bounded? So that the `ln(r)` solution do not show up? Adding `u(0,theta)<infinity` to the boundary conditions, gives error

restart;
pde:=diff(u(r,theta),r$2)+1/r*diff(u(r,theta),r)+1/r^2*diff(u(r,theta),theta$2)=0;
bc:=u(a,theta)=cos(theta),u(0,theta)<infinity;
sol:=pdsolve([pde,bc],u(r,theta)) assuming r<=a,r>0

The standard solution to this PDE is

Where `c0` and `cn` and `kn` above are found from boundary conditions at $u(a,\theta)$.

How can one get Maple to give the above solution? How to tell it that $u$ is bounded at $r=0$?

 

 

I have a function inside a file called proc2.mpl

When I read the file from a worksheet using the command read("proc2.mpl"); I see warning messages

Warning, incomplete string;  use " to end the string
Warning, incomplete string;  use " to end the string

printed on the screen.  Now if I copy the same exact code and past it into the worksheet and invoke the function, I see no warning messages.

Why is that? Here is the content of "proc2.mpl"

process_file := proc()
  local str,fileName;


  fileName := "output.txt";
  
  str:="
   \\begin{align*}
     A =& B  \\\\ 
       =& 3
   \\end{align*}
  ";
	
  writebytes(fileName, str);
  close(fileName);

end proc:

Here is screen shot loading the function from worksheet

But now when I call it using process_file(); it works as expected.

Now here is screen shot with same code inside the worksheet itself. No warning messages show up when I call it.

And the above call also works as expected.

So I am now ignoring these warning messages since I also do not know what causes them.

Any ideas why they show up when the code is inside a .mpl file and not in the work sheet?

Maple 2017.3 on windows.

 

 

 

I want to save multiline string to a file. I am not sure Maple likes my string. Also when I look at the textfile after writing the string to it, the string does not look like what is expected. I given small example

First, created a "proc.mpl" in the folder. Here is the content of "proc.mpl"

process_file := proc()
local str;
  
str:="
   \\begin{align*}
     A =& B \\\\
       =& 3
   \\end{align*}
";

FileTools[Text][WriteString]("output.txt", str);
FileTools[Text][Close]("output.txt");

end proc:

Then opened Maple, and from a worksheet, called the above proc() like this

restart;
currentdir("C:\\where_the_file_is");
read("proc.mpl");
Warning, incomplete string;  use " to end the string
Warning, incomplete string;  use " to end the string
Warning, incomplete string;  use " to end the string
process_file();

You see these warnings there. So how does one make a multiline string in Maple? Please tell me it is possible. Else this whole process will not work.

When I look at the "output.txt", where the string is written, this is what shows


   \begin{align*}
     A =& B \      =& 3
   \end{align*}

Which is wrong, I expected this


   \begin{align*}
     A =& B \\     
        =& 3
   \end{align*}

 

I use \ to escape each \, since this is Latex code. 

QUestions are:

1) Can one have multiline string in Maple? as in

"
line one
line two
"

With implied carriage return, just as it appears in the input?  I do this all the time in Mathematica.

2) Is something wrong with how I am saving the string to the file?
 

On a side note: I noticed I had to close the textfile to see the output in it. It looks like FileTools[Text][WriteString] does not flush the string autmatically to a otuput file after each write() which is a little annoying.

Using Maple 2017.3 on windows.

This is how the above is done in Mathematica

And this is "test.txt" which shows the output as expected

   \begin{align*}
     A =& B \\
       =& 3
   \end{align*}

I'd like to do the same in Maple.

First 165 166 167 168 169 170 171 Last Page 167 of 201