Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

Given  3000 linear equations in 3000 unknowns, with coefficients in a field of rationals with one algebraic number extension, which Maple solver would be fastest in solving the system?

msolve(x^2=-1,5);                                I get
                        {x = 2}, {x = 3}
But I need the integers 2 and 3. Who can help me?

Good day!

I would welcome any help to explain how to plot a simple function, z, of two variables, (x, y) so that I can show the relationships between variables.

Basically, I need to plot a family of z-curves for varying x and y values and also would like to understand how to display the z-y and z-x plots. 

Thanks for reading!

To create a parametric plot, it seems that all units from an expression have to be removed. Convert, unit_free only removes the outermost unit from an expression. Are there any other commands that could be used?

The attached document describes the problem and solution attempts.



Hi..What I want should be self explanetary. Trying to Explore 2 plots on the one graph.

This is another one of those problems that shows up only when I put all my modules in a lib and run the program, and unable to make a MWE in the worksheet.

Here is description of the problem. There is a module which is an object, which has no method. Just variables. 

export SUM_type:=module()
   option object;
   export starting_index::integer;
   export body;
   export power_on_x;
   export actual_sum;   
end module;

some where inside the program, a list is created of such objects. This problem only shows up when there is ONE object in the list. Where there is 2 or more objects in the list, no problem. The problem shows up here

for tmp in op(THE_SUMS) do    #BUG IN MAPLE  
        new_ode := new_ode + tmp:-actual_sum;

The above code is from inside a proc in a module. The variable THE_SUMS is the list and tmp is just a local variable.

In the debugger, once I step in the loop, it generates an exception

The strange thing, this only happens when there is ONE object in the list and not more. Here are screen shot from the debugger window

To avoid this, I changed the loop to the following, and not it works with one or more entries in the list

   for N from 1 to nops(THE_SUMS) do
       tmp := THE_SUMS[N];
       new_ode := new_ode + tmp:-actual_sum;

And this work. I spend a lot of time trying to make a MWE, but it works ok in worksheet. It looks like a scoping issue. I do not use ModuleIterator, and do not need it. When I added one to the object above just to see what happens, I saw the ModuleItrator being called. I have no idea why Maple wants to call it when there is one object in the list.

Here is one attempt on a MWE. but this gives no error. 

   option object;
   export starting_index::integer;
end module;
for item in L do  #OK here since in global name space?

I am just repoting this in case someone have seen it before. I have a workaround it as I showed, which is to avoid using `for temp in list` when the list has objects in it.

Maple 2021.1 on windows 10

I want to solve the equation x^(1/x) =1.2

The output is 1.257734541376526421
How do i get the other solution, numerically.

Is it possible to restrict or stipulate the domain to look for roots over a specific interval, some rootfinding command over the real numbers.
I also tried solve(x^(1/x)=1.2,AllSolutions,explicit)
Wolfram immediately gives me the second solution.

Hey everyone!

I am trying to merge two vectors into a matrix. Let us say that both of the vectors has only one line and 4 columns:
Therefore, the matrix that I am trying to get should have this form:
Thanks in advance!


Assuming that I typed this:

a := -1 .. .1*cos(x), x = 0 .. 2*Pi

How do I get the range of values of a ?

Not this -1 .. .1*cos(x), x = 0 .. 2*Pi in return, but actual values ?

Thank you! 

Good day everyone, please I'm soliciting help on how to solve PDE in Maple. I know how to solve ODE but I don't know how to go about PDE. The problem I want to solve is attached as an attachment. If epsilon is zero, then the problem reduces to ODE which can easily be solved, but epsilon is not supposed to be zero. please I need your help, thank you in anticipation.


Is there any way to convert a variable name to a string?

In that example, the content of the variable is converted to string, not the name of the variable.


a := 2



convert(a, string)






Some years ago I taught a calculus course for especially talented students. I made up the following problem as an interesting challenge.

Take a circular disk made of paper. Cut out a sector of some angle α from the disk. Roll each of the resulting two pieces into cones. Let V(α) be the sum of the volumes of the two cones. Find the α that maximizes V(α).

Here is an animated statement of the problem, produced in Maple.


Good Afternoon,

I'm relatively new to using Maple and I have encountered a problem that I don't seem to be able to figure out myself.

I am trying to calculate the determining equations, and subsequently the infinitesimals of an underdetermined set of PDE's. However, I keep getting the error message

"Error, (in PDEtools:-ToJet) incorrect use of the dependent variable name(s) [R, p, u, v, w], as indexed function names in: {w[](R[z]*v[y]+v[z]), w[](R[z]*w[y]+w[z])}"

declare(u(y, z));
               u(y, z) will now be displayed as u

declare(v(y, z));
               v(y, z) will now be displayed as v

declare(w(y, z));
               w(y, z) will now be displayed as w

declare(p(y, z));
               p(y, z) will now be displayed as p

                R(z) will now be displayed as R

Conti := diff(u(y, z), y) + u(y, z)/(y - R(z)) + diff(w(y, z), z) + diff(R(z), z)*diff(w(y, z), y) = 0;
NSU := v(y, z)^2/(y - R(z)) - diff(p(y, z), y) = 0;
NSV := ((u(y, z)*diff(v(y, z), y) + u(y, z)*v(y, z)/(y - R(z)) + w(y, z)(diff(v(y, z), z) + diff(R(z), z)*diff(v(y, z), y))) + (-diff(v(y, z), y)/(y - R(z)) - diff(v(y, z), y, y) + v(y, z)/(y - R(z))^2)) + diff(R(z), z)*diff(w(y, z), y) = 0;
NSW := u(y, z)*diff(w(y, z), z) + w(y, z)(diff(w(y, z), z) + diff(R(z), z)*diff(w(y, z), y)) + diff(p(y, z), z) + diff(R(z), z)*diff(p(y, z), y) - diff(w(y, z), y)/(y - R(z)) - diff(w(y, z), y, y) - diff(R(z), z)*diff(w(y, z), y) = 0;
sys := [Conti, NSU, NSV, NSW];
deteqs := Infinitesimals(sys);
Error, (in PDEtools:-ToJet) incorrect use of the dependent variable name(s) [R, p, u, v, w], as indexed function names in: {w[](R[z]*v[y]+v[z]), w[](R[z]*w[y]+w[z])}

The Maple Worksheet is also provided below. All help is greatly appreciated.



Hi Everyone,

I would like to convert a netlist to a ladder schematic by using Draw (Syrup). So far I have tried combinations of &+ and &// and have not achieved the correct result. Please help.

capnet:= "
V  1 0 1
L  1 2 1
C1 2 3 2uF 
C2 2 4 3uF
C3 4 3 1uF
C4 4 5 1.5uF
C5 3 5 2.5uF
C6 3 0 3.5uF
C7 5 0 0.5uF

ckt:= [ V(1), L(1), C1(2.8E-6),
         C2(3.E-6),  C3(1.E-6),
         C4(1.5E-6), C5(2.5E-6) &+ C6(3.5E-6)


2 3 4 5 6 7 8 Last Page 4 of 1864