viscoelastic module

dynamapp.viscoelastic.coulomb_friction_force(v: jax.numpy.ndarray, fc: jax.numpy.ndarray, fs: jax.numpy.ndarray) jax.numpy.ndarray

Compute the Coulomb friction model.

Args:
  • v (jnp.ndarray): Velocity array.

  • fc (jnp.ndarray): Coulomb friction coefficient.

  • fs (jnp.ndarray): Viscous friction coefficient.

Returns:
  • jax-array: friction force array.

dynamapp.viscoelastic.friction_force(alpha: jax.numpy.array, beta: jax.numpy.array, gamma: jax.numpy.array, q, v, a)

Computes the frictional force for a joint using a simple generalized friction model.

\[egin{cases} f_i = lpha_{1i} q_i + lpha_{2i} q_i^2 + \ldots + lpha_{ni} q_i^n + eta_{1i} v_i + eta_{2i} v_i^2 + \ldots + eta_{ki} v_i^k + \gamma_{1i} a_i + \gamma_{2i} a_i^2 + \ldots + \gamma_{pi} a_i^p \end{cases}\]
Args:
  • alpha (jax-array): Coefficients for the position-related terms.

  • beta (jax-array): Coefficients for the velocity-related terms.

  • gamma (jax-array): Coefficients for the acceleration-related terms.

  • q (float): The position of the joint.

  • v (float): The velocity of the joint.

  • a (float): The acceleration of the joint.

Returns:
  • float: The computed frictional force.