95 Reputation

6 Badges

5 years, 13 days
East Grinstead, United Kingdom

MaplePrimes Activity

These are answers submitted by Ronan

This Is how I would approach the issue. Could be a problem if l=1 or n.



C := (sum(A[k]*x[i, k], k = 1 .. l-1)+sum(A[k]*x[i, k], k = l+1 .. n)+A[l]*x[i, l])^2-(2*(sum(A[k]*x[i, k], k = 1 .. l-1)+sum(A[k]*x[i, k], k = l+1 .. n)+A[l]*x[i, l]))*y[i]+y[i]^2

(sum(A[k]*x[i, k], k = 1 .. l-1)+sum(A[k]*x[i, k], k = l+1 .. n)+A[l]*x[i, l])^2-2*(sum(A[k]*x[i, k], k = 1 .. l-1)+sum(A[k]*x[i, k], k = l+1 .. n)+A[l]*x[i, l])*y[i]+y[i]^2


diff(C, A[l])

2*(sum(A[k]*x[i, k], k = 1 .. l-1)+sum(A[k]*x[i, k], k = l+1 .. n)+A[l]*x[i, l])*x[i, l]-2*x[i, l]*y[i]






.Replace in solve({.....................},{c__1,c__3,c__4,x}) and it works


You haven't defined "p", you have "ep" so I assumed that to be e*p. You also have defined "del" so I changed that to 1 just to see what would happen. Could be totally wrong but it solves easily then.



e := 5



f := 0.714e-1



p := 0.815e-1



q := .397



Sol := solve({(-n+(p*q/((1+f*n)^2+(1+T-n)^2))^2)/(e*p) = 0, -T+p*(1+e*f*n)/((1+f*n)^2+(1+T-n)^2) = 0}, [T, n])

[[T = 0.3919624923e-1, n = 0.2421000982e-3], [T = -.9371446226-.8116256169*I, n = 0.6704759545e-1+.2196973222*I], [T = -2.934201781+3.533684884*I, n = -1.734513872+2.660302975*I], [T = -3.532762021+1.455618087*I, n = -2.704556354+2.261007132*I], [T = -3.532762021-1.455618087*I, n = -2.704556354-2.261007132*I], [T = -2.934201781-3.533684884*I, n = -1.734513872-2.660302975*I], [T = -.9371446226+.8116256169*I, n = 0.6704759545e-1-.2196973222*I]]





for i to nops(Sol) do Sol[i] end do

[T = 0.3919624923e-1, n = 0.2421000982e-3]


[T = -.9371446226-.8116256169*I, n = 0.6704759545e-1+.2196973222*I]


[T = -2.934201781+3.533684884*I, n = -1.734513872+2.660302975*I]


[T = -3.532762021+1.455618087*I, n = -2.704556354+2.261007132*I]


[T = -3.532762021-1.455618087*I, n = -2.704556354-2.261007132*I]


[T = -2.934201781-3.533684884*I, n = -1.734513872-2.660302975*I]


[T = -.9371446226+.8116256169*I, n = 0.6704759545e-1-.2196973222*I]






This might help you. It was posted as an answer to my animation question many months ago. I found it extremly helpful.



Use Rank it is in the LinearAlgebra Package.

Rank(A) returns a value of   5

Hope this helps.



1st. Maple 16.02 is compatible with Win8

2nd Have you tried installing it in Win7 compatibility mode? Would be interesting to know if this works but even if it does install I doubt you would get any level of support on crashes etc.


Try this

its part of a google book. It is what gave me the basic understanding.

The google search I used was sylvester dialytic elimination method

and the google book is Robot Analysis: The mechanics of serial and parallel Manipulators-

Hope the helps.

I do hope others reply to the original question. would polynomial ideals , grobner basis by useful here and if how to use them.


These 2 equations can be solved using the Sylvester Maxtrx technique. Have annotated the worhsheet to try and explain.

Would be interesting to see other techniques for solving them.




eq1 := (1/4)*p*g*A*B+(1/2)*g^2*A*B*h-(7/12)*p*g*A*h+(5/6)*A^2*h^2+(13/12)*A^2*h-(1/3)*p*A^2+(5/12)*g*A-(3/2)*g^2*A-(1/4)*p*A^2*h*c*g^2+(1/4)*p*g*A*d*h-(1/12)*p*g^2+(3/2)*A^3*h^3+(1/4)*p*A^2*h^2*d+(1/4)*p*A^2*h^2*B+(1/4)*p*A^2*h*B+(1/4)*A^2*h*c*g^2-(1/4)*p*A*c*g^3-(1/4)*g*A*B*h+(1/4)*g*A*d*h+(1/3)*A^2-(13/12)*p*A^2*h+(1/4)*p*g*A*B*h-(5/12)*p*g*A-(1/4)*g*A*B-(1/2)*g^2*A*B+(1/4)*A*c*g^3-(5/6)*p*A^2*h^2+(7/12)*g*A*h-(1/4)*A^2*h^2*d-(1/4)*A^2*h*B+(1/2)*g^2*A*B+(1/12)*g^2+(1/2)*g*A^2*h^2-(1/2)*g^4*A*c-2*g*A^2*h+(1/2)*A*d*h-(1/4)*A^2*h^2*B



eq2 := -(5/6)*A*c*g*h^3*B*d-4*h^3*c*g*A-(11/3)*c^2*g^4*h-9*A*c*g*h^2+7*h*B*c*g^2-6*A*c*g*h+(10/3)*c^2*g^4*h*B+(1/6)*h^2*B^4-(10/3)*c^2*g^3*h^2*A+(7/6)*B^2*h^3*d+3*B*c*g^2-A*c*g-2*h^2*c*g^2-(7/6)*d^2*h+(7/3)*B^2*h^3*d+(29/12)*d^2*h^3*B-h^4*c*A^2-c*A^2*h^2-B*h^3*d+(3/2)*c*d*g^2-B^2*c*g^2-3*d*h*B-3*d*h^2*B+(1/6)*B^3*h^2*d+(7/6)*d*B^2*h+(29/12)*d^2*h^2*B-4*h*c*g^2-(5/6)*B^2*h^3*A*c*g-(1/6)*B^2*c*g^2*d*h^2-(5/6)*B^2*h^2*A*c*g+(5/6)*B*c^2*g^3*A*h^2-(23/4)*d*h^2*B*c*g^2+(14/3)*d*h^3*A*c*g-(59/12)*d*h*B*c*g^2+(19/6)*d*h^2*A*c*g+(7/2)*B*A*c*g*h+(17/2)*B*A*c*g*h^2+5*B*h^3*A*c*g+(1/12)*B^4*h+(5/4)*d^3*h^3-(3/2)*c^3*g^6+(1/12)*h^3*B^4-(7/6)*h^3*d^2-(7/3)*d^2*h^2-B*d-2*c*g^2-4*c^2*g^4+(1/2)*d*h^4*c*A^2+(1/2)*B*h^4*c*A^2+(1/2)*B*h^3*c*A^2+(5/6)*A^2*c^2*g^2*h^3-(1/6)*B^3*c*g^2*h^2+(1/12)*h*c^2*g^4*B^2-(1/6)*B^3*c*g^2*h+(17/4)*d*h*c^2*g^4-4*d^2*h^2*c*g^2+(31/6)*d*h^2*c*g^2-(9/2)*c^2*g^3*A*h+(17/3)*d*h*c*g^2+4*B*h^2*c*g^2-(17/6)*h*B^2*c*g^2-(11/6)*B^2*h^2*c*g^2+(5/2)*c^2*g^4*B+(1/12)*d^2*h^3*B^2+(1/6)*B^3*h^3*d-2*c*A^2*h^3



Sylvesterg := SylvesterMatrix(eq1, eq2, h);

PolySylg := sort(LinearAlgebra:-Determinant(Sylvesterg), g);


Alternatively a Polynomial in h can be made



You need Numerical values for A,B,c,d,p to solve the polynomial

Then back substitute the roots into one of the equations to get the corresponding values of g or h.


Test Values

A := 3/2; 1; B := 6/5; 1; c := 9/7; 1; d := 4/3; -1; p := 1/2

Digits := 20;

sort(PolySylg, g)

G := [fsolve(PolySylg, g)];


Back Substitution


for i to nops(G) do g := G[i]; H1[i] := fsolve(eq1, h) end do


for i to nops(G) do g := G[i]; H2[i] := fsolve(eq2, h) end do



I would suggest you contact your supplier. I purchased a home use license of maple 15 early march and got a free upgrade to maple 16 when it was released. I just purchesed the home user license for maple 16 last week. I suppose by the time maple 17 and sim 7 are released I will need to pay something to get an upgrade.

Thank you all for replys and comments. I did get assign to work. there was a duplicate entry ie 2 rows the same which caused the problem. To clarify a some of the ponts raised. The rows are dependant on the previous rows. I choose a matrix because in a previous post Iwas told lists can be inefficant. Also athe matrix is visually easy to read I find. What I posed was just a short made up example. Thr algsubs on the equations is to shorten them as the can go on for screenful after screenfull. At the end of the assembling the equations I end uo with a 4x4 matrix whose determinant multiplies out to a 20th order polynomial. It is at this point I am using the assign to the valuse saved in the store matrix. I shall experiment with the

"#If you prefer assignment then you can use the two elementwise operations assign~ and  =~  : assign~(store[..,1]=~store[..,2]): a1,CX3,S1; "

At present I am using a for i to 100 do loop.

Page 1 of 1