39 :ConstraintSet(kSpecifyLater, name)
44 for (
int i=0; i<floor(T/dt); ++i) {
54 :ConstraintSet(kSpecifyLater, name)
68 VectorXd g = VectorXd::Zero(GetRows());
77 TimeDiscretizationConstraint::VecBound
80 VecBound bounds(GetRows());
virtual void UpdateBoundsAtInstance(double t, int k, VecBound &b) const =0
Sets upper/lower bound a specific time t, corresponding to node k.
void FillJacobianBlock(std::string var_set, Jacobian &) const override
TimeDiscretizationConstraint(double T, double dt, std::string constraint_name)
Constructs a constraint for ifopt.
Eigen::VectorXd GetValues() const override
virtual void UpdateJacobianAtInstance(double t, int k, std::string var_set, Jacobian &jac) const =0
Sets Jacobian rows at a specific time t, corresponding to node k.
int GetNumberOfNodes() const
VecBound GetBounds() const override
VecTimes dts_
times at which the constraint is evaluated.
std::vector< double > VecTimes
virtual void UpdateConstraintAtInstance(double t, int k, VectorXd &g) const =0
Sets the constraint value a specific time t, corresponding to node k.