コンテンツにスキップ

cpp_robotics::OCPCostServoQuadratic

#include <ocp_cost.hpp>

Inherits from cpp_robotics::OCPCost

Public Functions

Name
OCPCostServoQuadratic(OCPDynamics::SharedPtr model, size_t horizon)
OCPCostServoQuadratic(size_t nx, size_t nu, size_t horizon)
void set_x_ref_const(const Eigen::VectorXd & x_ref)
virtual double eval(const Eigen::VectorXd & x, const Eigen::VectorXd & u, const size_t i) const override
virtual Eigen::VectorXd jacobian_x(const Eigen::VectorXd & x, const Eigen::VectorXd & u, const size_t i) const override
virtual Eigen::VectorXd jacobian_u(const Eigen::VectorXd & x, const Eigen::VectorXd & u, const size_t i) const override
virtual Eigen::MatrixXd hessian_xx(const Eigen::VectorXd & x, const Eigen::VectorXd & u, const size_t i) const override
virtual Eigen::MatrixXd hessian_uu(const Eigen::VectorXd & x, const Eigen::VectorXd & u, const size_t i) const override
virtual Eigen::MatrixXd hessian_ux(const Eigen::VectorXd & x, const Eigen::VectorXd & u, const size_t i) const override
virtual double eval_terminal(const Eigen::VectorXd & x) const override
virtual Eigen::VectorXd jacobian_x_terminal(const Eigen::VectorXd & x) const override
virtual Eigen::MatrixXd hessian_xx_terminal(const Eigen::VectorXd & x) const override

Public Attributes

Name
Eigen::MatrixXd Q
Eigen::MatrixXd R
Eigen::MatrixXd Qf
std::vector< Eigen::MatrixXd > x_ref

Additional inherited members

Public Types inherited from cpp_robotics::OCPCost

Name
using std::shared_ptr< OCPCost > SharedPtr

Public Functions inherited from cpp_robotics::OCPCost

Name
OCPCost(size_t nx, size_t nu, size_t horizon)
OCPCost(std::shared_ptr< OCPDynamics > model, size_t horizon)
bool is_terminal(const size_t i) const
size_t state_size() const
size_t input_size() const
size_t horizon() const

Public Attributes inherited from cpp_robotics::OCPCost

Name
double eps

Public Functions Documentation

function OCPCostServoQuadratic

inline OCPCostServoQuadratic(
    OCPDynamics::SharedPtr model,
    size_t horizon
)

function OCPCostServoQuadratic

inline OCPCostServoQuadratic(
    size_t nx,
    size_t nu,
    size_t horizon
)

function set_x_ref_const

inline void set_x_ref_const(
    const Eigen::VectorXd & x_ref
)

function eval

inline virtual double eval(
    const Eigen::VectorXd & x,
    const Eigen::VectorXd & u,
    const size_t i
) const override

Reimplements: cpp_robotics::OCPCost::eval

function jacobian_x

inline virtual Eigen::VectorXd jacobian_x(
    const Eigen::VectorXd & x,
    const Eigen::VectorXd & u,
    const size_t i
) const override

Reimplements: cpp_robotics::OCPCost::jacobian_x

function jacobian_u

inline virtual Eigen::VectorXd jacobian_u(
    const Eigen::VectorXd & x,
    const Eigen::VectorXd & u,
    const size_t i
) const override

Reimplements: cpp_robotics::OCPCost::jacobian_u

function hessian_xx

inline virtual Eigen::MatrixXd hessian_xx(
    const Eigen::VectorXd & x,
    const Eigen::VectorXd & u,
    const size_t i
) const override

Reimplements: cpp_robotics::OCPCost::hessian_xx

function hessian_uu

inline virtual Eigen::MatrixXd hessian_uu(
    const Eigen::VectorXd & x,
    const Eigen::VectorXd & u,
    const size_t i
) const override

Reimplements: cpp_robotics::OCPCost::hessian_uu

function hessian_ux

inline virtual Eigen::MatrixXd hessian_ux(
    const Eigen::VectorXd & x,
    const Eigen::VectorXd & u,
    const size_t i
) const override

Reimplements: cpp_robotics::OCPCost::hessian_ux

function eval_terminal

inline virtual double eval_terminal(
    const Eigen::VectorXd & x
) const override

Reimplements: cpp_robotics::OCPCost::eval_terminal

function jacobian_x_terminal

inline virtual Eigen::VectorXd jacobian_x_terminal(
    const Eigen::VectorXd & x
) const override

Reimplements: cpp_robotics::OCPCost::jacobian_x_terminal

function hessian_xx_terminal

inline virtual Eigen::MatrixXd hessian_xx_terminal(
    const Eigen::VectorXd & x
) const override

Reimplements: cpp_robotics::OCPCost::hessian_xx_terminal

Public Attributes Documentation

variable Q

Eigen::MatrixXd Q;

variable R

Eigen::MatrixXd R;

variable Qf

Eigen::MatrixXd Qf;

variable x_ref

std::vector< Eigen::MatrixXd > x_ref;

Updated on 2024-05-28 at 06:55:39 +0000