Maple 2022 Questions and Posts

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

This code can draw the subgroup lattice:

DrawSubgroupLattice(GaloisGroup(x^3 - 2, x), 'indices')

But I really want to know what the extension of field about each subgroup corresponds to, like this:

The root of the polynomial r1=21/3, r2=21/3(-1+sqrt(3) I)/2, r2=21/3(-1-sqrt(3) I)/2 in the above graph. Further, how do we draw the extension relation of this polynomial:

x5+15x+44

The maple can draw this graph? If maple can't draw it, what software can?

 

restart;

q := (u,v) -> u^2 + v^2;

proc (u, v) options operator, arrow; v^2+u^2 end proc

D[3](q);

Error, (in D/procedure) index out of range: function takes only 2 arguments

Question: How does D know that q takes two arguments?

In general, if I pass q to another proc, how can I find out, within
that proc, that q takes only two arguments?

download number-of-arguments.mw

Given a vector-valued function z(u,v), I want to calculate the derivative of z with respect to its first argument by applying the D operator to it. I don't see how.  Any suggestions?

restart;

z := (u,v) -> < a(u,v), b(u,v) >;

proc (u, v) options operator, arrow; `<,>`(a(u, v), b(u, v)) end proc

Calculate the derivative of z with respect to its first argument:

P := diff(z(u,v), u);

Vector(2, {(1) = diff(a(u, v), u), (2) = diff(b(u, v), u)})

Express P through the D operator:

Q := convert(P, D);

Vector(2, {(1) = (D[1](a))(u, v), (2) = (D[1](b))(u, v)})

Question:  How do we obtain Q directly by applying the D operator to z

without the help of diff?  This one doesn't work:

D[1](z)(u,v);
type(%, Vector);

(D[1](`<,>`))(a(u, v), b(u, v))*(D[1](a))(u, v)+(D[2](`<,>`))(a(u, v), b(u, v))*(D[1](b))(u, v)

false

Download diff.mw

restart;
with(Physics[Vectors]);
Setup(mathematicalnotation = true);
with(Physics);

Setup(op = {Omega, r});

lprint(m*Omega^2*r);

which outputs this:

i want to substitute  Physics:-`*` which is an overloaded version of matrice multiplication with the default one which is `.` so I wrote the following code :

use   `*`= :-`.` in
a := m*Omega^2*r
end use

the result is the same and its not substitute the physics product with the default one. what is the mistake here?

I also tried the following code and its worked. but I want to make it work with the 'use' function for general purposes

lprint(m . (:-`.`(Omega^2, r)))

thanks in advance

I'm trying to use Maple to take the following integral for positive values of a, b, c and non-negative integers i and j.

I know that for fixed values of j and k this doable — for example, for j=k=0 Mathematica gives

I'm trying the following code in Maple:

int(exp(-(x + y)/2)/(a*x + b*y + c), [x = 0 .. infinity, y = 0 .. infinity]) assuming (a::real, 0 < a, b::real, 0 < b, c::real, 0 < c)

Am I doing anything wrong?

Maple 2022.2 on windows 10. I found another serious problem with timelimit. When changing the timelimit value, solve hangs.

i.e. timelimit do not timeout.  But that is not all. Unable to terminate the process running the worksheet. Clicking on the little ! circle at the top does nothing.  But that is not all. Killing the server.exe from the task manager, now I am not even able to close the worksheet. Maple hangs on closing the worksheet.

This code below on  my PC produces this. I used 60 seconds to make it hang. When using 10 seconds it does not hang. You might have to change these values depending on how fast/slow your PC is. If it does not hang for you using 60, you might to try 100 and so on.

Why does it hang so bad? This really makes using Maple for development not practical if one can't even put a timeout on an operation like this. What is a user to do?  Not use solve? reduce the timelimit to avoid maple lockin? To what value? If I reduce all timelimits to 5 seconds, this will cause problems as I could lose solutions that will show up with more time.

Anyone else can produce this? Make sure to save all your work before because you might not be able to close the worksheet after this.  I use worksheet mode only.
 

interface(version);

restart;

interface(warnlevel=4);
kernelopts('assertlevel'=2):

eq:=1/24*ln(9*u + 2) + 1/8*ln(u) - 1/24*ln(3*sqrt(4*u + 1) + 1) - 1/8*ln(sqrt(4*u + 1) - 1) + 1/24*ln(3*sqrt(4*u + 1) - 1) + 1/8*ln(sqrt(4*u + 1) + 1) - 1/2*ln(x) - c[1] = 0;

try
   the_sol := timelimit(60,[solve(eq,u)]);
   print("finished before timeout");
  catch:
    print("Timed out OK");
end try;

 


 

Download solve_hangs_different_timing_dec_23_2022.mw

This is really a question on getting index positions of a sub list from the main list.

Have a list of Vertices and a list of populations for each vertes.

Then from the Neighbours list I need the respective positions in the Vertex list to sum to corresponding values from the population list.

2nd Question  Can the population values be displayed near its vertex or in the vertes circle? e.g y=5

restart

NULL

with(GraphTheory)

with(SpecialGraphs)

Vs := [x, y, z, w]

[x, y, z, w]

Popvs := [-2, 1, 6, 3]

[-2, 1, 6, 3]

newPopsvs := Popvs

[-2, 1, 6, 3]

``

X := Graph(Vs)

GRAPHLN(undirected, unweighted, [x, y, z, w], Array(1..4, {(1) = {}, (2) = {}, (3) = {}, (4) = {}}), `GRAPHLN/table/1`, 0)

``

AddEdge(X, {{w, y}, {w, z}, {x, y}, {y, z}})

GRAPHLN(undirected, unweighted, [x, y, z, w], Array(1..4, {(1) = {2}, (2) = {1, 3, 4}, (3) = {2, 4}, (4) = {2, 3}}), `GRAPHLN/table/1`, 0)

Nbs := [seq(Neighbors(X, Vs[i]), i = 1 .. nops(Vs))]

[[y], [x, z, w], [y, w], [y, z]]

``

vp := [[0, 0], [1, 0], [1.5, 1], [2, 0]]

[[0, 0], [1, 0], [1.5, 1], [2, 0]]

SetVertexPositions(X, vp)

DrawGraph(X)

k := rand(1 .. 4)

NULL

for c to nops(Nbs) do Nbs[c]; select(proc (i) options operator, arrow; Vs[i] = Nbs[c, 1 .. -1] end proc, [`$`(1 .. nops(Vs))]) end do

[]

NULL

Download Q_23-12-22_Test_Graph_indices_.mw

As we know, choosing different generators can all represent the same group. But how can I get the combination of these different generators by maple? For example, how do I get the following different combinations of generators of C6?

If we have two univariate polynomials $f(x)$ and $g(x)$ such that

$gcd(f(x),g(x))=1$

then we know there exist two other polynomials $a(x)$ and $b(x)$ such that $a(x)f(x)+b(x)g(x)=1$. For example, if $f(x)=x^3−1$ and $g(x)=x^2+2$, then we can set

$a(x)=\frac{2x−1}{9}$, $b(x)=\frac{−2x^2+x+4}{9}$

Here the polynomials $a(x)$ and $b(x)$ are known as Bezout polynomials and they can be found using the extended Euclidean algorithm, which I know how to do using pen and paper, but not in Maple.

So my question is: in Maple, is there a way, given $f(x)$ and $g(x)$, to solve for $a(x)$ and $b(x)$?

What kind of solution is it (see (3))? Why is there no solution when I put the initial condition v(0)=C1? Secondly, eq. (2) can be reduced to a first-order differential equation?

restart

interface(showassumed = 0)

declare(v(y))

(1)

q := v(y)*(diff(diff(diff(v(y), y), y), y))+(2*v(y)-(diff(v(y), y)))*(diff(diff(v(y), y), y))+(diff(v(y), y))*(v(y)^3+v(y)-(diff(v(y), y))) = 0

v(y)*(diff(diff(diff(v(y), y), y), y))+(2*v(y)-(diff(v(y), y)))*(diff(diff(v(y), y), y))+(diff(v(y), y))*(v(y)^3+v(y)-(diff(v(y), y))) = 0

(2)

dsolve(q)

v(y) = ODESolStruc(_a, [{(diff(diff(_b(_a), _a), _a))*_b(_a)^2+_b(_a)*((diff(_b(_a), _a))^2*_a+_a^3-(diff(_b(_a), _a))*_b(_a)+2*(diff(_b(_a), _a))*_a-_b(_a)+_a)/_a = 0}, {_a = v(y), _b(_a) = diff(v(y), y)}, {y = Int(1/_b(_a), _a)+_C1, v(y) = _a}])

(3)

NULL

dsolve({q, v(0) = C1})

v(y) = C1

(4)

NULL

Download CD_ode.mw

 

I have been making animated 3d plots recently; the last time was perhaps three years ago, and I had some problems then.  If I recall correctly, I couldn't make an animated 3d plot that was plotted in non-Cartesian coordinates.

 

I am very happy to report that this works very smoothly now in Maple 2022, and it's pretty fast, too.  I have a fairly complex function to plot, involving piecewise polynomials on a tensor product grid in the xi and eta variables (actually, I let plot3d pick out the grid; it seems happier to do so) and then plot them on an elliptical base, in coordinates x = d*cosh(xi)*cos(eta) and y=d*sinh(xi)*sin(eta)  (d is just a numerical constant, giving the location of the foci at (d,0) and (-d,0)), for 0 <= xi <= xi[0] (the outer elliptical boundary) and 0 <= eta <= 2Pi.  The straightforward command works, and building a sequence of plots and using plots[display] works.  I put option remember into my procedure w(xi,eta) and because the sample points are consistent for the time-dependent function exp(I*omega*t)*w(xi,eta) the xi-eta grid needs only to be done once and then one can compute (basically) as many frames as one wants in rapid succession.

 

Works great.  Thanks, folks!

 

for k to nplots do
    t := evalf(2*Pi*(k - 1)/nplots);
    plts[k] := plot3d([(xi, eta) -> focus*cosh(xi)*cos(eta), (xi, eta) -> focus*sinh(xi)*sin(eta), (xi, eta) -> Re(exp(omega*t*I)*w(xi, eta))], 0 .. xi[0], 0 .. 2*Pi, colour = ((xi, eta) -> Re(exp(omega*t*I)*w(xi, eta))), style = surfacecontour, lightmodel = "none");
end do;
plots[display](seq(plts[k], k = 1 .. nplots), insequence = true);
 

I have a system of ODE's which are solved numerically (with rkf45) to get function values over time. And i have datapoints for these functions, and would like to compare and calculate the error/deviation between model and data. I can't find a command / mechanism that does this.

Is it possible?

The graph we draw in the graph theory package appear to be vectorial. So the export pdf is also clear. 

with(GraphTheory):
DrawGraph(PathGraph(2), stylesheet=[vertexborder=false,
vertexpadding=5,edgecolor = blue,vertexcolor=black,edgethickness=2],size=[250,250])

draw1.pdf

We know that DrawGraph only offers straight forms for drawn edges.  Sometimes we need to draw graphs with curves.  But when I try to use maple, I find that the vertices (by pointplot) are blurred after zooming in (or even without zooming out).

with(plottools):    
with(plots):
Bezier:=proc(x0,y0,x1,y1,x2,y2,x3,y3)
local f,g,c,l1,l2,l3,p0,p1,p2,p3;
f:=t->x0*(1-t)^3+3*x1*t*(1-t)^2+3*x2*t^2*(1-t)+x3*t^3:
g:=t->y0*(1-t)^3+3*y1*t*(1-t)^2+3*y2*t^2*(1-t)+y3*t^3:
c:=plot([f(t),g(t),t=0..1],thickness=2,scaling=constrained, color=blue,axes=none):
p0:=pointplot([x0,y0],symbol= solidcircle,symbolsize = 50,color=black):
p1:=pointplot([x3,y3],symbol= solidcircle,symbolsize = 50,color=black):
display(c,p0,p1,size=[300,300]);
end:

x0:=0:   y0:=0:
x1:=-0.2:  y1:=0.2:
x2:=0.5:  y2:=0.2:
x3:=0.3:  y3:=0:
p:=Bezier(x0,y0,x1,y1,x2,y2,x3,y3)

 draw2.pdf 

How to make these vertices vectorially drawn (like DrawGraph)?

How can we unveil all the possible transformations that reduce the number of independent variables of a given pde? I tried it by using "InvarientSolutions" which gives eight possible transformations. But under those transformations, I got only two different odes. Is there any other method/command from which we can get other possible odes of a given pde?

 

pde_ode.mw

I have in internal procedure ppp that has an input prjpsn:=3. This set a Vector positions of x,y,z to either if prjpsn=1 

zpsn=1,   xpsn=2,  ypsn=3

or if prjpsn =3   

xpsn=1,   ypsn=2, zpsn=3

This then are used in another procedure. I can't get the values to transfere.  prjpsn would default to 3 in the module but can be set externally to 1 if needed.
The relevant parts are highlighted in green text. Cant get the worksheet to display.

Maple Worksheet - Errorprjpsn:=3


Failed to load the worksheet /maplenet/convert/Q_14-12-22_Module_internal_settings.mw .

Download Q_14-12-22_Module_internal_settings.mw

First 24 25 26 27 28 29 30 Last Page 26 of 43