gs.materials.MPM.Elastic#

class genesis.engine.materials.MPM.elastic.Elastic(*, use_visual_raycasting: bool = False, E: float = 300000.0, nu: float = 0.2, rho: float = 1000.0, lam: float | None = None, mu: float | None = None, sampler: str = 'pbs', update_F_S_Jp: Any = None, update_stress: Any = None, idx: int | None = None, model: Literal['corotation', 'neohooken'] = 'corotation')[source]#

Bases: Base

The elastic material class for MPM.

Parameters:
  • E (float, optional) – Young’s modulus. Default is 3e5.

  • nu (float, optional) – Poisson ratio. Default is 0.2.

  • rho (float, optional) – Density (kg/m³). Default is 1000.

  • model (str, optional) – Stress model (‘corotation’, ‘neohooken’). Default is ‘corotation’.

E: float#
model: Literal['corotation', 'neohooken']#
model_post_init(context: Any) None[source]#

Override this method to perform additional initialization after __init__ and model_construct. This is useful if you want to do some validation that requires the entire model to be initialized.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'strict': True, 'validate_default': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].