-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Variable feasible region task #922
Variable feasible region task #922
Conversation
src/TSID/include/BipedalLocomotion/TSID/VariableFeasibleRegionTask.h
Outdated
Show resolved
Hide resolved
C.C. @CarlottaSartore |
The CI are failing with the following error:
I was able to replicate the error on my machine, It was due to the verion of yarp, when I downgraded from |
I fixed this in #910 |
…ntrolled elements
6ff2c84
to
122092b
Compare
src/TSID/include/BipedalLocomotion/TSID/VariableFeasibleRegionTask.h
Outdated
Show resolved
Hide resolved
bool m_isInitialized{false}; /**< True if the task has been initialized. */ | ||
bool m_isValid{false}; /**< True if the task is valid. */ | ||
std::size_t m_NumberOfVariables{0}; /**< Number of variables. */ | ||
std::size_t m_variableSize{0}; /**< Size of the variable considered in the task. */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of having m_variableName and m_variableSize you can directly store the variable
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried to be consistent with the tasks already implemented, e.g. VariableRegularizationTask
// if the size of the m_controlledElements vector is zero, this means that the entire | ||
// variable is regularized | ||
// iDynTree::toEigen(this->subA(variable)).setIdentity(); // devo sostituirlo col comando | ||
// sotto? | ||
m_S = Eigen::MatrixXd::Identity(m_variableSize, m_variableSize); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is a mistake m_s is in general (m_variableSize x m_NumberOfVariables) matrix so only a subpart should contain the identity. The other should be zero. So perhaps
iDynTree::toEigen(this->subA(variable)).setIdentity()
is correct
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I interpreted the code correctly. Isn't the condition m_controlledElements.size() == 0
equivalent to m_variableSize == m_NumberOfVariables
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed with the commit b8820ac.
Implemented and Tested the 'VariableFeasibleRegionTask'.