jaxsim 0.6.1.dev13__py3-none-any.whl → 0.6.2.dev102__py3-none-any.whl
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/__init__.py +1 -1
- jaxsim/_version.py +2 -2
- jaxsim/api/__init__.py +3 -1
- jaxsim/api/actuation_model.py +96 -0
- jaxsim/api/com.py +8 -8
- jaxsim/api/contact.py +15 -255
- jaxsim/api/contact_model.py +101 -0
- jaxsim/api/data.py +258 -556
- jaxsim/api/frame.py +7 -7
- jaxsim/api/integrators.py +76 -0
- jaxsim/api/kin_dyn_parameters.py +41 -58
- jaxsim/api/link.py +7 -7
- jaxsim/api/model.py +190 -453
- jaxsim/api/ode.py +34 -338
- jaxsim/api/references.py +2 -2
- jaxsim/exceptions.py +2 -2
- jaxsim/math/__init__.py +4 -3
- jaxsim/math/joint_model.py +17 -107
- jaxsim/mujoco/model.py +1 -1
- jaxsim/mujoco/utils.py +2 -2
- jaxsim/parsers/kinematic_graph.py +1 -3
- jaxsim/rbda/aba.py +7 -4
- jaxsim/rbda/collidable_points.py +7 -98
- jaxsim/rbda/contacts/__init__.py +2 -10
- jaxsim/rbda/contacts/common.py +0 -138
- jaxsim/rbda/contacts/relaxed_rigid.py +154 -9
- jaxsim/rbda/crba.py +5 -2
- jaxsim/rbda/forward_kinematics.py +37 -12
- jaxsim/rbda/jacobian.py +15 -6
- jaxsim/rbda/rnea.py +7 -4
- jaxsim/rbda/utils.py +3 -3
- jaxsim/utils/jaxsim_dataclass.py +5 -1
- {jaxsim-0.6.1.dev13.dist-info → jaxsim-0.6.2.dev102.dist-info}/METADATA +7 -9
- jaxsim-0.6.2.dev102.dist-info/RECORD +69 -0
- jaxsim/api/ode_data.py +0 -401
- jaxsim/integrators/__init__.py +0 -2
- jaxsim/integrators/common.py +0 -592
- jaxsim/integrators/fixed_step.py +0 -153
- jaxsim/integrators/variable_step.py +0 -706
- jaxsim/rbda/contacts/rigid.py +0 -462
- jaxsim/rbda/contacts/soft.py +0 -480
- jaxsim/rbda/contacts/visco_elastic.py +0 -1066
- jaxsim-0.6.1.dev13.dist-info/RECORD +0 -74
- {jaxsim-0.6.1.dev13.dist-info → jaxsim-0.6.2.dev102.dist-info}/LICENSE +0 -0
- {jaxsim-0.6.1.dev13.dist-info → jaxsim-0.6.2.dev102.dist-info}/WHEEL +0 -0
- {jaxsim-0.6.1.dev13.dist-info → jaxsim-0.6.2.dev102.dist-info}/top_level.txt +0 -0
@@ -15,6 +15,9 @@ def forward_kinematics_model(
|
|
15
15
|
base_position: jtp.VectorLike,
|
16
16
|
base_quaternion: jtp.VectorLike,
|
17
17
|
joint_positions: jtp.VectorLike,
|
18
|
+
base_linear_velocity_inertial: jtp.VectorLike,
|
19
|
+
base_angular_velocity_inertial: jtp.VectorLike,
|
20
|
+
joint_velocities: jtp.VectorLike,
|
18
21
|
) -> jtp.Array:
|
19
22
|
"""
|
20
23
|
Compute the forward kinematics.
|
@@ -24,16 +27,22 @@ def forward_kinematics_model(
|
|
24
27
|
base_position: The position of the base link.
|
25
28
|
base_quaternion: The quaternion of the base link.
|
26
29
|
joint_positions: The positions of the joints.
|
30
|
+
base_linear_velocity_inertial: The linear velocity of the base link in inertial-fixed representation.
|
31
|
+
base_angular_velocity_inertial: The angular velocity of the base link in inertial-fixed representation.
|
32
|
+
joint_velocities: The velocities of the joints.
|
27
33
|
|
28
34
|
Returns:
|
29
35
|
A 3D array containing the SE(3) transforms of all links belonging to the model.
|
30
36
|
"""
|
31
37
|
|
32
|
-
W_p_B, W_Q_B, s,
|
38
|
+
W_p_B, W_Q_B, s, W_v_WB, ṡ, _, _, _, _, _ = utils.process_inputs(
|
33
39
|
model=model,
|
34
40
|
base_position=base_position,
|
35
41
|
base_quaternion=base_quaternion,
|
36
42
|
joint_positions=joint_positions,
|
43
|
+
base_linear_velocity=base_linear_velocity_inertial,
|
44
|
+
base_angular_velocity=base_angular_velocity_inertial,
|
45
|
+
joint_velocities=joint_velocities,
|
37
46
|
)
|
38
47
|
|
39
48
|
# Get the parent array λ(i).
|
@@ -46,10 +55,10 @@ def forward_kinematics_model(
|
|
46
55
|
translation=W_p_B,
|
47
56
|
)
|
48
57
|
|
49
|
-
# Compute the parent-to-child adjoints
|
58
|
+
# Compute the parent-to-child adjoints of the joints.
|
50
59
|
# These transforms define the relative kinematics of the entire model, including
|
51
60
|
# the base transform for both floating-base and fixed-base models.
|
52
|
-
i_X_λi
|
61
|
+
i_X_λi = model.kin_dyn_parameters.joint_transforms(
|
53
62
|
joint_positions=s, base_transform=W_H_B.as_matrix()
|
54
63
|
)
|
55
64
|
|
@@ -57,35 +66,51 @@ def forward_kinematics_model(
|
|
57
66
|
W_X_i = jnp.zeros(shape=(model.number_of_links(), 6, 6))
|
58
67
|
W_X_i = W_X_i.at[0].set(Adjoint.inverse(i_X_λi[0]))
|
59
68
|
|
69
|
+
# Allocate buffer of 6D inertial-fixed velocities and initialize the base velocity.
|
70
|
+
W_v_Wi = jnp.zeros(shape=(model.number_of_links(), 6))
|
71
|
+
W_v_Wi = W_v_Wi.at[0].set(W_v_WB)
|
72
|
+
|
73
|
+
# Extract the joint motion subspaces.
|
74
|
+
S = model.kin_dyn_parameters.motion_subspaces
|
75
|
+
|
60
76
|
# ========================
|
61
77
|
# Propagate the kinematics
|
62
78
|
# ========================
|
63
79
|
|
64
|
-
PropagateKinematicsCarry = tuple[jtp.Matrix]
|
65
|
-
propagate_kinematics_carry: PropagateKinematicsCarry = (W_X_i,)
|
80
|
+
PropagateKinematicsCarry = tuple[jtp.Matrix, jtp.Matrix]
|
81
|
+
propagate_kinematics_carry: PropagateKinematicsCarry = (W_X_i, W_v_Wi)
|
66
82
|
|
67
83
|
def propagate_kinematics(
|
68
84
|
carry: PropagateKinematicsCarry, i: jtp.Int
|
69
85
|
) -> tuple[PropagateKinematicsCarry, None]:
|
70
86
|
|
71
|
-
|
87
|
+
ii = i - 1
|
88
|
+
W_X_i, W_v_Wi = carry
|
89
|
+
|
90
|
+
# Compute the parent to child 6D transform.
|
91
|
+
λi_X_i = Adjoint.inverse(adjoint=i_X_λi[i])
|
92
|
+
|
93
|
+
# Compute the world to child 6D transform.
|
94
|
+
W_Xi_i = W_X_i[λ[i]] @ λi_X_i
|
95
|
+
W_X_i = W_X_i.at[i].set(W_Xi_i)
|
72
96
|
|
73
|
-
|
74
|
-
|
97
|
+
# Propagate the 6D velocity.
|
98
|
+
W_vi_Wi = W_v_Wi[λ[i]] + W_X_i[i] @ (S[i] * ṡ[ii]).squeeze()
|
99
|
+
W_v_Wi = W_v_Wi.at[i].set(W_vi_Wi)
|
75
100
|
|
76
|
-
return (W_X_i,), None
|
101
|
+
return (W_X_i, W_v_Wi), None
|
77
102
|
|
78
|
-
(W_X_i,), _ = (
|
103
|
+
(W_X_i, W_v_Wi), _ = (
|
79
104
|
jax.lax.scan(
|
80
105
|
f=propagate_kinematics,
|
81
106
|
init=propagate_kinematics_carry,
|
82
107
|
xs=jnp.arange(start=1, stop=model.number_of_links()),
|
83
108
|
)
|
84
109
|
if model.number_of_links() > 1
|
85
|
-
else [(W_X_i,), None]
|
110
|
+
else [(W_X_i, W_v_Wi), None]
|
86
111
|
)
|
87
112
|
|
88
|
-
return jax.vmap(Adjoint.to_transform)(W_X_i)
|
113
|
+
return jax.vmap(Adjoint.to_transform)(W_X_i), W_v_Wi
|
89
114
|
|
90
115
|
|
91
116
|
def forward_kinematics(
|
jaxsim/rbda/jacobian.py
CHANGED
@@ -35,13 +35,16 @@ def jacobian(
|
|
35
35
|
# Note: λ(0) must not be used, it's initialized to -1.
|
36
36
|
λ = model.kin_dyn_parameters.parent_array
|
37
37
|
|
38
|
-
# Compute the parent-to-child adjoints
|
38
|
+
# Compute the parent-to-child adjoints of the joints.
|
39
39
|
# These transforms define the relative kinematics of the entire model, including
|
40
40
|
# the base transform for both floating-base and fixed-base models.
|
41
|
-
i_X_λi
|
41
|
+
i_X_λi = model.kin_dyn_parameters.joint_transforms(
|
42
42
|
joint_positions=s, base_transform=jnp.eye(4)
|
43
43
|
)
|
44
44
|
|
45
|
+
# Extract the joint motion subspaces.
|
46
|
+
S = model.kin_dyn_parameters.motion_subspaces
|
47
|
+
|
45
48
|
# Allocate the buffer of transforms link -> base.
|
46
49
|
i_X_0 = jnp.zeros(shape=(model.number_of_links(), 6, 6))
|
47
50
|
i_X_0 = i_X_0.at[0].set(jnp.eye(6))
|
@@ -152,13 +155,16 @@ def jacobian_full_doubly_left(
|
|
152
155
|
# Note: λ(0) must not be used, it's initialized to -1.
|
153
156
|
λ = model.kin_dyn_parameters.parent_array
|
154
157
|
|
155
|
-
# Compute the parent-to-child adjoints
|
158
|
+
# Compute the parent-to-child adjoints of the joints.
|
156
159
|
# These transforms define the relative kinematics of the entire model, including
|
157
160
|
# the base transform for both floating-base and fixed-base models.
|
158
|
-
i_X_λi
|
161
|
+
i_X_λi = model.kin_dyn_parameters.joint_transforms(
|
159
162
|
joint_positions=s, base_transform=jnp.eye(4)
|
160
163
|
)
|
161
164
|
|
165
|
+
# Extract the joint motion subspaces.
|
166
|
+
S = model.kin_dyn_parameters.motion_subspaces
|
167
|
+
|
162
168
|
# Allocate the buffer of transforms base -> link.
|
163
169
|
B_X_i = jnp.zeros(shape=(model.number_of_links(), 6, 6))
|
164
170
|
B_X_i = B_X_i.at[0].set(jnp.eye(6))
|
@@ -244,13 +250,16 @@ def jacobian_derivative_full_doubly_left(
|
|
244
250
|
# Note: λ(0) must not be used, it's initialized to -1.
|
245
251
|
λ = model.kin_dyn_parameters.parent_array
|
246
252
|
|
247
|
-
# Compute the parent-to-child adjoints
|
253
|
+
# Compute the parent-to-child adjoints of the joints.
|
248
254
|
# These transforms define the relative kinematics of the entire model, including
|
249
255
|
# the base transform for both floating-base and fixed-base models.
|
250
|
-
i_X_λi
|
256
|
+
i_X_λi = model.kin_dyn_parameters.joint_transforms(
|
251
257
|
joint_positions=s, base_transform=jnp.eye(4)
|
252
258
|
)
|
253
259
|
|
260
|
+
# Extract the joint motion subspaces.
|
261
|
+
S = model.kin_dyn_parameters.motion_subspaces
|
262
|
+
|
254
263
|
# Allocate the buffer of 6D transform base -> link.
|
255
264
|
B_X_i = jnp.zeros(shape=(model.number_of_links(), 6, 6))
|
256
265
|
B_X_i = B_X_i.at[0].set(jnp.eye(6))
|
jaxsim/rbda/rnea.py
CHANGED
@@ -4,7 +4,7 @@ import jaxlie
|
|
4
4
|
|
5
5
|
import jaxsim.api as js
|
6
6
|
import jaxsim.typing as jtp
|
7
|
-
from jaxsim.math import Adjoint, Cross
|
7
|
+
from jaxsim.math import STANDARD_GRAVITY, Adjoint, Cross
|
8
8
|
|
9
9
|
from . import utils
|
10
10
|
|
@@ -22,7 +22,7 @@ def rnea(
|
|
22
22
|
base_angular_acceleration: jtp.Vector | None = None,
|
23
23
|
joint_accelerations: jtp.Vector | None = None,
|
24
24
|
link_forces: jtp.Matrix | None = None,
|
25
|
-
standard_gravity: jtp.FloatLike =
|
25
|
+
standard_gravity: jtp.FloatLike = STANDARD_GRAVITY,
|
26
26
|
) -> tuple[jtp.Vector, jtp.Vector]:
|
27
27
|
"""
|
28
28
|
Compute inverse dynamics using the Recursive Newton-Euler Algorithm (RNEA).
|
@@ -88,13 +88,16 @@ def rnea(
|
|
88
88
|
W_X_B = W_H_B.adjoint()
|
89
89
|
B_X_W = W_H_B.inverse().adjoint()
|
90
90
|
|
91
|
-
# Compute the parent-to-child adjoints
|
91
|
+
# Compute the parent-to-child adjoints of the joints.
|
92
92
|
# These transforms define the relative kinematics of the entire model, including
|
93
93
|
# the base transform for both floating-base and fixed-base models.
|
94
|
-
i_X_λi
|
94
|
+
i_X_λi = model.kin_dyn_parameters.joint_transforms(
|
95
95
|
joint_positions=s, base_transform=W_H_B.as_matrix()
|
96
96
|
)
|
97
97
|
|
98
|
+
# Extract the joint motion subspaces.
|
99
|
+
S = model.kin_dyn_parameters.motion_subspaces
|
100
|
+
|
98
101
|
# Allocate buffers.
|
99
102
|
v = jnp.zeros(shape=(model.number_of_links(), 6, 1))
|
100
103
|
a = jnp.zeros(shape=(model.number_of_links(), 6, 1))
|
jaxsim/rbda/utils.py
CHANGED
@@ -3,7 +3,7 @@ import jax.numpy as jnp
|
|
3
3
|
import jaxsim.api as js
|
4
4
|
import jaxsim.typing as jtp
|
5
5
|
from jaxsim import exceptions
|
6
|
-
from jaxsim.math import
|
6
|
+
from jaxsim.math import STANDARD_GRAVITY
|
7
7
|
|
8
8
|
|
9
9
|
def process_inputs(
|
@@ -96,7 +96,7 @@ def process_inputs(
|
|
96
96
|
standard_gravity = (
|
97
97
|
jnp.array(standard_gravity).squeeze()
|
98
98
|
if standard_gravity is not None
|
99
|
-
else
|
99
|
+
else STANDARD_GRAVITY
|
100
100
|
)
|
101
101
|
|
102
102
|
if s.shape != (dofs,):
|
@@ -144,7 +144,7 @@ def process_inputs(
|
|
144
144
|
W_v̇_WB = jnp.hstack([W_v̇l_WB, W_ω̇_WB])
|
145
145
|
|
146
146
|
# Create the 6D gravity acceleration.
|
147
|
-
W_g = jnp.
|
147
|
+
W_g = jnp.array([0, 0, standard_gravity, 0, 0, 0])
|
148
148
|
|
149
149
|
return (
|
150
150
|
W_p_B.astype(float),
|
jaxsim/utils/jaxsim_dataclass.py
CHANGED
@@ -202,7 +202,11 @@ class JaxsimDataclass(abc.ABC):
|
|
202
202
|
)
|
203
203
|
|
204
204
|
if not compatible_structure:
|
205
|
-
raise ValueError(
|
205
|
+
raise ValueError(
|
206
|
+
f"Pytrees have incompatible structures.\n"
|
207
|
+
f"Original: {', '.join(map(str, [jax.tree_util.tree_structure(tree) for tree in trees[1:]]))}\n"
|
208
|
+
f"Target: {target_structure}"
|
209
|
+
)
|
206
210
|
|
207
211
|
target_shapes = JaxsimDataclass.get_leaf_shapes(trees[0])
|
208
212
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: jaxsim
|
3
|
-
Version: 0.6.
|
3
|
+
Version: 0.6.2.dev102
|
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>
|
@@ -66,7 +66,7 @@ Requires-Dist: jaxlib>=0.4.26
|
|
66
66
|
Requires-Dist: jaxlie>=1.3.0
|
67
67
|
Requires-Dist: jax_dataclasses>=1.4.0
|
68
68
|
Requires-Dist: pptree
|
69
|
-
Requires-Dist: optax
|
69
|
+
Requires-Dist: optax==0.2.3
|
70
70
|
Requires-Dist: qpax
|
71
71
|
Requires-Dist: rod>=0.3.3
|
72
72
|
Requires-Dist: typing_extensions; python_version < "3.12"
|
@@ -98,9 +98,8 @@ Requires-Dist: jaxsim[style,testing,viz]; extra == "all"
|
|
98
98
|
<br/>
|
99
99
|
<table>
|
100
100
|
<tr>
|
101
|
-
<th><img src="https://github.com/user-attachments/assets/
|
102
|
-
<th><img src="https://github.com/user-attachments/assets/
|
103
|
-
<th><img src="https://github.com/user-attachments/assets/ae8adadf-3bca-47b8-97ca-3a9273633d60" width="250"></th>
|
101
|
+
<th><img src="https://github.com/user-attachments/assets/f9661fae-9a85-41dd-9a58-218758ec8c9c" width="500"></th>
|
102
|
+
<th><img src="https://github.com/user-attachments/assets/62b88b9d-45ea-4d22-99d2-f24fc842dd29" width="500"></th>
|
104
103
|
</tr>
|
105
104
|
</table>
|
106
105
|
<br/>
|
@@ -143,15 +142,14 @@ model = js.model.reduce(model=full_model, considered_joints=joints)
|
|
143
142
|
|
144
143
|
ndof = model.dofs()
|
145
144
|
# Initialize data and simulation
|
146
|
-
data
|
147
|
-
|
148
|
-
)
|
145
|
+
# Note that the default data representation is mixed velocity representation
|
146
|
+
data = js.data.JaxSimModelData.build(model=model,base_position=jnp.array([0.0, 0.0, 1.0]))
|
149
147
|
T = jnp.arange(start=0, stop=1.0, step=model.time_step)
|
150
148
|
tau = jnp.zeros(ndof)
|
151
149
|
|
152
150
|
# Simulate
|
153
151
|
for t in T:
|
154
|
-
data
|
152
|
+
data = js.model.step(model=model, data=data, link_forces=None, joint_force_references=tau)
|
155
153
|
|
156
154
|
```
|
157
155
|
|
@@ -0,0 +1,69 @@
|
|
1
|
+
jaxsim/__init__.py,sha256=b8dYoVXqtHxHcF56iM2xgKk78lsvmGrfDlvdwaGasgs,3388
|
2
|
+
jaxsim/_version.py,sha256=fe1EJvNfkAkdKyqJAK6TVMFosZyfMNpLo25zJ3DLg4w,428
|
3
|
+
jaxsim/exceptions.py,sha256=MQ3LRMfVMX2-g3qYj7mUVNV9OLlIA48TANJegbcQyXI,2641
|
4
|
+
jaxsim/logging.py,sha256=STI-D_upXZYX-ZezLrlJJ0UlD5YspST0vZ_DcIwkzO4,1553
|
5
|
+
jaxsim/typing.py,sha256=7msl8t5Jt09RNYfKdPJtpjLfWurldcycDappb045Eso,761
|
6
|
+
jaxsim/api/__init__.py,sha256=Yck5Cr6_6yqGKwt2KicccEiy-hzIAOFA3G0sPXWQTgg,253
|
7
|
+
jaxsim/api/actuation_model.py,sha256=L8AzxIiEquWeG8UGGJaYr2Alt4dkkOROlbsCn9hUYik,2825
|
8
|
+
jaxsim/api/com.py,sha256=jhWcUsJtZYEQf-hnEvVuqH1KoiakBNLnTkj3PA6Cn-Q,13748
|
9
|
+
jaxsim/api/common.py,sha256=jd3thxFUxcyoAMV3ZDMqfk2DlBdvWMZuI25Y0Pw5Dlo,7088
|
10
|
+
jaxsim/api/contact.py,sha256=PpVtlb7Iw4mW0dCrGWorznzF2ai13N9SlV7DL5ecUfA,16795
|
11
|
+
jaxsim/api/contact_model.py,sha256=gY7dRA6UIduD4OO1nRZ4VmnNXIOeDLulw5Am9gBjhUs,3334
|
12
|
+
jaxsim/api/data.py,sha256=vfgzPBCbX9OUiCBKvyib2aevhZpH-MzU4ZNZsnhidQo,20790
|
13
|
+
jaxsim/api/frame.py,sha256=4wg6GsyBQgYhSvc-ry_31JsaL66sZt3TtgwjB7NrHmk,14583
|
14
|
+
jaxsim/api/integrators.py,sha256=o7Fx3xjkwYUc9OJidcaPVeCEHMO-D63Y_c2zt0Q71xY,2818
|
15
|
+
jaxsim/api/joint.py,sha256=AnqlNWmBOay-gsoo0y4AbfFQ2OCJm-8T1E0IMhZeLoY,7457
|
16
|
+
jaxsim/api/kin_dyn_parameters.py,sha256=XXYJSncZCfrAVcJlHBU4cOHmWf1iOh68vv5qyKF4s08,29788
|
17
|
+
jaxsim/api/link.py,sha256=bSZOYJDY9HJMgY25VzevTTsdFZTJc6yRRpslc5FhGHE,12782
|
18
|
+
jaxsim/api/model.py,sha256=Xy6rjHnWaiQZikXc9nNChAz2Y46NpXX63QSM4erBBhg,68425
|
19
|
+
jaxsim/api/ode.py,sha256=2Kkh1vk2eXYoMwSJhE-HfFWcEWtM1A9ZZR-b4xmH8uk,5486
|
20
|
+
jaxsim/api/references.py,sha256=ywNiURwZ0niYB-AzX1eoWCfdrx7TBiRyyfi_2tz-ako,20677
|
21
|
+
jaxsim/math/__init__.py,sha256=lWMswEnITzQ69O761CiHL-r7UrxyIqsHlk4YTNxtwAY,384
|
22
|
+
jaxsim/math/adjoint.py,sha256=mAtCwddK1ZwpVgIp4GIY8EVAW32Z67AJl_BzREf0ih8,4731
|
23
|
+
jaxsim/math/cross.py,sha256=AM4HauuuT09q2TN42qvdXhJ9LvtCh0e7ZyLjP-7sANs,1498
|
24
|
+
jaxsim/math/inertia.py,sha256=T-iAjPYSD_72R0ZG8GDJhe5i3Jc3ojhlbBRSscTdCKg,1577
|
25
|
+
jaxsim/math/joint_model.py,sha256=mV6F3SVHUxHcXMIw-hc4fG341R4rkK8MvRPn53HcEpg,6915
|
26
|
+
jaxsim/math/quaternion.py,sha256=MSaZywzJDxs2te1ZELeIcupKSFIA9q_pdXy7fDAEqM4,4539
|
27
|
+
jaxsim/math/rotation.py,sha256=TEUtT3X2tFieNxdlccup1pfaTgCTtfX-hTNotd8-nNk,1892
|
28
|
+
jaxsim/math/skew.py,sha256=z_9YN-NDHL3n4KXWNbzTSMkFDZ0SDpz4RUcwwYFOaao,1402
|
29
|
+
jaxsim/math/transform.py,sha256=We0ChLajSckxGINiJsP1a5Ur3yjg3JuweQ3kK4Woix4,3332
|
30
|
+
jaxsim/math/utils.py,sha256=2id1F6QOvkHkIF3Nuxuj_tz_kI0IYlrlgVQrETmXFfI,1058
|
31
|
+
jaxsim/mujoco/__init__.py,sha256=1kAWzYOS7nP29S5FGyWPqiAnPf4yPSoaPW-WBGBjVV0,214
|
32
|
+
jaxsim/mujoco/__main__.py,sha256=GBmB7J-zj75ZnFyuAAmpSOpbxi_HhHhWJeot3ljGDJY,5291
|
33
|
+
jaxsim/mujoco/loaders.py,sha256=Jjb5Us9ERmLjejM4S1FcqrF12ZVkjBMZXelu9n6HGA4,23138
|
34
|
+
jaxsim/mujoco/model.py,sha256=bRXo1uhWDN37sP9qdejr_2vq_PXHQ7p6eyBlFff_JcE,16492
|
35
|
+
jaxsim/mujoco/utils.py,sha256=dW3LrcM050-eVVdLuCiN3StIrTEfyk_jJyq1GiNh3fg,8396
|
36
|
+
jaxsim/mujoco/visualizer.py,sha256=zkdu5qxZK0BGYotAHxoYQ5ZVTWSmwVZPQ3vTWGOik9E,7218
|
37
|
+
jaxsim/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
38
|
+
jaxsim/parsers/kinematic_graph.py,sha256=QP7j_sBTrKgT-PZQ44yFNoIbf877dQvavcRvbatCFz4,35864
|
39
|
+
jaxsim/parsers/descriptions/__init__.py,sha256=N_hp8cGI5FyEFiuNx9a-CAGCr0F0QpYEpdMHvwB7_1g,261
|
40
|
+
jaxsim/parsers/descriptions/collision.py,sha256=C6SekAPL2tNG62Y-lTqj1m9BblhoTZDj2F2vgspKNbI,4577
|
41
|
+
jaxsim/parsers/descriptions/joint.py,sha256=MurLIHHmu-y_bwUcR_J1NZ-FjfRZRk166zKsn6VzIwE,4232
|
42
|
+
jaxsim/parsers/descriptions/link.py,sha256=Eh0W5qL7_Uw0GV-BkNKXhm9Q2dRTfIWCX5D-87zQkxA,3711
|
43
|
+
jaxsim/parsers/descriptions/model.py,sha256=G7nYy4CTppj2NM7hTXP6xGJ2h5dwT41N1fsy0EYSIBk,9860
|
44
|
+
jaxsim/parsers/rod/__init__.py,sha256=G2vqlLajBLUc4gyzXwsEI2Wsi4TMOIF9bLDFeT6KrGU,92
|
45
|
+
jaxsim/parsers/rod/meshes.py,sha256=yAXefG73_zqbVKRUdlcz9yFmypjDIpiP9cO96PeAozE,2842
|
46
|
+
jaxsim/parsers/rod/parser.py,sha256=2AxRimQeYHHrdWLJrzXxPX9TUMOhuv10lqptfvG6wMQ,14405
|
47
|
+
jaxsim/parsers/rod/utils.py,sha256=Wb1TsZ2v0VgmswYqI5hHRtGQx4ttWK8luWO9cvllTEk,8117
|
48
|
+
jaxsim/rbda/__init__.py,sha256=kmy4G9aMkrqPNGdLSaSV3k15dpF52vBEUQXDFDuKIxU,337
|
49
|
+
jaxsim/rbda/aba.py,sha256=QiajR4Uv06u-BX5V2kWpmFmP_kIfTxxcycdJhIbid9A,9029
|
50
|
+
jaxsim/rbda/collidable_points.py,sha256=XyeV1I43GL22j03rkNVocaIPOGYirt3PiDHrFMndziQ,2070
|
51
|
+
jaxsim/rbda/crba.py,sha256=DC9kBXMG1qXaoAdo8K7OCnVHT_YUaL_t6Li56sRf8ro,5093
|
52
|
+
jaxsim/rbda/forward_kinematics.py,sha256=zoyXEZnL-hyJr3c9Jl0EfCleJtVvVsekHgUTLn5EiQ4,4640
|
53
|
+
jaxsim/rbda/jacobian.py,sha256=EaMvf073UnLWJGXm4UZIlYd4erulFAGgj_pp89k6xic,11113
|
54
|
+
jaxsim/rbda/rnea.py,sha256=lMU7xxdPqGGzk0QwteB-IYjL4auHOpd78C1YqAXlp9s,7588
|
55
|
+
jaxsim/rbda/utils.py,sha256=3Q1yZn6J7j8D5HP_3yQCzkcNLf0VID6NcETGu6YvWwM,5370
|
56
|
+
jaxsim/rbda/contacts/__init__.py,sha256=eZKSoGpWH6IQIofhXzU-q9J00PkKTovPVnxubmzoK0E,202
|
57
|
+
jaxsim/rbda/contacts/common.py,sha256=QSvEykjN5MuRD7Vk-rM454qBYdkwH7xZAVOBeulKAUc,5042
|
58
|
+
jaxsim/rbda/contacts/relaxed_rigid.py,sha256=-WZ2g5JAeK7tgTZCsgADzjKs2AaReTHzQYespmxvgj0,26713
|
59
|
+
jaxsim/terrain/__init__.py,sha256=f7lVX-iNpH_wkkjef9Qpjh19TTAUOQw76EiLYJDVizc,78
|
60
|
+
jaxsim/terrain/terrain.py,sha256=TH84r2qizMmsfW7zYLViRjacCfOkqdYHsCzD1lZEY4c,6716
|
61
|
+
jaxsim/utils/__init__.py,sha256=Y5zyoRevl3EMVQadhZ4EtSwTEkDt2vcnFoRhPJjKTZ0,215
|
62
|
+
jaxsim/utils/jaxsim_dataclass.py,sha256=XzmZeIibcaOzaxpprsGSxH3UrM66PAO456rFV91sNXg,11453
|
63
|
+
jaxsim/utils/tracing.py,sha256=Btwxdfhb7fJLk3r5PlQkGYj60Y2KbFT1gANGIA697FU,530
|
64
|
+
jaxsim/utils/wrappers.py,sha256=3IMwydqFgmSPqeuUQ3PRmdhDc1IoT6XC23jPC_LjWXs,4175
|
65
|
+
jaxsim-0.6.2.dev102.dist-info/LICENSE,sha256=eaYdFmdeMbiIoIiPzEK0MjP1S9wtFXjXNR5er49uLR0,1546
|
66
|
+
jaxsim-0.6.2.dev102.dist-info/METADATA,sha256=7WbJv10-ApuGcTLm05dFCCoNI1CXqJ_NHz6scPi64u4,20132
|
67
|
+
jaxsim-0.6.2.dev102.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
68
|
+
jaxsim-0.6.2.dev102.dist-info/top_level.txt,sha256=LxGMA8FLtXjQ6oI7N5gd_R_oSUHxpXxUEOfT1xS_ni0,7
|
69
|
+
jaxsim-0.6.2.dev102.dist-info/RECORD,,
|