sofa
sofa copied to clipboard
Factorize ConstraintSolvers
Today, SOFA proposes two ConstraintSolvers:
- LCPConstraintSolver
- GenericConstraintSolvers
Both solve a constraint problem (LCP or NCLP). Therefore, here are some todo suggestions:
- implementations should be merged, triggering the optimization for UnilateralInteractionConstraint of the LCPConstraintSolver when the problem only involves such constraints
- a unique component with a clear/simple name (ConstraintSolver) should be used
- the solver used should be a dedicated component in the scene : different methods to solve such a problem could be used, #3053 introduced a NNGS on top of the GaussSeidel (double implementation in LCPConstraintSolver & GenericConstraintSolvers) they should be extracted as components
Possibly interested people: @courtecuisse @ChristianDuriez @alxbilger @EulalieCoevoet @Younesssss