isaaclab_newton.envs.mdp#

Newton-specific MDP components.

Events#

Backend implementations of MDP event terms for Newton.

Classes:

randomize_rigid_body_material

Sample friction and restitution per shape.

randomize_rigid_body_collider_offsets

Newton backend implementation for collider offset randomization.

randomize_physics_scene_gravity

Randomize selected Newton worlds, leaving the global world unchanged.

randomize_visual_shape

Sample one color per selected link and write Newton shape storage on device.

class isaaclab_newton.envs.mdp.events.randomize_rigid_body_material[source]#

Sample friction and restitution per shape.

Newton uses one friction coefficient, so dynamic_friction_range, num_buckets, and make_consistent are ignored.

Kamino shares materials across environments. It samples one value per original (mu, restitution) group and applies it to every environment, ignoring env_ids.

Methods:

__init__(cfg, env)

Initialize the asset bindings and sampling state.

__init__(cfg: EventTermCfg, env: ManagerBasedEnv) → None[source]#

Initialize the asset bindings and sampling state.

Parameters:
  • cfg – Event configuration.

  • env – Environment owning this term.

class isaaclab_newton.envs.mdp.events.randomize_rigid_body_collider_offsets[source]#

Newton backend implementation for collider offset randomization.

Maps PhysX concepts to Newton’s geometry properties:

  • rest_offset -> shape_margin (Newton margin)

  • contact_offset -> shape_gap (Newton gap = contact_offset - margin)

See the Newton collision schema for details.

Methods:

__init__(cfg, env)

Initialize the asset bindings and sampling state.

__init__(cfg: EventTermCfg, env: ManagerBasedEnv) → None[source]#

Initialize the asset bindings and sampling state.

Parameters:
  • cfg – Event configuration.

  • env – Environment owning this term.

class isaaclab_newton.envs.mdp.events.randomize_physics_scene_gravity[source]#

Randomize selected Newton worlds, leaving the global world unchanged.

Add and scale operate on current gravity; repeated calls accumulate. Distribution is fixed at construction; distribution parameters [m/s^2] may change at runtime.

Methods:

__init__(cfg, env)

Initialize gravity sampling for the active simulation.

__init__(cfg: EventTermCfg, env: ManagerBasedEnv) → None[source]#

Initialize gravity sampling for the active simulation.

Parameters:
  • cfg – Event configuration.

  • env – Environment owning this term.

class isaaclab_newton.envs.mdp.events.randomize_visual_shape[source]#

Sample one color per selected link and write Newton shape storage on device.

Methods:

__init__(cfg, env)

Initialize the manager term.

__init__(cfg: EventTermCfg, env: ManagerBasedEnv)[source]#

Initialize the manager term.

Parameters:
  • cfg – The configuration object.

  • env – The environment instance.

Classes#

The following classes are part of the public isaaclab_newton.envs.mdp API.

NewtonDifferentialInverseKinematicsAction

Differential inverse-kinematics action term using NewtonDifferentialIKController.

NewtonDifferentialInverseKinematicsActionCfg

Configuration for NewtonDifferentialInverseKinematicsAction.

NewtonInverseKinematicsAction

Newton inverse-kinematics action term.

NewtonInverseKinematicsActionCfg

Configuration for a Newton inverse-kinematics action term.

NewtonOperationalSpaceControllerAction

Operational-space control action term using NewtonOperationalSpaceController.

NewtonOperationalSpaceControllerActionCfg

Configuration for NewtonOperationalSpaceControllerAction.

class isaaclab_newton.envs.mdp.NewtonDifferentialInverseKinematicsAction[source]#

Bases: _NewtonTaskSpaceAction

Differential inverse-kinematics action term using NewtonDifferentialIKController.

The action is a target position, a target pose (x, y, z, qx, qy, qz, qw), or, in relative mode, a delta position or pose (x, y, z, rx, ry, rz) in the robot root frame. It sets joint position targets.

Methods:

__init__(cfg, env)

Initialize the action term.

__new__(*args, **kwargs)

__init__(cfg: NewtonDifferentialInverseKinematicsActionCfg, env: ManagerBasedEnv)[source]#

Initialize the action term.

Parameters:
  • cfg – The configuration object.

  • env – The environment instance.

classmethod __new__(*args, **kwargs)#
class isaaclab_newton.envs.mdp.NewtonDifferentialInverseKinematicsActionCfg[source]#

Bases: ActionTermCfg

Configuration for NewtonDifferentialInverseKinematicsAction.

Commands and the Jacobian are expressed in the robot root frame. The action works with any physics backend.

Methods:

__new__(*args, **kwargs)

__init__([class_type, asset_name, ...])

classmethod __new__(*args, **kwargs)#
__init__(class_type: type[NewtonDifferentialInverseKinematicsAction] | str = <factory>, asset_name: str = <factory>, debug_vis: bool = <factory>, clip: dict[str, tuple] | None = <factory>, joint_names: list[str] = <factory>, body_name: str = <factory>, body_offset: DifferentialInverseKinematicsActionCfg.OffsetCfg | None = <factory>, command_type: Literal['position', 'pose'] = <factory>, use_relative_mode: bool = <factory>, scale: float | tuple[float, ...] = <factory>, null_space_joint_pos_target: Literal['default', 'center'] = <factory>, controller: NewtonDifferentialIKControllerCfg = <factory>) → None#
class isaaclab_newton.envs.mdp.NewtonInverseKinematicsAction[source]#

Bases: ActionTerm

Newton inverse-kinematics action term.

Solves IK as a single list of objectives on the cloner’s single-env Newton prototype model, then maps the actuated joint coordinates back to the live batched articulation. Each pose objective drives one end-effector body (one is single-body IK, several are multi-body); constraint objectives add no action dimensions. The per-step target computation, seed assembly, solve and gather run entirely in Warp – Torch appears only as the policy action at the boundary, viewed zero-copy into Warp. Fixed-base articulations only.

Methods:

__init__(cfg, env)

Initialize the action term.

__new__(*args, **kwargs)

__init__(cfg: NewtonInverseKinematicsActionCfg, env: ManagerBasedEnv)[source]#

Initialize the action term.

Parameters:
  • cfg – The configuration object.

  • env – The environment instance.

classmethod __new__(*args, **kwargs)#
class isaaclab_newton.envs.mdp.NewtonInverseKinematicsActionCfg[source]#

Bases: ActionTermCfg

Configuration for a Newton inverse-kinematics action term.

The action solves IK as a single list of objectives. Pose objectives (NewtonIKPoseObjectiveCfg) are command-driven and contribute action dimensions – one drives a single-body solve, several drive a multi-body solve. Constraint objectives such as NewtonIKJointLimitObjectiveCfg add residuals but no action dimensions. The action vector is the concatenation of every pose objective’s slice, in list order.

The action currently supports fixed-base articulations only. Each pose objective’s body and the configured joints must resolve both in Isaac Lab and in the registered Newton prototype model for the controlled asset.

Methods:

__new__(*args, **kwargs)

__init__([class_type, asset_name, ...])

classmethod __new__(*args, **kwargs)#
__init__(class_type: type[NewtonInverseKinematicsAction] | str = <factory>, asset_name: str = <factory>, debug_vis: bool = <factory>, clip: dict[str, tuple] | None = <factory>, joint_names: list[str] = <factory>, objectives: list[NewtonIKObjectiveCfg] = <factory>, controller: NewtonIKSolverCfg = <factory>) → None#
class isaaclab_newton.envs.mdp.NewtonOperationalSpaceControllerAction[source]#

Bases: _NewtonTaskSpaceAction

Operational-space control action term using NewtonOperationalSpaceController.

See NewtonOperationalSpaceControllerActionCfg for the action layout. It sets joint effort targets.

Methods:

__init__(cfg, env)

Initialize the action term.

__new__(*args, **kwargs)

__init__(cfg: NewtonOperationalSpaceControllerActionCfg, env: ManagerBasedEnv)[source]#

Initialize the action term.

Parameters:
  • cfg – The configuration object.

  • env – The environment instance.

classmethod __new__(*args, **kwargs)#
class isaaclab_newton.envs.mdp.NewtonOperationalSpaceControllerActionCfg[source]#

Bases: ActionTermCfg

Configuration for NewtonOperationalSpaceControllerAction.

The action is the target pose, followed by the target wrench when wrench control is enabled, then the motion stiffness and damping when the controller leaves them live (None). Poses, twists, and the Jacobian are expressed in the robot root frame, and the controller’s operational frame is relative to it. The action works with any physics backend.

Methods:

__new__(*args, **kwargs)

__init__([class_type, asset_name, ...])

classmethod __new__(*args, **kwargs)#
__init__(class_type: type[NewtonOperationalSpaceControllerAction] | str = <factory>, asset_name: str = <factory>, debug_vis: bool = <factory>, clip: dict[str, tuple] | None = <factory>, joint_names: list[str] = <factory>, body_name: str = <factory>, body_offset: DifferentialInverseKinematicsActionCfg.OffsetCfg | None = <factory>, target_type: Literal['pose_abs', 'pose_rel'] = <factory>, position_scale: float = <factory>, orientation_scale: float = <factory>, wrench_scale: float = <factory>, stiffness_scale: float = <factory>, damping_scale: float = <factory>, null_space_joint_pos_target: Literal['default', 'center', 'zero'] = <factory>, controller: NewtonOperationalSpaceControllerCfg = <factory>) → None#