Maple 2020 Questions and Posts

These are Posts and Questions associated with the product, Maple 2020

For a project I need to construct a large symbolic adjoint matrix, hoping it can be factored afterward into nice expressions.
In the worksheet, I present an adjoint matrix using permuted Hadamard products. What puzzles me is that only for even dimensions, I need to multiply it (elementwise) with a parity matrix. Okay, not a specific Maple question, but maybe someone can help me out.

Download Adjoint.mw

How to fix the error?

How are they (tanh(a+b) , tanh(a-b)) defined in Maple?

Ger.mw

How I can solve a PDE on two regions with matching conditions at the common boundary?  

T1.mw

The uploaded worksheet begins to uniformly tile the Poincare disk with pentagons using hyperbolic reflection .

Although relatively easy to create the central pentagon and the first adjacent pentagon, it becomes increasingly difficult to determine which lines to reflect to create the remaining pentagons in the first tier adjacent to the central pentagon and more so to create the pentagons of the second tier adjacent to those in the first tier and so on.

Is there a better technique for accomplishing this?

In particular can Mobius tranformations be employed to do this? If so, please replay with or point to a working example of this for me to follow.

 Tile_Poincare_disk.mw

Sorry, I forgot that respondents to this question must establich their own link to the DirectSearch package.

Hello
I have a problem in writing the Maple code of the image below, I don't know why the 3.5 answers are not available?

which one is better?

123.mw

0123.mw

Why aren't all the variables in fin 1 equation?

And the answers are different from the solutions?

 

restart

with(student)

eq1 := 12*gamma^3*rho[3]^2*(diff(w(psi), `$`(psi, 2)))+(-3*gamma*rho[2]^2+4*omega*rho[3]^2)*w(psi)+gamma*rho[3]^2*(rho[1]+2*rho[3])*w(psi)^3

12*gamma^3*rho[3]^2*(diff(diff(w(psi), psi), psi))+(-3*gamma*rho[2]^2+4*omega*rho[3]^2)*w(psi)+gamma*rho[3]^2*(rho[1]+2*rho[3])*w(psi)^3

(1)

NULL

"w(psi):=kappa[0]+sum(kappa[i]*((diff(E,psi))^(i))/((E(psi))^(i)),i=1..1)+sum(h[i]*(((diff(E,psi))^())/((E(psi))^()))^(-i),i=1..1);"

proc (psi) options operator, arrow, function_assign; kappa[0]+sum(kappa[i]*(diff(E, psi))^i/E(psi)^i, i = 1 .. 1)+sum(h[i]*((diff(E, psi))/E(psi))^(-i), i = 1 .. 1) end proc

(2)

"E(psi):=((epsilon[1]*jacobiCN(Zeta[1]*psi))+(epsilon[2]*jacobiSN(Zeta[2]*psi)))/((epsilon[3]*jacobiCN(Zeta[3]*psi))+(epsilon[4]*jacobiSN(Zeta[4]*psi))) ;"

proc (psi) options operator, arrow, function_assign; (varepsilon[1]*jacobiCN(Zeta[1]*psi)+varepsilon[2]*jacobiSN(Zeta[2]*psi))/(varepsilon[3]*jacobiCN(Zeta[3]*psi)+varepsilon[4]*jacobiSN(Zeta[4]*psi)) end proc

(3)

 

NULL

fin1 := simplify(eq1)

kappa[0]*(gamma*rho[3]^2*(rho[1]+2*rho[3])*kappa[0]^2-3*gamma*rho[2]^2+4*omega*rho[3]^2)

(4)

Sol := solve(fin1, {omega, Zeta[1], Zeta[2], Zeta[3], Zeta[4], epsilon[1], epsilon[2], epsilon[3], epsilon[4], h[1], kappa[0], kappa[1]})

{omega = omega, Zeta[1] = Zeta[1], Zeta[2] = Zeta[2], Zeta[3] = Zeta[3], Zeta[4] = Zeta[4], h[1] = h[1], kappa[0] = 0, kappa[1] = kappa[1], varepsilon[1] = varepsilon[1], varepsilon[2] = varepsilon[2], varepsilon[3] = varepsilon[3], varepsilon[4] = varepsilon[4]}, {omega = -(1/4)*gamma*(kappa[0]^2*rho[1]*rho[3]^2+2*kappa[0]^2*rho[3]^3-3*rho[2]^2)/rho[3]^2, Zeta[1] = Zeta[1], Zeta[2] = Zeta[2], Zeta[3] = Zeta[3], Zeta[4] = Zeta[4], h[1] = h[1], kappa[0] = kappa[0], kappa[1] = kappa[1], varepsilon[1] = varepsilon[1], varepsilon[2] = varepsilon[2], varepsilon[3] = varepsilon[3], varepsilon[4] = varepsilon[4]}

(5)

for i to 2 do Case[i] := allvalues(Sol[i]) end do

{omega = omega, Zeta[1] = Zeta[1], Zeta[2] = Zeta[2], Zeta[3] = Zeta[3], Zeta[4] = Zeta[4], h[1] = h[1], kappa[0] = 0, kappa[1] = kappa[1], varepsilon[1] = varepsilon[1], varepsilon[2] = varepsilon[2], varepsilon[3] = varepsilon[3], varepsilon[4] = varepsilon[4]}

 

{omega = -(1/4)*gamma*(kappa[0]^2*rho[1]*rho[3]^2+2*kappa[0]^2*rho[3]^3-3*rho[2]^2)/rho[3]^2, Zeta[1] = Zeta[1], Zeta[2] = Zeta[2], Zeta[3] = Zeta[3], Zeta[4] = Zeta[4], h[1] = h[1], kappa[0] = kappa[0], kappa[1] = kappa[1], varepsilon[1] = varepsilon[1], varepsilon[2] = varepsilon[2], varepsilon[3] = varepsilon[3], varepsilon[4] = varepsilon[4]}

(6)

NULL

NULL

Download 0123.mw

So I have a complex-valued function f that depends on two real variables x and y. I want to plot its range, i.e. the set of all values f(x,y), where x and y vary over their entire domain (which is a compact subset of R^2). Since I did not find of a direct way to do this, I decided to just compute the output f(x,y) at a finite set of points and plot these values in the complex plane. This gives me a rough idea of what the range should look like. However, this process is very slow (even though it should not be that slow, in my opinion). Here is the code I have used:

f := x -> exp(2*I*Pi*x);
S1 := (x, y) -> Matrix(3, 3, [[f(x - y), 0, 0], [0, 1, 0], [0, 0, f(-y)]]);
S2 := (x, y) -> Matrix(3, 3, [[f(y), 0, 0], [0, f(y - x), 0], [0, 0, 1]]);
C := Typesetting[delayDotProduct](1/sqrt(3), Matrix(3, 3, [[1, 1, 1], [1, f(1/3), f(2/3)], [1, f(2/3), f(1/3)]]), true);
with(LinearAlgebra);
d := LinearAlgebra[Determinant](C . C);
V := (x, y) -> (((S1(x, y)/d^(1/3)) . C) . (S2(x, y))) . C;
tracevals := [];

for i from 0 to 100 do
    for j from 0 to 100 do tracevals := [op(tracevals), Trace(V(0.01*i, 0.01*j))]; end do;
end do;
with(plots);
P2 := complexplot(tracevals, x = -2 .. 3, y = -3 .. 3);

Note that the specific example (i.e. plotting the trace of a unitary matrix V(x,y)) is not really important to this question. We could instead think of any complex-valued function f(x,y), it should not have any impact on the problem. Maple generates the following output:

Even though this output shows quite well the range that the function will take, it takes almost two minutes to generate. Is there a quicker or more elegant way to compute the range of a function?

I am working with a family of unitary matrices, that depend on two parameters x and y in a smooth way. Their eigenvalues are thus complex numbers of absolute value 1. My goal is to plot the bands (i.e. the argument of the eigenvalues). I know that there exists a parametrization of the eigenvalues such that the corresponding bands are continuous. In particular, I use the following code:

f := x -> exp(2*I*Pi*x);
S1 := (x, y) -> Matrix(3, 3, [[f(x - y), 0, 0], [0, 1, 0], [0, 0, f(-y)]]);
S2 := (x, y) -> Matrix(3, 3, [[f(y), 0, 0], [0, f(y - x), 0], [0, 0, 1]]);
C := Typesetting[delayDotProduct](1/sqrt(3), Matrix(3, 3, [[1, 1, 1], [1, f(1/3), f(2/3)], [1, f(2/3), f(1/3)]]), true);
d := LinearAlgebra[Determinant](C . C);
V := (x, y) -> (((S1(x, y)/d^(1/3)) . C) . (S2(x, y))) . C;
with(LinearAlgebra);
bands := (x, y) -> -I*ln~(Eigenvalues(V(x, y)));

with(plots);
plot3d({bands(x, y)[1], bands(x, y)[2], bands(x, y)[3]}, x = 0 .. 1, y = 0 .. 1);

However, the output is the following plot:

One can see that the bands can technically be chosen in a way such that they are continuous and we dont have those weird vertical jumps. Is there a way to make Maple choose them like this? Or is there a way to at least surpress these vertical jumps in the plot, so that the plot is a bit more ordered? Ideally I would like a way that works for more examples than the one I gave above (I'd like to do these plots for different matrices C), but any help is appreciated!

 

Edit: Maybe an easier starting point is the following: If I choose the matrix C to be the identity matrix, the bands are of a nicer form:

We can see that Maple parametrizes the bands in a continuous way. The only problem is the vertical jumps that happen when the argument switches from pi to -pi. Is there a way to avoid plotting these jumps, so the plot does not include these vertical lines?

The worksheet below includes a sample use of the Mobius transformation which produces a hyperbolic reflection of a point in the Poincare disk, followed by my attempt to produce the same result from first principles in a procedure.

Do I misunderstand the Mobius transformation and its use and/or is my procedure incorrect? 

InversePoint.mw

Hello

I want to write a program to get unknown coefficients of multiple polynomials. I have a problem with this program. The code sometimes doesn't work. Can anyone help me? It's very important to me.

restart

with(student)

``

EQ[0] := tanh(d)*b[1]*(b[1]+1)

tanh(d)*b[1]*(b[1]+1)

(1)

EQ[1] := -(-1+(a[1]-b[1]-1)*tanh(d)^2+(a[0]+1)*tanh(d))*b[1]

-(-1+(a[1]-b[1]-1)*tanh(d)^2+(a[0]+1)*tanh(d))*b[1]

(2)

EQ[2] := tanh(d)*((a[1]-b[1])*(a[0]+1)*tanh(d)-b[1]^2-a[1])

tanh(d)*((a[1]-b[1])*(a[0]+1)*tanh(d)-b[1]^2-a[1])

(3)

EQ[3] := (-a[1]^2+(2*b[1]-1)*a[1]-b[1]^2-b[1])*tanh(d)^2+(a[1]+b[1])*(a[0]+1)*tanh(d)-a[1]-b[1]

(-a[1]^2+(2*b[1]-1)*a[1]-b[1]^2-b[1])*tanh(d)^2+(a[1]+b[1])*(a[0]+1)*tanh(d)-a[1]-b[1]

(4)

EQ[4] := -tanh(d)*((a[1]-b[1])*(a[0]+1)*tanh(d)+a[1]^2+b[1])

-tanh(d)*((a[1]-b[1])*(a[0]+1)*tanh(d)+a[1]^2+b[1])

(5)

EQ[5] := -a[1]*(-1+(-a[1]+b[1]-1)*tanh(d)^2+(a[0]+1)*tanh(d))

-a[1]*(-1+(-a[1]+b[1]-1)*tanh(d)^2+(a[0]+1)*tanh(d))

(6)

EQ[6] := (a[1]+1)*a[1]*tanh(d)

(a[1]+1)*a[1]*tanh(d)

(7)

Eqs := {seq(EQ[i], i = 0 .. 6)}

Sol := solve(Eqs, {a[0], a[1], b[1]})NULL

{a[0] = a[0], a[1] = 0, b[1] = 0}, {a[0] = (tanh(d)^2-tanh(d)+1)/tanh(d), a[1] = -1, b[1] = -1}, {a[0] = -(tanh(d)-1)/tanh(d), a[1] = -1, b[1] = 0}, {a[0] = -(tanh(d)-1)/tanh(d), a[1] = 0, b[1] = -1}

(8)

for i from 2 to 4 do Case[i] := allvalues(Sol[i]) end do

{a[0] = -(tanh(d)-1)/tanh(d), a[1] = 0, b[1] = -1}

(9)

``

T1.mw

T2.mw

Hi,

`[Length of output exceeds limit of 1000000]`

Hello, I want to get the the homogeneous balance principle for the Differential-Difference Equation with Maple. Can anyone help?

the homogeneous balance principle:The balance is made between sentences with the highest degree of nonlinearity and the highest order of the available derivative. We consider the power of terms like u^p as pM and u(q) as M + q and put them equal (pM=M+q) and get the value of M. Now, if M = 1/n (where m is an integer), then we use the transformation U= W^n, where W is a new function.

example:

hello,

I computed some algebraic calculation, but near point -1 there is some issue like disconvergencies. Can anyone help in this regard? In the final graph, as seen the paths of the curves are close together and convergence does not occur AROUND POINT -1.

restart

Digite := 30

30

(1)

beta := 2.5; lambda := 0.1e-1; b := Pi; a := Pi; alpha := 0; y[1] := 1.5; y[2] := 1.5; x[1] := -1; x[2] := 1; Q[1] := 40; Q[2] := 35; T[1] := 20

2.5

 

0.1e-1

 

Pi

 

Pi

 

0

 

1.5

 

1.5

 

-1

 

1

 

40

 

35

(2)

v := (2*n-1)*Pi/(2*b)

Delta := exp(2*v*a)*(alpha*v+beta)*(1+lambda)-(1-lambda)*(alpha*v-beta)

omega := Pi/(2*b)

P[1] := ((1+lambda)*exp(-v*abs(x-xi))+(1-lambda)*exp(v*(x+xi)))*exp(2*v*a)+(1+lambda)*exp(-v*(x+xi))+(1-lambda)*exp(v*abs(x-xi))

P[2] := ((1+lambda)*exp(-v*abs(x-xi))+(1-lambda)*exp(v*(x+xi)))*exp(2*v*a)-(1+lambda)*exp(-v*(x+xi))-(1-lambda)*exp(v*abs(x-xi))

P[3] := P[1]*(-alpha^2*v-alpha*beta+alpha*v)+beta*P[2]

G[11] := (sum((alpha*P[1]*(1-lambda)*(alpha*v-beta)*exp(-2*v*a)+(1+lambda)*P[3])*(cos(v*(y-eta))-cos(v*(y+eta)))/(v*(exp(2*v*a)*(alpha*v+beta)*(1+lambda)-(1-lambda)*(alpha*v-beta))), n = 1 .. 80))/(2*b*(1+lambda))+(2*(1+lambda)*alpha*b/Pi*.25)*ln((1+2*exp(-omega*abs(x-xi))*cos(omega*(y-eta))+exp(-2*omega*abs(x-xi)))*(1-2*exp(-omega*abs(x-xi))*cos(omega*(y+eta))+exp(-2*omega*abs(x-xi)))*(1+2*exp(-omega*(2*a+x+xi))*cos(omega*(y-eta))+exp(-2*omega*(2*a+x+xi)))*(1-2*exp(-omega*(2*a+x+xi))*cos(omega*(y+eta))+exp(-2*omega*(2*a+x+xi)))/((1-2*exp(-omega*abs(x-xi))*cos(omega*(y-eta))+exp(-2*omega*abs(x-xi)))*(1+2*exp(-omega*abs(x-xi))*cos(omega*(y+eta))+exp(-2*omega*abs(x-xi)))*(1-2*exp(-omega*(2*a+x+xi))*cos(omega*(y-eta))+exp(-2*omega*(2*a+x+xi)))*(1+2*exp(-omega*(2*a+x+xi))*cos(omega*(y+eta))+exp(-2*omega*(2*a+x+xi)))))/(2*b*(1+lambda))+(2*(1-lambda)*alpha*b/Pi*.25)*ln((1+2*exp(omega*(x+xi))*cos(omega*(y-eta))+exp(2*omega*(x+xi)))*(1-2*exp(omega*(x+xi))*cos(omega*(y+eta))+exp(2*omega*(x+xi)))*(1+2*exp(-omega*(2*a-abs(x-xi)))*cos(omega*(y-eta))+exp(-2*omega*(2*a-abs(x-xi))))*(1-2*exp(-omega*(2*a-abs(x-xi)))*cos(omega*(y+eta))+exp(-2*omega*(2*a-abs(x-xi))))/((1-2*exp(omega*(x+xi))*cos(omega*(y-eta))+exp(2*omega*(x+xi)))*(1+2*exp(omega*(x+xi))*cos(omega*(y+eta))+exp(2*omega*(x+xi)))*(1-2*exp(-omega*(2*a-abs(x-xi)))*cos(omega*(y-eta))+exp(-2*omega*(2*a-abs(x-xi))))*(1+2*exp(-omega*(2*a-abs(x-xi)))*cos(omega*(y+eta))+exp(-2*omega*(2*a-abs(x-xi))))))/(2*b*(1+lambda))

g[12] := lambda*((alpha*v+beta)*exp(v*(2*a+x))+(alpha*v-beta)*exp(-v*x))*exp(-v*xi)/(v*Delta)

G[12] := (sum(g[12]*(cos(v*(y-eta))-cos(v*(y+eta))), n = 1 .. 80))/b

phi[1] := int(int(G[11]*Q[1]*Dirac(xi-x[1])*Dirac(eta-y[1]), xi = -a .. 0), eta = 0 .. b)+int(int(G[12]*Q[2]*Dirac(xi-x[2])*Dirac(eta-y[2]), xi = 0 .. infinity), eta = 0 .. b)

Z[1] := diff(phi[1], x)

psi[1] := int(Z[1], y)

plot3d(psi[1], x = -a .. 0, y = 0 .. b)

 

with(plots)

contourplot(psi[1], x = -a .. 0, y = 0 .. b)

 

 

Download sai_1.mw

Hello everyone, 

I am trying to solve 6 equations with 6 unknowns in maple. I tried to simplify them and they are shown below. Unfortunately, after using solve I get:

Warning, solutions may have been lost
                            sol := ()

Can you help me with it, please? I tried to solve it with Matlab and got a warning that no explicit solution could be found and had no luck with mathematica either.  Thank you very much!!

restart;

omega_1 := 1;
beta_1 = 0.2;
omega_2 := 0.15;
beta_2 := 0.15;
mu := 0.4;
g := 9.81;
K := 5;
vb := 0.5;
tc := arccos(vb/(A*omega));

Ns := mu*(omega_2^2 - K)*B*(2*omega*tc - sin(2*omega*tc) - pi)/pi;

Nc := 4*mu*(omega_2^2 - K)*x2*sin(omega*tc)/pi + mu*(omega_2^2 - K)*C*(2*omega*tc + 2*sin(2*omega*tc) - pi)/pi;

a0 := -mu*(omega_2^2 - K)*x2*(1 - 2*omega*tc/pi) + 2*mu*(omega_2^2 - K)*C*sin(omega*tc)/pi;

eq1 := -A*omega^2 + A*omega_1^2 - B*K - Ns;

eq2 := 2*A*beta_1*omega*omega_1 - C*K - Nc;

eq3 := -2*C*beta_2*omega*omega_2 - B*omega^2 + B*omega_2^2 - A*K;

eq4 := 2*B*beta_2*omega*omega_2 - C*omega^2 + C*omega_2^2;

eq5 := omega_1^2*x1 - K*x2 - a0;

eq6 := omega_2^2*x2 - K*x1 - g;

sol := solve({eq1, eq2, eq3, eq4, eq5, eq6}, {A, B, C, omega, x1, x2});

This worksheet contains an unnamed theorem on page 202 of David Wells's book The Penguin Dictionary of Curious and Interesting Geometry.

Somehow I have uploaded both its contents and (a) link(s) to it.

What Maple code can animate and display, in turn, each of the portrayed pursuit paths?

Pursuit_problem.mw

 

Consider a target point T which moves at constant speed along a straight line, and a moving point P which at all times moves directly towards T. If P starts anywhere on the outermost ellipse, and T starts from a focus of the outer ellipse, then P always captures T at the same point, the centre of the ellipse.

 

``

 

The concentric ellipses, whose shape depends on the relative velocities of T and P, are isochrones, and the curves of pursuit are their isoclinal trajectories

 

Download Pursuit_problem

1 2 3 4 5 6 7 Last Page 2 of 55