unilab.tasks.motion_tracking.g1.manager_terms.BoxMotionCommand¶
- class unilab.tasks.motion_tracking.g1.manager_terms.BoxMotionCommand[source]¶
Bases:
MotionCommand- Parameters:
cfg (
BoxMotionCommandCfg)env (
ManagerBasedRlEnv)
Methods
__init__(cfg, env)compute(dt[, env_ids])Advance the command state by dt.
Refresh state that depends on committed command-side simulation writes.
reset(env_ids)Resets the manager term.
Attributes
- cfg: BoxMotionCommandCfg¶
- __init__(cfg, env)[source]¶
- Parameters:
cfg (
BoxMotionCommandCfg)env (
ManagerBasedRlEnv)
- property box_motion: BoxMotionData¶
- post_compute()[source]¶
Refresh state that depends on committed command-side simulation writes.
- Return type:
- compute(dt, env_ids=None)¶
Advance the command state by dt.
With env_ids=None (the per-step path) all envs are updated; with env_ids (the reset path) timers and the command update are scoped to those envs. Metrics are refreshed each call; terms may scope per-row metric work to env_ids since other rows are unchanged since the per-step update, or defer row-wise metric work to
reset()when reset is the only consumer (e.g. MotionCommand, issue #1355).dt may be a scalar (all envs) or a per-env tensor (auto-reset path, where freshly reset envs get zero to keep their timers full). A tensor dt requires env_ids=None.
- reset(env_ids)¶
Resets the manager term.
- metrics: dict[str, np.ndarray]¶