Public Member Functions | Private Attributes | List of all members
gte::LCPSolver< Real, n > Class Template Reference

#include <GteLCPSolver.h>

Inheritance diagram for gte::LCPSolver< Real, n >:
Inheritance graph
[legend]

Public Member Functions

 LCPSolver ()
 
bool Solve (std::array< Real, n > const &q, std::array< std::array< Real, n >, n > const &M, std::array< Real, n > &w, std::array< Real, n > &z, typename LCPSolverShared< Real >::Result *result=nullptr)
 
- Public Member Functions inherited from gte::LCPSolverShared< Real >
int GetMaxIterations () const
 
int GetNumIterations () const
 
void SetMaxIterations (int maxIterations)
 

Private Attributes

std::array< Real, 2 *(n+1)*nmArrayAugmented
 
std::array< Real, n+1 > mArrayMinRatio
 
std::array< Real *, nmArrayPoly
 
std::array< Real, n+1 > mArrayQMin
 
std::array< Real, n+1 > mArrayRatio
 
std::array< typename LCPSolverShared< Real >::Variable, n+1 > mArrayVarBasic
 
std::array< typename LCPSolverShared< Real >::Variable, n+1 > mArrayVarNonbasic
 

Additional Inherited Members

- Public Types inherited from gte::LCPSolverShared< Real >
enum  Result {
  HAS_TRIVIAL_SOLUTION, HAS_NONTRIVIAL_SOLUTION, NO_SOLUTION, FAILED_TO_CONVERGE,
  INVALID_INPUT
}
 
- Protected Member Functions inherited from gte::LCPSolverShared< Real >
Real const & Augmented (int row, int col) const
 
Real & Augmented (int row, int col)
 
void Copy (Real const *poly0, Real *poly1)
 
 LCPSolverShared (int n)
 
bool LessThan (Real const *poly0, Real const *poly1)
 
bool LessThanZero (Real const *poly)
 
void MakeZero (Real *poly)
 
void Multiply (Real const *poly, Real scalar, Real *product)
 
bool Solve (Real const *q, Real const *M, Real *w, Real *z, Result *result)
 
- Protected Attributes inherited from gte::LCPSolverShared< Real >
Real * mAugmented
 
int mDimension
 
int mMaxIterations
 
Real * mMinRatio
 
int mNumCols
 
int mNumIterations
 
Real ** mPoly
 
Real * mQMin
 
Real * mRatio
 
VariablemVarBasic
 
VariablemVarNonbasic
 

Detailed Description

template<typename Real, int n>
class gte::LCPSolver< Real, n >

Definition at line 133 of file GteLCPSolver.h.

Constructor & Destructor Documentation

template<typename Real , int n>
gte::LCPSolver< Real, n >::LCPSolver ( )

Definition at line 537 of file GteLCPSolver.h.

Member Function Documentation

template<typename Real , int n>
bool gte::LCPSolver< Real, n >::Solve ( std::array< Real, n > const &  q,
std::array< std::array< Real, n >, n > const &  M,
std::array< Real, n > &  w,
std::array< Real, n > &  z,
typename LCPSolverShared< Real >::Result result = nullptr 
)

Definition at line 552 of file GteLCPSolver.h.

Member Data Documentation

template<typename Real , int n>
std::array<Real, 2 * (n + 1) * n> gte::LCPSolver< Real, n >::mArrayAugmented
private

Definition at line 149 of file GteLCPSolver.h.

template<typename Real , int n>
std::array<Real, n + 1> gte::LCPSolver< Real, n >::mArrayMinRatio
private

Definition at line 151 of file GteLCPSolver.h.

template<typename Real , int n>
std::array<Real*, n> gte::LCPSolver< Real, n >::mArrayPoly
private

Definition at line 153 of file GteLCPSolver.h.

template<typename Real , int n>
std::array<Real, n + 1> gte::LCPSolver< Real, n >::mArrayQMin
private

Definition at line 150 of file GteLCPSolver.h.

template<typename Real , int n>
std::array<Real, n + 1> gte::LCPSolver< Real, n >::mArrayRatio
private

Definition at line 152 of file GteLCPSolver.h.

template<typename Real , int n>
std::array<typename LCPSolverShared<Real>::Variable, n + 1> gte::LCPSolver< Real, n >::mArrayVarBasic
private

Definition at line 147 of file GteLCPSolver.h.

template<typename Real , int n>
std::array<typename LCPSolverShared<Real>::Variable, n + 1> gte::LCPSolver< Real, n >::mArrayVarNonbasic
private

Definition at line 148 of file GteLCPSolver.h.


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


geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 04:00:06