MaplePrimes Questions

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

Dear Maple users

How do I turn a text into a Matrix of letters in the most convenient and effective way in Maple? Let's say the text contains N letters and the first n of these should be placed in the first row, the next n letters in the second row and so on. In my first question the text is one continous string of only letters a-z with no spaces or numbers, etc. 

My second question would be how I can do the same as above, if the text contains spaces, numbers and other special symbols, which should be ignored. 

The subject is Cryptography. I hope some can help.


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)






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)



I am trying to use Explore command to model the CSA  of a trough.

So I want to  be able to change the variables: length of the walls (l:, slider 0..20) and the width (w:slider 0..20) and the angle (theta: slider 0..Pi/2)

Want to be able to see the diagram change and also display the area using the formula [output (15)] on the graph

Here is my attempt.

In the attached, I had to find the required coefficient. Now this has a relatively straight forward set of equation (which apparently form a closed group), so it was easy enough tee see what to do. In a more complicated situation that may be very difficult to see. I was a wondering is there is a better approach to use here?


Prove/show the coefficient of c[0] in c[1]^11 is 1/12*(1-1/5^10)NULL

eq1 := c[1]^2 = (1/5)*c[0]+(2/5)*c[1]+(2/5)*c[2]

c[1]^2 = (1/5)*c[0]+(2/5)*c[1]+(2/5)*c[2]


eq2 := c[1]*c[2] = (2/5)*c[1]+(2/5)*c[2]+(1/5)*c[3]

c[1]*c[2] = (2/5)*c[1]+(2/5)*c[2]+(1/5)*c[3]


eq3 := c[1]*c[3] = c[2]

c[1]*c[3] = c[2]


eq4 := c[2]*c[3] = c[1]

c[2]*c[3] = c[1]


eq5 := c[2]^2 = (1/5)*c[0]+(2/5)*c[1]+(2/5)*c[2]

c[2]^2 = (1/5)*c[0]+(2/5)*c[1]+(2/5)*c[2]


eq6 := c[3]^2 = c[0]

c[3]^2 = c[0]




c[1]^10 = (1/3125)*c[0]^5+(32/3125)*c[1]^5+(32/3125)*c[2]^5+(16/625)*c[0]*c[1]^4+(16/625)*c[0]*c[2]^4+(2/625)*c[0]^4*c[1]+(2/625)*c[0]^4*c[2]+(8/625)*c[0]^3*c[1]^2+(8/625)*c[0]^3*c[2]^2+(16/625)*c[0]^2*c[1]^3+(16/625)*c[0]^2*c[2]^3+(32/625)*c[1]*c[2]^4+(32/625)*c[1]^4*c[2]+(64/625)*c[1]^3*c[2]^2+(64/625)*c[1]^2*c[2]^3+(64/625)*c[0]*c[1]^3*c[2]+(96/625)*c[0]*c[1]^2*c[2]^2+(64/625)*c[0]*c[1]*c[2]^3+(16/625)*c[0]^3*c[1]*c[2]+(48/625)*c[0]^2*c[1]^2*c[2]+(48/625)*c[0]^2*c[1]*c[2]^2


C111 := lhs(%)*c[1] = expand(rhs(%)*c[2]*c[3])

c[1]^11 = (1/3125)*c[2]*c[3]*c[0]^5+(32/3125)*c[2]*c[3]*c[1]^5+(32/3125)*c[2]^6*c[3]+(16/625)*c[2]*c[3]*c[0]*c[1]^4+(16/625)*c[2]^5*c[3]*c[0]+(2/625)*c[2]*c[3]*c[0]^4*c[1]+(2/625)*c[2]^2*c[3]*c[0]^4+(8/625)*c[2]*c[3]*c[0]^3*c[1]^2+(8/625)*c[2]^3*c[3]*c[0]^3+(16/625)*c[2]*c[3]*c[0]^2*c[1]^3+(16/625)*c[2]^4*c[3]*c[0]^2+(32/625)*c[2]^5*c[3]*c[1]+(32/625)*c[2]^2*c[3]*c[1]^4+(64/625)*c[2]^3*c[3]*c[1]^3+(64/625)*c[2]^4*c[3]*c[1]^2+(64/625)*c[2]^2*c[3]*c[0]*c[1]^3+(96/625)*c[2]^3*c[3]*c[0]*c[1]^2+(64/625)*c[2]^4*c[3]*c[0]*c[1]+(16/625)*c[2]^2*c[3]*c[0]^3*c[1]+(48/625)*c[2]^2*c[3]*c[0]^2*c[1]^2+(48/625)*c[2]^3*c[3]*c[0]^2*c[1]


c[1]^11 = simplify(rhs(C111), [eq2, eq3, eq4, eq5, eq6])

c[1]^11 = (1/9765625)*(4070573*c[3]+4067448)*c[2]+(813802/9765625)*c[0]+(813802/9765625)*c[3]


coeff(rhs(%), c[0], 1)









The help page says that an option for int is continuous=truefalse. The help page reads

"Specifies whether int looks for discontinuities. " I interpret that as continuous=true means look for discontinuities

and false means do not look. A simple example, however, suggests that it is the opposite.



I interpret this as continuous=true means "I guarantee the result is continuous, so do not look"

This would be a logical opposite to discont=true in the plot command: discont=true -> continuous=false!

First 18 19 20 21 22 23 24 Last Page 20 of 2086