I am working on calculating the Jacobian Determinant to find the singularity of my 5 DOF Robotic arm, I have calculated the jacobian matrix, and the matrix I got is a very large value As it is non square matrix(6x5),For singularity I am using Pseudo Inverse method( I studied in a Research Paper) Jinv=(Jtrans)(Inverse(JJtrans)) But In Matlab when I calculate the Inverse of (J*Jtrans) It goes Out Of memory, what is the alternate or right method to do that I know It is not the Matlab forum but I want to know is that right jacobian matrices Or I am doing some thing wrong in calculating the jacobian( as being very large matrice)Jacob1I am also attaching the code am using

code1 code2 code3 freebodydiagram

  • $\begingroup$ I am having issue with understanding the objective here. Because if you are trying to understand why you are getting a singularity, then it's probably because your robot is underactuated. If you still want to invert your jacobian, can't you just augment your Jacobian, by removing the specific DoF your robot can't achieve? I'm thinking something like from this link: robotacademy.net.au/lesson/jacobian-and-number-of-robot-joints alternatively, you could maybe check "pseudo damped inverse jacobian" methods. $\endgroup$
    – Spaceman
    Commented Dec 12, 2020 at 16:10
  • $\begingroup$ I want to find the singularity if any, simply I want to find the determinant and inverse, $\endgroup$ Commented Dec 14, 2020 at 4:42

1 Answer 1


Are you trying to somehow use this to determine lengths of the linkages later or are you trying to find the singular pose of one specific manipulator?

In case you are doing a study on how to calculate linkages lengths, you need a PC with more RAM if you want to progress.

If you already have values for the lengths, you should not use these as symbols, just use them as values instead. The only symbols should be the joint angles. That will make the matrix smaller and will fit in memory.

  • $\begingroup$ I have also tried using length values $\endgroup$ Commented Dec 14, 2020 at 4:44
  • $\begingroup$ still out of memory with length values? that should not be the case. can you post that code instead? $\endgroup$
    – 50k4
    Commented Dec 14, 2020 at 11:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.