I cant take inverse of J matris. it is jacobian.

syms x g h k l q a b c d f
y1 = (x*cos(q)+x*cos(g)-f*cos(l)-(b/2)*cos(h)-a*cos(q));
y2 = (x*sin(q)+x*sin(g)-f*sin(l)-(b/2)*sin(h)-a*sin(q));
y3 = (a*cos(q)+b*cos(h)-c*cos(k)-d);
y4 = a*sin(q)+b*sin(h)-c*sin(k);
y = [y1; y2; y3; y4];
v = [x; (h); (k); (l)];
J = jacobian(y, v);
inv(J)
J * inv(J)

6 Comments

Why can't you do that? Works for me.
J*inv(J) should give the unit matrix but it is not.
It would only give the unit matrix if J is non-singular.
Emrah
Emrah on 26 Dec 2013
Edited: Emrah on 26 Dec 2013
ie, is this true; inv(J)?
What does rank(J) indicate ?
I dont understand what you mean? J matrix is jacobian matris. rank(J) = 4 gives me. :(

Sign in to comment.

 Accepted Answer

simplify(J*inv(J))
ans =
[ 1, 0, 0, 0]
[ 0, 1, 0, 0]
[ 0, 0, 1, 0]
[ 0, 0, 0, 1]

More Answers (0)

Products

Tags

Asked:

on 26 Dec 2013

Commented:

on 27 Dec 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!