21 #define HUMOTO_CONFIG_ENTRIES \ 22 HUMOTO_CONFIG_PARENT_CLASS(TaskAB) 23 #include HUMOTO_CONFIG_DEFINE_ACCESSORS 42 :
TaskAB(
"TaskTerminalConstraint", gain)
55 Eigen::MatrixXd &A = getA();
56 Eigen::VectorXd &b = getB();
59 const std::size_t cstate_length = model_wpg04.getCState().size();
63 A.noalias() = getGain() * D * mpc.
S_.block((preview_length - 1)*cstate_length, 0, cstate_length, sol_structure.
getNumberOfVariables());
64 b.noalias() = -getGain() * D * mpc.
s_.block((preview_length - 1)*cstate_length, 0, cstate_length, 1);
Abstract base class (for control problems)
std::size_t getNumberOfVariables() const
Get total number of variables in the solution vector.
Analog of 'sol_structure' struct in Octave code. [determine_solution_structure.m].
virtual void setDefaults()
Set members to their default values.
void finalize()
This function is called automaticaly after reading a configuration file. Does nothing by default...
Terminal constraint task.
void setDefaults()
Set members to their default values.
std::vector< PreviewHorizonInterval > intervals_
Model Predictive Control problem for walking pattern generation [determine_solution_structure.m, form_rotation_matrices.m, form_foot_pos_matrices.m, form_condensing_matrices.m].
TaskTerminalConstraint(const double gain=1.0)
The root namespace of HuMoTo.
Instances of this class are passed to a virtual method 'humoto::TaskBase::form()', so even though this class is basically useless in its present form we cannot avoid its definition using a template.
std::size_t getPreviewHorizonLength() const
Returns length of the preview horizon.
void finalize()
This function is called automaticaly after reading a configuration file. Does nothing by default...
void form(const humoto::SolutionStructure &sol_structure, const humoto::Model &model_base, const humoto::ControlProblem &control_problem)
Form the task.
humoto::wpg04::PreviewHorizon preview_horizon_