Go to the documentation of this file.
29 nj(chain.getNrOfJoints()),
32 transpose(nj>6),toggle(true),
33 m(static_cast<unsigned int>(
max(6,nj))),
34 n(static_cast<unsigned int>(
min(6,nj))),
36 U(Eigen::MatrixXd::Identity(m,m)),
37 V(Eigen::MatrixXd::Identity(n,n)),
41 UY(Eigen::VectorXd::Zero(6)),
42 SUY(Eigen::VectorXd::Zero(nj)),
53 m =
static_cast<unsigned int>(
max(6,
nj));
54 n =
static_cast<unsigned int>(
min(6,
nj));
56 U.conservativeResizeLike(Eigen::MatrixXd::Identity(
m,
m));
57 V.conservativeResizeLike(Eigen::MatrixXd::Identity(
n,
n));
58 B.conservativeResize(
m,
n);
59 S.conservativeResize(
n);
60 tempi.conservativeResize(
m);
61 SUY.conservativeResizeLike(Eigen::VectorXd::Zero(
nj));
84 for(
unsigned int i=0;i<6;i++)
87 for(
unsigned int i=0;i<
m;i++){
88 for(
unsigned int j=0;j<
n;j++)
101 for (
unsigned int i = 0; i <
n; i++){
Eigen::MatrixXd jac_eigen
@ E_NOT_UP_TO_DATE
Chain size changed.
double min(double a, double b)
virtual int CartToJnt(const JntArray &q_in, const Twist &v_in, JntArray &qdot_out)
virtual int JntToJac(const JntArray &q_in, Jacobian &jac, int seg_nr=-1)
void resize(unsigned int newNrOfColumns)
Allocates memory for new size (can break realtime behavior)
represents both translational and rotational velocities.
unsigned int rows() const
@ E_SIZE_MISMATCH
Input size does not match internal state.
Eigen::VectorXd qdot_eigen
int svd_eigen_Macie(const Eigen::MatrixXd &A, Eigen::MatrixXd &U, Eigen::VectorXd &S, Eigen::MatrixXd &V, Eigen::MatrixXd &B, Eigen::VectorXd &tempi, double threshold, bool toggle)
double max(double a, double b)
virtual void updateInternalDataStructures()
virtual void updateInternalDataStructures()
Eigen::VectorXd v_in_eigen
ChainJntToJacSolver jnt2jac
This class encapsulates a serial kinematic interconnection structure. It is built out of segments.
unsigned int getNrOfJoints() const
ChainIkSolverVel_pinv_givens(const Chain &chain)
int error
Latest error, initialized to E_NOERROR in constructor.
~ChainIkSolverVel_pinv_givens()