mbsim  4.0.0
MBSim Kernel
MBSim::LemkeAlgorithm Class Reference
Inheritance diagram for MBSim::LemkeAlgorithm:
[legend]

Public Member Functions

 LemkeAlgorithm (const fmatvec::SqrMat &M_, const fmatvec::Vec &q_)
 
 LemkeAlgorithm (const fmatvec::SymMat &M_, const fmatvec::Vec &q_)
 
int getInfo ()
 return info of solution process
 
int getSteps ()
 get the number of steps until the solution was found
 
void setSystem (const fmatvec::SqrMat &M_, const fmatvec::Vec &q_)
 set system with Matrix M and vector q
 
void setSystem (const fmatvec::SymMat &M_, const fmatvec::Vec &q_)
 set system with Matrix M and vector q
 
fmatvec::Vec solve (unsigned int maxloops=0)
 solve algorithm adapted from : Fast Implementation of Lemke’s Algorithm for Rigid Body Contact Simulation (John E. Lloyd)
 

Protected Member Functions

int findLexicographicMinimum (const fmatvec::Mat &A, const int &pivotColIndex)
 
bool LexicographicPositive (const fmatvec::Vec &v)
 
void GaussJordanEliminationStep (fmatvec::Mat &A, int pivotRowIndex, int pivotColumnIndex, const std::vector< size_t > &basis)
 
bool greaterZero (const fmatvec::Vec &vector)
 
bool validBasis (const std::vector< size_t > &basis)
 

Protected Attributes

fmatvec::SqrMat M
 
fmatvec::Vec q
 
unsigned int steps {0}
 number of steps until the Lemke algorithm found a solution
 
int info {-1}
 did the algorithm find a solution More...
 

Member Data Documentation

◆ info

int MBSim::LemkeAlgorithm::info {-1}
protected

did the algorithm find a solution

-1 : not successful 0 : successful


The documentation for this class was generated from the following files: