dharr

Dr. David Harrington

8205 Reputation

22 Badges

20 years, 335 days
University of Victoria
Professor or university staff
Victoria, British Columbia, Canada

Social Networks and Content at Maplesoft.com

Maple Application Center
I am a retired professor of chemistry at the University of Victoria, BC, Canada. My research areas are electrochemistry and surface science. I have been a user of Maple since about 1990.

MaplePrimes Activity


These are answers submitted by dharr

I used 

read "stanform";

and got some immediate errors because Maple's ditto operator used to be " but is now %. I didn't attempt to replace the " with %, but it might be possible to make it work if you are familiar with Maple. In general old Maple code still runs, but there are a lot of lines of code there and I didn't look in detail through it.

According to the help page ?pdsolve,numeric, the default method is used unless you specify one of the others (those in your list). Under "Details" on that page is some more information:

"The default method uses a second order (in space and time) centered, implicit finite difference scheme to obtain the computed solution. The number of points in the stencil of the finite difference scheme is one greater than the order of each equation."

Some references are give at the bottom of the page, though they seem to be rather general.

PDETools:-dcoeffs(lhs(eq),q(T));

gives

324.6463527, 3.589858529*10^12, 4.012505275*10^11

eval substitutes N=infinity in each term, and concludes each term and the sum is zero. Limit is smarter:

limit(G(N),N=infinity); returns without an answer. I tried some assumptions here withouth success. On the other hand, you can do it numerically and approximately:

evalf(eval(G(N),N=10000)) gets it right to 3 decimal places. 

For 8x8

InvM:=Adjoint(M)/Determinant(M):

returns quickly, but then InvM[1,1] returns with "[Length of output exceeds limit of 1000000]"

So I think the answer is too complicated to do anything with, no matter how much memory.

On the other hand,

simplify(InvM.M);

gives the identity in about 150 s on my laptop.

You need to make an actual second point using Point1:=disk( ...  , color =black), then rotate it and display it with Point2. Rotate doesn't get rid of the color of the object, and the display color won't override a specified color in a plot object.

David.

In Maple 16:

restart;Digits;
10
evalf(Sum(I^n*BesselJ(n,2*sqrt(34))*exp(-I*n*arctan(5/3))*exp(I*n*Pi/4),n=1..30));
evalf(Sum(I^n*BesselJ(n,2*sqrt(34))*exp(-I*n*arctan(5/3))*exp(I*n*Pi/4),n=1..100));
evalf(Sum(I^n*BesselJ(n,2*sqrt(34))*exp(-I*n*arctan(5/3))*exp(I*n*Pi/4),n=1..1000));
0.05400552045 - 0.7873756700 I
0.05400552043 - 0.7873756700 I
0.05400552042 - 0.7873756700 I

 

L:=[{a},{b,c},{d,a,f},{b,d}] ;

 

look:=L[1][]:   #thing to look for
for i from 2 to nops(L) do
 if has(L[i],look) then print(L[i] minus {look}); break; end if;
end do;

 

gives {d,f}

 

which I think is what you wanted.

Hard to follow, but I get a message that some variables are in the equations but are not solved for, because you missed them in your set of variables. The easiest way to prevent this is to use

vars:=indets(Eqs1);

In Maple 16 (not Classic), if you want 1-D Maple input as the default (instead of ctrl-M every line), go to tools/options/display/and set Input Display to "Maple Notation".

 

One thing to check is that if autosave is too frequent, then for a long save or long calculation, one autosave starts before the previous one has finished. Try setting the autosave to a less frequent interval.

As far as I know, the numerical solver doesn't accept conditions involving integrals.

I'm not sure I understand the question. Since the solution is not unique, you can't choose which solution the numeric solver will get unless you change the way you specify the boundary conditions, say, by specifiying a first derivative at 0 (say D(f)(0)=1 ) and not the boundary condition at infinity. Then each slope you choose will give you a different (correct) solution.

 

Just using dsolve(eq1) gives a complicated answer with too much freedom. Try  ans:=dsolve(eq1,f(0)=0) (I am assuming you wanted a=0), which gives four answers, the f(x)=0 one, the tanh one you want and two others:

f(x) = 0, f(x) = tanh((1/2)*x*2^(1/2)/_C1)*2^(1/2)/_C1, f(x) = -2*tan((x+_C2)*Pi/_C2)*Pi/_C2, f(x) = -2^(2/3)*_C1*(3^(1/2)*AiryAi(1, -(1/2)*2^(2/3)*_C1*x)+AiryBi(1, -(1/2)*2^(2/3)*_C1*x))/(3^(1/2)*AiryAi(-(1/2)*2^(2/3)*_C1*x)+AiryBi(-(1/2)*2^(2/3)*_C1*x))

The limit of the derivative is zero for any _C1:

limit(diff(rhs(ans[2]),x),x=infinity) assuming positive; gives 0

tans:=eval(ans[2],_C1=sqrt(2)); gives f(x)=tanh(x/2) and odetest verifies everything is OK:

odetest(tans, [eq1, f(0) = 0, (D(f))(infinity) = 0, (D(D(f)))(0) = 0]); gives [0,0,0,0]

Using other _C1 values also gives OK solutions.

 

 

ToeplitzMatrix in the LinearAlgebra package can do this

with(LinearAlgebra):
ToeplitzMatrix([0,0,c,b,a,0,0]);
ToeplitzMatrix([0,0,x^2,sin(x),x,0,0]);


First 71 72 73 74 75 76 77 Last Page 73 of 81