jaxsim 0.7.1.dev28__tar.gz → 0.7.1.dev34__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/PKG-INFO +1 -1
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/jaxsim_as_physics_engine_advanced.ipynb +1 -1
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/_version.py +2 -2
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/kin_dyn_parameters.py +9 -3
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/model.py +23 -9
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim.egg-info/PKG-INFO +1 -1
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.devcontainer/Dockerfile +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.devcontainer/devcontainer.json +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.gitattributes +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/CODEOWNERS +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/dependabot.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/release.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/workflows/ci_cd.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/workflows/gpu_benchmark.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/workflows/pixi.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.github/workflows/read_the_docs.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.gitignore +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.pre-commit-config.yaml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/.readthedocs.yaml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/CONTRIBUTING.md +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/LICENSE +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/README.md +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/Makefile +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/conf.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/examples.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/guide/configuration.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/guide/install.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/index.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/make.bat +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/api.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/math.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/mujoco.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/parsers.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/rbda.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/typing.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/docs/modules/utils.rst +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/environment.yml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/.gitattributes +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/.gitignore +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/README.md +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/assets/build_cartpole_urdf.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/assets/cartpole.urdf +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/jaxsim_as_multibody_dynamics_library.ipynb +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/jaxsim_as_physics_engine.ipynb +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/jaxsim_for_robot_controllers.ipynb +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/pixi.lock +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/pyproject.toml +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/setup.cfg +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/actuation_model.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/com.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/common.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/contact.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/data.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/frame.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/integrators.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/joint.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/link.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/ode.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/api/references.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/exceptions.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/logging.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/adjoint.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/cross.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/inertia.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/joint_model.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/quaternion.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/rotation.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/skew.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/transform.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/math/utils.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/mujoco/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/mujoco/__main__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/mujoco/loaders.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/mujoco/model.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/mujoco/utils.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/mujoco/visualizer.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/descriptions/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/descriptions/collision.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/descriptions/joint.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/descriptions/link.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/descriptions/model.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/kinematic_graph.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/rod/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/rod/meshes.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/rod/parser.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/parsers/rod/utils.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/aba.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/actuation/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/actuation/common.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/collidable_points.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/contacts/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/contacts/common.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/contacts/relaxed_rigid.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/contacts/rigid.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/contacts/soft.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/crba.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/forward_kinematics.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/jacobian.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/rnea.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/rbda/utils.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/terrain/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/terrain/terrain.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/typing.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/utils/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/utils/jaxsim_dataclass.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/utils/tracing.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim/utils/wrappers.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim.egg-info/SOURCES.txt +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim.egg-info/dependency_links.txt +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim.egg-info/requires.txt +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/src/jaxsim.egg-info/top_level.txt +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/__init__.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/conftest.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_actuation.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_com.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_contact.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_data.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_frame.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_joint.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_link.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_model.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_api_model_hw_parametrization.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_automatic_differentiation.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_benchmark.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_exceptions.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_meshes.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_pytree.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_simulations.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/test_visualizer.py +0 -0
- {jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/tests/utils_idyntree.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: jaxsim
|
3
|
-
Version: 0.7.1.
|
3
|
+
Version: 0.7.1.dev34
|
4
4
|
Summary: A differentiable physics engine and multibody dynamics library for control and robot learning.
|
5
5
|
Author-email: Diego Ferigo <dgferigo@gmail.com>, Filippo Luca Ferretti <filippoluca.ferretti@outlook.com>
|
6
6
|
Maintainer-email: Filippo Luca Ferretti <filippo.ferretti@iit.it>, Alessandro Croci <alessandro.croci@iit.it>
|
@@ -213,7 +213,7 @@
|
|
213
213
|
"key = jax.random.PRNGKey(seed=0)\n",
|
214
214
|
"\n",
|
215
215
|
"# Split subkeys for sampling random initial data.\n",
|
216
|
-
"batch_size =
|
216
|
+
"batch_size = 9\n",
|
217
217
|
"row_length = int(jnp.sqrt(batch_size))\n",
|
218
218
|
"row_dist = 0.3 * row_length\n",
|
219
219
|
"key, *subkeys = jax.random.split(key=key, num=batch_size + 1)\n",
|
@@ -17,5 +17,5 @@ __version__: str
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
18
18
|
version_tuple: VERSION_TUPLE
|
19
19
|
|
20
|
-
__version__ = version = '0.7.1.
|
21
|
-
__version_tuple__ = version_tuple = (0, 7, 1, '
|
20
|
+
__version__ = version = '0.7.1.dev34'
|
21
|
+
__version_tuple__ = version_tuple = (0, 7, 1, 'dev34')
|
@@ -910,9 +910,9 @@ class HwLinkMetadata(JaxsimDataclass):
|
|
910
910
|
|
911
911
|
Attributes:
|
912
912
|
shape: The shape of the link.
|
913
|
-
0 = box, 1 =
|
913
|
+
0 = box, 1 = cylinder, 2 = sphere, -1 = unsupported.
|
914
914
|
dims: The dimensions of the link.
|
915
|
-
box: [lx,ly,lz],
|
915
|
+
box: [lx,ly,lz], cylinder: [r,l,0], sphere: [r,0,0].
|
916
916
|
density: The density of the link.
|
917
917
|
L_H_G: The homogeneous transformation matrix from the link frame to the CoM frame G.
|
918
918
|
L_H_vis: The homogeneous transformation matrix from the link frame to the visual frame.
|
@@ -1026,7 +1026,13 @@ class HwLinkMetadata(JaxsimDataclass):
|
|
1026
1026
|
shape,
|
1027
1027
|
branches=[
|
1028
1028
|
# Box
|
1029
|
-
lambda:
|
1029
|
+
lambda: jnp.array(
|
1030
|
+
[
|
1031
|
+
scaling_factors[0],
|
1032
|
+
scaling_factors[1],
|
1033
|
+
scaling_factors[2],
|
1034
|
+
]
|
1035
|
+
),
|
1030
1036
|
# Cylinder
|
1031
1037
|
lambda: jnp.array(
|
1032
1038
|
[
|
@@ -387,7 +387,7 @@ class JaxSimModel(JaxsimDataclass):
|
|
387
387
|
L_H_Gs = []
|
388
388
|
L_H_vises = []
|
389
389
|
L_H_pre_masks = []
|
390
|
-
|
390
|
+
L_H_pre = []
|
391
391
|
|
392
392
|
# Process each link
|
393
393
|
for link_description in ordered_links:
|
@@ -454,17 +454,17 @@ class JaxSimModel(JaxsimDataclass):
|
|
454
454
|
L_H_pre_masks.append(
|
455
455
|
[
|
456
456
|
int(joint_index in child_joints_indices)
|
457
|
-
for joint_index in range(self.number_of_joints())
|
457
|
+
for joint_index in range(0, self.number_of_joints())
|
458
458
|
]
|
459
459
|
)
|
460
|
-
|
460
|
+
L_H_pre.append(
|
461
461
|
[
|
462
462
|
(
|
463
463
|
self.kin_dyn_parameters.joint_model.λ_H_pre[joint_index + 1]
|
464
464
|
if joint_index in child_joints_indices
|
465
465
|
else jnp.eye(4)
|
466
466
|
)
|
467
|
-
for joint_index in range(self.number_of_joints())
|
467
|
+
for joint_index in range(0, self.number_of_joints())
|
468
468
|
]
|
469
469
|
)
|
470
470
|
|
@@ -476,7 +476,7 @@ class JaxSimModel(JaxsimDataclass):
|
|
476
476
|
L_H_G=jnp.array(L_H_Gs, dtype=float),
|
477
477
|
L_H_vis=jnp.array(L_H_vises, dtype=float),
|
478
478
|
L_H_pre_mask=jnp.array(L_H_pre_masks, dtype=bool),
|
479
|
-
L_H_pre=jnp.array(
|
479
|
+
L_H_pre=jnp.array(L_H_pre, dtype=float),
|
480
480
|
)
|
481
481
|
|
482
482
|
def export_updated_model(self) -> str:
|
@@ -777,10 +777,17 @@ def reduce(
|
|
777
777
|
integrator=model.integrator,
|
778
778
|
)
|
779
779
|
|
780
|
-
# Store the origin of the model, in case downstream logic needs it.
|
781
780
|
with reduced_model.mutable_context(mutability=Mutability.MUTABLE_NO_VALIDATION):
|
781
|
+
# Store the origin of the model, in case downstream logic needs it.
|
782
782
|
reduced_model.built_from = model.built_from
|
783
783
|
|
784
|
+
# Compute the hw parametrization metadata of the reduced model
|
785
|
+
# TODO: move the building of the metadata to KinDynParameters.build()
|
786
|
+
# and use the model_description instead of model.built_from.
|
787
|
+
reduced_model.kin_dyn_parameters.hw_link_metadata = (
|
788
|
+
reduced_model.compute_hw_link_metadata()
|
789
|
+
)
|
790
|
+
|
784
791
|
return reduced_model
|
785
792
|
|
786
793
|
|
@@ -2373,15 +2380,22 @@ def update_hw_parameters(
|
|
2373
2380
|
return jax.lax.cond(
|
2374
2381
|
jnp.any(L_H_pre_mask_for_joint),
|
2375
2382
|
lambda: selected_transform,
|
2376
|
-
lambda: kin_dyn_params.joint_model.λ_H_pre[joint_index],
|
2383
|
+
lambda: kin_dyn_params.joint_model.λ_H_pre[joint_index + 1],
|
2377
2384
|
)
|
2378
2385
|
|
2379
2386
|
# Apply the update function to all joint indices
|
2380
2387
|
updated_λ_H_pre = jax.vmap(update_λ_H_pre)(
|
2381
|
-
jnp.arange(kin_dyn_params.number_of_joints()
|
2388
|
+
jnp.arange(kin_dyn_params.number_of_joints())
|
2389
|
+
)
|
2390
|
+
# NOTE: λ_H_pre should be of len (1+n_joints) with the 0-th element equal
|
2391
|
+
# to identity to represent the world-to-base tree transform. See JointModel class
|
2392
|
+
updated_λ_H_pre_with_base = jnp.concatenate(
|
2393
|
+
(jnp.eye(4).reshape(1, 4, 4), updated_λ_H_pre), axis=0
|
2382
2394
|
)
|
2383
2395
|
# Replace the joint model with the updated transforms
|
2384
|
-
updated_joint_model = kin_dyn_params.joint_model.replace(
|
2396
|
+
updated_joint_model = kin_dyn_params.joint_model.replace(
|
2397
|
+
λ_H_pre=updated_λ_H_pre_with_base
|
2398
|
+
)
|
2385
2399
|
|
2386
2400
|
# Replace the kin_dyn_parameters with updated values
|
2387
2401
|
updated_kin_dyn_params = kin_dyn_params.replace(
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: jaxsim
|
3
|
-
Version: 0.7.1.
|
3
|
+
Version: 0.7.1.dev34
|
4
4
|
Summary: A differentiable physics engine and multibody dynamics library for control and robot learning.
|
5
5
|
Author-email: Diego Ferigo <dgferigo@gmail.com>, Filippo Luca Ferretti <filippoluca.ferretti@outlook.com>
|
6
6
|
Maintainer-email: Filippo Luca Ferretti <filippo.ferretti@iit.it>, Alessandro Croci <alessandro.croci@iit.it>
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{jaxsim-0.7.1.dev28 → jaxsim-0.7.1.dev34}/examples/jaxsim_as_multibody_dynamics_library.ipynb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|