Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

The following construction of a simple vector of matrices (just a test example)

Vector(2,(a) -> Matrix(2,2,(b,c) -> m||a||b||c));

works in Maple 17, but not in Maple 2017 where the error message "Error, (in Vector[column]) number of elements on right side must match subselection on left side" is produced. Why that?

Update: If no output is prompted, i.e., if the above line is terminated with colon instead of semicolon, then no error is raised. What?!

Hi;
what's the difference between "assuming" and "assume" commands in maple? tell me this problem with example. Thanks.
with regards...

I am thinking about buying maple 2017 however there are only 4 different categories to choose from when you want to buy: student, commercial, academic and government. I dont belong to any of them! Also the price difference is huge! I am on disability benefits and the academic license cost more or less the same amount that I get in disability benifts each month to cover my food, rent and medicines which is approximatly 1 100 usd. The price for a student licens is completely realistic and is a price that I am willing to pay but I am not a student and I dont feel comfortable claiming that I am even though everyone is a student as long as they live. When you stop learning you life is more or less over anyway. If I am forced to pay around 1 000 usd then I am not going to buy maple 2017. Then I am just going to continue using MathPapa free algbra calculator https://www.mathpapa.com/ because to be honest I dont really need maple that much in my research today but there are a couple of reaons why I want to buy. 1) I would like to support maplesoft because I think you have the best and most userfriendly mathematical software on the market. 2) I want to hedge my bets. My needs might change in the future. 3) I want to be able to run my large number of old worksheets and see if I can improve them. 4) I want to see what changes and improvments have been made to maple 2017 compared to let say 5 years ago and to assess if these changes provide any value to me. 

 I'm thinking upload a technical paper into maple cloud, and i would like to keep the intellectual property of this paper or have a mention from the reader if they use it. Is it possible?. Thanks!

I have a parametric equation which want to solve it , but maple does not .

problem.mw

 best regards

Hi guyz,

I have a trouble in expanding the function "p" with respect to "b<<1". After expansion I would like wirite terms with respect to orders of "b". I know the procedure but I can't unfortunately do that for this case. can u give any help?

 

 

 

 

prob.mw

hi

i want to solve a function which contains below series, but I can't.

SS:=sum(F[k-m]*sum(F[m-L]*sum(F[L-j]*F[j],j=0..L),L=0..m),m=0..k);

or

SS:sum(F[k-m],m=0..k)*sum(F[m-L],L=0..m)*sum(F[L-j]*F[j],j=0..L);

eq:=(-1/(k+1))*(F[k]+0.5*sum((k-m+1)*F[k-m+1]*F[m],m=0..k)+0.05*SS);

n:=8;
for k from 0 to n do
F[k+1]:=solve(eq);
end do;

with the first SS I have gotten a wrong nswer and with the second SS this error has been seen:

Error, (in solve) cannot solve expressions with sum(F[L-j]*F[j], j = 0 .. L) for F[j]

is there qny one hepl me please.

thanks

Why Maple18 cannot solve the system p=(w^2+v*w)/(1-2*u-w) & q=u+w & r=w symbolically by using command

solve({p=(w^2+v*w)/(1-2*u-w),q=u+w,r=w},{u,v,w})? It responds with an error message.

int(ln(x)^n,x)  just returns the integral

Mathematica gives

What other interventions are required to get Maple to produce an answer?

 

I have the following expression

((4*(N-i+2))*((N-i-2)*(-(N-i-4)*(N+i+2)*(N+2)*(N+4)+N^4+4*N^3+4*N^2+16*N-40)-(4*(N-1))*(2*N+3)*(N+5))+(8*(N+5))*(N^2+8*N+6))/((N-i+1)*(N-i+3)*((N-i-2)*(i+3)*(N+2)*(N+4)-(8*(N+5))*(N-1)))

The parameters i and N are nonnegative integers and i is less than or equal to N. The purpose is to make it as short as possible. Based on my experience, it could be expressed as a small binomial expression or as a sum of two or three binomials. However, by Maple commands the conversion does not give me binomials or any smaller expression.

Is there any way for the conversion to binomials or any other conversion to shorten the expression?

I appreciate any help.

A question was raised recently on Stewart Gough platforms.  I decided to tidy up some old code to show platform position and leg lengths for any given displacement.
 

restart

``

Hexapod Setup Data

 

RotZ := proc (delta) options operator, arrow; Matrix(1 .. 3, 1 .. 3, {(1, 1) = cos(delta), (1, 2) = -sin(delta), (1, 3) = 0, (2, 1) = sin(delta), (2, 2) = cos(delta), (2, 3) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 1}, datatype = anything, storage = rectangular, order = Fortran_order, subtype = Matrix) end proc

a[1] := Vector(3, [.5, 3.0, 0]); a[2] := evalf(RotZ(20*((1/180)*Pi)).a[1]); a[3] := evalf(RotZ(100*((1/180)*Pi)).a[2]); a[4] := evalf(RotZ(20*((1/180)*Pi)).a[3]); a[5] := evalf(RotZ(100*((1/180)*Pi)).a[4]); a[6] := evalf(RotZ(20*((1/180)*Pi)).a[5])

b[1] := evalf(.7*RotZ(-40*((1/180)*Pi)).a[1]); b[2] := evalf(RotZ(100*Pi*(1/180)).b[1]); b[3] := evalf(RotZ(20*Pi*(1/180)).b[2]); b[4] := evalf(RotZ(100*Pi*(1/180)).b[3]); b[5] := evalf(RotZ(20*Pi*(1/180)).b[4]); b[6] := evalf(RotZ(100*Pi*(1/180)).b[5])

Zeroposn := Vector(3, [0, 0, 3])

Tx := Vector(3, [1, 0, 0]); Ty := Vector(3, [0, 1, 0]); Tz := Vector(3, [0, 0, 1])

``

``

NULL

Procedures

 

PlatPosn := proc (x := 0, y := 0, z := 0, alpha := 0, beta := 0, delta := 0) local i, v, Rot, L1, L2, L3, L4, L5, L6; global txn, tyn, tzn, ctrp; description "Calculates the platform position in the Global Coordinates, Unit normals and Leg Lengths"; v := Vector(3, [x, y, z]); ctrp := Zeroposn+v; Rot := Matrix(1 .. 3, 1 .. 3, {(1, 1) = cos(delta)*cos(beta), (1, 2) = -sin(delta)*cos(alpha)+cos(delta)*sin(beta)*sin(alpha), (1, 3) = sin(delta)*sin(alpha)+cos(delta)*sin(beta)*cos(alpha), (2, 1) = sin(delta)*cos(beta), (2, 2) = cos(delta)*cos(alpha)+sin(delta)*sin(beta)*sin(alpha), (2, 3) = -cos(delta)*sin(alpha)+sin(delta)*sin(beta)*cos(alpha), (3, 1) = -sin(beta), (3, 2) = cos(beta)*sin(alpha), (3, 3) = cos(beta)*cos(alpha)}, datatype = anything, storage = rectangular, order = Fortran_order, subtype = Matrix); for i to 6 do bn || i := Zeroposn+v+Rot.b[i] end do; txn := Rot.Tx; tyn := Rot.Ty; tzn := Rot.Tz; print(" Platform centre Global", ctrp); print(" Platform corner Co-ords Global", bn1, bn2, bn3, bn4, bn5, bn6); print("Platform Triad Vectors  ", "X green ", txn, "Y blue", tyn, "Z red ", tzn); L1 := sqrt((bn1-a[1])^%T.(bn1-a[1])); L2 := sqrt((bn2-a[2])^%T.(bn2-a[2])); L3 := sqrt((bn3-a[3])^%T.(bn3-a[3])); L4 := sqrt((bn4-a[4])^%T.(bn4-a[4])); L5 := sqrt((bn5-a[5])^%T.(bn5-a[5])); L6 := sqrt((bn6-a[6])^%T.(bn6-a[6])); print("Leg Lengths"); print("L1= ", L1); print("L2= ", L2); print("L3= ", L3); print("L4= ", L4); print("L5= ", L5); print("L6= ", L6) end proc

``

PlatPlot := proc () local Base, Platformdisplacement, picL1, picL2, picL3, picL4, picL5, picL6; global tx0, ty0, tz0; description "Displays the Hexapod"; Base := plots:-polygonplot3d(Matrix([a[1], a[2], a[3], a[4], a[5], a[6]], datatype = float), color = black, transparency = .5); Platformdisplacement := plots:-polygonplot3d(Matrix([seq(bn || i, i = 1 .. 6)]), color = cyan, transparency = .5); picL1 := plots:-arrow(a[1], bn || 1-a[1], colour = green); picL2 := plots:-arrow(a[2], bn || 2-a[2], colour = blue); picL3 := plots:-arrow(a[3], bn || 3-a[3], colour = blue); picL4 := plots:-arrow(a[4], bn || 4-a[4], colour = blue); picL5 := plots:-arrow(a[5], bn || 5-a[5], colour = blue); picL6 := plots:-arrow(a[6], bn || 6-a[6], colour = orange); tx0 := plots:-arrow(ctrp, txn, colour = green); ty0 := plots:-arrow(ctrp, tyn, colour = blue); tz0 := plots:-arrow(ctrp, tzn, colour = red); plots:-display(Base, picL1, picL2, picL3, picL4, picL5, picL6, Platformdisplacement, tx0, ty0, tz0, axes = box, labels = [X, Y, Z], scaling = constrained) end proc

``

NULL

``

``

PlatPosn()

"L6= ", 3.586394355

(1)

PlatPlot()

 

NULL

PlatPosn(.52, -.89, .7, .2, .67, .3)

"L6= ", 3.055217994

(2)

PlatPlot()

 

NULL

NULL

 

NULL

print('tzn' = LinearAlgebra:-CrossProduct(txn, tyn), `= `, tzn)

tzn = Vector[column](%id = 18446744074564617750), `= `, Vector[column](%id = 18446744074328082542)

(3)

``

``NULL

NULL

Rotation Matrices

NULL

``

 

RotZ := Matrix(3, 3, {(1, 1) = cos(delta), (1, 2) = -sin(delta), (1, 3) = 0, (2, 1) = sin(delta), (2, 2) = cos(delta), (2, 3) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 1})

RotY := Matrix(3, 3, {(1, 1) = cos(beta), (1, 2) = 0, (1, 3) = sin(beta), (2, 1) = 0, (2, 2) = 1, (2, 3) = 0, (3, 1) = -sin(beta), (3, 2) = 0, (3, 3) = cos(beta)})

RotX := Matrix(3, 3, {(1, 1) = 1, (1, 2) = 0, (1, 3) = 0, (2, 1) = 0, (2, 2) = cos(alpha), (2, 3) = -sin(alpha), (3, 1) = 0, (3, 2) = sin(alpha), (3, 3) = cos(alpha)})

NULL

ROT := RotZ.RotY.RotX

Matrix(%id = 18446744074564619310)

(4)

``

``

``


 

Download Reverse_Kinematics_Stewart_Gough_Platform.mw

With this application the components of the acceleration can be calculated. The components of the acceleration in scalar and vector of the tangent and the normal. In addition to the curvilinear kinetics in polar coordinates. It can be used in different engineers, especially mechanics, civilians and more.

In Spanish.

Kinematics_Curvilinear v18.mw

Kinematics_Curvilinear_updated_v2017.mw

Cinemática_en_Coordenadas_Polares_Cilindricas.mw

Kinematics_Curvilinear_updated_v2018.mw

Cinemática_de_una_partícula_nueva_sintaxis.mw

Lenin Araujo Castillo

Ambassador of Maple

 

 

I'm having a trouble with this trivial code in Maple. The output is, well, ... stupid ! I'm askingMaple to do a vectorial sum and substraction of 5 cross products, and what I get is silly : a sum of vectors, but it doesn't give the total vector ! What the hell !?

with(linalg):
with(DEtools):

ly := 9.4607*10^15:
M0 := 1.99*10^30:

M1 := 2.20*M0:
M2 := 2.00*M0:
M3 := 1.50*M0:
M4 := 3.00*M0:

r1 := [-3, 3, 0]*ly:
r2 := [0, -2, 0]*ly:
r3 := [1, 2, 0]*ly:
r4 := [6, 4, 0]*ly:

v1 := [25, 15, 0]*10^3:
v2 := [20, -20, 0]*10^3:
v3 := [-5, -25, 0]*10^3:
v4 := [15, 0, 0]*10^3:

Mtot := M1 + M2 + M3 + M4:

rcm := (M1*r1 + M2*r2 + M3*r3 + M4*r4)/Mtot:
vcm := (M1*v1 + M2*v2 + M3*v3 + M4*v4)/Mtot:

Ltot := crossprod(r1, M1*v1) + crossprod(r2, M2*v2) + crossprod(r3, M3*v3) + crossprod(r4, M4*v4) - crossprod(rcm, Mtot*vcm);

I have done other codes with vectors like these, using the crossprod command, and they are all working great.  So I don't understand what is going on here.  I'm using Maple 13.

I'm not a strong user of Maple, so I may have done a simple mistake somewhere, but I really don't see what and where. So what is wrong with this Maple code ?

Hi, I'm trying to display a rotation matrix, but due to the interaction with the explore controls and the working numerical precision for the controls / trig terms, I'm getting displays like

1.0  0.0

0.0  -2*10^-10

What I'd like is for the -2*10^-10 to be displayed in decimal format (by default) and therefore would be displayed as 0.0.

So is there a way to control the display formatting of:

x := cos(Pi/(2.0));

so that it displays 0.0 instead of -2*10^-10?

I realise that Increasing the Digits increases the precision, but this simply increases the magnitude of the exponent and I can't simply use x := cos(Pi/(2)), because of the interaction with the explore controls.

Thanks.

I have a code that outputs a long string of mathematics after various string replacements which I save into a file in the format of a Python function. Here is the code (for a 1 x 1 matrix):

restart:
Size:=1:
## This is the matrix which is generated in a string format
mat1:="Matrix(1, 1, [[-1/2*(A^8*hh*m3+6*A^7*B*hh*m3-2*A^7*hh*m3*z3+16*A^6*B^2*hh*m3-14*A^6*B]])":
## Open up file
filename2:=fopen(cat("Matrix", Size, "x", Size,"HH.py"),WRITE,TEXT): 

## Format file
fprintf(filename2,"import numpy as np\ndef myfuncHH(A,B):\n    z3 = 2\n    m3 = float('inf')\n    Mat_size = %a", Size): 
fprintf(filename2,"\n    arr = np.array([%a",mat1): 
fprintf(filename2,"],dtype=np.float64)"): 
fprintf(filename2,"\n    shape = ( Mat_size, Mat_size )\n    HH=arr.reshape( shape )\n    return HH"):
fclose(filename2):


This generates almost the exact output that is required:

 

import numpy as np
def myfuncHH(A,B):
    z3 = 2
    m3 = float('inf')
    Mat_size = 1
    arr = np.array(["Matrix(1, 1, [[-1/2*(A^8*hh*m3+6*A^7*B*hh*m3-2*A^7*hh*m3*z3+16*A^6*B^2*hh*m3-14*A^6*B]])"],dtype=np.float64)
    shape = ( Mat_size, Mat_size )
    HH=arr.reshape( shape )
    return HH

The part I want to remove is the "Matrix(1, 1, [   "Maths in here"   ])"]

 

I can use stringtools to tidy up most of this, but I am having trouble getting rid of the quotes of the string itself. I have tried escaping them and that does nothing. Is there a simple way to do this or will a regex have to be made?

 

- Yeti

First 957 958 959 960 961 962 963 Last Page 959 of 2223