Items tagged with assign


I assigned the greek alphabet pi=0.45 in Maple but it displayed an error message since it is already a known constant 3.142. Please how can I assign pi to 0.45 in Maple ?


I have two same dimentional matrix(1000*1000), one is full of variables and the other is full of numbers. What is the simplest way to assign the values of second matrix to first one variables?

for example:

A := Matrix([[x, y], [z, t]]);

B := Matrix([[1, 2], [3, 4]]);

How assign B's values to A's variables, in such a way that after assigning ,when call x, the 1 appears in output.





Error, invalid input: with expects its 1st argument, pname, to be of type {`module`, package}, but received shareman


A := Matrix([[x, y], [z, t]])

A := Matrix(2, 2, {(1, 1) = x, (1, 2) = y, (2, 1) = z, (2, 2) = t})


B := Matrix([[1, 2], [3, 4]])

B := Matrix(2, 2, {(1, 1) = 1, (1, 2) = 2, (2, 1) = 3, (2, 2) = 4})













I have excuted a loop for i l2:=NLPSolve(.......) with variables, t1,th,tl, etc. I need get the numerical result of theses variables and assign them to t1,th, etc. After execute a function with them. I have tried with op, map and assign, but the program don't understand the numerical value of variables. Why?. How can i assign theses numerical vaules?. Thanks! 

I am not sure why p is assigned to 1 when I do a logic problem.

The letter p should stay as p and not be assigned to one. I suspect it has something to do with a statement that is always true. This is annoying because sometimes I have expressions with p in a formula later on, and I didn't realize p has been assigned to 1. And I can't use p in a logical formula either since it's already been assigned to 1.

im just getting a generic recursive assignment plus first unused arg error

thats what the maple engine says im doing wrong ill get the number of recursives counted but i guess it just makes me the most angry because its like the same type of error for me every ******* time

In Maple V, Release 4 (1996):


_EnvX:=0; b:=0; proc() global b; print(_EnvX, b); assign('_EnvX=1, b=1'); print(_EnvX, b); end();
_EnvX:=0: b:=0: proc() global b; print(_EnvX, b); _EnvX:=1; b:=1; print(_EnvX, b); end();;

                                 0, 0
                                 0, 1

In newer Maple:


_EnvX:=0; b:=0; proc() global b; print(_EnvX, b); assign('_EnvX=1, b=1'); print(_EnvX, b); end proc();
_EnvX:=0: b:=0: proc() global b; print(_EnvX, b); _EnvX:=1; b:=1; print(_EnvX, b); end proc();


Dear Maple users

I have done some experiments with the new Workbook feature in Maple 2016. It is a very welcome addition, indeed. Earlier I have created Maple files in which data from an external Excel file was imported and being used for certain calculations. In order to make recalculations work properly, one need to let the Excel file follow the Maple file. That's where a Workbook come in handy! I tried placing those two files in a Workbook. It didn't work completely as advertised, I think. I moved the Workbook to another location on the harddrive to make sure it wouldn't interfere with the original files outside the Workbook. Then I recalculated the Maple document inside the Workbook. The good thing: The data from the Excel file was still present. The bad thing: If I changed some data in the Excel file inside the Workbook, it didn't register in the Maple file when updating it!

Maybe I should explain that I did import data from the Excel file into Maple via the menu: Tools > Assistants > Import Data... The data was retrieved as a matrix within the Maple file and assigned to a variable and used for plots ...

Why doesn't the above procedure work properly? I hope one don't need to use the Workbook URI to reference files within the workbook. It is not that userfriendly!




Dear All

I have simple problem related to ploting of 2-D graph

What I need is listed as below:

1. How I can re-scale axes by 1/2.

2. How to give custom gap between graph and its title.

3. How to place two legends in vertical format in opposite to horizontal.

4. How to assigne custom gap between legends and graph

5. How to place label 'q[b]' on the right side of vertical axes.

f[1] := 0.6553e-2+0.61277e-1*cos(.9976156575*x)-0.3448e-2*cos(1.995231315*x)+0.164e-3*cos(2.992846972*x)



f[2] := 0.6601e-2+0.61212e-1*cos(.9878156204*x)-0.3834e-2*cos(1.975631241*x)+0.182e-3*cos(2.963446861*x)



plot([diff(f[1], x), diff(f[2], x)], x = -3.2 .. 3.2, color = ["Red", "Green"], linestyle = [solid, dash], legend = ["undistorted ( n=0.0, q=0.0)", "undistorted"], labels = [tau*``, q[b]*`\` `], labeldirections = [HORIZONTAL, VERTICAL], size = [500, "golden"], title = "Radial velocity curve of Polytropic Model of Index N=3", titlefont = ["ROMAN", 15], legendstyle = [font = ["HELVETICA", 9], location = bottom]);





I want to assign a value to a symbol stored in a vector. I know the position of the symbol in the vector. Is there an easy way to do this?

Here to illsutrate my problem:



vec(1):=1;    # expected result: a:=1

vec := Vector(3, {(1) = 1, (2) = b, (3) = c})


a;            # expected result: 1








I got a set of ecuations to solve, like this one:


a,b,c,d are numbers, like 2.0458 and so on.


When I want to solve the set, I need to tell Maple the command solve:

solve( {seq(eq[i],i=1..N)},{variables});  (N is an integer of course)


To set the variables, one must check each equation to write: {W[1,0],HRa[1,0],ga[1,0]...} and so on.

I know that I can use the command is(variable,assignable) to check if a variable has not a value assigned already and, according to true/false I can construct the set {variables} and solve the set of equations.

That´s an easy solution if I need to check variables under a certain pattern, like: X[1].X[2],X[3] since I can create a loop and check them one after the other. But my problem is that I have different names for variables or that variables change to assignable from assigned according to other conditions, so I can never be sure if W[1,0] is going to be a variable to compute in all steps instead of SR[1,1].

for example:

if a>3 then
end if;

So, when I need to type solve, the {variables} part is different according to each case. Is there any command that allow me to insert an expression and Maple can return me the variables or parameters in the expression that are not numeric already?

Thanks in advance.

I want to compute some matrix multiplications and i need this expression to be 1 always, i.e,


for every calculation I do.

I have tried x^2+y^2+z^2+w^2:=1 and assign(x^2+y^2+z^2+w^2,1) but it doesn't work.

What I should type to make it work?


Thank you



Suppose I have a table of variables





numelems(f); gives 2.


In case I have not assign f, 

numelems(f); gives error message.


Is there any simple way let maple detect that if it is unassined, numelems(f), can provide zero?


Thank you very much


But I have not found how to do it.

I'd like to tell a new worksheet to use assignments created in another document. This is to save time retyping equations.

And, is this something that others like to do ?



Cheers !

I am trying separation of variables in Maple. I get an equation that has the form   

And now I want to tell Maple to assign the terms with 1/R in them to one variable, say eq21, and the term with 1/Z to second variable, say eq22 The idea is that I can later more easily work with each separate ode. 

I do not know to separate those apart. I could offcourse copy and paste by hand, but I want to automate this.

I tried match() and patmatch() but I am not seeing the way. Here is the code:

T:=  (r,z)-> Z(z)*R(r);
eq1:= diff(T(r,z),r$2)+1/r*diff(T(r,z),r)+diff(T(r,z),z$2);

#need now way to break the above into 2 different variables.

ps. I know I can do this:

T:=  (r,z)-> Z(z)*R(r);
eq1:= diff(T(r,z),r$2)+1/r*diff(T(r,z),r)+diff(T(r,z),z$2);

But this for me is not the right way to do it. I think there should be more algebraic way.


Hello People in Mapleprimes,


I have a question about the codes in the help page of assign.

Please tell me about this.

The folliowing codes were written there:

code (A)





The output of these was 



I think that assign(a,c) means assign(a=c) or a:=c, not c:=a.

If what I wrote was true, the output of the above code should be


And, if I changed assign(a,c) to assign(c,a), the output was d,2,d, which is the output written on the helppage 

of the assign. On the other hand, the output of code A was surely d,2,d.

Why does assign(a,c) have the same meaning as assign(c,a)?


Best wishes



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