-
Notifications
You must be signed in to change notification settings - Fork 13
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
Split static and dynamic contact params #257
Conversation
cede54f
to
7bbe3c7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @diegoferigo !! LGTM! 🚀
Just to mention something related to naming: sometimes (especially in modelling community, like Modelica/FMI/Simulink/Julia's ModellingToolkit) paramters that can be changed during the simulation are called "tunable parameters", see:
This is to avoid ambiguity between the system dynamics state and "dynamics parameters". |
It makes sense, thanks for pointing this out @traversaro. JAX has the concept of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot!
7bbe3c7
to
49eadf0
Compare
This PR introduces the support to separate contact parameters in two categories:
JaxSimModelData
and the user logic can change them during runtime (assuming that the corresponding PyTree remains compatible). These are also the types of parameters over which AD can be performed.This separation is necessary when the computation of contact forces operates over a JIT primitive that requires a static argument (e.g. fixing the number of iterations of an iterative solver by converting a while loop to a for loop).
📚 Documentation preview 📚: https://jaxsim--257.org.readthedocs.build//257/