Files
Mujoco_WASM/plugin/elasticity/README.md
T
Alessio Quaglino 50b4f0277d Add elasticity plugin README.
PiperOrigin-RevId: 574195554
Change-Id: Ib57614aaef66cdb26e3667c66df2426e63dacac4
2023-10-17 10:36:34 -07:00

2.7 KiB
Raw Blame History

MuJoCo

Elasticity plugins

These are first-party plugins that implement passive forces based on discretized continuum mechanics models. They can be applied to flexes and bodies (via the composite functionality). Sample models can be found in this folder.

Cable

Implemented in cable.cc.

The cable plugin discretizes an inextensible 1D continuum. It is intended to simulate the twist and bending of rods where the stretching in negligible compared to the other deformation modes.

Parameters:

  • twist [Pa]: twisting stiffness.
  • bend [Pa]: bending stiffness.
  • flat [bool]: if true, the stress-equilibrium configuration is that of a straight cable; if true, it is the configuration defined in the XML.
  • vmax [N/m^2]: If greater than zero, the cable is colored using mechanical stresses; the value represent the maximum stress in the color scale.

Shell

Implemented in shell.cc.

The shell plugin discretizes an inextensible 2D continuum. It is intended to simulate the bending of plates where the stretching is negligible compared to other deformation modes.

Parameters:

  • young [Pa]: Young's modulus.
  • poisson [Pa]: Poisson's ratio; if 0, then the material only opposed shear deformations; if near 0.5, then the material is nearly incompressible (rubber-like).
  • thickness [m]: shell thickness, used to scale the bending stiffness.

Membrane

Implemented in membrane.cc.

The membrane plugin discretized an extensible 2D continuum. It is intended to simulate the stretching of membranes subjected to tensile stresses, where the bending is negligible.

Parameters:

  • young [Pa]: Young's modulus.
  • poisson [Pa]: Poisson's ratio; if 0, then the material only opposed shear deformations; if near 0.5, then the material is nearly incompressible (rubber-like).
  • thickness [m]: shell thickness, used to scale the stretching stiffness.

Solid

Implemented in solid.cc.

The membrane plugin discretized an extensible 3D continuum. It is Saint VenantKirchhoff model intended to simulate the compression or elongation of hyperelastic materials subjected to large displacements (finite rotations) and small strains, since it uses a nonlinear strain-displacement but a linear stress-strain relationship.

Parameters:

  • young [Pa]: Young's modulus.
  • poisson [Pa]: Poisson's ratio; if 0, then the material only opposed shear deformations; if near 0.5, then the material is nearly incompressible (rubber-like).
  • damping [Ns/m^2]: damping coefficient for Rayleigh damping.