Verification of the frictional constraint


I would like to perform a simulation of a solid block sliding on a flat plane. With the initial velocity of v0 and friction coefficient mu, I would expect the block can travel a distance d = v0^2/(2 * mu * g) until resting.

To enable the initial velocity, I added a new block “initial_conditions”, which can be activated by this commit:

The new json block looks like:

"initial_conditions": {
  "particles_velocity": [
      "pset_id" : 0,
      "dir": 0,
      "velocity": 1.0

To test the initial velocity. A simulation is run with mu=0. The block can move with constant velocity v0 as expected (7.7 KB)

In the second simulation, when mu=0.1 and v0=1 m/s, the block can move a distance of d=0.2m (d_correct = 0.51), and with v0=3 m/s: d=0.8m (d_correct=4.59)|attachment (7.7 KB)

Providing that the sliding test with the inclined boundary produces expected results, I wonder what could be the reason for these differences.