Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Confusing unphysical interaction of noslip, frictionloss, and damping #2423

Open
2 tasks done
jjyyxx opened this issue Feb 14, 2025 · 0 comments
Open
2 tasks done

Confusing unphysical interaction of noslip, frictionloss, and damping #2423

jjyyxx opened this issue Feb 14, 2025 · 0 comments
Labels
bug Something isn't working

Comments

@jjyyxx
Copy link
Contributor

jjyyxx commented Feb 14, 2025

Intro

Hi!

I am a graduate student at HKU, I use MuJoCo for my research on robotic manipulation.

My setup

MuJoCo 3.2.7, Python and C, Linux

What's happening? What did you expect?

While experimenting with a hinge joint that includes frictionloss, I encountered an unexpected and unphysical behavior. After simplifying the model, I found that when using a single-joint setup with all of the following parameters set to values greater than 0—noslip_iterations, frictionloss, and damping—the deceleration of the joint becomes excessively slow.

Specifically, when I load the model and keyframe it, I expect the cylinder to decelerate to zero speed quickly due to the effects of friction and damping. This behavior works as expected when any one of the three options is turned off. However, when all three are active, the cylinder continues rotating, but the deceleration is very gradual.

Questions:

  1. Is this slow deceleration the expected behavior (documentation mentions that noslip solver "no longer be solving a well-defined optimization problem")?
  2. Could I be misusing one or more of these options?
  3. Or, is this potentially indicative of a bug in the simulation?

Steps for reproduction

Load the model, and load keyframe 0.

Minimal model for reproduction

<?xml version="1.0" encoding="utf-8"?>
<mujoco>
  <compiler angle="radian"/>

  <option timestep="0.01" integrator="implicit" noslip_iterations="1" />

  <worldbody>
    <body>
      <joint type="hinge" axis="0 0 1" frictionloss="0.01" damping="0.1" />
      <geom type="cylinder" size="0.0125 0.005"/>
      <site pos="0.0125 0 0" rgba="0 1 0 1"/>
    </body>
  </worldbody>

  <keyframe>
    <key qpos="0" qvel="10"/>
  </keyframe>
</mujoco>

Code required for reproduction

No response

Confirmations

@jjyyxx jjyyxx added the bug Something isn't working label Feb 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant