Skip to content

LCPConstraintSolver

A Constraint Solver using the Linear Complementarity Problem formulation to solve BaseConstraint based components.

Target: Sofa.Component.Constraint.Lagrangian.Solver

namespace: sofa::component::constraint::lagrangian::solver

parents:

  • ConstraintSolverImpl

Data

Name Description Default value
name object name unnamed
printLog if true, emits extra messages at runtime. 0
tags list of the subsets the object belongs to
bbox this object bounding box
componentState The state of the component among (Dirty, Valid, Undefined, Loading, Invalid). Undefined
listening if true, handle the events, otherwise ignore the events 0
displayDebug Display debug information. 0
initial_guess activate LCP results history to improve its resolution performances. 1
build_lcp LCP is not fully built to increase performance in some case. 1
tolerance residual error threshold for termination of the Gauss-Seidel algorithm 0.001
maxIt maximal number of iterations of the Gauss-Seidel algorithm 1000
mu Friction coefficient 0.6
minW If not zero, constraints whose self-compliance (i.e. the corresponding value on the diagonal of W) is smaller than this threshold will be ignored 0
maxF If not zero, constraints whose response force becomes larger than this threshold will be ignored 0
multi_grid activate multi_grid resolution (NOT STABLE YET) 0
multi_grid_levels if multi_grid is active: how many levels to create (>=2) 2
merge_method if multi_grid is active: which method to use to merge constraints (0 = compliance-based, 1 = spatial coordinates) 0
merge_spatial_step if merge_method is 1: grid size reduction between multigrid levels 2
merge_local_levels if merge_method is 1: up to the specified level of the multigrid, constraints are grouped locally, i.e. separately within each contact pairs, while on upper levels they are grouped globally independently of contact pairs. 2
constraintForces OUTPUT: constraint forces (stored only if computeConstraintForces=True)
computeConstraintForces enable the storage of the constraintForces. 0
group list of ID of groups of constraints to be handled by this solver.
graph Graph of residuals at each iteration
Visualization
showLevels Number of constraint levels to display 0
showCellWidth Distance between each constraint cells
showTranslation Position of the first cell
showLevelTranslation Translation between levels
Name Description Destination type name
context Graph Node containing this object (or BaseContext::getDefault() if no graph is used) BaseContext
slaves Sub-objects used internally by this object BaseObject
master nullptr for regular objects, or master object for which this object is one sub-objects BaseObject
constraintCorrections List of constraint corrections handled by this constraint solver BaseConstraintCorrection