gs.materials.FEM.Muscle#
- class genesis.engine.materials.FEM.muscle.Muscle(*, use_visual_raycasting: bool = False, E: float = 1000000.0, nu: float = 0.2, rho: float = 1000.0, hydroelastic_modulus: float = 10000000.0, friction_mu: float = 0.1, contact_resistance: float | None = None, hessian_invariant: bool = False, build: Any = None, pre_compute: Any = None, update_stress: Any = None, compute_energy_gradient_hessian: Any = None, compute_energy_gradient: Any = None, compute_energy: Any = None, mu: float = 0.0, lam: float = 0.0, idx: int | None = None, model: Literal['linear', 'stable_neohookean', 'linear_corotated'] = 'linear', n_groups: int = 1, stiffness: float = 0.0)[source]#
Bases:
ElasticThe muscle material class for FEM.
- Parameters:
E (float, optional) – Young’s modulus, which controls stiffness. Default is 1e6.
nu (float, optional) – Poisson ratio. Default is 0.2.
rho (float, optional) – Material density (kg/m³). Default is 1000.
model (str, optional) – Constitutive model (‘linear’ or ‘stable_neohookean’). Default is ‘linear’.
n_groups (int, optional) – Number of muscle groups. Default is 1.
friction_mu (float, optional) – Contact friction coefficient. Default is 0.1.
contact_resistance (float | None, optional) – IPC contact resistance/stiffness override. Default is None.
- n_groups: int#
- stiffness: float#
- 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].