Drake

Structure used to convert a mixed linear complementarity problem to a pure linear complementarity problem (by solving for free variables). More...
#include <drake/multibody/constraint/constraint_solver.h>
Public Attributes  
Eigen::CompleteOrthogonalDecomposition< MatrixX< T > >  delassus_QTZ 
Decomposition of the Delassus matrix GM⁻¹Gᵀ, where G is the bilateral constraint matrix and M is the system generalized inertia matrix. More...  
std::function< MatrixX< T >const MatrixX< T > &)>  A_solve 
A function pointer for solving linear systems using MLCP "A" matrix (see VelocitylevelMLCPs). More...  
std::function< MatrixX< T >const MatrixX< T > &)>  fast_A_solve 
A function pointer for solving linear systems using only the upper left block of A⁺ in the MLCP (see VelocitylevelMLCPs), where A⁺ is a singularityrobust pseudoinverse of A, toward exploiting operations with zero blocks. More...  
Structure used to convert a mixed linear complementarity problem to a pure linear complementarity problem (by solving for free variables).
A function pointer for solving linear systems using MLCP "A" matrix (see VelocitylevelMLCPs).
Eigen::CompleteOrthogonalDecomposition<MatrixX<T> > delassus_QTZ 
Decomposition of the Delassus matrix GM⁻¹Gᵀ, where G is the bilateral constraint matrix and M is the system generalized inertia matrix.
A function pointer for solving linear systems using only the upper left block of A⁺ in the MLCP (see VelocitylevelMLCPs), where A⁺ is a singularityrobust pseudoinverse of A, toward exploiting operations with zero blocks.
For example:
A⁺  b   0 
and
A⁺  B   0 
where b ∈ ℝⁿᵛ
is an arbitrary vector of dimension equal to the generalized velocities and B ∈ ℝⁿᵛˣᵐ
is an arbitrary matrix with row dimension equal to the dimension of the generalized velocities and arbitrary number of columns (denoted m
here).