Ejemplo n.º 1
0
def restitutionCoefficient():
  cor = balls2d.cor()
  ncollisions = balls2d.numCollisions()
  assert cor.shape == (ncollisions,)
  for col_idx in range( 0, ncollisions ):
    indices = balls2d.collisionIndices( col_idx )
    assert indices[0] <= 2
    assert indices[1] == -1
    if indices[0] == 0:
      cor[col_idx] = 0.0
    elif indices[0] == 1:
      cor[col_idx] = 0.5
    else:
      cor[col_idx] = 1.0
Ejemplo n.º 2
0
def frictionCoefficient():
  grain_floor_mu = 0.6
  grain_grain_mu = 0.2
  coeffs = balls2d.mu()
  ncollisions = balls2d.numCollisions()
  for col_idx in range( 0, ncollisions ):
    col_type = balls2d.collisionType( col_idx )
    if col_type == 'ball_ball':
      coeffs[col_idx] = grain_grain_mu
    elif col_type == 'teleported_ball_ball':
      coeffs[col_idx] = grain_grain_mu
    elif col_type == 'static_plane_constraint':
      coeffs[col_idx] = grain_floor_mu
    else:
      print 'Unexpected constraint type encountered:', col_type
      sys.exit( 1 )