Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Help with the Masonry Arches example #6

Open
Astcort opened this issue Jun 5, 2024 · 2 comments
Open

Help with the Masonry Arches example #6

Astcort opened this issue Jun 5, 2024 · 2 comments
Assignees

Comments

@Astcort
Copy link

Astcort commented Jun 5, 2024

Dear Siconos team,

I am interested in simulating dense assemblies of rigid bodies with different friction coefficients. As an early test, I have tried to simulate the Masonry Arches, with a friction coefficient of 0.2 to make it collapse, but I am struggling a bit with all the options Siconos provides.
So far, I have tried

  • SICONOS_FRICTION_3D_NSN_AC with different parameters, but the solver seems to diverge;
  • SICONOS_FRICTION_3D_NSGS works well, but since it is a Gauss-Seidel type of solver, I am slightly concerned regarding the scaling of the convergence rate with respect to the number of rigid bodies (e.g. for a granular material simulation).

Would you have some recommendations/rules of thumb regarding the solver and parameters to use in these kind of scenarios?
Thanks!

@vacary
Copy link
Member

vacary commented Jun 10, 2024

Regarding Newton's methods in Siconos, I assume you used SICONOS_FRICTION_3D_NSN_AC . Instead, use SICONOS_FRICTION_3D_NSN_AC_TEST which is often more robust.

Generally speaking

  • SICONOS_FRICTION_3D_NSN_AC if your problem is hyperstatic, which is most often the case for collections of rigids for example, a non-smooth Newton method works very badly. There is either rapid convergence or divergence. For masonry problems, the contact matrices are not of full rank, and Newton's solvers are not stable.
  • SICONOS_FRICTION_3D_NSGS is the most robust solver for these problems. Of course, it's a first-order method and convergence can be slow for high accuracies. In addition, this solver does not parallel very well.
  • interior point methods. A student and I are working on interior point methods to get round the problem of hyperstaticity. We could try this out.

If you want to use or benchmark the solvers in another application, it is possible to output problems in hdf5 format using fclib to write https://frictionalcontactlibrary.github.io.

It would be great to contribute to the problem library from your software.

@Astcort
Copy link
Author

Astcort commented Jun 17, 2024

Dear Vincent,

Thank you for your answer! The SICONOS_FRICTION_3D_NSGS is the one that is working the best for now. I will get back to you when we run more test cases! We're also working on an interior point method, we'll get back to you when we release the code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants