isaaclab_newton.envs.mdp#
Newton-specific MDP components.
Events#
Backend implementations of MDP event terms for Newton.
Classes:
Sample friction and restitution per shape. |
|
Newton backend implementation for collider offset randomization. |
|
Randomize selected Newton worlds, leaving the global world unchanged. |
|
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, andmake_consistentare ignored.Kamino shares materials across environments. It samples one value per original
(mu, restitution)group and applies it to every environment, ignoringenv_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.
- 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.
- 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.
- 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.
Classes#
The following classes are part of the public isaaclab_newton.envs.mdp API.
Differential inverse-kinematics action term using |
|
Configuration for |
|
Newton inverse-kinematics action term. |
|
Configuration for a Newton inverse-kinematics action term. |
|
Operational-space control action term using |
|
Configuration for |
- class isaaclab_newton.envs.mdp.NewtonDifferentialInverseKinematicsAction[source]#
Bases:
_NewtonTaskSpaceActionDifferential 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: NewtonDifferentialInverseKinematicsActionCfg, env: ManagerBasedEnv)[source]#
Initialize the action term.
- classmethod __new__(*args, **kwargs)#
- class isaaclab_newton.envs.mdp.NewtonDifferentialInverseKinematicsActionCfg[source]#
Bases:
ActionTermCfgConfiguration for
NewtonDifferentialInverseKinematicsAction.Commands and the Jacobian are expressed in the robot root frame. The action works with any physics backend.
Methods:
- 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:
ActionTermNewton 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: NewtonInverseKinematicsActionCfg, env: ManagerBasedEnv)[source]#
Initialize the action term.
- classmethod __new__(*args, **kwargs)#
- class isaaclab_newton.envs.mdp.NewtonInverseKinematicsActionCfg[source]#
Bases:
ActionTermCfgConfiguration 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 asNewtonIKJointLimitObjectiveCfgadd 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:
- 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:
_NewtonTaskSpaceActionOperational-space control action term using
NewtonOperationalSpaceController.See
NewtonOperationalSpaceControllerActionCfgfor the action layout. It sets joint effort targets.Methods:
- __init__(cfg: NewtonOperationalSpaceControllerActionCfg, env: ManagerBasedEnv)[source]#
Initialize the action term.
- classmethod __new__(*args, **kwargs)#
- class isaaclab_newton.envs.mdp.NewtonOperationalSpaceControllerActionCfg[source]#
Bases:
ActionTermCfgConfiguration 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:
- 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#