Source code for isaaclab_contrib.custom_coupling.newton_manager_cfg
# Copyright (c) 2022-2026, The Isaac Lab Project Developers (https://github.com/isaac-sim/IsaacLab/blob/main/CONTRIBUTORS.md).
# All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
"""Configuration for the custom MJWarp and VBD coupling manager."""
from __future__ import annotations
from typing import TYPE_CHECKING, Literal
from isaaclab_newton.physics import MJWarpSolverCfg
from isaaclab.utils.configclass import configclass
from isaaclab_contrib.deformable.newton_manager_cfg import NewtonModelSolverCfg, VBDSolverCfg
if TYPE_CHECKING:
from isaaclab_newton.physics import NewtonManager
[docs]
@configclass
class CoupledMJWarpVBDSolverCfg(NewtonModelSolverCfg):
"""Configuration for the custom MJWarp and VBD coupling manager."""
class_type: type[NewtonManager] | str = "{DIR}.coupled_mjwarp_vbd_manager:NewtonCoupledMJWarpVBDManager"
"""Manager class for the coupled solver."""
rigid_solver_cfg: MJWarpSolverCfg = MJWarpSolverCfg()
"""MJWarp rigid-body solver configuration."""
soft_solver_cfg: VBDSolverCfg = VBDSolverCfg(integrate_with_external_rigid_solver=True)
"""VBD deformable solver configuration."""
coupling_mode: Literal["one_way", "two_way"] = "two_way"
"""Coupling direction between the rigid and deformable solvers."""