Go to the documentation of this file.
48 cost.noalias() = xd.transpose() *
_Q_diag * xd;
50 cost.noalias() = xd.transpose() *
_Q * xd;
58 assert(cost.size() == 1);
65 cost[0] += xd.transpose() *
_Q_diag * xd;
67 cost[0] += xd.transpose() *
_Q * xd;
72 cost[0] += u_k.transpose() *
_R_diag * u_k;
74 cost[0] += u_k.transpose() *
_R * u_k;
80 cost[0] += ud.transpose() *
_R_diag * ud;
82 cost[0] += ud.transpose() *
_R * ud;
103 cost.noalias() = xd.transpose() *
_Q_diag * xd;
105 cost.noalias() = xd.transpose() *
_Q * xd;
113 assert(cost.size() == 1);
120 cost[0] += xd.transpose() *
_Q_diag * xd;
122 cost[0] += xd.transpose() *
_Q * xd;
virtual const OutputVector & getReferenceCached(int k) const=0
int getNonIntegralStateTermDimension(int k) const override
Eigen::DiagonalMatrix< double, -1 > _Q_diag
const ReferenceTrajectoryInterface * _x_ref
void computeNonIntegralStateTerm(int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, Eigen::Ref< Eigen::VectorXd > cost) const override
void computeIntegralStateControlTerm(int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, const Eigen::Ref< const Eigen::VectorXd > &u_k, Eigen::Ref< Eigen::VectorXd > cost) const override
double normalize_theta(double theta)
normalize angle to interval [-pi, pi)
Eigen::DiagonalMatrix< double, -1 > _Q_diag_sqrt
mpc_local_planner
Author(s): Christoph Rösmann
autogenerated on Wed Mar 2 2022 00:35:06