using pseudoinverse to compute LCP gradients 

this handles the case when multiple solutions exist (like having a foot flat on the ground)