BipedalLocomotion::Math::LinearizedFrictionCone class

LinearizedFrictionCone computes the polyhedral approximation of the friction cone.

A point contact remains fixed with respect the environment if the contact force lies in a cone described by

\[ f ^c \cdot n > 0 \quad | f ^t | \le \mu f^c \cdot n \]

where $ f^c $ is the contact force, $ n $ is the vector normal to the contact surface. $ f^t $ is the tangential force to the contact surface and $ \mu $ is the friction parameter. The LinearizedFrictionCone aims to compute the polyhedral approximation of $ | f ^t | \le \mu f^c \cdot n $ by spitting the base of the cone into slices.

Public functions

auto initialize(std::weak_ptr<const ParametersHandler::IParametersHandler> handler) -> bool
Initialize the continuous algebraic riccati equation solver.
auto getA() const -> Eigen::Ref<const Eigen::MatrixXd>
Get the matrix A.
auto getB() const -> Eigen::Ref<const Eigen::VectorXd>
Get the vector B.

Function documentation

bool BipedalLocomotion::Math::LinearizedFrictionCone::initialize(std::weak_ptr<const ParametersHandler::IParametersHandler> handler)

Initialize the continuous algebraic riccati equation solver.

Parameters
handler pointer to the parameter handler.
Returns true in case of success/false otherwise.

Eigen::Ref<const Eigen::MatrixXd> BipedalLocomotion::Math::LinearizedFrictionCone::getA() const

Get the matrix A.

Returns the matrix A.

Eigen::Ref<const Eigen::VectorXd> BipedalLocomotion::Math::LinearizedFrictionCone::getB() const

Get the vector B.

Returns the matrix B..