jaxsim 0.4.3.dev18__py3-none-any.whl → 0.4.3.dev28__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 CHANGED
@@ -20,6 +20,11 @@ def _jnp_options() -> None:
20
20
  if jnp.empty(0, dtype=float).dtype != jnp.empty(0, dtype=np.float64).dtype:
21
21
  logging.warning("Failed to enable 64bit precision in JAX")
22
22
 
23
+ else:
24
+ logging.warning(
25
+ "Using 32bit precision in JaxSim is still experimental, please avoid to use variable step integrators."
26
+ )
27
+
23
28
 
24
29
  def _np_options() -> None:
25
30
  import numpy as np
jaxsim/_version.py CHANGED
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.4.3.dev18'
16
- __version_tuple__ = version_tuple = (0, 4, 3, 'dev18')
15
+ __version__ = version = '0.4.3.dev28'
16
+ __version_tuple__ = version_tuple = (0, 4, 3, 'dev28')
jaxsim/api/data.py CHANGED
@@ -39,7 +39,9 @@ class JaxSimModelData(common.ModelDataWithVelocityRepresentation):
39
39
  contacts_params: jaxsim.rbda.ContactsParams = dataclasses.field(repr=False)
40
40
 
41
41
  time_ns: jtp.Int = dataclasses.field(
42
- default_factory=lambda: jnp.array(0, dtype=jnp.uint64)
42
+ default_factory=lambda: jnp.array(
43
+ 0, dtype=jnp.uint64 if jax.config.read("jax_enable_x64") else jnp.uint32
44
+ ),
43
45
  )
44
46
 
45
47
  def __hash__(self) -> int:
@@ -172,9 +174,14 @@ class JaxSimModelData(common.ModelDataWithVelocityRepresentation):
172
174
  )
173
175
 
174
176
  time_ns = (
175
- jnp.array(time * 1e9, dtype=jnp.uint64)
177
+ jnp.array(
178
+ time * 1e9,
179
+ dtype=jnp.uint64 if jax.config.read("jax_enable_x64") else jnp.uint32,
180
+ )
176
181
  if time is not None
177
- else jnp.array(0, dtype=jnp.uint64)
182
+ else jnp.array(
183
+ 0, dtype=jnp.uint64 if jax.config.read("jax_enable_x64") else jnp.uint32
184
+ )
178
185
  )
179
186
 
180
187
  if isinstance(model.contact_model, SoftContacts):
jaxsim/api/model.py CHANGED
@@ -1931,11 +1931,22 @@ def step(
1931
1931
  ),
1932
1932
  )
1933
1933
 
1934
+ tf_ns = t0_ns + jnp.array(dt * 1e9, dtype=t0_ns.dtype)
1935
+ tf_ns = jnp.where(tf_ns >= t0_ns, tf_ns, jnp.array(0, dtype=t0_ns.dtype))
1936
+
1937
+ jax.lax.cond(
1938
+ pred=tf_ns >= t0_ns,
1939
+ true_fun=lambda: jax.debug.print(
1940
+ "The simulation time overflowed, resetting simulation time to 0."
1941
+ ),
1942
+ false_fun=lambda: None,
1943
+ )
1944
+
1934
1945
  data_tf = (
1935
1946
  # Store the new state of the model and the new time.
1936
1947
  data.replace(
1937
1948
  state=state_tf,
1938
- time_ns=t0_ns + jnp.array(dt * 1e9).astype(jnp.uint64),
1949
+ time_ns=tf_ns,
1939
1950
  )
1940
1951
  )
1941
1952
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaxsim
3
- Version: 0.4.3.dev18
3
+ Version: 0.4.3.dev28
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>
6
6
  Maintainer-email: Diego Ferigo <dgferigo@gmail.com>, Filippo Luca Ferretti <filippo.ferretti@iit.it>
@@ -1,5 +1,5 @@
1
- jaxsim/__init__.py,sha256=ixsS4dYMPex2wOUUp_rkPnwrPhYzkRh1xO_YuMj3Cr4,2626
2
- jaxsim/_version.py,sha256=SFJGfO84uy3oOc6jDmWWev6VuJIqHL3tI8_OvaYfdsA,426
1
+ jaxsim/__init__.py,sha256=bSbpggIz5aG6QuGZLa0V2EfHjAOeucMxi-vIYxzLmN8,2788
2
+ jaxsim/_version.py,sha256=QnmczpVtiPFU-Ox0iyWHC4BmRC1wb9rfmHqwmKCR7W4,426
3
3
  jaxsim/exceptions.py,sha256=8_h8iqL8DgNR754dR8SZiQ7361GR5V1sUk3ZuZCHw1Q,2069
4
4
  jaxsim/logging.py,sha256=STI-D_upXZYX-ZezLrlJJ0UlD5YspST0vZ_DcIwkzO4,1553
5
5
  jaxsim/typing.py,sha256=IbFx3UkEXi-cm7UBqMPi58rJAFV_HbZ9E_K4JwfNvVM,753
@@ -7,12 +7,12 @@ jaxsim/api/__init__.py,sha256=8eV22t2S3UwNyCg8karPetG1dmX1VDBXkyv28_FwNQA,210
7
7
  jaxsim/api/com.py,sha256=m-p3EJDhpnMTlXKplfbZE_aH9NqX_VyLlAE3vUhc6l4,13642
8
8
  jaxsim/api/common.py,sha256=SNgxq42r6eF_-aPszvOjUYkGwXOzz4hKmhDwEUkscFQ,6650
9
9
  jaxsim/api/contact.py,sha256=HyEAjF7BySDDOlRahN0l7V15IPB0HPXuoM0twamuEW0,20913
10
- jaxsim/api/data.py,sha256=CUh9lvhVk3_clNQ26BUBGpjvFSsK_PrVWVMEWpMdHRM,27206
10
+ jaxsim/api/data.py,sha256=p44Q7pNQEWQz2KgwNrk47_m0D-vbVtT8xuy4fLD8T58,27465
11
11
  jaxsim/api/frame.py,sha256=KS8A5wRfjxhe9NgcVo2QA516iP5zky7UVnWxG7nTa7c,12911
12
12
  jaxsim/api/joint.py,sha256=L81bQe-noPT6_54KOSF7KBjRmEPAS433ULn2EcXI8vI,5115
13
13
  jaxsim/api/kin_dyn_parameters.py,sha256=CcfSg5Mc8qb1mZeMQ4AK_ffZIsK5yOl7tu397pFhcDA,29369
14
14
  jaxsim/api/link.py,sha256=qPRtc8qqMRjZxUCZYXJMygbB6huDXBfIT1b1b8Durkw,18631
15
- jaxsim/api/model.py,sha256=HXoqCtQ3KStGoxhgvFm8P_Sc-lbEM4l5No2MoHzNlOk,65558
15
+ jaxsim/api/model.py,sha256=Tq0CBjmjipGT02q4LgvVv2PH2uEFFHrDr_OiaiQNIXQ,65872
16
16
  jaxsim/api/ode.py,sha256=Vb2sN4zwpXnaJDD9-ziz2qvfmfa4jvIQ0fONbBIRGmU,13368
17
17
  jaxsim/api/ode_data.py,sha256=U7F6TL6bENAxpQQl4PupPoDG7d7VfTTFqDAs3xwu6Hs,20003
18
18
  jaxsim/api/references.py,sha256=XOVKuQXRmjPoP-T5JWGSbqIGX5DzOkeGafqRpj0ZQEM,20771
@@ -62,8 +62,8 @@ jaxsim/utils/__init__.py,sha256=Y5zyoRevl3EMVQadhZ4EtSwTEkDt2vcnFoRhPJjKTZ0,215
62
62
  jaxsim/utils/jaxsim_dataclass.py,sha256=5xJbY0G8d7C0OTNIW9T4vQxiDak6TGZT9gpNOvRykFI,11373
63
63
  jaxsim/utils/tracing.py,sha256=KDMoyVPlu2NJvFkhtZwq5AkqMMgajt3munvJom-vEjQ,650
64
64
  jaxsim/utils/wrappers.py,sha256=JhLUh1g8iU-lhjbuZRfkscPZhYlLCOorVM2Xl3ulRBI,4054
65
- jaxsim-0.4.3.dev18.dist-info/LICENSE,sha256=eaYdFmdeMbiIoIiPzEK0MjP1S9wtFXjXNR5er49uLR0,1546
66
- jaxsim-0.4.3.dev18.dist-info/METADATA,sha256=aLpRkfa9CC7GVzXMKX3LY5DkCHEmOr4CE-u3Vbt5fx8,17247
67
- jaxsim-0.4.3.dev18.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
68
- jaxsim-0.4.3.dev18.dist-info/top_level.txt,sha256=LxGMA8FLtXjQ6oI7N5gd_R_oSUHxpXxUEOfT1xS_ni0,7
69
- jaxsim-0.4.3.dev18.dist-info/RECORD,,
65
+ jaxsim-0.4.3.dev28.dist-info/LICENSE,sha256=eaYdFmdeMbiIoIiPzEK0MjP1S9wtFXjXNR5er49uLR0,1546
66
+ jaxsim-0.4.3.dev28.dist-info/METADATA,sha256=EktoHZgQXhOsv1CbRnKOcrXmncWEiEgzvmzQVlkYB0M,17247
67
+ jaxsim-0.4.3.dev28.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
68
+ jaxsim-0.4.3.dev28.dist-info/top_level.txt,sha256=LxGMA8FLtXjQ6oI7N5gd_R_oSUHxpXxUEOfT1xS_ni0,7
69
+ jaxsim-0.4.3.dev28.dist-info/RECORD,,