robotoc
robotoc - efficient ROBOT Optimal Control solvers
|
The optimal control problem. More...
#include <ocp.hpp>
Public Member Functions | |
OCP (const Robot &robot, const std::shared_ptr< CostFunction > &cost, const std::shared_ptr< Constraints > &constraints, const std::shared_ptr< STOCostFunction > &sto_cost, const std::shared_ptr< STOConstraints > &sto_constraints, const std::shared_ptr< ContactSequence > &contact_sequence, const double T, const int N, const int reserved_num_discrete_events=0) | |
Construct the optiaml control problem. More... | |
OCP (const Robot &robot, const std::shared_ptr< CostFunction > &cost, const std::shared_ptr< Constraints > &constraints, const std::shared_ptr< ContactSequence > &contact_sequence, const double T, const int N, const int reserved_num_discrete_events=0) | |
Construct the optiaml control problem. More... | |
OCP (const Robot &robot, const std::shared_ptr< CostFunction > &cost, const std::shared_ptr< Constraints > &constraints, const double T, const int N) | |
Construct the optiaml control problem. More... | |
OCP () | |
Default constructor. More... | |
~OCP ()=default | |
Default destructor. More... | |
OCP (const OCP &)=default | |
Default copy constructor. More... | |
OCP & | operator= (const OCP &)=default |
Default copy assign operator. More... | |
OCP (OCP &&) noexcept=default | |
Default move constructor. More... | |
OCP & | operator= (OCP &&) noexcept=default |
Default move assign operator. More... | |
void | disp (std::ostream &os) const |
Public Attributes | |
Robot | robot |
The robot model. More... | |
std::shared_ptr< CostFunction > | cost = nullptr |
The cost function. More... | |
std::shared_ptr< Constraints > | constraints = nullptr |
The constraints. More... | |
std::shared_ptr< STOCostFunction > | sto_cost = nullptr |
The STO cost function. More... | |
std::shared_ptr< STOConstraints > | sto_constraints = nullptr |
The STO constraints. More... | |
std::shared_ptr< ContactSequence > | contact_sequence = nullptr |
double | T = 0.0 |
int | N = 0 |
int | reserved_num_discrete_events = 0 |
Friends | |
std::ostream & | operator<< (std::ostream &os, const OCP &ocp) |
The optimal control problem.
robotoc::OCP::OCP | ( | const Robot & | robot, |
const std::shared_ptr< CostFunction > & | cost, | ||
const std::shared_ptr< Constraints > & | constraints, | ||
const std::shared_ptr< STOCostFunction > & | sto_cost, | ||
const std::shared_ptr< STOConstraints > & | sto_constraints, | ||
const std::shared_ptr< ContactSequence > & | contact_sequence, | ||
const double | T, | ||
const int | N, | ||
const int | reserved_num_discrete_events = 0 |
||
) |
Construct the optiaml control problem.
[in] | robot | Robot model. |
[in] | cost | Shared ptr to the cost function. |
[in] | constraints | Shared ptr to the constraints. |
[in] | sto_cost | Shared ptr to the STO cost function. |
[in] | sto_constraints | Shared ptr to the STO constraints. |
[in] | contact_sequence | Shared ptr to the contact sequence. |
[in] | T | Length of the horzion. Must be positive. |
[in] | N | Number of the discretization grids of the horizon. Must be positive. |
[in] | reserved_num_discrete_events | Reserved size of the discrete-event data. Must be non-negative. Default is 0. |
robotoc::OCP::OCP | ( | const Robot & | robot, |
const std::shared_ptr< CostFunction > & | cost, | ||
const std::shared_ptr< Constraints > & | constraints, | ||
const std::shared_ptr< ContactSequence > & | contact_sequence, | ||
const double | T, | ||
const int | N, | ||
const int | reserved_num_discrete_events = 0 |
||
) |
Construct the optiaml control problem.
[in] | robot | Robot model. |
[in] | cost | Shared ptr to the cost function. |
[in] | constraints | Shared ptr to the constraints. |
[in] | contact_sequence | Shared ptr to the contact sequence. |
[in] | T | Length of the horzion. Must be positive. |
[in] | N | Number of the discretization grids of the horizon. Must be positive. |
[in] | reserved_num_discrete_events | Reserved size of the discrete-event data. Must be non-negative. Default is 0. |
robotoc::OCP::OCP | ( | const Robot & | robot, |
const std::shared_ptr< CostFunction > & | cost, | ||
const std::shared_ptr< Constraints > & | constraints, | ||
const double | T, | ||
const int | N | ||
) |
Construct the optiaml control problem.
[in] | robot | Robot model. |
[in] | cost | Shared ptr to the cost function. |
[in] | constraints | Shared ptr to the constraints. |
[in] | T | Length of the horzion. Must be positive. |
[in] | N | Number of the discretization grids of the horizon. Must be positive. |
robotoc::OCP::OCP | ( | ) |
Default constructor.
|
default |
Default destructor.
|
default |
Default copy constructor.
|
defaultnoexcept |
Default move constructor.
void robotoc::OCP::disp | ( | std::ostream & | os | ) | const |
|
friend |
std::shared_ptr<Constraints> robotoc::OCP::constraints = nullptr |
The constraints.
std::shared_ptr<ContactSequence> robotoc::OCP::contact_sequence = nullptr |
std::shared_ptr<CostFunction> robotoc::OCP::cost = nullptr |
The cost function.
int robotoc::OCP::N = 0 |
int robotoc::OCP::reserved_num_discrete_events = 0 |
Robot robotoc::OCP::robot |
The robot model.
std::shared_ptr<STOConstraints> robotoc::OCP::sto_constraints = nullptr |
The STO constraints.
std::shared_ptr<STOCostFunction> robotoc::OCP::sto_cost = nullptr |
The STO cost function.
double robotoc::OCP::T = 0.0 |