sofa-framework / sofa

Real-time multi-physics simulation with an emphasis on medical simulation.
https://www.sofa-framework.org
GNU Lesser General Public License v2.1
871 stars 297 forks source link

[Constraint.Lagrangian] Add the NNCG as NLCP solver in GenericCS #3053

Closed hugtalbot closed 1 year ago

hugtalbot commented 1 year ago

Based on @ziqiu-zeng implementation, this adds the Non-smooth Non-linear Conjugate Gradient (NNCG) as an alternative to the Projective Gauss Seidel (PGS) as NLCP solver in the GenericConstraintSolver.

Documentation updated: https://github.com/sofa-framework/doc/pull/74

.. wonder if the PR name includes enough acronyms .. :thinking:

[ci-depends-on https://github.com/sofa-framework/Regression/pull/27]


By submitting this pull request, I acknowledge that
I have read, understand, and agree SOFA Developer Certificate of Origin (DCO).


Reviewers will merge this pull-request only if

hugtalbot commented 1 year ago

[ci-build][with-all-tests]

fredroy commented 1 year ago

.. wonder if the PR name includes enough acronyms .. 🤔

... it feels like the french administration 🥸

fredroy commented 1 year ago

As you renamed the BilateralInteractionConstraint, you will need to recreate/regenerate regression tests associated too 🤫

hugtalbot commented 1 year ago

Duplicated code should be factorized, and naming of data should be shorter

sofabot commented 1 year ago

[ci-depends-on] detected during build #6.

To unlock the merge button, you must

sofabot commented 1 year ago

[ci-depends-on] detected during build #7.

To unlock the merge button, you must

hugtalbot commented 1 year ago

Renaming of data, factorization of the code done dear reviewers @fredroy @alxbilger

sofabot commented 1 year ago

[ci-depends-on] detected during build #8.

To unlock the merge button, you must

fredroy commented 1 year ago

[ci-build][force-full-build][with-all-tests]

sofabot commented 1 year ago

[ci-depends-on] detected during build #9.

To unlock the merge button, you must

sofabot commented 1 year ago

[ci-depends-on] detected during build #10.

To unlock the merge button, you must

sofabot commented 1 year ago

[ci-depends-on] detected during build #11.

To unlock the merge button, you must

sofabot commented 1 year ago

[ci-depends-on] detected during build #12.

To unlock the merge button, you must

hugtalbot commented 1 year ago

Create separate functions in buildSystem. Avoid using else function with the d_resolutionMethod. Add a regression scene with unbuilt.

sofabot commented 1 year ago

[ci-depends-on] detected during build #13.

To unlock the merge button, you must

hugtalbot commented 1 year ago

review taken into account @alxbilger

hugtalbot commented 1 year ago

[ci-build][force-full-build][with-all-tests]

sofabot commented 1 year ago

[ci-depends-on] detected during build #14.

To unlock the merge button, you must

fredroy commented 1 year ago

🟢🚦🟢