Drake
Drake C++ Documentation
SpatialVelocityConstraint::AngularVelocityBounds Struct Reference

Detailed Description

Parametrizes bounds on the magnitude and direction of the angular velocity vector.

#include <drake/multibody/optimization/spatial_velocity_constraint.h>

Public Attributes

double magnitude_lower {0}
 Lower bound on the magnitude of the angular velocity vector. More...
 
double magnitude_upper {std::numeric_limits<double>::infinity()}
 Upper bound on the magnitude of the angular velocity vector. More...
 
Eigen::Vector3d reference_direction {0, 0, 1}
 Reference direction of the angular velocity vector. More...
 
double theta_bound {M_PI}
 The angle difference between w_AC and reference_direction will be constrained to θ ∈ [0,π] ≤ θ_bound. More...
 

Member Data Documentation

◆ magnitude_lower

double magnitude_lower {0}

Lower bound on the magnitude of the angular velocity vector.

Must be non-negative. The actual constraint will be implemented as a constraint on the squared magnitude.

◆ magnitude_upper

double magnitude_upper {std::numeric_limits<double>::infinity()}

Upper bound on the magnitude of the angular velocity vector.

Must be ≥ magnitude_lower. The actual constraint will be implemented as a constraint on the squared magnitude.

◆ reference_direction

Eigen::Vector3d reference_direction {0, 0, 1}

Reference direction of the angular velocity vector.

(Only the direction matters, the magnitude does not).

◆ theta_bound

double theta_bound {M_PI}

The angle difference between w_AC and reference_direction will be constrained to θ ∈ [0,π] ≤ θ_bound.

Must be nonnegative. The actual constraint will be implemented as cos(θ_bound) ≤ cos(θ) ≤ 1. When the norm of w_AC is very close to zero, we add a small number to the norm to avoid numerical difficulties.


The documentation for this struct was generated from the following file: