30 Feature1D::Feature1D(
const string &pointName)
32 errorSIN(NULL,
"sotFeature1D(" +
name +
")::input(vector)::errorIN"),
34 "sotFeature1D(" +
name +
")::input(matrix)::jacobianIN") {
65 res(0) = err.dot(err) * .5;
77 res.resize(1, Jac.cols());
79 for (
int j = 0; j < Jac.cols(); ++j)
80 for (
int i = 0;
i < Jac.rows(); ++
i) res(0, j) += err(
i) * Jac(
i, j);
91 os <<
"1D <" <<
name <<
">: " << std::endl;
97 os <<
" All SIN not set.";
virtual void removeDependenciesFromReference(void)=0
void signalRegistration(const SignalArray< int > &signals)
#define sotDEBUGOUT(level)
virtual dynamicgraph::Vector & computeError(dynamicgraph::Vector &res, int time)
Compute the error between the desired value and the value itself.
#define sotDEBUGIN(level)
SignalTimeDependent< dynamicgraph::Matrix, int > jacobianSOUT
Jacobian of the error wrt the robot state: .
unsigned int getDimension(void) const
Shortest method.
dynamicgraph::SignalPtr< dynamicgraph::Matrix, int > jacobianSIN
Input for the Jacobian.
Simple test: the task is defined to be e_2 = .5 . e'.e, with e the mother task. The jacobian is then ...
virtual void display(std::ostream &os) const
Display the information related to this 1D implementation.
virtual const T & access(const Time &t)
DYNAMICGRAPH_FACTORY_ENTITY_PLUGIN(Feature1D, "Feature1D")
virtual void addDependency(const SignalBase< Time > &signal)
virtual dynamicgraph::Matrix & computeJacobian(dynamicgraph::Matrix &res, int time)
Compute the Jacobian of the value according to the robot state..
virtual const T & accessCopy() const
This class gives the abstract definition of a feature.
virtual void addDependenciesFromReference(void)=0
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > errorSIN
Input for the error.
SignalTimeDependent< dynamicgraph::Vector, int > errorSOUT
This signal returns the error between the desired value and the current value : . ...