OptimalControlProblem class
          #include <iDynTree/OptimalControlProblem.h>
        
        
        Constructors, destructors, conversion operators
- OptimalControlProblem()
 - ~OptimalControlProblem()
 - OptimalControlProblem(const OptimalControlProblem& other) deleted
 
Public functions
- auto setTimeHorizon(double startingTime, double finalTime) -> bool
 - auto initialTime() const -> double
 - auto finalTime() const -> double
 - auto setDynamicalSystemConstraint(std::shared_ptr<DynamicalSystem> dynamicalSystem) -> bool
 - auto setDynamicalSystemConstraint(std::shared_ptr<LinearSystem> linearSystem) -> bool
 - auto dynamicalSystem() const -> const std::weak_ptr<DynamicalSystem>
 - auto systemIsLinear() const -> bool
 - auto addGroupOfConstraints(std::shared_ptr<ConstraintsGroup> groupOfConstraints) -> bool
 - auto removeGroupOfConstraints(const std::string& name) -> bool
 - auto addConstraint(std::shared_ptr<Constraint> newConstraint) -> bool
 - auto addConstraint(std::shared_ptr<LinearConstraint> newConstraint) -> bool
 - auto removeConstraint(const std::string& name) -> bool
 - auto countConstraints() const -> unsigned int
 - auto countLinearConstraints() const -> unsigned int
 - auto getConstraintsDimension() const -> unsigned int
 - auto listConstraints() const -> const std::vector<std::string>
 - auto listGroups() const -> const std::vector<std::string>
 - auto getConstraintsTimeRanges() const -> std::vector<TimeRange>&
 - auto getLinearConstraintsIndeces() const -> std::vector<size_t>&
 - auto addMayerTerm(double weight, std::shared_ptr<Cost> cost) -> bool
 - auto addMayerTerm(double weight, std::shared_ptr<QuadraticCost> quadraticCost) -> bool
 - auto addMayerTerm(double weight, std::shared_ptr<L2NormCost> quadraticCost) -> bool
 - auto addMayerTerm(double weight, std::shared_ptr<LinearCost> linearCost) -> bool
 - auto addLagrangeTerm(double weight, std::shared_ptr<Cost> cost) -> bool
 - auto addLagrangeTerm(double weight, std::shared_ptr<QuadraticCost> quadraticCost) -> bool
 - auto addLagrangeTerm(double weight, std::shared_ptr<L2NormCost> quadraticCost) -> bool
 - auto addLagrangeTerm(double weight, std::shared_ptr<LinearCost> linearCost) -> bool
 - auto addLagrangeTerm(double weight, double startingTime, double finalTime, std::shared_ptr<Cost> cost) -> bool
 - auto addLagrangeTerm(double weight, double startingTime, double finalTime, std::shared_ptr<QuadraticCost> quadraticCost) -> bool
 - auto addLagrangeTerm(double weight, double startingTime, double finalTime, std::shared_ptr<L2NormCost> quadraticCost) -> bool
 - auto addLagrangeTerm(double weight, double startingTime, double finalTime, std::shared_ptr<LinearCost> linearCost) -> bool
 - auto addLagrangeTerm(double weight, const TimeRange& timeRange, std::shared_ptr<Cost> cost) -> bool
 - auto addLagrangeTerm(double weight, const TimeRange& timeRange, std::shared_ptr<QuadraticCost> quadraticCost) -> bool
 - auto addLagrangeTerm(double weight, const TimeRange& timeRange, std::shared_ptr<L2NormCost> quadraticCost) -> bool
 - auto addLagrangeTerm(double weight, const TimeRange& timeRange, std::shared_ptr<LinearCost> linearCost) -> bool
 - auto updateCostTimeRange(const std::string& name, double newStartingTime, double newEndTime) -> bool
 - auto updateCostTimeRange(const std::string& name, const TimeRange& newTimeRange) -> bool
 - auto removeCost(const std::string& name) -> bool
 - auto getCostsTimeRanges() const -> std::vector<TimeRange>&
 - auto hasOnlyLinearCosts() const -> bool
 - auto hasOnlyQuadraticCosts() const -> bool
 - auto setStateLowerBound(const VectorDynSize& minState) -> bool
 - auto setStateLowerBound(std::shared_ptr<TimeVaryingVector> minState) -> bool
 - auto setStateUpperBound(const VectorDynSize& maxState) -> bool
 - auto setStateUpperBound(std::shared_ptr<TimeVaryingVector> maxState) -> bool
 - auto setControlLowerBound(const VectorDynSize& minControl) -> bool
 - auto setControlLowerBound(std::shared_ptr<TimeVaryingVector> minControl) -> bool
 - auto setControlUpperBound(const VectorDynSize& maxControl) -> bool
 - auto setControlUpperBound(std::shared_ptr<TimeVaryingVector> maxControl) -> bool
 - auto setStateBoxConstraints(const VectorDynSize& minState, const VectorDynSize& maxState) -> bool
 - auto setStateBoxConstraints(std::shared_ptr<TimeVaryingVector> minState, std::shared_ptr<TimeVaryingVector> maxState) -> bool
 - auto setControlBoxConstraints(const VectorDynSize& minControl, const VectorDynSize& maxControl) -> bool
 - auto setControlBoxConstraints(std::shared_ptr<TimeVaryingVector> minControl, std::shared_ptr<TimeVaryingVector> maxControl) -> bool
 - auto getStateLowerBound(double time, VectorDynSize& minState) -> bool
 - auto getStateUpperBound(double time, VectorDynSize& maxState) -> bool
 - auto getControlLowerBound(double time, VectorDynSize& minControl) -> bool
 - auto getControlUpperBound(double time, VectorDynSize& maxControl) -> bool
 - auto costsEvaluation(double time, const VectorDynSize& state, const VectorDynSize& control, double& costValue) -> bool
 - auto costsFirstPartialDerivativeWRTState(double time, const VectorDynSize& state, const VectorDynSize& control, VectorDynSize& partialDerivative) -> bool
 - auto costsFirstPartialDerivativeWRTControl(double time, const VectorDynSize& state, const VectorDynSize& control, VectorDynSize& partialDerivative) -> bool
 - auto costsSecondPartialDerivativeWRTState(double time, const VectorDynSize& state, const VectorDynSize& control, MatrixDynSize& partialDerivative) -> bool
 - auto costsSecondPartialDerivativeWRTControl(double time, const VectorDynSize& state, const VectorDynSize& control, MatrixDynSize& partialDerivative) -> bool
 - auto costsSecondPartialDerivativeWRTStateControl(double time, const VectorDynSize& state, const VectorDynSize& control, MatrixDynSize& partialDerivative) -> bool
 - 
              auto costsSecondPartialDerivativeWRTStateSparsity(iDynTree::
optimalcontrol:: SparsityStructure& stateSparsity) -> bool  - 
              auto costsSecondPartialDerivativeWRTControlSparsity(iDynTree::
optimalcontrol:: SparsityStructure& controlSparsity) -> bool  - 
              auto costsSecondPartialDerivativeWRTStateControlSparsity(iDynTree::
optimalcontrol:: SparsityStructure& stateControlSparsity) -> bool  - auto constraintsEvaluation(double time, const VectorDynSize& state, const VectorDynSize& control, VectorDynSize& constraintsValue) -> bool
 - auto getConstraintsUpperBound(double time, double infinity, VectorDynSize& upperBound) -> bool
 - auto getConstraintsLowerBound(double time, double infinity, VectorDynSize& lowerBound) -> bool
 - auto isFeasiblePoint(double time, const VectorDynSize& state, const VectorDynSize& control) -> bool
 - auto constraintsJacobianWRTState(double time, const VectorDynSize& state, const VectorDynSize& control, MatrixDynSize& jacobian) -> bool
 - auto constraintsJacobianWRTControl(double time, const VectorDynSize& state, const VectorDynSize& control, MatrixDynSize& jacobian) -> bool
 - 
              auto constraintsJacobianWRTStateSparsity(iDynTree::
optimalcontrol:: SparsityStructure& stateSparsity) -> bool  - 
              auto constraintsJacobianWRTControlSparsity(iDynTree::
optimalcontrol:: SparsityStructure& controlSparsity) -> bool  - auto constraintsSecondPartialDerivativeWRTState(double time, const VectorDynSize& state, const VectorDynSize& control, const VectorDynSize& lambda, MatrixDynSize& hessian) -> bool
 - auto constraintsSecondPartialDerivativeWRTControl(double time, const VectorDynSize& state, const VectorDynSize& control, const VectorDynSize& lambda, MatrixDynSize& hessian) -> bool
 - auto constraintsSecondPartialDerivativeWRTStateControl(double time, const VectorDynSize& state, const VectorDynSize& control, const VectorDynSize& lambda, MatrixDynSize& hessian) -> bool
 - 
              auto constraintsSecondPartialDerivativeWRTStateSparsity(iDynTree::
optimalcontrol:: SparsityStructure& stateSparsity) -> bool  - 
              auto constraintsSecondPartialDerivativeWRTControlSparsity(iDynTree::
optimalcontrol:: SparsityStructure& controlSparsity) -> bool  - 
              auto constraintsSecondPartialDerivativeWRTStateControlSparsity(iDynTree::
optimalcontrol:: SparsityStructure& stateControlSparsity) -> bool