Skip to content

Conversation

@bakpaul
Copy link
Contributor

@bakpaul bakpaul commented Oct 8, 2025

Based on #5666

This PR adds a regularization strategy that uses SVD to explore the NullSpace of the matrix to only add regularization to constraints that have antagonists constraints.

meaningful commit: 30f81e4

Introduced example

The added example shows a beam attached at both sides and which center is constrained in two different positions, meaning that two antagonists constraints are imposed to the center. The idea is that, because the fixations are not faulty, then we want them to be fully solved and we don't want to perturb them while still releasing the constraints on the antagonists ones.

With SVD

Capture d’écran du 2025-10-09 11-45-22 We can see that the attachments are fully solved why in the middle a compromise is found

Without SVD

Capture d’écran du 2025-10-09 11-46-00 Every constraints is regularized so even attachment are not respected.

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

  • it builds with SUCCESS for all platforms on the CI.
  • it does not generate new warnings.
  • it does not generate new unit test failures.
  • it does not generate new scene test failures.
  • it does not break API compatibility.
  • it is more than 1 week old (or has fast-merge label).

@bakpaul bakpaul added pr: status to review To notify reviewers to review this pull-request pr: new feature Implement a new feature pr: based on previous PR PR based on a previous PR, therefore to be merged ONLY subsequently labels Oct 8, 2025
@hugtalbot hugtalbot changed the title [BuiltConstraintSolver] Add svd based regularization strategy [BuiltConstraintSolver] Add SVD based regularization strategy Oct 9, 2025
Copy link
Contributor

@th-skam th-skam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few comments and suggestions for this very useful PR

@fredroy
Copy link
Contributor

fredroy commented Oct 26, 2025

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

@bakpaul bakpaul added the pr: status wip Development in the pull-request is still in progress label Oct 30, 2025
@fredroy fredroy removed the pr: status to review To notify reviewers to review this pull-request label Nov 4, 2025
@bakpaul bakpaul added pr: status to review To notify reviewers to review this pull-request and removed pr: status wip Development in the pull-request is still in progress labels Nov 12, 2025
@bakpaul
Copy link
Contributor Author

bakpaul commented Nov 12, 2025

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

@fredroy fredroy added pr: status ready Approved a pull-request, ready to be squashed and removed pr: status to review To notify reviewers to review this pull-request labels Nov 18, 2025
@fredroy fredroy merged commit 049a239 into sofa-framework:master Nov 18, 2025
13 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: based on previous PR PR based on a previous PR, therefore to be merged ONLY subsequently pr: new feature Implement a new feature pr: status ready Approved a pull-request, ready to be squashed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants