A description of an MLCP (mixed linear complementarity problem, or mixed LCP) system to be solved.
More...
A description of an MLCP (mixed linear complementarity problem, or mixed LCP) system to be solved.
A traditional (not mixed!) LCP problem is expressed as \(\mathbf{A}x + b = c\), where \(x\) is the vector of variables of interest to be determined, \(c\) is the vector of slack variables (transforming a system of inequalities into a system of equalities), and \(x\) and \(c\) are subject to the inequality conditions \(x_i \ge 0\), \(c_i \ge 0\), and \(x \perp c\) (i.e., \(x \cdot c = 0\)). Thus for each row \(i\), either
- \((\mathbf{A}x+b)_i = \mathbf{A}_{i,*}\cdot x+b_i = c_i \ge 0\) and \(x_i = 0\) (the constraint is non-binding, so the variable of interest enforcing the constraint is zero); or
- \((\mathbf{A}x+b)_i = \mathbf{A}_{i,*}\cdot x+b_i = c_i = 0\) and \(x_i > 0\) (the constraint is binding, so the variable of interest is nonzero to enforce the constraint).
Solving the problem produces the vector \(x\), from which \(c\) can also be computed if needed.
A mixed LCP problem is defined in the same way, except that for a certain subset of indices, the conditions are restricted further to require \(c_i\) to be zero, \(\mathbf{A}_{i,*}\cdot x+b_i = 0\). These are referred to as bilateral constraints, as opposed to the unilateral constraints in the LCP problem.
Friction is integrated directly into the problem, using the general approach described e.g. in:
Duriez, Christian; Dubois, F.; Kheddar, A.; Andriot, C., "Realistic haptic rendering of interacting
deformable objects in virtual environments," IEEE Transactions on Visualization and Computer Graphics, vol.12, no.1, pp.36,47, Jan.-Feb. 2006.
- See also
- SurgSim::Physics::MlcpPhysicsProblem, MlcpSolution, MlcpSolver