@@ -10,6 +10,7 @@ KinodynamicsID::KinodynamicsID(const RobotModelHandler & model_handler, double c
1010, data_handler_(model_handler_)
1111, robot_(model_handler_.getModel())
1212, formulation_(" tsid" , robot_)
13+ , solver_(" solver-proxqp" )
1314{
1415 const pinocchio::Model & model = model_handler.getModel ();
1516 const size_t nq = model.nq ;
@@ -61,7 +62,7 @@ KinodynamicsID::KinodynamicsID(const RobotModelHandler & model_handler, double c
6162 if (settings_.w_posture > 0 .)
6263 formulation_.addMotionTask (*postureTask_, settings_.w_posture , 1 );
6364
64- samplePosture_ = tsid::trajectories::TrajectorySample (nq_actuated, nu);
65+ samplePosture_. resize (nq_actuated, nu);
6566
6667 // Add the base task
6768 baseTask_ = std::make_shared<tsid::tasks::TaskSE3Equality>(" task-base" , robot_, model_handler_.getBaseFrameName ());
@@ -89,8 +90,7 @@ KinodynamicsID::KinodynamicsID(const RobotModelHandler & model_handler, double c
8990 formulation_.addActuationTask (*actuationTask_, 1.0 , 0 ); // No weight needed as it is set as constraint
9091
9192 // Create an HQP solver
92- solver_ = tsid::solvers::SolverHQPFactory::createNewSolver (tsid::solvers::SOLVER_HQP_PROXQP, " solver-proxqp" );
93- solver_->resize (formulation_.nVar (), formulation_.nEq (), formulation_.nIn ());
93+ solver_.resize (formulation_.nVar (), formulation_.nEq (), formulation_.nIn ());
9494
9595 // By default initialize target in reference state
9696 const Eigen::VectorXd q_ref = model_handler.getReferenceState ().head (nq);
@@ -114,7 +114,7 @@ KinodynamicsID::KinodynamicsID(const RobotModelHandler & model_handler, double c
114114
115115 // Dry run to initialize solver data & output
116116 const tsid::solvers::HQPData & solver_data = formulation_.computeProblemData (0 , q_ref, v_ref);
117- last_solution_ = solver_-> solve (solver_data);
117+ last_solution_ = solver_. solve (solver_data);
118118}
119119
120120void KinodynamicsID::setTarget (
@@ -182,7 +182,7 @@ void KinodynamicsID::setTarget(
182182 }
183183 }
184184 }
185- solver_-> resize (formulation_.nVar (), formulation_.nEq (), formulation_.nIn ());
185+ solver_. resize (formulation_.nVar (), formulation_.nEq (), formulation_.nIn ());
186186}
187187
188188void KinodynamicsID::solve (
@@ -217,7 +217,7 @@ void KinodynamicsID::solve(
217217 }
218218
219219 const tsid::solvers::HQPData & solver_data = formulation_.computeProblemData (t, q_meas, v_meas);
220- last_solution_ = solver_-> solve (solver_data);
220+ last_solution_ = solver_. solve (solver_data);
221221 assert (last_solution_.status == tsid::solvers::HQPStatus::HQP_STATUS_OPTIMAL);
222222 tau_res = formulation_.getActuatorForces (last_solution_);
223223}
0 commit comments