|
mbsim
4.0.0
MBSim Kernel
|
class to solve a linear complementarity problem More...
#include <linear_complementarity_problem.h>
Public Member Functions | |
| LinearComplementarityProblem (const fmatvec::SymMat &M_, const fmatvec::Vec &q_, const LCPSolvingStrategy &strategy_=Standard, const JacobianType &jacobianType_=LCPSpecial) | |
| solves a linear complementarity problem (w = M z + q) More... | |
| void | setSystem (const fmatvec::SymMat &M_, const fmatvec::Vec &q_) |
| void | setStrategy (const LCPSolvingStrategy &strategy_) |
| void | setJacobianType (const JacobianType &jacobianType_) |
| void | setNewtonCriteriaFunction (CriteriaFunction *criteriaFunction_) |
| void | setFixpointCriteriaFunction (CriteriaFunction *criteriaFunction_) |
| fmatvec::Vec | solve (const fmatvec::Vec &initialSolution=fmatvec::Vec(0, fmatvec::NONINIT)) |
Static Public Member Functions | |
| static double | computeMediumEigVal (const fmatvec::SqrMat &M) |
| compute the medium eigenvalue of a matrix (for guessing a initial solution for iterative schemes) | |
| static fmatvec::Vec | createInitialSolution (const fmatvec::SymMat &M, const fmatvec::Vec &q, double mediumEigVal=0) |
| creates an initial solution for the iterative schemes that use a reformulated system | |
| static fmatvec::Vec | createInitialSolution (const fmatvec::SqrMat &M, const fmatvec::Vec &q, double mediumEigVal=0) |
| creates an initial solution for the iterative schemes that use a reformulated system | |
Protected Attributes | |
| fmatvec::SqrMat | M |
| linear coupling matrix of the LCP | |
| fmatvec::Vec | q |
| constant vector of the LCP | |
| LCPSolvingStrategy | strategy |
| algorithm strategy to solve the LCP | |
| LCPSolvingStrategy | oldStrategy |
| save old Strategy for switching... | |
| double | mediumEigenValue |
| parameter for finding the start solution for the reformulated system | |
| JacobianType | jacobianType |
| jacobian function for the solving with thew newton algorithm in the reformulated case | |
| LemkeAlgorithm | lemkeSolver |
| LemkeSolver for the direct solution of the LCP. | |
| MBSim::MultiDimensionalNewtonMethod * | newtonSolver |
| NewtonSolver for reformulated system. | |
| LCPNewtonReformulationFunction * | newtonFunction |
| reformulated LCP suited for a Newton Solver | |
| NewtonJacobianFunction * | jacobianFunction |
| Jacobian Function for the reformulated LCP. | |
| CriteriaFunction * | criteriaNewton |
| criteria function for Newton solver | |
| MultiDimensionalFixpointSolver * | fixpointSolver |
| FixpointSolver for reformulated system. | |
| LCPFixpointReformulationFunction * | fixpointFunction |
| reformulated LCP suited for a FixpointSolver | |
| CriteriaFunction * | criteriaFixedpoint |
| criteria function for Fixedpoint solver | |
class to solve a linear complementarity problem
| MBSim::LinearComplementarityProblem::LinearComplementarityProblem | ( | const fmatvec::SymMat & | M_, |
| const fmatvec::Vec & | q_, | ||
| const LCPSolvingStrategy & | strategy_ = Standard, |
||
| const JacobianType & | jacobianType_ = LCPSpecial |
||
| ) |
solves a linear complementarity problem (w = M z + q)
| M | linear coupling matrix of the LCP |
| q | constant vector of the LCP |
| LCPSolvingStrategy | algorithm strategy to solve the LCP |
| mediumEigVal | parameter for finding the start solution for the reformulated system |