Public Types | |
typedef ActionDataAbstractTpl< Scalar > | ActionDataAbstract |
typedef ActionDataAbstractTpl< ADScalar > | ADActionDataAbstract |
typedef ActionDataCodeGenTpl< ADScalar > | ADActionDataCodeGen |
typedef crocoddyl::ActionModelAbstractTpl< ADScalar > | ADBase |
typedef CppAD::ADFun< CGScalar > | ADFun |
typedef MathBaseTpl< ADScalar >::Matrix3s | ADMatrix3s |
typedef MathBaseTpl< ADScalar >::MatrixXs | ADMatrixXs |
typedef CppAD::AD< CGScalar > | ADScalar |
typedef MathBaseTpl< ADScalar >::Vector3s | ADVector3s |
typedef MathBaseTpl< ADScalar >::VectorXs | ADVectorXs |
typedef ActionModelAbstractTpl< Scalar > | Base |
typedef CppAD::cg::CG< Scalar > | CGScalar |
typedef ActionDataCodeGenTpl< Scalar > | Data |
typedef MathBaseTpl< Scalar >::MatrixXs | MatrixXs |
typedef _Scalar | Scalar |
typedef MathBaseTpl< Scalar >::VectorXs | VectorXs |
![]() | |
typedef ActionDataAbstractTpl< Scalar > | ActionDataAbstract |
typedef MathBaseTpl< Scalar > | MathBase |
typedef StateAbstractTpl< Scalar > | StateAbstract |
typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
ActionModelCodeGenTpl (boost::shared_ptr< ADBase > admodel, boost::shared_ptr< Base > model, const std::string &library_name, const std::size_t n_env=0, std::function< void(boost::shared_ptr< ADBase >, const Eigen::Ref< const ADVectorXs > &)> fn_record_env=empty_record_env, const std::string &function_name_calc="calc", const std::string &function_name_calcDiff="calcDiff") | |
void | calc (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
void | calcDiff (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
void | collect_calcDiffout () |
void | collect_calcout () |
void | compileLib () |
boost::shared_ptr< ActionDataAbstract > | createData () |
Create the action data. More... | |
bool | existLib () const |
Eigen::DenseIndex | getInputDimension () const |
Dimension of the input vector. More... | |
void | initLib () |
void | loadLib (const bool generate_if_not_exist=true) |
typedef | PINOCCHIO_EIGEN_PLAIN_ROW_MAJOR_TYPE (ADMatrixXs) RowADMatrixXs |
void | recordCalc () |
void | recordCalcDiff () |
void | set_env (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &env_val) const |
![]() | |
ActionModelAbstractTpl (boost::shared_ptr< StateAbstract > state, const std::size_t nu, const std::size_t nr=0) | |
Initialize the action model. More... | |
virtual void | calc (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
Compute the total cost value for nodes that depends only on the state. More... | |
virtual void | calc (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u)=0 |
Compute the next state and cost value. More... | |
virtual void | calcDiff (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
Compute the derivatives of the cost functions with respect to the state only. More... | |
virtual void | calcDiff (const boost::shared_ptr< ActionDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u)=0 |
Compute the derivatives of the dynamics and cost functions. More... | |
virtual bool | checkData (const boost::shared_ptr< ActionDataAbstract > &data) |
Checks that a specific data belongs to this model. More... | |
virtual boost::shared_ptr< ActionDataAbstract > | createData () |
Create the action data. More... | |
bool | get_has_control_limits () const |
Indicates if there are defined control limits. | |
std::size_t | get_nr () const |
Return the dimension of the cost-residual vector. | |
std::size_t | get_nu () const |
Return the dimension of the control input. | |
const boost::shared_ptr< StateAbstract > & | get_state () const |
Return the state. | |
const VectorXs & | get_u_lb () const |
Return the control lower bound. | |
const VectorXs & | get_u_ub () const |
Return the control upper bound. | |
virtual void | print (std::ostream &os) const |
Print relevant information of the action model. More... | |
virtual void | quasiStatic (const boost::shared_ptr< ActionDataAbstract > &data, Eigen::Ref< VectorXs > u, const Eigen::Ref< const VectorXs > &x, const std::size_t maxiter=100, const Scalar tol=Scalar(1e-9)) |
Computes the quasic static commands. More... | |
VectorXs | quasiStatic_x (const boost::shared_ptr< ActionDataAbstract > &data, const VectorXs &x, const std::size_t maxiter=100, const Scalar tol=Scalar(1e-9)) |
void | set_u_lb (const VectorXs &u_lb) |
Modify the control lower bounds. | |
void | set_u_ub (const VectorXs &u_ub) |
Modify the control upper bounds. | |
Static Public Member Functions | |
static void | empty_record_env (boost::shared_ptr< ADBase >, const Eigen::Ref< const ADVectorXs > &) |
Protected Attributes | |
ADFun | ad_calc |
ADFun | ad_calcDiff |
ADVectorXs | ad_calcDiffout |
ADVectorXs | ad_calcout |
boost::shared_ptr< ADActionDataAbstract > | ad_data |
boost::shared_ptr< ADBase > | ad_model |
ADVectorXs | ad_X |
ADVectorXs | ad_X2 |
bool | build_forward |
Options to generate or not the source code for the evaluation function. More... | |
std::unique_ptr< CppAD::cg::GenericModel< Scalar > > | calcDiffFun_ptr |
std::unique_ptr< CppAD::cg::ModelCSourceGen< Scalar > > | calcDiffgen_ptr |
std::unique_ptr< CppAD::cg::GenericModel< Scalar > > | calcFun_ptr |
std::unique_ptr< CppAD::cg::ModelCSourceGen< Scalar > > | calcgen_ptr |
std::unique_ptr< CppAD::cg::DynamicLib< Scalar > > | dynamicLib_ptr |
std::unique_ptr< CppAD::cg::DynamicModelLibraryProcessor< Scalar > > | dynamicLibManager_ptr |
std::function< void(boost::shared_ptr< ADBase >, const Eigen::Ref< const ADVectorXs > &)> | fn_record_env |
A function that updates the environment variables before starting record. More... | |
const std::string | function_name_calc |
Name of the function. More... | |
const std::string | function_name_calcDiff |
bool | has_control_limits_ |
Indicates whether any of the control limits is finite. More... | |
std::unique_ptr< CppAD::cg::ModelLibraryCSourceGen< Scalar > > | libcgen_ptr |
const std::string | library_name |
Name of the library. More... | |
boost::shared_ptr< Base > | model |
< Neutral state More... | |
const std::size_t | n_env |
Size of the environment variables. More... | |
std::size_t | nr_ |
< Indicates whether any of the control limits More... | |
std::size_t | nu_ |
< Dimension of the cost residual More... | |
boost::shared_ptr< StateAbstract > | state_ |
< Control dimension More... | |
VectorXs | u_lb_ |
< Model of the state More... | |
VectorXs | u_ub_ |
< Lower control limits More... | |
VectorXs | unone_ |
< Upper control limits More... | |
![]() | |
bool | has_control_limits_ |
Indicates whether any of the control limits is finite. More... | |
std::size_t | nr_ |
Dimension of the cost residual. More... | |
std::size_t | nu_ |
Control dimension. More... | |
boost::shared_ptr< StateAbstract > | state_ |
Model of the state. More... | |
VectorXs | u_lb_ |
Lower control limits. More... | |
VectorXs | u_ub_ |
Upper control limits. More... | |
VectorXs | unone_ |
Neutral state. More... | |
Additional Inherited Members | |
![]() | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
![]() | |
void | update_has_control_limits () |
Update the status of the control limits (i.e. if there are defined limits) | |
Definition at line 24 of file action-base.hpp.
typedef _Scalar Scalar |
Definition at line 26 of file action-base.hpp.
typedef ActionModelAbstractTpl<Scalar> Base |
Definition at line 27 of file action-base.hpp.
typedef ActionDataCodeGenTpl<Scalar> Data |
Definition at line 28 of file action-base.hpp.
typedef ActionDataAbstractTpl<Scalar> ActionDataAbstract |
Definition at line 29 of file action-base.hpp.
typedef MathBaseTpl<Scalar>::VectorXs VectorXs |
Definition at line 30 of file action-base.hpp.
typedef MathBaseTpl<Scalar>::MatrixXs MatrixXs |
Definition at line 31 of file action-base.hpp.
typedef CppAD::cg::CG<Scalar> CGScalar |
Definition at line 33 of file action-base.hpp.
typedef CppAD::AD<CGScalar> ADScalar |
Definition at line 34 of file action-base.hpp.
typedef crocoddyl::ActionModelAbstractTpl<ADScalar> ADBase |
Definition at line 35 of file action-base.hpp.
typedef ActionDataAbstractTpl<ADScalar> ADActionDataAbstract |
Definition at line 36 of file action-base.hpp.
typedef ActionDataCodeGenTpl<ADScalar> ADActionDataCodeGen |
Definition at line 37 of file action-base.hpp.
typedef MathBaseTpl<ADScalar>::VectorXs ADVectorXs |
Definition at line 38 of file action-base.hpp.
typedef MathBaseTpl<ADScalar>::MatrixXs ADMatrixXs |
Definition at line 39 of file action-base.hpp.
typedef MathBaseTpl<ADScalar>::Vector3s ADVector3s |
Definition at line 40 of file action-base.hpp.
typedef MathBaseTpl<ADScalar>::Matrix3s ADMatrix3s |
Definition at line 41 of file action-base.hpp.
typedef CppAD::ADFun<CGScalar> ADFun |
Definition at line 45 of file action-base.hpp.
|
inline |
Definition at line 47 of file action-base.hpp.
|
inlinestatic |
Definition at line 72 of file action-base.hpp.
|
inline |
Definition at line 74 of file action-base.hpp.
|
inline |
Definition at line 89 of file action-base.hpp.
|
inline |
Definition at line 94 of file action-base.hpp.
|
inline |
Definition at line 115 of file action-base.hpp.
|
inline |
Definition at line 130 of file action-base.hpp.
|
inline |
Definition at line 153 of file action-base.hpp.
|
inline |
Definition at line 161 of file action-base.hpp.
|
inline |
Definition at line 168 of file action-base.hpp.
|
inline |
Definition at line 186 of file action-base.hpp.
|
inline |
Definition at line 191 of file action-base.hpp.
|
inline |
Definition at line 204 of file action-base.hpp.
|
inlinevirtual |
Create the action data.
Reimplemented from ActionModelAbstractTpl< _Scalar >.
Definition at line 216 of file action-base.hpp.
|
inline |
Dimension of the input vector.
Definition at line 221 of file action-base.hpp.
|
protected |
< Neutral state
Definition at line 232 of file action-base.hpp.
|
protected |
Definition at line 233 of file action-base.hpp.
|
protected |
Definition at line 234 of file action-base.hpp.
|
protected |
Name of the function.
Definition at line 237 of file action-base.hpp.
|
protected |
Definition at line 237 of file action-base.hpp.
|
protected |
Name of the library.
Definition at line 240 of file action-base.hpp.
|
protected |
Size of the environment variables.
Definition at line 243 of file action-base.hpp.
|
protected |
A function that updates the environment variables before starting record.
Definition at line 246 of file action-base.hpp.
|
protected |
Options to generate or not the source code for the evaluation function.
Definition at line 249 of file action-base.hpp.
|
protected |
Definition at line 251 of file action-base.hpp.
|
protected |
Definition at line 251 of file action-base.hpp.
|
protected |
Definition at line 253 of file action-base.hpp.
|
protected |
Definition at line 254 of file action-base.hpp.
|
protected |
Definition at line 256 of file action-base.hpp.
|
protected |
Definition at line 256 of file action-base.hpp.
|
protected |
Definition at line 258 of file action-base.hpp.
|
protected |
Definition at line 258 of file action-base.hpp.
|
protected |
Definition at line 259 of file action-base.hpp.
|
protected |
Definition at line 260 of file action-base.hpp.
|
protected |
Definition at line 261 of file action-base.hpp.
|
protected |
Definition at line 262 of file action-base.hpp.
|
protected |
Definition at line 262 of file action-base.hpp.
|
protected |
Indicates whether any of the control limits is finite.
Definition at line 227 of file action-base.hpp.
|
protected |
< Indicates whether any of the control limits
Definition at line 222 of file action-base.hpp.
|
protected |
< Dimension of the cost residual
Definition at line 221 of file action-base.hpp.
|
protected |
< Control dimension
Definition at line 223 of file action-base.hpp.
|
protected |
< Model of the state
Definition at line 225 of file action-base.hpp.
|
protected |
< Lower control limits
Definition at line 226 of file action-base.hpp.
|
protected |
< Upper control limits
Definition at line 224 of file action-base.hpp.