Feature/625 mujoco-based dynamics#908
Conversation
8004d67 to
d5f4f22
Compare
9d70fc9 to
df336fa
Compare
68fa6f1 to
6a4a2fa
Compare
6a4a2fa to
ff300b6
Compare
schaubh
left a comment
There was a problem hiding this comment.
I think I'll do this in stages and leave feedback as I find it. Was able to compile BSK without --mujoco flag just fine. All tests passed or mujoco tests were skipped as expected. Nice work.
I next compiled BSK with `--mujocoflag set to true. mujoco`` version 3.2.6 was installed without issues. Compiling finished with no issues.
To do:
- need to update
docs/source/Install/installBuild.rsttable to discuss the--mujocobuild option. I'd add it under theopNavdescription.
schaubh
left a comment
There was a problem hiding this comment.
Great work overall. I found some small things to address, typos, questions on msg variable naming and frames, etc.
|
@schaubh Thanks for the feedback and the commits to solve some of the issues. I think my latest push addresses your comments. |
|
If the replay install fails, then the whole configuration process should fail. Provide info on how to custom download and build |
schaubh
left a comment
There was a problem hiding this comment.
next round of suggestions
|
|
243ea57 to
4c3adcb
Compare
This should be useful as we include beta features in the develop release and want to ensure the user understands this is work in progress. Updated the mujoco documentation to use this label, as well as the beta pip wheel documentation page
- grammar and spelling typos - make variable typeset as variables - add hyperlink to SysModel class
0c4b42d to
f2dd565
Compare
|
@schaubh just appended commits to move the mujoco files to |
bed2a59 to
3b6db28
Compare
Note the special behavior: mujocoDynamics gets to see the _GeneralModuleFiles of dynamics Link dynamicsLib for mujocoDynamicsLib
3b6db28 to
6515cca
Compare
schaubh
left a comment
There was a problem hiding this comment.
Nice work here. I did a clean build on my system with and without the --mujoco build flag and everything worked as expected. This is an exciting beta feature to add to BSK.
Description
This PR adds a new paradigm for dynamics simulation. It makes use of the MuJoCo library for multi-body dynamics. A new
DynamicObjectis added,MJScene, whose purpose is to expose an interface that can interoperate with the rest of the Basilisk framework, while internally using MuJoCo to solve the complicated dynamics of a multi-body system. Scenarios have been added that showcase the current capabilities.This feature should be considered in "alpha". Any and all code is subject to considerable refactors in the near future. Validation efforts are not complete; do not use this feature to produce results that you actually care about.
Verification
Tests have been added in
src/simulation/dynamics/mujoco/_UnitTestand scenarios inexamples/mujoco(src/tests/test_scenarioMujoco.pychecks that these scenarios run).Documentation
The scenarios documentation page has been updated to include a new section
Multi-Body Dynamics Simulations with MuJoCo.Future work
Things still to figure out (non-exhaustive):
SysModel(for models that define states with derivatives to be integrated byMJScene.NBodyGravity.spacecraftandMJScene