Gabe Oppenheimer
c90a63a926
Update the version number to 3.2.7 following the 3.2.6 release.
...
PiperOrigin-RevId: 702103729
Change-Id: Id5581cc823a17360e7bb98ac0aa4342020c1aefa
2024-12-02 15:30:52 -08:00
Gabe Oppenheimer
0f64959e27
Update the version of eigen3 ahead of the 3.2.6 release
...
PiperOrigin-RevId: 702026493
Change-Id: Ibb0447b7106e9b873386c153283c81685583350f
2024-12-02 11:12:39 -08:00
Levi Burner
e6eab04dd0
rollout fixups and correctly initialize unspecified controls
2024-11-27 07:04:23 -05:00
Levi Burner
41b325785a
fix creation of std::vector
2024-11-26 16:42:08 -05:00
Levi Burner
5ba4d58497
replace array on stack with std::vector
2024-11-26 13:16:05 -05:00
Levi Burner
943eb6bc7e
rollout accepts a list of models of length nroll
2024-11-25 21:29:14 -05:00
Levi Burner
96a8f002bc
Remove nroll argument from rollout
...
nroll can always be implied from the other arguments of rollout.
Add tests for nroll inference.
2024-11-25 14:10:42 -05:00
Alessio Quaglino
7e46e21ef3
Add mju_mat2Rot.
...
This function extracts the 3D rotation from an arbitrary 3x3 matrix by refining the input quaternion. It is based on the paper "A robust method to extract the rotational part of deformations" by Müller, Matthias, Jan Bender, Nuttapong Chentanez, and Miles Macklin.
PiperOrigin-RevId: 700006006
Change-Id: I77550993233dea9cdf68601762a3ae7ded749bdf
2024-11-25 09:19:10 -08:00
Alessio Quaglino
c6ba8f27fd
Add bind() method to MjModel and MjData.
...
This method allows users to bind a spec to a model or data object, making it less verbose to access its arrays.
PiperOrigin-RevId: 699952211
Change-Id: I6b71a88d5a6968bc0f902bd49db7c568b46a4dfb
2024-11-25 05:53:58 -08:00
Alessio Quaglino
f909d63cdf
Enable to attach a spec to a frame.
...
PiperOrigin-RevId: 699703988
Change-Id: Idbddcbce1e68286248458eb0bd24d5080451a58a
2024-11-24 07:35:14 -08:00
Alessio Quaglino
3a12db9ad2
Remove id attribute from mjSpec objects in Python bindings.
...
Using ids is error prone in scenarios of repeated attachment and detachment. Python users are encouraged to use names for unique identification of model elements.
PiperOrigin-RevId: 699227286
Change-Id: Ifd83e6d85d36ff72ea43caf8b82eab9e4d552440
2024-11-22 11:05:14 -08:00
Saran Tunyasuvunakool
34c6f9b76b
Update build_requirements_usd.txt.
...
PiperOrigin-RevId: 698138884
Change-Id: I8a3d093b460bd4acad1fa18806a59c29aaffd4c6
2024-11-19 14:07:21 -08:00
Saran Tunyasuvunakool
e18567545b
Update various requirements.txt files.
...
PiperOrigin-RevId: 698009096
Change-Id: Iaa2cdadaf31c16c580ce5c2060c8bf2b8377956e
2024-11-19 07:32:00 -08:00
Silvia Cruciani
386662106b
Reshape arrays for LQR notebooks for Mujoco sparse2dense
...
Without reshape the collabs results in an error due to incompatible function arguments
PiperOrigin-RevId: 696554177
Change-Id: Id4317ee6fccbe2ac912af7a8b07228ddebebbbcf
2024-11-14 09:42:37 -08:00
Alessio Quaglino
f7cc1c2e5b
Read solref from jnt_solref when the user calls model.joint.solref.
...
Same for solimp. Fixes #2221 .
PiperOrigin-RevId: 695416121
Change-Id: I962dc12b13fa4d02dc349ecad1a1ddc7085565db
2024-11-11 11:15:00 -08:00
Kevin Sayed
276f5b04cd
Bump MuJoCo version to 3.2.6.
...
PiperOrigin-RevId: 693472991
Change-Id: Ic202f52dd42c55c43ba05ca21b5cc6a4024b0c72
2024-11-05 14:13:08 -08:00
Alessio Quaglino
ebe60b9ad5
Add const to mjsDefault when used as function argument.
...
Fixes #2197 .
PiperOrigin-RevId: 692346264
Change-Id: Iddb9be1377a7d59c86911802d8c5563f6bf6b043
2024-11-01 18:18:42 -07:00
Taylor Howell
a51f346059
Use sparse (uncompressed) actuator_moment in mj_transmission.
...
PiperOrigin-RevId: 692179704
Change-Id: Ic30ac5a98dc13de2028e378df65dc88ba3912bf5
2024-11-01 08:06:28 -07:00
Yuval Tassa
c9f78ad8a8
Rename nnzJ to nJ in mjData.
...
This naming is more consistent.
PiperOrigin-RevId: 691858223
Change-Id: Ife3db822afa0b51b30d0792548b35b3742da388a
2024-10-31 10:43:10 -07:00
Taylor Howell
f47840e57c
Add mju_dense2sparse to public API.
...
PiperOrigin-RevId: 691125900
Change-Id: Id9b7c739ee14bff2317168da258b1a3acbdafdbe
2024-10-29 12:47:48 -07:00
Alessio Quaglino
e835f139c8
Add sibling traversal for tree elements.
...
PiperOrigin-RevId: 691057957
Change-Id: I3f30cf175b5ad0842f3fbbf7fdb42ba7a2212682
2024-10-29 09:55:08 -07:00
Yuval Tassa
1336e99d88
Remove test annotation from mjspec notebook
...
PiperOrigin-RevId: 690987516
Change-Id: Ia99b65278609166ecec9002e5290c44a54255d80
2024-10-29 06:02:06 -07:00
Google DeepMind
71cfcc5432
Use assertIn instead of assertContainsSubsequence for substring checks.
...
A contained subsequence must not necessarily be continuous, so the check only
checked if the individual letters were appearing in order within the message,
possibly interspersed with other characters.
PiperOrigin-RevId: 690977874
Change-Id: I36bd5a0105b979a9b0d6d04ca5239245d4f8d041
2024-10-29 05:20:52 -07:00
Alessio Quaglino
f1d4b23e48
mjSpec tutorial backwards compatibility with the latest MuJoCo release.
...
PiperOrigin-RevId: 690747714
Change-Id: Ib8894a1dc2a68e30a110e773c77fbd2baee87efd
2024-10-28 14:19:17 -07:00
Alessio Quaglino
13f11d4c45
Fit typo in mjSpec tutorial link.
...
PiperOrigin-RevId: 690676376
Change-Id: I5f082f5703488403aa65be76d208def68ccc3eb9
2024-10-28 11:00:09 -07:00
Alessio Quaglino
0be0896bec
Add mjSpec tutorial.
...
PiperOrigin-RevId: 690670950
Change-Id: I68de7ad57a75d6c1a443fa2cd427e59799ddd830
2024-10-28 10:45:30 -07:00
Copybara-Service
2c86136dd6
Merge pull request #2160 from traversaro:patch-40
...
PiperOrigin-RevId: 690660035
Change-Id: Id4dc7eb53b7c6cda050d1e6b385eec16d66d077e
2024-10-28 10:17:13 -07:00
Joss Moore
ca45041049
MjSpecs.copy should return an MjSpec rather than a raw::MjSpec*
...
raw::MjSpec* is not a good python object.
PiperOrigin-RevId: 690564198
Change-Id: I3a5dd525a3a9acc67bb0e598dd508572dc4c687f
2024-10-28 04:55:38 -07:00
Yuval Tassa
d8494fef3b
Remove deprecated mjv_makeConnector function.
...
PiperOrigin-RevId: 690563333
Change-Id: Ice9c6b6cf41de8a55fa361477f9aee9181d50184
2024-10-28 04:51:47 -07:00
Silvio Traversaro
455116466b
Fix running tests out of a installed mujoco python package
2024-10-25 13:24:21 +02:00
Alessio Quaglino
bebec52869
Add find_all with string input.
...
PiperOrigin-RevId: 689487165
Change-Id: I48511aec1610b2112f9456e8f410d077c57c7a95
2024-10-24 13:01:49 -07:00
Yuval Tassa
a3ea01e57e
Remove deprecated mju_rotVecMat and mju_rotVecMatT functions.
...
PiperOrigin-RevId: 689405782
Change-Id: I0281376d5d6f5c31ea2603d61c03c7b94aaa6312
2024-10-24 09:15:23 -07:00
Alessio Quaglino
159f23e6b4
Remember compiler options during attach.
...
Note:
- Move compiler options into `mjsCompiler` struct.
- The compiler options from the attached model are not written by mj_SaveXML.
PiperOrigin-RevId: 689391440
Change-Id: I1d63c146a32f87c737b7a55b64a54b0ffe3aecc9
2024-10-24 08:31:15 -07:00
Yuval Tassa
e14aebfd16
Expose mju_sparse2dense to public API.
...
PiperOrigin-RevId: 688985153
Change-Id: I9559f1d47363d0afada80c86abdc729cd1910b63
2024-10-23 09:01:25 -07:00
Alessio Quaglino
bfa78614c8
Require prefix for the attach tag.
...
For `mjs_attachFrame` and `mjs_attachBody`, require either a prefix or suffix.
It is tempting for users to not use a prefix (see #2162 ), but this causes issues. For example, it creates a duplicate "main" default class in the parent as a child of the already existing "main" default.
PiperOrigin-RevId: 688535755
Change-Id: I653181ca35943f1e4eb89c70fca8b5289818324e
2024-10-22 07:08:33 -07:00
Copybara-Service
1802d9b1a7
Merge pull request #2069 from squarefk:main
...
PiperOrigin-RevId: 688255285
Change-Id: Id33ad1fb826a590e95f48bf366f1d19d1f2ac2a4
2024-10-21 13:37:29 -07:00
Alessio Quaglino
dcf2816543
Remove copy_back from Python bindings and mj_copyBack from the C API.
...
PiperOrigin-RevId: 687377331
Change-Id: I355493d92857418b08b5aa90ea38cebe5c475314
2024-10-18 11:55:04 -07:00
Google DeepMind
ffdb800e45
Update the MuJoCo version for the 3.2.5 release following the 3.2.4 release.
...
PiperOrigin-RevId: 686641388
Change-Id: I68d5183c9d369b7617f692ab97c12c53f0d2504c
2024-10-16 14:24:06 -07:00
Gabe Oppenheimer
c2024ef6d1
Update the MuJoCo version for the 3.2.4 release.
...
PiperOrigin-RevId: 686261295
Change-Id: Ib59e44a6829a79fd480f2822a68cb05f94c38732
2024-10-15 15:34:09 -07:00
Google DeepMind
d1e004aa97
Update version hashes in MuJoCo CMake files ahead of the 3.2.4 release.
...
PiperOrigin-RevId: 686208889
Change-Id: I19d3e6566e76c44e199f427aed984b9a530f4262
2024-10-15 13:03:13 -07:00
Nimrod Gileadi
6881ce2437
Remove support for Python 3.8.
...
Python 3.8 has been deprecated upstream, and any tests depending on Homebrew already stopped working. Following our support policy, we are removing support for 3.8 from our packages, too.
PiperOrigin-RevId: 686012836
Change-Id: Ibd220eb9c10e9a74bbd4443c1d7286a1fde9e5e5
2024-10-15 01:54:18 -07:00
Yuval Tassa
ee7b994021
Remove Newton Cholesky factor from mjData arena, rollback of b66da3d369.
...
PiperOrigin-RevId: 685726867
Change-Id: Ic2afd0dd35e38f403164d2cbe4618286abfa51ab
2024-10-14 09:07:22 -07:00
Alessio Quaglino
766cd20273
Add mjs_bodyToFrame() to convert a body to a frame.
...
Also add test for attaching the world body.
PiperOrigin-RevId: 685603933
Change-Id: I3cfe7d226d6f032b5a587e44d0f4f18207977188
2024-10-14 00:39:20 -07:00
Alessio Quaglino
cdb167f275
Add mjs_attachToSite for attaching a body to a site.
...
PiperOrigin-RevId: 684432183
Change-Id: I7100bebfb6521f9dbfbb07f31490b2b9298bf18c
2024-10-10 07:12:49 -07:00
Yuval Tassa
5dcc31a6aa
Fix read-from-uninitialized-memory in bindings_test.py
...
PiperOrigin-RevId: 684082155
Change-Id: I6f3030559ebda4eda28c17ab866c7502c74e5862
2024-10-09 10:14:26 -07:00
Yuval Tassa
9a0dc20821
Move Newton Hessian memory allocation from stack to arena.
...
PiperOrigin-RevId: 684054446
Change-Id: I4be0b216810ebbd9d7fa119c6a84eb08d3c16b83
2024-10-09 08:54:54 -07:00
Yuval Tassa
b1941708dd
Add some arena-allocated attributes to compare in mjData pickle/unpickle test.
...
PiperOrigin-RevId: 684025320
Change-Id: Ic3282eaae74e43a33c2ed5f1b25ad38884487829
2024-10-09 07:15:52 -07:00
Yuval Tassa
b66da3d369
Add mjData.L, sparse Cholesky factor of Newton solver Hessian.
...
PiperOrigin-RevId: 683669555
Change-Id: I18d7530b5d68d1d48cb95d4faa0150c434109638
2024-10-08 10:13:08 -07:00
Alessio Quaglino
1f9dca8bc4
Do not expose plugin_slot.
...
PiperOrigin-RevId: 683215401
Change-Id: Ic64f7221ed83ca3b0c8cca16eb680ea67c67b564
2024-10-07 09:38:01 -07:00
Alessio Quaglino
66faba9aa5
Avoid changing semantics of mjsPlugin.name across XML sections.
...
The `extension` section used to discard the plugin name and write the instance name in `plugin.name`, while all of the other sections wrote the instance name in `plugin.instance_name` and optionally the plugin name in `plugin.name` (via the function `OnePlugin`). Now all plugin names are in `plugin.plugin_name` and the instance is written in `plugin.name`, so that it is possible to lookup a plugin via its unique instance name.
PiperOrigin-RevId: 683183804
Change-Id: I179ef5d221143b720db24d745b09e327bf1449ef
2024-10-07 07:57:03 -07:00