SYMBOL INDEX (2254 symbols across 119 files) FILE: deployment/holomotion_teleop/holomotion_teleop_node.py function _sqrt_positive_part (line 95) | def _sqrt_positive_part(x: torch.Tensor) -> torch.Tensor: function matrix_to_quaternion (line 102) | def matrix_to_quaternion(matrix: torch.Tensor) -> torch.Tensor: function axis_angle_to_matrix (line 144) | def axis_angle_to_matrix(axis_angle: torch.Tensor) -> torch.Tensor: class Humanoid_Batch_V2 (line 181) | class Humanoid_Batch_V2: method __init__ (line 187) | def __init__(self, device: torch.device = torch.device("cpu")): method _relative_link_position (line 197) | def _relative_link_position(joints_world: torch.Tensor, root_pos: torc... method _relative_link_pose (line 200) | def _relative_link_pose(self, full_pose_aa: torch.Tensor) -> torch.Ten... method step_per_frame (line 216) | def step_per_frame( class PicoToSmplConfig (line 237) | class PicoToSmplConfig: function body_poses_to_smpl_pose_trans (line 245) | def body_poses_to_smpl_pose_trans( function _mirror_matrix (line 287) | def _mirror_matrix(mirror_axis: str) -> np.ndarray: function safe_normalize_quat_wxyz (line 297) | def safe_normalize_quat_wxyz(q: np.ndarray, eps: float = 1e-8) -> np.nda... function mirror_pos_and_quat_wxyz (line 305) | def mirror_pos_and_quat_wxyz(pos: np.ndarray, quat_wxyz: np.ndarray, mir... function mirror_and_swap_gmr_input (line 319) | def mirror_and_swap_gmr_input(gmr_input: Dict[str, Any], mirror_axis: st... function pack_numpy_message (line 331) | def pack_numpy_message(payload: dict, topic: bytes = OUT_TOPIC, version:... class PicoReader (line 370) | class PicoReader: method __init__ (line 371) | def __init__(self): method start (line 379) | def start(self): method stop (line 382) | def stop(self): method get_latest (line 386) | def get_latest(self): method _run (line 390) | def _run(self): class ZmqObsSender (line 439) | class ZmqObsSender: method __init__ (line 440) | def __init__(self, uri: str, logger, topic: bytes = OUT_TOPIC, mode: s... method send (line 461) | def send(self, latest_obs: np.ndarray, frame_index: int, sample_meta: ... method stop (line 487) | def stop(self): class VRNodeXRTPicoGMRZmqOut (line 493) | class VRNodeXRTPicoGMRZmqOut: method __init__ (line 494) | def __init__( method info (line 531) | def info(self, msg): print(f"[INFO] {msg}") method error (line 532) | def error(self, msg): print(f"[ERROR] {msg}") method warning (line 533) | def warning(self, msg): print(f"[WARN] {msg}") method debug (line 534) | def debug(self, msg): print(f"[DEBUG] {msg}") method _accumulate_timing (line 536) | def _accumulate_timing(self, name: str, start_time: float) -> float: method _maybe_log_timing (line 541) | def _maybe_log_timing(self): method process_smpl_pose_trans_to_gmr_input (line 553) | def process_smpl_pose_trans_to_gmr_input(self, smpl_pose_aa, smpl_tran... method process_xrt_frame_to_gmr_input (line 608) | def process_xrt_frame_to_gmr_input(self, sample: dict): method process_gmr_output (line 626) | def process_gmr_output(self): method publish_data (line 654) | def publish_data(self, motion_state: np.ndarray): method save_observations (line 662) | def save_observations(self): method start_loop (line 684) | def start_loop(self, hz=50): method _tick (line 701) | def _tick(self): method stop (line 725) | def stop(self): function init_xrt (line 736) | def init_xrt(start_service: bool = True): function main (line 748) | def main(): FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/holomotion_fk_root_only.py function _xyzw_to_wxyz (line 28) | def _xyzw_to_wxyz(q: np.ndarray) -> np.ndarray: function _wxyz_to_xyzw (line 32) | def _wxyz_to_xyzw(q: np.ndarray) -> np.ndarray: function _quat_conjugate_wxyz (line 36) | def _quat_conjugate_wxyz(q: np.ndarray) -> np.ndarray: function _quat_mul_wxyz (line 42) | def _quat_mul_wxyz(q1: np.ndarray, q2: np.ndarray) -> np.ndarray: function _standardize_quaternion_wxyz (line 62) | def _standardize_quaternion_wxyz(q: np.ndarray) -> np.ndarray: function _axis_angle_from_wxyz (line 66) | def _axis_angle_from_wxyz(q: np.ndarray) -> np.ndarray: function _grad_t (line 84) | def _grad_t(x: np.ndarray, dt: float) -> np.ndarray: class HoloMotionFKRootOnly (line 98) | class HoloMotionFKRootOnly(torch.nn.Module): method __init__ (line 105) | def __init__( method set_timing_logger (line 142) | def set_timing_logger( method _timing_ms (line 157) | def _timing_ms(self, t0: float) -> float: method _to_numpy (line 160) | def _to_numpy(self, x: torch.Tensor | np.ndarray) -> np.ndarray: method _to_output_tensor (line 171) | def _to_output_tensor(self, x: np.ndarray) -> torch.Tensor: method _get_gaussian_kernel (line 177) | def _get_gaussian_kernel(self, sigma: float) -> np.ndarray | None: method _gaussian_filter_time (line 193) | def _gaussian_filter_time(self, x: np.ndarray, kernel: np.ndarray | No... method _log_timing_message (line 205) | def _log_timing_message(self, message: str) -> None: method _record_timing (line 211) | def _record_timing(self, sample: Dict[str, float]) -> None: method forward (line 269) | def forward( FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/obs_builder/obs_builder.py function get_gravity_orientation (line 7) | def get_gravity_orientation(quaternion: np.ndarray) -> np.ndarray: class _CircularBuffer (line 28) | class _CircularBuffer: method __init__ (line 34) | def __init__(self, max_len: int, feat_dim: int): method buffer (line 48) | def buffer(self) -> torch.Tensor: method append (line 60) | def append(self, data: torch.Tensor) -> None: class PolicyObsBuilder (line 78) | class PolicyObsBuilder: method __init__ (line 90) | def __init__( method reset (line 124) | def reset(self) -> None: method _compute_term (line 130) | def _compute_term( method build_policy_obs (line 144) | def build_policy_obs(self) -> np.ndarray: FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/policy_node_29dof.py function _parse_cpu_affinity_str (line 51) | def _parse_cpu_affinity_str(s): function set_thread_cpu_affinity (line 64) | def set_thread_cpu_affinity(cpu_ids): function _decode_zmq_topic (line 109) | def _decode_zmq_topic(topic_value) -> bytes: function _coerce_config_bool (line 115) | def _coerce_config_bool(value, default: bool = False) -> bool: function _infer_onnx_dim (line 129) | def _infer_onnx_dim(dim, default: int = 1) -> int: function _infer_numpy_dtype_from_onnx_type (line 135) | def _infer_numpy_dtype_from_onnx_type(type_str: str): function unpack_numpy_message (line 150) | def unpack_numpy_message(packet: bytes, expected_topic: bytes | None = N... class LatestObsBuffer (line 192) | class LatestObsBuffer: method __init__ (line 195) | def __init__(self, max_queue_size: int = 20): method set (line 206) | def set( method get_with_age_and_delay (line 224) | def get_with_age_and_delay(self, max_age: float = 0.1, delay_steps: in... method get_queue_stats (line 256) | def get_queue_stats(self): class ZmqLatestObsSubscriber (line 272) | class ZmqLatestObsSubscriber: method __init__ (line 275) | def __init__( method _process_packet (line 300) | def _process_packet(self, packet: bytes): method _run (line 326) | def _run(self): method start (line 384) | def start(self): method stop (line 392) | def stop(self): class HoloMotionPolicyNode (line 400) | class HoloMotionPolicyNode(Node): method __init__ (line 431) | def __init__(self): method _is_vr_ready_for_motion (line 650) | def _is_vr_ready_for_motion(self) -> bool: method _init_keybody_indices_cache (line 667) | def _init_keybody_indices_cache(self): method _get_policy_atomic_obs_list (line 712) | def _get_policy_atomic_obs_list(self, config): method _find_actor_place_holder_ndim (line 862) | def _find_actor_place_holder_ndim(self): method _init_obs_buffers (line 875) | def _init_obs_buffers(self): method _reset_counter (line 931) | def _reset_counter(self): method _switch_to_velocity_mode (line 938) | def _switch_to_velocity_mode(self, reason: str = ""): method _is_button_pressed (line 961) | def _is_button_pressed(self, button_key): method load_policy (line 970) | def load_policy(self): method load_model_config (line 1137) | def load_model_config(self): method _load_motion_action_ema_filter_cfg (line 1195) | def _load_motion_action_ema_filter_cfg(self) -> None: method _reset_motion_action_ema_filter (line 1223) | def _reset_motion_action_ema_filter(self) -> None: method _apply_motion_action_ema_filter (line 1226) | def _apply_motion_action_ema_filter( method _build_dummy_input_from_onnx_node (line 1245) | def _build_dummy_input_from_onnx_node(self, node, fallback_last_dim: i... method _warmup_motion_policy (line 1257) | def _warmup_motion_policy(self, num_iters: int = 2) -> None: method update_config_parameters (line 1330) | def update_config_parameters(self): method load_motion_data (line 1372) | def load_motion_data(self): method _load_current_motion (line 1435) | def _load_current_motion(self): method _setup_subscribers (line 1477) | def _setup_subscribers(self): method _latest_obs_ros_callback (line 1502) | def _latest_obs_ros_callback(self, msg: Float32MultiArray): method _setup_publishers (line 1512) | def _setup_publishers(self): method _setup_timers (line 1542) | def _setup_timers(self): method _delayed_setup (line 1549) | def _delayed_setup(self): method _robot_state_callback (line 1563) | def _robot_state_callback(self, msg: String): method robot_root_rot_quat_wxyz (line 1586) | def robot_root_rot_quat_wxyz(self): method robot_root_ang_vel (line 1590) | def robot_root_ang_vel(self): method robot_dof_pos_by_name (line 1594) | def robot_dof_pos_by_name(self): method robot_dof_vel_by_name (line 1604) | def robot_dof_vel_by_name(self): method ref_motion_frame_idx (line 1614) | def ref_motion_frame_idx(self): method ref_dof_pos_raw (line 1618) | def ref_dof_pos_raw(self): method ref_dof_vel_raw (line 1630) | def ref_dof_vel_raw(self): method ref_dof_pos_onnx_order (line 1642) | def ref_dof_pos_onnx_order(self): method ref_dof_vel_onnx_order (line 1646) | def ref_dof_vel_onnx_order(self): method ref_root_pos_raw (line 1650) | def ref_root_pos_raw(self): method root_body_idx (line 1665) | def root_body_idx(self): method last_valid_ref_motion_frame_idx (line 1669) | def last_valid_ref_motion_frame_idx(self): method _xyzw_to_wxyz (line 1673) | def _xyzw_to_wxyz(self, q_xyzw: np.ndarray) -> np.ndarray: method _standardize_quaternion_wxyz (line 1683) | def _standardize_quaternion_wxyz(self, q_wxyz: np.ndarray) -> np.ndarray: method _quat_rotate_wxyz (line 1692) | def _quat_rotate_wxyz(self, q_wxyz: np.ndarray, v: np.ndarray) -> np.n... method _quat_rotate_inv_wxyz (line 1700) | def _quat_rotate_inv_wxyz(self, q_wxyz: np.ndarray, v: np.ndarray) -> ... method _quat_rotate_inv_wxyz_single (line 1708) | def _quat_rotate_inv_wxyz_single( method _get_future_frame_indices (line 1726) | def _get_future_frame_indices(self) -> np.ndarray: method _cache_fk_vr_for_obs (line 1736) | def _cache_fk_vr_for_obs(self): method _fill_vr_base_linvel_angvel_fut (line 1770) | def _fill_vr_base_linvel_angvel_fut(self): method _prepare_vr_fk_tensors (line 1795) | def _prepare_vr_fk_tensors( method _get_future_root_quat_wxyz (line 1832) | def _get_future_root_quat_wxyz(self) -> np.ndarray: method _get_ref_keybody_indices (line 1853) | def _get_ref_keybody_indices(self, term_name: str) -> np.ndarray: method _get_obs_actor_velocity_command (line 1862) | def _get_obs_actor_velocity_command(self): method _get_obs_actor_projected_gravity (line 1865) | def _get_obs_actor_projected_gravity(self): method _get_obs_actor_rel_robot_root_ang_vel (line 1868) | def _get_obs_actor_rel_robot_root_ang_vel(self): method _get_obs_actor_dof_pos (line 1871) | def _get_obs_actor_dof_pos(self): method _get_obs_actor_dof_vel (line 1874) | def _get_obs_actor_dof_vel(self): method _get_obs_actor_last_action (line 1877) | def _get_obs_actor_last_action(self): method _get_obs_actor_ref_gravity_projection_cur (line 1880) | def _get_obs_actor_ref_gravity_projection_cur(self): method _get_obs_actor_ref_gravity_projection_fut (line 1883) | def _get_obs_actor_ref_gravity_projection_fut(self): method _get_obs_actor_ref_base_linvel_cur (line 1886) | def _get_obs_actor_ref_base_linvel_cur(self): method _get_obs_actor_ref_base_linvel_fut (line 1889) | def _get_obs_actor_ref_base_linvel_fut(self): method _get_obs_actor_ref_base_angvel_cur (line 1892) | def _get_obs_actor_ref_base_angvel_cur(self): method _get_obs_actor_ref_base_angvel_fut (line 1895) | def _get_obs_actor_ref_base_angvel_fut(self): method _get_obs_actor_ref_dof_pos_cur (line 1898) | def _get_obs_actor_ref_dof_pos_cur(self): method _get_obs_actor_ref_dof_pos_fut (line 1901) | def _get_obs_actor_ref_dof_pos_fut(self): method _get_obs_actor_ref_root_height_cur (line 1904) | def _get_obs_actor_ref_root_height_cur(self): method _get_obs_actor_ref_root_height_fut (line 1907) | def _get_obs_actor_ref_root_height_fut(self): method _get_obs_actor_ref_keybody_rel_pos_cur (line 1910) | def _get_obs_actor_ref_keybody_rel_pos_cur(self): method _get_obs_actor_ref_keybody_rel_pos_fut (line 1913) | def _get_obs_actor_ref_keybody_rel_pos_fut(self): method _get_obs_velocity_command (line 1918) | def _get_obs_velocity_command(self): method _get_obs_projected_gravity (line 1928) | def _get_obs_projected_gravity(self): method _get_obs_rel_robot_root_ang_vel (line 1931) | def _get_obs_rel_robot_root_ang_vel(self): method _get_obs_dof_pos (line 1934) | def _get_obs_dof_pos(self): method _get_obs_dof_vel (line 1952) | def _get_obs_dof_vel(self): method _get_obs_last_action (line 1966) | def _get_obs_last_action(self): method _get_obs_ref_motion_states (line 1969) | def _get_obs_ref_motion_states(self): method _get_obs_ref_dof_pos_fut (line 1974) | def _get_obs_ref_dof_pos_fut(self): method _get_obs_ref_root_height_fut (line 2001) | def _get_obs_ref_root_height_fut(self): method _get_obs_ref_root_pos_fut (line 2019) | def _get_obs_ref_root_pos_fut(self): method _get_obs_ref_dof_pos_cur (line 2037) | def _get_obs_ref_dof_pos_cur(self): method _get_obs_ref_dof_vel_cur (line 2040) | def _get_obs_ref_dof_vel_cur(self): method _get_obs_ref_root_height_cur (line 2043) | def _get_obs_ref_root_height_cur(self): method _get_obs_ref_root_pos_cur (line 2050) | def _get_obs_ref_root_pos_cur(self): method _get_obs_ref_gravity_projection_cur (line 2053) | def _get_obs_ref_gravity_projection_cur(self): method _get_obs_ref_gravity_projection_fut (line 2072) | def _get_obs_ref_gravity_projection_fut(self): method _get_obs_ref_base_linvel_cur (line 2103) | def _get_obs_ref_base_linvel_cur(self): method _get_obs_ref_base_linvel_fut (line 2133) | def _get_obs_ref_base_linvel_fut(self): method _get_obs_ref_base_angvel_cur (line 2160) | def _get_obs_ref_base_angvel_cur(self): method _get_obs_ref_base_angvel_fut (line 2192) | def _get_obs_ref_base_angvel_fut(self): method _get_obs_ref_keybody_rel_pos_cur (line 2219) | def _get_obs_ref_keybody_rel_pos_cur(self): method _get_obs_ref_keybody_rel_pos_fut (line 2277) | def _get_obs_ref_keybody_rel_pos_fut(self): method _get_obs_place_holder (line 2340) | def _get_obs_place_holder(self): method _warmup_fk_for_vr (line 2345) | def _warmup_fk_for_vr(self): method _low_state_callback (line 2394) | def _low_state_callback(self, ls_msg: LowState): method run (line 2551) | def run(self): method _read_onnx_metadata (line 2636) | def _read_onnx_metadata(self, onnx_model_path: str) -> dict: method _store_external_latest_obs (line 2655) | def _store_external_latest_obs(self, arr: np.ndarray): method _poll_zmq_latest_obs (line 2715) | def _poll_zmq_latest_obs(self): method _publish_latest_obs (line 2774) | def _publish_latest_obs(self): method _apply_onnx_metadata (line 2785) | def _apply_onnx_metadata(self): method _build_dof_mappings (line 2815) | def _build_dof_mappings(self): method _publish_control_params (line 2921) | def _publish_control_params(self): method _publish_policy_mode (line 2953) | def _publish_policy_mode(self): method _timing_ms (line 2962) | def _timing_ms(self, t0: float) -> float: method _record_timing_sample (line 2965) | def _record_timing_sample(self, sample: dict): method _root_only_fk_has_required_keybodies (line 3020) | def _root_only_fk_has_required_keybodies(self, keybody_idxs: np.ndarra... method _run_without_profiling (line 3034) | def _run_without_profiling(self): method _process_and_publish_actions (line 3217) | def _process_and_publish_actions(self): method setup (line 3231) | def setup(self): method _init_fk (line 3252) | def _init_fk(self): method destroy_node (line 3295) | def destroy_node(self): function get_gravity_orientation (line 3304) | def get_gravity_orientation(quaternion: np.ndarray) -> np.ndarray: function main (line 3325) | def main(): FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/utils/command_helper.py class MotorMode (line 6) | class MotorMode: function create_damping_cmd (line 11) | def create_damping_cmd(cmd: Union[LowCmdGo, LowCmdHG]): function create_zero_cmd (line 21) | def create_zero_cmd(cmd: Union[LowCmdGo, LowCmdHG]): function init_cmd_hg (line 31) | def init_cmd_hg(cmd: LowCmdHG, mode_machine: int, mode_pr: int): function init_cmd_go (line 44) | def init_cmd_go(cmd: LowCmdGo, weak_motor: list): FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/utils/maths.py function normalize (line 8) | def normalize(x, eps: float = 1e-9): function torch_rand_float (line 13) | def torch_rand_float(lower, upper, shape, device): function copysign (line 19) | def copysign(a, b): function set_seed (line 25) | def set_seed(seed, torch_deterministic=False): function to_torch (line 53) | def to_torch(x, dtype=torch.float, device="cuda:0", requires_grad=False): function quat_mul_legacy (line 60) | def quat_mul_legacy( function quat_mul (line 107) | def quat_mul(q1: torch.Tensor, q2: torch.Tensor) -> torch.Tensor: function normalize (line 146) | def normalize(x, eps: float = 1e-9): function quat_apply (line 151) | def quat_apply(quat: torch.Tensor, vec: torch.Tensor) -> torch.Tensor: function quat_apply_inverse (line 173) | def quat_apply_inverse(quat: torch.Tensor, vec: torch.Tensor) -> torch.T... function quat_rotate (line 195) | def quat_rotate(q, v): function quat_rotate_inverse (line 212) | def quat_rotate_inverse(q, v): function quat_conjugate (line 229) | def quat_conjugate(a): function quat_unit (line 237) | def quat_unit(a): function quat_from_angle_axis (line 242) | def quat_from_angle_axis(angle, axis): function normalize_angle (line 250) | def normalize_angle(x): function get_basis_vector (line 255) | def get_basis_vector(q, v): function get_axis_params (line 259) | def get_axis_params(value, axis_idx, x_value=0.0, dtype=np.float64, n_di... function get_euler_xyz (line 278) | def get_euler_xyz(q: torch.Tensor) -> tuple: function quat_from_euler_xyz (line 312) | def quat_from_euler_xyz(roll, pitch, yaw): function torch_rand_float (line 328) | def torch_rand_float(lower, upper, shape, device): function torch_random_dir_2 (line 334) | def torch_random_dir_2(shape, device): function tensor_clamp (line 340) | def tensor_clamp(t, min_t, max_t): function scale (line 345) | def scale(x, lower, upper): function unscale (line 350) | def unscale(x, lower, upper): function unscale_np (line 354) | def unscale_np(x, lower, upper): function quat_to_angle_axis (line 359) | def quat_to_angle_axis(q): function angle_axis_to_exp_map (line 382) | def angle_axis_to_exp_map(angle, axis): function quat_to_exp_map (line 390) | def quat_to_exp_map(q): function slerp (line 399) | def slerp(q0, q1, t): function my_quat_rotate (line 425) | def my_quat_rotate(q, v): function calc_heading (line 442) | def calc_heading(q): function calc_heading_quat (line 456) | def calc_heading_quat(q): function calc_heading_quat_inv (line 469) | def calc_heading_quat_inv(q): function axis_angle_from_quat (line 482) | def axis_angle_from_quat( function quat_inv (line 547) | def quat_inv(q: torch.Tensor, eps: float = 1e-9) -> torch.Tensor: function xyzw_to_wxyz (line 563) | def xyzw_to_wxyz(q: torch.Tensor) -> torch.Tensor: function wxyz_to_xyzw (line 574) | def wxyz_to_xyzw(q: torch.Tensor) -> torch.Tensor: function quat_mul_wxyz (line 586) | def quat_mul_wxyz(q1: torch.Tensor, q2: torch.Tensor) -> torch.Tensor: function subtract_frame_transforms (line 598) | def subtract_frame_transforms( function quat_normalize_wxyz (line 636) | def quat_normalize_wxyz(q_wxyz: torch.Tensor) -> torch.Tensor: function matrix_from_quat (line 650) | def matrix_from_quat(quaternions: torch.Tensor) -> torch.Tensor: FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/utils/motor_crc.py function crc32_core (line 6) | def crc32_core(data_array, length): function calc_crc (line 24) | def calc_crc(cmd) -> int: FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/utils/remote_controller_filter.py class KeyMap (line 4) | class KeyMap: class RemoteController (line 23) | class RemoteController: method __init__ (line 24) | def __init__(self): method apply_filter_and_deadzone (line 52) | def apply_filter_and_deadzone(self, value, prev_value): method set (line 58) | def set(self, data): method get_velocity_commands (line 82) | def get_velocity_commands(self): FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/utils/rotation_helper.py function get_gravity_orientation (line 5) | def get_gravity_orientation(quaternion): function transform_imu_data (line 20) | def transform_imu_data(waist_yaw, waist_yaw_omega, imu_quat, imu_omega): FILE: deployment/unitree_g1_ros2_29dof/src/humanoid_policy/utils/rotations.py function quat_unit (line 14) | def quat_unit(a): function quat_apply (line 19) | def quat_apply(a: Tensor, b: Tensor, w_last: bool) -> Tensor: function quat_apply_yaw (line 34) | def quat_apply_yaw(quat: Tensor, vec: Tensor, w_last: bool) -> Tensor: function wrap_to_pi (line 42) | def wrap_to_pi(angles): function quat_conjugate (line 49) | def quat_conjugate(a: Tensor, w_last: bool) -> Tensor: function quat_apply (line 59) | def quat_apply(a: Tensor, b: Tensor, w_last: bool) -> Tensor: function quat_rotate (line 74) | def quat_rotate(q: Tensor, v: Tensor, w_last: bool) -> Tensor: function quat_rotate_inverse (line 95) | def quat_rotate_inverse(q: Tensor, v: Tensor, w_last: bool) -> Tensor: function quat_angle_axis (line 116) | def quat_angle_axis(x: Tensor, w_last: bool) -> Tuple[Tensor, Tensor]: function quat_from_angle_axis (line 134) | def quat_from_angle_axis(angle: Tensor, axis: Tensor, w_last: bool) -> T... function vec_to_heading (line 145) | def vec_to_heading(h_vec): function heading_to_quat (line 151) | def heading_to_quat(h_theta, w_last: bool): function quat_axis (line 165) | def quat_axis(q: Tensor, axis: int, w_last: bool) -> Tensor: function normalize_angle (line 172) | def normalize_angle(x): function get_basis_vector (line 177) | def get_basis_vector(q: Tensor, v: Tensor, w_last: bool) -> Tensor: function quat_to_angle_axis (line 182) | def quat_to_angle_axis(q): function slerp (line 207) | def slerp(q0, q1, t): function angle_axis_to_exp_map (line 234) | def angle_axis_to_exp_map(angle, axis): function my_quat_rotate (line 243) | def my_quat_rotate(q, v): function calc_heading (line 260) | def calc_heading(q): function quat_to_exp_map (line 275) | def quat_to_exp_map(q): function calc_heading_quat (line 285) | def calc_heading_quat(q, w_last): function calc_heading_quat_inv (line 299) | def calc_heading_quat_inv(q, w_last): function quat_inverse (line 313) | def quat_inverse(x, w_last): function get_euler_xyz (line 322) | def get_euler_xyz(q: Tensor, w_last: bool) -> Tuple[Tensor, Tensor, Tens... function get_euler_xyz_in_tensor (line 357) | def get_euler_xyz_in_tensor(q): function quat_pos (line 389) | def quat_pos(x): function is_valid_quat (line 400) | def is_valid_quat(q): function quat_normalize (line 406) | def quat_normalize(q): function quat_mul (line 415) | def quat_mul(a, b, w_last: bool): function quat_mul_norm (line 446) | def quat_mul_norm(x, y, w_last): function quat_mul_norm (line 456) | def quat_mul_norm(x, y, w_last): function quat_identity (line 466) | def quat_identity(shape: List[int]): function quat_identity_like (line 477) | def quat_identity_like(x): function transform_from_rotation_translation (line 485) | def transform_from_rotation_translation( function transform_rotation (line 503) | def transform_rotation(x): function transform_translation (line 509) | def transform_translation(x): function transform_mul (line 515) | def transform_mul(x, y): function quaternion_to_matrix (line 533) | def quaternion_to_matrix(quaternions: torch.Tensor) -> torch.Tensor: function axis_angle_to_quaternion (line 565) | def axis_angle_to_quaternion(axis_angle: torch.Tensor) -> torch.Tensor: function wxyz_to_xyzw (line 599) | def wxyz_to_xyzw(quat): function xyzw_to_wxyz (line 604) | def xyzw_to_wxyz(quat): function matrix_to_quaternion (line 608) | def matrix_to_quaternion(matrix: torch.Tensor) -> torch.Tensor: function _sqrt_positive_part (line 672) | def _sqrt_positive_part(x: torch.Tensor) -> torch.Tensor: function quat_w_first (line 683) | def quat_w_first(rot): function quat_from_euler_xyz (line 689) | def quat_from_euler_xyz(roll, pitch, yaw): FILE: deployment/unitree_g1_ros2_29dof/src/include/common/motor_crc.h type BmsCmd (line 39) | typedef struct type MotorCmd (line 47) | typedef struct type LowCmd (line 60) | typedef struct FILE: deployment/unitree_g1_ros2_29dof/src/include/common/motor_crc_hg.h type MotorCmd (line 14) | typedef struct type LowCmd (line 25) | typedef struct FILE: deployment/unitree_g1_ros2_29dof/src/include/common/ros2_sport_client.h type PathPoint (line 42) | typedef struct function class (line 53) | class SportClient FILE: deployment/unitree_g1_ros2_29dof/src/include/common/wireless_controller.h function class (line 7) | class KeyMap { function class (line 27) | class RemoteController { FILE: deployment/unitree_g1_ros2_29dof/src/launch/holomotion_29dof_launch.py function generate_launch_description (line 35) | def generate_launch_description(): FILE: deployment/unitree_g1_ros2_29dof/src/src/common/motor_crc.cpp function get_crc (line 4) | void get_crc(unitree_go::msg::LowCmd& msg) function crc32_core (line 49) | uint32_t crc32_core(uint32_t* ptr, uint32_t len) FILE: deployment/unitree_g1_ros2_29dof/src/src/common/motor_crc_hg.cpp function get_crc (line 3) | void get_crc(unitree_hg::msg::LowCmd &msg) function crc32_core (line 28) | uint32_t crc32_core(uint32_t *ptr, uint32_t len) FILE: deployment/unitree_g1_ros2_29dof/src/src/main_node.cpp type PRorAB (line 25) | enum PRorAB { PR = 0, AB = 1 } type RobotState (line 31) | enum class RobotState { ZERO_TORQUE, MOVE_TO_DEFAULT, EMERGENCY_STOP, PO... type EmergencyStopPhase (line 32) | enum class EmergencyStopPhase { DAMPING, DISABLE } class humanoid_controller (line 35) | class humanoid_controller : public rclcpp::Node { method humanoid_controller (line 37) | humanoid_controller() : Node("humanoid_controller") { method calculateExpectedTorque (line 134) | double calculateExpectedTorque(const std::string& dof_name, double q_d... method limitTorque (line 142) | std::pair limitTorque(const std::string& dof_name, dou... method limitTorqueWithCustomGains (line 166) | std::pair limitTorqueWithCustomGains( method loadConfig (line 193) | void loadConfig(const std::string &config_path) { method Control (line 327) | void Control() { method SendZeroTorqueCommand (line 472) | void SendZeroTorqueCommand() { method SendDefaultPositionCommand (line 486) | void SendDefaultPositionCommand() { method SendPolicyCommand (line 571) | void SendPolicyCommand() { method SendDampedEmergencyStop (line 622) | void SendDampedEmergencyStop() { method SendFinalEmergencyStop (line 640) | void SendFinalEmergencyStop() { method LowStateHandler (line 654) | void LowStateHandler(unitree_hg::msg::LowState::SharedPtr message) { method PolicyActionHandler (line 677) | void PolicyActionHandler( method KpsHandler (line 725) | void KpsHandler(const std_msgs::msg::Float32MultiArray::SharedPtr mess... method KdsHandler (line 749) | void KdsHandler(const std_msgs::msg::Float32MultiArray::SharedPtr mess... method clamp (line 773) | double clamp(double value, double low, double high) { method robotStateToString (line 781) | std::string robotStateToString(RobotState state) { method publishRobotState (line 796) | void publishRobotState() { function main (line 828) | int main(int argc, char **argv) { FILE: holomotion/scripts/evaluation/mean_process_5metrics.py function get_dataset_name (line 73) | def get_dataset_name(motion_key): function process_data (line 88) | def process_data(folder_path): function highlight_best (line 165) | def highlight_best(val, best_val): function generate_report (line 178) | def generate_report( function _format_metric_values_for_cli (line 236) | def _format_metric_values_for_cli(sub_df: pd.DataFrame) -> pd.DataFrame: function _print_cli_tables (line 246) | def _print_cli_tables(df: pd.DataFrame, title: str, folder_path: str) ->... function generate_macro_mean_report_from_json_dir (line 302) | def generate_macro_mean_report_from_json_dir(folder_path: str) -> str: FILE: holomotion/src/algo/algo_base.py class BaseOnpolicyRL (line 41) | class BaseOnpolicyRL: method __init__ (line 44) | def __init__( method _setup_accelerator (line 71) | def _setup_accelerator(self) -> None: method _setup_environment (line 208) | def _setup_environment(self) -> None: method _setup_configs (line 283) | def _setup_configs(self) -> None: method _setup_seeding (line 305) | def _setup_seeding(self) -> None: method _setup_data_buffers (line 323) | def _setup_data_buffers(self) -> None: method _setup_algo_components (line 353) | def _setup_algo_components(self) -> None: method _setup_models_and_optimizer (line 357) | def _setup_models_and_optimizer(self) -> None: method _build_storage (line 362) | def _build_storage(self, obs_td: TensorDict) -> Any: method _post_env_step_hook (line 366) | def _post_env_step_hook( method _post_update_hook (line 381) | def _post_update_hook(self, loss_dict: Dict[str, Any]) -> None: method _extra_checkpoint_state (line 385) | def _extra_checkpoint_state(self) -> Dict[str, Any]: method _load_extra_checkpoint_state (line 389) | def _load_extra_checkpoint_state( method _build_transition (line 395) | def _build_transition( method _post_iteration_hook (line 405) | def _post_iteration_hook(self, it: int) -> None: method _post_training_hook (line 408) | def _post_training_hook(self) -> None: method _release_cuda_cache (line 411) | def _release_cuda_cache(self) -> None: method _get_additional_log_metrics (line 415) | def _get_additional_log_metrics(self) -> Dict[str, Any]: method train_mode (line 418) | def train_mode(self) -> None: method _ensure_storage (line 422) | def _ensure_storage(self, obs_td: TensorDict) -> None: method _reset_rollout_forward_state (line 431) | def _reset_rollout_forward_state(self) -> None: method _rollout_forward (line 435) | def _rollout_forward( method _track_episode_stats (line 482) | def _track_episode_stats( method _compute_returns (line 510) | def _compute_returns(self, obs_td: TensorDict) -> None: method rollout_policy (line 533) | def rollout_policy(self, obs_td: TensorDict) -> TensorDict: method learn (line 550) | def learn(self): method process_env_step (line 620) | def process_env_step( method _wrap_obs_dict (line 651) | def _wrap_obs_dict(self, obs_dict: dict) -> TensorDict: method _clean_state_dict (line 660) | def _clean_state_dict(state_dict: Dict[str, Any]) -> Dict[str, Any]: method _load_model_state (line 677) | def _load_model_state(self, model, state_dict, *, strict: bool = True): method _resolve_model_file_path (line 692) | def _resolve_model_file_path(self, ckpt_path: str, model_name: str) ->... method _load_accelerate_model (line 703) | def _load_accelerate_model( method _aggregate_episode_log_metrics (line 722) | def _aggregate_episode_log_metrics( method _log_value_to_cpu_tensor (line 754) | def _log_value_to_cpu_tensor(value: Any) -> torch.Tensor | None: method _log_iteration (line 766) | def _log_iteration( method load (line 841) | def load(self, ckpt_path): method save (line 844) | def save(self, path, infos=None): FILE: holomotion/src/algo/algo_utils.py class AlgoLogger (line 29) | class AlgoLogger: method __init__ (line 30) | def __init__( method _is_scalar_metric (line 42) | def _is_scalar_metric(value: Any) -> bool: method _to_scalar (line 50) | def _to_scalar(value: Any) -> float: method _format_console_value (line 56) | def _format_console_value(value: Any) -> str: method _build_console_log (line 71) | def _build_console_log( method log_iteration (line 105) | def log_iteration( class PpoTransition (line 139) | class PpoTransition: class PpoVelocityTransition (line 182) | class PpoVelocityTransition: class PpoAuxTransition (line 228) | class PpoAuxTransition: class RolloutStorage (line 291) | class RolloutStorage(nn.Module): method __init__ (line 294) | def __init__( method _resolve_shape (line 326) | def _resolve_shape(self, spec_shape, actions_shape) -> tuple: method _allocate_from_transition (line 340) | def _allocate_from_transition( method _to_storage_tensor (line 388) | def _to_storage_tensor(self, tensor: torch.Tensor) -> torch.Tensor: method add (line 400) | def add(self, transition: PpoTransition) -> None: method clear (line 425) | def clear(self) -> None: method compute_returns (line 428) | def compute_returns( method normalize_advantages_global (line 463) | def normalize_advantages_global( method normalize_advantages_global_by_move_mask (line 498) | def normalize_advantages_global_by_move_mask( method normalize_advantages_global_by_command (line 582) | def normalize_advantages_global_by_command( method iter_minibatches (line 600) | def iter_minibatches( method resolve_mini_batch_partition (line 634) | def resolve_mini_batch_partition( FILE: holomotion/src/algo/ppo.py function _checkpoint_state_to_cpu (line 44) | def _checkpoint_state_to_cpu(value): class PPO (line 56) | class PPO(BaseOnpolicyRL): method _setup_configs (line 57) | def _setup_configs(self): method _resolve_num_mini_batches (line 234) | def _resolve_num_mini_batches(self, base_num_mini_batches: int) -> int: method _compute_lr_scale_factor (line 239) | def _compute_lr_scale_factor(self, lr_scale_cfg) -> float: method _symmetry_loss_active (line 277) | def _symmetry_loss_active(self) -> bool: method _omega_or_obj_to_dict (line 285) | def _omega_or_obj_to_dict(value): method _setup_symmetry (line 296) | def _setup_symmetry(self) -> None: method _extract_obs_mirror_metadata (line 342) | def _extract_obs_mirror_metadata(self) -> dict[str, dict]: method _get_actor_schema_terms (line 368) | def _get_actor_schema_terms(self) -> set[str]: method _build_obs_mirror_map (line 384) | def _build_obs_mirror_map(self) -> None: method _td_key_to_path (line 432) | def _td_key_to_path(key) -> str: method _mirror_actor_obs (line 437) | def _mirror_actor_obs(self, obs_td: TensorDict) -> TensorDict: method _mirror_env_action (line 462) | def _mirror_env_action(self, actions: torch.Tensor) -> torch.Tensor: method _compute_analytic_kl (line 483) | def _compute_analytic_kl( method _compute_clip_fraction (line 516) | def _compute_clip_fraction( method _compute_explained_variance (line 545) | def _compute_explained_variance( method _set_optimizer_learning_rates (line 591) | def _set_optimizer_learning_rates(self) -> None: method _validate_entropy_schedule_config (line 598) | def _validate_entropy_schedule_config( method _get_effective_entropy_coef (line 612) | def _get_effective_entropy_coef(self) -> float: method _apply_adaptive_lr (line 634) | def _apply_adaptive_lr(self, kl_signal: float | None) -> None: method _compute_windowed_kl_signal (line 666) | def _compute_windowed_kl_signal( method _should_early_stop_for_kl (line 674) | def _should_early_stop_for_kl( method _setup_data_buffers (line 690) | def _setup_data_buffers(self): method _build_optimizer_kwargs (line 702) | def _build_optimizer_kwargs(self, optimizer_class: type) -> dict: method _setup_models_and_optimizer (line 723) | def _setup_models_and_optimizer(self): method _build_storage (line 826) | def _build_storage(self, obs_td: TensorDict): method _build_transition (line 837) | def _build_transition( method _post_iteration_hook (line 896) | def _post_iteration_hook(self, it: int) -> None: method _post_training_hook (line 903) | def _post_training_hook(self) -> None: method _get_mean_policy_std (line 909) | def _get_mean_policy_std(self) -> torch.Tensor: method _maybe_override_loaded_actor_sigma (line 917) | def _maybe_override_loaded_actor_sigma(self) -> None: method _get_additional_log_metrics (line 945) | def _get_additional_log_metrics(self) -> dict[str, float]: method update (line 990) | def update(self): method load (line 1244) | def load(self, ckpt_path): method _restore_optimizer_state (line 1278) | def _restore_optimizer_state( method _optimizer_state_is_compatible (line 1309) | def _optimizer_state_is_compatible( method save (line 1340) | def save(self, path, infos=None): method offline_evaluate_policy (line 1375) | def offline_evaluate_policy(self, dump_npzs: bool = False): FILE: holomotion/src/algo/ppo_tf.py class PPOTF (line 42) | class PPOTF(PPO): method _select_actor_wrapper_cls (line 46) | def _select_actor_wrapper_cls(actor_cfg: dict): method _summarize_moe_layer_stats (line 77) | def _summarize_moe_layer_stats(moe_layers) -> dict[str, float | None]: method _setup_configs (line 108) | def _setup_configs(self): method _unwrap_obs_schema (line 451) | def _unwrap_obs_schema(schema: dict | None) -> dict | None: method _schema_term_leaf_name (line 466) | def _schema_term_leaf_name(term: str) -> str: method _is_aux_command_term (line 470) | def _is_aux_command_term(cls, term: str, term_prefix: str) -> bool: method _build_aux_router_command_recon_schema (line 474) | def _build_aux_router_command_recon_schema( method _masked_aux_keybody_mse (line 497) | def _masked_aux_keybody_mse( method _masked_aux_mse (line 524) | def _masked_aux_mse( method _masked_adjacent_router_js (line 551) | def _masked_adjacent_router_js( method _masked_adjacent_router_normed_smooth_l1 (line 613) | def _masked_adjacent_router_normed_smooth_l1( method _masked_aux_gaussian_nll (line 678) | def _masked_aux_gaussian_nll( method _masked_aux_huber (line 724) | def _masked_aux_huber( method _compute_aux_router_future_recon_loss (line 753) | def _compute_aux_router_future_recon_loss( method _compute_routed_expert_orthogonal_loss (line 782) | def _compute_routed_expert_orthogonal_loss( method _root_relative_body_pos_from_mixed_position_frames (line 829) | def _root_relative_body_pos_from_mixed_position_frames( method _setup_models_and_optimizer (line 886) | def _setup_models_and_optimizer(self): method _setup_data_buffers (line 1148) | def _setup_data_buffers(self): method _build_transition (line 1218) | def _build_transition( method _build_storage (line 1393) | def _build_storage(self, obs_td: TensorDict): method _sample_iteration_future_masks (line 1415) | def _sample_iteration_future_masks(self) -> torch.Tensor | None: method _reset_rollout_forward_state (line 1469) | def _reset_rollout_forward_state(self) -> None: method _rollout_forward (line 1479) | def _rollout_forward( method process_env_step (line 1523) | def process_env_step( method _build_episode_causal_mask (line 1537) | def _build_episode_causal_mask(dones_seq: torch.Tensor) -> torch.Tensor: method _resolve_sequence_batch_partition (line 1548) | def _resolve_sequence_batch_partition( method _sequence_batches (line 1567) | def _sequence_batches( method update (line 1704) | def update(self): FILE: holomotion/src/data_curation/data_smplify.py function ensure_dir (line 29) | def ensure_dir(path): function main (line 40) | def main(): FILE: holomotion/src/data_curation/filter/filter.py function checksitpose (line 24) | def checksitpose( function process_dataset (line 62) | def process_dataset( function jsonl_to_yaml (line 177) | def jsonl_to_yaml(jsonl_path, yaml_output_path): FILE: holomotion/src/data_curation/filter/label_data.py function calc_max_xy_translation (line 29) | def calc_max_xy_translation(motion_data: dict): function calc_max_z_translation (line 42) | def calc_max_z_translation(motion_data: dict): function calc_max_velocity_scale (line 55) | def calc_max_velocity_scale(motion_data: dict, fps: float = 30): function calc_mean_velocity_scale (line 64) | def calc_mean_velocity_scale(motion_data: dict, fps: float = 30): function calc_std_velocity_scale (line 73) | def calc_std_velocity_scale(motion_data: dict, fps: float = 30): function calc_max_vxy_scale (line 82) | def calc_max_vxy_scale(motion_data: dict, fps: float = 30): function calc_std_accel (line 93) | def calc_std_accel(motion_data: dict, fps: float = 30.0) -> float: function calc_max_vz_scale (line 130) | def calc_max_vz_scale(motion_data: dict, fps: float = 30): function calc_vz_scale_with_direction (line 141) | def calc_vz_scale_with_direction(motion_data: dict, fps: float = 30): function beyond_upper_dof_limits (line 155) | def beyond_upper_dof_limits( class HyperParams (line 175) | class HyperParams: function label_data_with_metrics (line 203) | def label_data_with_metrics(data_folder, jsonl_path: str, parent_folder:... function main (line 285) | def main(): FILE: holomotion/src/data_curation/smpl_npz_to_html.py class SmplSequence (line 45) | class SmplSequence: function parse_args (line 55) | def parse_args() -> argparse.Namespace: function euler_fix_rot (line 99) | def euler_fix_rot(euler_deg=EULER_FIX_DEG, order=EULER_ORDER) -> R: function _require_key (line 104) | def _require_key(data: np.lib.npyio.NpzFile, key: str) -> np.ndarray: function load_npz (line 112) | def load_npz(path: Path) -> SmplSequence: function validate_sequence (line 130) | def validate_sequence(seq: SmplSequence, pose_joints: int) -> int: function build_smpl_frames (line 152) | def build_smpl_frames( function render_html (line 202) | def render_html(template_path: Path, frames: list, T: int, fps: float) -... function main (line 217) | def main( FILE: holomotion/src/data_curation/smplify/smplify_humanact12.py function joints2smpl (line 41) | def joints2smpl(file_name, data_dir, save_dir): function humanact12_to_amass (line 169) | def humanact12_to_amass(data_dir, save_dir): FILE: holomotion/src/data_curation/smplify/smplify_motionx.py function motionx_to_amass (line 23) | def motionx_to_amass(src_root, dst_root): FILE: holomotion/src/data_curation/smplify/smplify_omomo.py class MyHandFootManipDataset (line 35) | class MyHandFootManipDataset(HandFootManipDataset): method __init__ (line 42) | def __init__(self, *args, **kwargs): method __getitem__ (line 56) | def __getitem__(self, index): function run_smplx_model (line 175) | def run_smplx_model(root_trans, aa_rot_rep, betas, gender, fname): function process_dataset (line 250) | def process_dataset(dl, dataset, target_folder, split_name: str): function omomo_to_amass (line 322) | def omomo_to_amass(data_root_folder, target_folder): FILE: holomotion/src/data_curation/smplify/smplify_zjumocap.py function zju_single_to_amass (line 24) | def zju_single_to_amass( function zju_to_amass (line 94) | def zju_to_amass(input_dir, output_dir): FILE: holomotion/src/data_curation/video_to_smpl_gvhmr.py function get_video_fps (line 76) | def get_video_fps(video_path: Path) -> float: function is_close_fps (line 85) | def is_close_fps(a: float, b: float, tol: float = 0.02) -> bool: function transcode_to_30fps_cfr (line 89) | def transcode_to_30fps_cfr(src: Path, dst: Path, crf: int) -> None: function parse_args_to_cfg (line 113) | def parse_args_to_cfg(args=None): function run_preprocess (line 208) | def run_preprocess(cfg): function load_data_dict (line 299) | def load_data_dict(cfg): function save_npz (line 329) | def save_npz(pred, save_path): function render_incam (line 362) | def render_incam(cfg): function render_global (line 413) | def render_global(cfg): FILE: holomotion/src/data_curation/vison_mocap/joints2smpl.py function joints2smpl (line 40) | def joints2smpl(input_joints, save_name): FILE: holomotion/src/data_curation/visualize_smpl_npz.py class AppConfig (line 112) | class AppConfig: function parse_args (line 125) | def parse_args() -> argparse.Namespace: function js_escape (line 170) | def js_escape(s: str) -> str: function ensure_exists (line 174) | def ensure_exists(path: Path, what: str) -> None: function is_port_available (line 179) | def is_port_available(port: int) -> bool: class StaticServer (line 192) | class StaticServer: method __init__ (line 193) | def __init__(self, root: Path, port: int): method start (line 198) | def start(self) -> None: class MakeVisRunner (line 211) | class MakeVisRunner: method __init__ (line 212) | def __init__( method run (line 224) | def run(self, npz_path: Path) -> None: function pick_npz_dialog (line 244) | def pick_npz_dialog(window) -> Optional[Path]: class UIAPI (line 261) | class UIAPI: method __init__ (line 262) | def __init__(self, window, cfg: AppConfig, runner: MakeVisRunner): method pick_and_generate (line 268) | def pick_and_generate(self) -> None: method auto_pick_once (line 300) | def auto_pick_once(self) -> None: function build_config (line 312) | def build_config(args: argparse.Namespace) -> AppConfig: function main (line 342) | def main() -> None: FILE: holomotion/src/env/isaaclab_components/isaaclab_actions.py class ActionFunctions (line 22) | class ActionFunctions: method joint_position_action (line 26) | def joint_position_action( method joint_velocity_action (line 43) | def joint_velocity_action( method joint_effort_action (line 58) | def joint_effort_action( class ActionsCfg (line 74) | class ActionsCfg: function build_actions_config (line 80) | def build_actions_config(actions_config_dict: dict) -> ActionsCfg: FILE: holomotion/src/env/isaaclab_components/isaaclab_curriculum.py function _completion_rate_curriculum_get_level (line 31) | def _completion_rate_curriculum_get_level( function lin_vel_cmd_levels (line 130) | def lin_vel_cmd_levels( function ang_vel_cmd_levels (line 164) | def ang_vel_cmd_levels( function robot_friction_range_by_completion_rate (line 192) | def robot_friction_range_by_completion_rate( function rigid_body_com_by_completion_rate (line 288) | def rigid_body_com_by_completion_rate( function default_dof_pos_bias_by_completion_rate (line 357) | def default_dof_pos_bias_by_completion_rate( function push_by_setting_velocity_range_by_completion_rate (line 424) | def push_by_setting_velocity_range_by_completion_rate( function randomize_actuator_gains_by_completion_rate (line 498) | def randomize_actuator_gains_by_completion_rate( function reward_term_weight_by_completion_rate (line 575) | def reward_term_weight_by_completion_rate( class CurriculumCfg (line 627) | class CurriculumCfg: function build_curriculum_config (line 631) | def build_curriculum_config(curriculum_config_dict: dict) -> CurriculumCfg: FILE: holomotion/src/env/isaaclab_components/isaaclab_domain_rand.py class DomainRandFunctions (line 34) | class DomainRandFunctions: method _get_dr_default_dof_pos_bias (line 36) | def _get_dr_default_dof_pos_bias( method _get_dr_rigid_body_com (line 85) | def _get_dr_rigid_body_com( method _get_dr_rigid_body_material (line 102) | def _get_dr_rigid_body_material( method _get_dr_push_by_setting_velocity (line 130) | def _get_dr_push_by_setting_velocity( method _get_dr_randomize_actuator_gains (line 142) | def _get_dr_randomize_actuator_gains( method _get_dr_randomize_mass (line 167) | def _get_dr_randomize_mass( class EventsCfg (line 186) | class EventsCfg: function build_domain_rand_config (line 190) | def build_domain_rand_config(domain_rand_config_dict: dict) -> EventsCfg: FILE: holomotion/src/env/isaaclab_components/isaaclab_motion_tracking_command.py class RefMotionCommand (line 92) | class RefMotionCommand(CommandTerm): method __init__ (line 95) | def __init__( method _init_tracking_config (line 113) | def _init_tracking_config(self, config): method _amp_filter_names_by_prefix (line 148) | def _amp_filter_names_by_prefix( method _amp_pick_first_name (line 158) | def _amp_pick_first_name( method _resolve_motion_cache_stage_device (line 167) | def _resolve_motion_cache_stage_device( method _init_motion_lib (line 216) | def _init_motion_lib(self): method setup_dumping_dir (line 669) | def setup_dumping_dir(self, log_dir: str): method set_runtime_distributed_context (line 699) | def set_runtime_distributed_context( method set_motion_cache_seed (line 705) | def set_motion_cache_seed( method close (line 712) | def close(self) -> None: method _init_per_env_cache (line 718) | def _init_per_env_cache(self): method _maybe_dump_sampled_motion_keys (line 743) | def _maybe_dump_sampled_motion_keys(self) -> None: method _init_robot_handle (line 797) | def _init_robot_handle(self): method _init_buffers (line 1017) | def _init_buffers(self): method _record_completion_rate_for_envs (line 1090) | def _record_completion_rate_for_envs(self, env_ids: torch.Tensor) -> N... method _reset_window_curriculum_stats (line 1144) | def _reset_window_curriculum_stats(self) -> None: method _build_window_curriculum_stats_from_current_batch (line 1150) | def _build_window_curriculum_stats_from_current_batch( method _update_cache_curriculum_state (line 1192) | def _update_cache_curriculum_state( method update_curriculum_reward_accumulators (line 1229) | def update_curriculum_reward_accumulators( method command (line 1251) | def command( method command_fut (line 1258) | def command_fut( method reset (line 1264) | def reset( method apply_cache_swap_if_pending_barrier (line 1289) | def apply_cache_swap_if_pending_barrier(self, accelerator=None) -> bool: method compute (line 1344) | def compute(self, dt: float): method _update_ref_motion_state (line 1354) | def _update_ref_motion_state(self): method _update_ref_motion_state_from_cache (line 1358) | def _update_ref_motion_state_from_cache( method _get_ref_state_array (line 1365) | def _get_ref_state_array( method get_ref_motion_filter_cutoff_hz_cur (line 1393) | def get_ref_motion_filter_cutoff_hz_cur(self) -> torch.Tensor: method _uniform_sample_ref_start_frames (line 1405) | def _uniform_sample_ref_start_frames(self, env_ids: torch.Tensor): method get_ref_motion_dof_pos_fut (line 1438) | def get_ref_motion_dof_pos_fut( method _get_immediate_next_ref_state_array (line 1445) | def _get_immediate_next_ref_state_array( method get_ref_motion_dof_vel_fut (line 1457) | def get_ref_motion_dof_vel_fut( method get_ref_motion_root_global_pos_fut (line 1464) | def get_ref_motion_root_global_pos_fut( method get_ref_motion_root_global_rot_quat_xyzw_fut (line 1471) | def get_ref_motion_root_global_rot_quat_xyzw_fut( method get_ref_motion_root_global_rot_quat_wxyz_fut (line 1477) | def get_ref_motion_root_global_rot_quat_wxyz_fut( method get_ref_motion_root_global_lin_vel_fut (line 1485) | def get_ref_motion_root_global_lin_vel_fut( method get_ref_motion_root_global_ang_vel_fut (line 1492) | def get_ref_motion_root_global_ang_vel_fut( method get_ref_motion_bodylink_global_pos_fut (line 1499) | def get_ref_motion_bodylink_global_pos_fut( method get_ref_motion_bodylink_rel_pos_cur (line 1509) | def get_ref_motion_bodylink_rel_pos_cur( method get_ref_motion_bodylink_rel_pos_fut (line 1533) | def get_ref_motion_bodylink_rel_pos_fut( method get_ref_motion_bodylink_global_rot_xyzw_fut (line 1557) | def get_ref_motion_bodylink_global_rot_xyzw_fut( method get_ref_motion_bodylink_global_lin_vel_fut (line 1564) | def get_ref_motion_bodylink_global_lin_vel_fut( method get_ref_motion_bodylink_global_ang_vel_fut (line 1571) | def get_ref_motion_bodylink_global_ang_vel_fut( method get_ref_motion_dof_pos_cur (line 1578) | def get_ref_motion_dof_pos_cur( method get_ref_motion_dof_pos_immediate_next (line 1585) | def get_ref_motion_dof_pos_immediate_next( method get_immediate_next_two_dof_pos (line 1592) | def get_immediate_next_two_dof_pos( method get_ref_motion_dof_pos_cur_urdf_order (line 1605) | def get_ref_motion_dof_pos_cur_urdf_order( method get_ref_motion_cur_heading_aligned_root_pos (line 1612) | def get_ref_motion_cur_heading_aligned_root_pos( method get_ref_motion_fut_heading_aligned_root_pos (line 1631) | def get_ref_motion_fut_heading_aligned_root_pos( method get_ref_motion_cur_heading_aligned_root_rot6d (line 1656) | def get_ref_motion_cur_heading_aligned_root_rot6d( method get_ref_motion_fut_heading_aligned_root_rot6d (line 1686) | def get_ref_motion_fut_heading_aligned_root_rot6d( method get_ref_motion_cur_heading_aligned_root_lin_vel (line 1721) | def get_ref_motion_cur_heading_aligned_root_lin_vel( method get_ref_motion_fut_heading_aligned_root_lin_vel (line 1740) | def get_ref_motion_fut_heading_aligned_root_lin_vel( method get_ref_motion_cur_heading_aligned_root_ang_vel (line 1763) | def get_ref_motion_cur_heading_aligned_root_ang_vel( method get_ref_motion_fut_heading_aligned_root_ang_vel (line 1782) | def get_ref_motion_fut_heading_aligned_root_ang_vel( method robot_dof_pos_cur_urdf_order (line 1806) | def robot_dof_pos_cur_urdf_order(self): method get_ref_motion_dof_vel_cur (line 1809) | def get_ref_motion_dof_vel_cur( method get_ref_motion_dof_vel_immediate_next (line 1816) | def get_ref_motion_dof_vel_immediate_next( method robot_dof_vel_cur_urdf_order (line 1824) | def robot_dof_vel_cur_urdf_order(self): method get_ref_motion_dof_vel_cur_urdf_order (line 1827) | def get_ref_motion_dof_vel_cur_urdf_order( method get_ref_motion_root_global_pos_cur (line 1834) | def get_ref_motion_root_global_pos_cur( method get_ref_motion_root_global_pos_immediate_next (line 1841) | def get_ref_motion_root_global_pos_immediate_next( method get_ref_motion_root_global_rot_quat_xyzw_cur (line 1848) | def get_ref_motion_root_global_rot_quat_xyzw_cur( method get_ref_motion_root_global_rot_quat_xyzw_immediate_next (line 1854) | def get_ref_motion_root_global_rot_quat_xyzw_immediate_next( method get_ref_motion_root_global_rot_quat_wxyz_cur (line 1860) | def get_ref_motion_root_global_rot_quat_wxyz_cur( method get_ref_motion_root_global_rot_quat_wxyz_immediate_next (line 1868) | def get_ref_motion_root_global_rot_quat_wxyz_immediate_next( method get_ref_motion_root_global_lin_vel_cur (line 1876) | def get_ref_motion_root_global_lin_vel_cur( method get_ref_motion_root_global_lin_vel_immediate_next (line 1883) | def get_ref_motion_root_global_lin_vel_immediate_next( method ref_motion_root_global_lin_vel_cur (line 1890) | def ref_motion_root_global_lin_vel_cur(self) -> torch.Tensor: method get_ref_motion_root_global_ang_vel_cur (line 1893) | def get_ref_motion_root_global_ang_vel_cur( method get_ref_motion_root_global_ang_vel_immediate_next (line 1900) | def get_ref_motion_root_global_ang_vel_immediate_next( method get_ref_motion_gravity_projection_cur (line 1906) | def get_ref_motion_gravity_projection_cur( method get_ref_motion_gravity_projection_immediate_next (line 1917) | def get_ref_motion_gravity_projection_immediate_next( method get_ref_motion_gravity_projection_fut (line 1929) | def get_ref_motion_gravity_projection_fut( method get_ref_motion_base_linvel_cur (line 1945) | def get_ref_motion_base_linvel_cur( method get_ref_motion_base_linvel_immediate_next (line 1960) | def get_ref_motion_base_linvel_immediate_next( method get_ref_motion_base_linvel_fut (line 1978) | def get_ref_motion_base_linvel_fut( method get_ref_motion_base_angvel_cur (line 1993) | def get_ref_motion_base_angvel_cur( method get_ref_motion_base_angvel_immediate_next (line 2008) | def get_ref_motion_base_angvel_immediate_next( method get_ref_motion_base_angvel_fut (line 2026) | def get_ref_motion_base_angvel_fut( method get_ref_motion_bodylink_global_pos_cur (line 2041) | def get_ref_motion_bodylink_global_pos_cur( method get_ref_motion_bodylink_global_pos_immediate_next (line 2051) | def get_ref_motion_bodylink_global_pos_immediate_next( method get_ref_motion_bodylink_global_pos_cur_urdf_order (line 2061) | def get_ref_motion_bodylink_global_pos_cur_urdf_order( method get_ref_motion_bodylink_global_rot_wxyz_cur (line 2068) | def get_ref_motion_bodylink_global_rot_wxyz_cur( method get_ref_motion_bodylink_global_rot_xyzw_cur (line 2077) | def get_ref_motion_bodylink_global_rot_xyzw_cur( method get_ref_motion_bodylink_global_rot_xyzw_immediate_next (line 2084) | def get_ref_motion_bodylink_global_rot_xyzw_immediate_next( method get_ref_motion_bodylink_global_rot_wxyz_immediate_next (line 2091) | def get_ref_motion_bodylink_global_rot_wxyz_immediate_next( method get_ref_motion_bodylink_global_rot_xyzw_cur_urdf_order (line 2100) | def get_ref_motion_bodylink_global_rot_xyzw_cur_urdf_order( method robot_bodylink_global_pos_cur_urdf_order (line 2108) | def robot_bodylink_global_pos_cur_urdf_order(self): method robot_bodylink_global_rot_wxyz_cur_urdf_order (line 2112) | def robot_bodylink_global_rot_wxyz_cur_urdf_order(self): method robot_bodylink_global_rot_xyzw_cur_urdf_order (line 2116) | def robot_bodylink_global_rot_xyzw_cur_urdf_order(self): method robot_bodylink_global_lin_vel_cur_urdf_order (line 2122) | def robot_bodylink_global_lin_vel_cur_urdf_order(self): method robot_bodylink_global_ang_vel_cur_urdf_order (line 2126) | def robot_bodylink_global_ang_vel_cur_urdf_order(self): method get_ref_motion_bodylink_global_lin_vel_cur (line 2129) | def get_ref_motion_bodylink_global_lin_vel_cur( method get_ref_motion_bodylink_global_lin_vel_immediate_next (line 2136) | def get_ref_motion_bodylink_global_lin_vel_immediate_next( method get_ref_motion_bodylink_global_lin_vel_cur_urdf_order (line 2143) | def get_ref_motion_bodylink_global_lin_vel_cur_urdf_order( method get_ref_motion_bodylink_global_ang_vel_cur (line 2150) | def get_ref_motion_bodylink_global_ang_vel_cur( method get_ref_motion_bodylink_global_ang_vel_immediate_next (line 2157) | def get_ref_motion_bodylink_global_ang_vel_immediate_next( method get_ref_motion_bodylink_global_ang_vel_cur_urdf_order (line 2164) | def get_ref_motion_bodylink_global_ang_vel_cur_urdf_order( method _build_amp_obs_from_ref_state (line 2171) | def _build_amp_obs_from_ref_state( method get_ref_motion_amp_obs_cur (line 2266) | def get_ref_motion_amp_obs_cur( method motion_end_mask (line 2273) | def motion_end_mask(self) -> torch.Tensor: method global_robot_anchor_pos_cur (line 2283) | def global_robot_anchor_pos_cur(self): method get_ref_motion_anchor_bodylink_global_pos_cur (line 2286) | def get_ref_motion_anchor_bodylink_global_pos_cur( method get_ref_motion_anchor_bodylink_global_rot_wxyz_cur (line 2293) | def get_ref_motion_anchor_bodylink_global_rot_wxyz_cur( method get_ref_motion_anchor_bodylink_global_pos_immediate_next (line 2300) | def get_ref_motion_anchor_bodylink_global_pos_immediate_next( method get_ref_motion_anchor_bodylink_global_rot_wxyz_immediate_next (line 2309) | def get_ref_motion_anchor_bodylink_global_rot_wxyz_immediate_next( method _get_obs_bydmmc_ref_motion (line 2318) | def _get_obs_bydmmc_ref_motion( method _get_obs_bydmmc_ref_motion_fut (line 2333) | def _get_obs_bydmmc_ref_motion_fut( method _get_obs_vr_ref_motion_states (line 2352) | def _get_obs_vr_ref_motion_states( method _get_obs_vr_ref_motion_fut (line 2372) | def _get_obs_vr_ref_motion_fut( method _get_obs_holomotion_rel_ref_motion_flat (line 2393) | def _get_obs_holomotion_rel_ref_motion_flat( method _resample_command (line 2540) | def _resample_command(self, env_ids: Sequence[int], eval=False): method _filter_env_ids_for_motion_task (line 2577) | def _filter_env_ids_for_motion_task( method _align_root_to_ref (line 2608) | def _align_root_to_ref(self, env_ids): method _align_dof_to_ref (line 2679) | def _align_dof_to_ref(self, env_ids): method force_realign_root_state_to_ref_no_perturb (line 2711) | def force_realign_root_state_to_ref_no_perturb(self, env_ids) -> None: method force_realign_dof_state_to_ref_no_perturb (line 2740) | def force_realign_dof_state_to_ref_no_perturb(self, env_ids) -> None: method force_realign_offline_eval_no_perturb (line 2766) | def force_realign_offline_eval_no_perturb(self, env_ids) -> None: method _update_command (line 2770) | def _update_command(self): method _resample_when_motion_end_cache (line 2794) | def _resample_when_motion_end_cache(self): method _update_metrics (line 2835) | def _update_metrics(self): method _update_mpjpe_metrics (line 2843) | def _update_mpjpe_metrics(self): method _update_mpkpe_metrics (line 2890) | def _update_mpkpe_metrics(self): method get_wholebody_mpjpe (line 2939) | def get_wholebody_mpjpe( method get_wholebody_mpkpe (line 2949) | def get_wholebody_mpkpe( method get_current_motion_keys (line 2959) | def get_current_motion_keys( method _set_debug_vis_impl (line 2974) | def _set_debug_vis_impl(self, debug_vis: bool): method setup_offline_eval_from_frame_zero (line 2989) | def setup_offline_eval_from_frame_zero(self): method setup_offline_eval_deterministic (line 3001) | def setup_offline_eval_deterministic( method _debug_vis_callback (line 3032) | def _debug_vis_callback(self, event): class MotionCommandCfg (line 3083) | class MotionCommandCfg(CommandTermCfg): class MoTrack_CommandsCfg (line 3136) | class MoTrack_CommandsCfg: function build_motion_tracking_commands_config (line 3140) | def build_motion_tracking_commands_config(command_config_dict: dict): FILE: holomotion/src/env/isaaclab_components/isaaclab_observation.py function _build_noise_cfg (line 63) | def _build_noise_cfg(noise_cfg): class MirrorFunctions (line 89) | class MirrorFunctions: method mirror_dof (line 93) | def mirror_dof( method mirror_action (line 110) | def mirror_action( method mirror_vec3 (line 117) | def mirror_vec3(x: torch.Tensor) -> torch.Tensor: method mirror_axial_vec3 (line 129) | def mirror_axial_vec3(x: torch.Tensor) -> torch.Tensor: method mirror_velocity_command (line 141) | def mirror_velocity_command(x: torch.Tensor) -> torch.Tensor: class ObservationFunctions (line 159) | class ObservationFunctions: method _get_body_indices (line 168) | def _get_body_indices( method _slice_future_frames (line 194) | def _slice_future_frames( method _get_obs_head_pos_quat_vel (line 220) | def _get_obs_head_pos_quat_vel( method _get_obs_rel_headlink_lin_vel (line 309) | def _get_obs_rel_headlink_lin_vel( method _get_obs_rel_headlink_ang_vel (line 388) | def _get_obs_rel_headlink_ang_vel( method _get_obs_global_robot_root_pos (line 453) | def _get_obs_global_robot_root_pos(env: ManagerBasedRLEnv): method _get_obs_global_robot_root_rot_wxyz (line 462) | def _get_obs_global_robot_root_rot_wxyz(env: ManagerBasedRLEnv): method _get_obs_global_robot_root_rot_xyzw (line 467) | def _get_obs_global_robot_root_rot_xyzw(env: ManagerBasedRLEnv): method _get_obs_global_robot_root_rot_mat (line 474) | def _get_obs_global_robot_root_rot_mat(env: ManagerBasedRLEnv): method _get_obs_global_robot_root_lin_vel (line 481) | def _get_obs_global_robot_root_lin_vel(env: ManagerBasedRLEnv): method _get_obs_global_robot_root_ang_vel (line 486) | def _get_obs_global_robot_root_ang_vel(env: ManagerBasedRLEnv): method _get_obs_rel_robot_root_lin_vel (line 491) | def _get_obs_rel_robot_root_lin_vel(env: ManagerBasedRLEnv): method _get_obs_rel_robot_root_ang_vel (line 496) | def _get_obs_rel_robot_root_ang_vel(env: ManagerBasedRLEnv): method _get_obs_rel_anchor_lin_vel (line 501) | def _get_obs_rel_anchor_lin_vel( method _get_obs_projected_gravity (line 524) | def _get_obs_projected_gravity( method _get_obs_global_robot_root_yaw (line 547) | def _get_obs_global_robot_root_yaw( method _get_obs_robot_root_heading_aligned_quat (line 557) | def _get_obs_robot_root_heading_aligned_quat( method _get_obs_rel_robot_root_roll_pitch (line 577) | def _get_obs_rel_robot_root_roll_pitch( method _get_obs_global_robot_bodylink_pos (line 599) | def _get_obs_global_robot_bodylink_pos( method _get_obs_global_robot_bodylink_rot_wxyz (line 621) | def _get_obs_global_robot_bodylink_rot_wxyz( method _get_obs_global_robot_bodylink_rot_xyzw (line 635) | def _get_obs_global_robot_bodylink_rot_xyzw( method _get_obs_global_robot_bodylink_rot_mat (line 648) | def _get_obs_global_robot_bodylink_rot_mat( method _get_obs_global_robot_bodylink_lin_vel (line 666) | def _get_obs_global_robot_bodylink_lin_vel( method _get_obs_global_robot_bodylink_ang_vel (line 680) | def _get_obs_global_robot_bodylink_ang_vel( method _get_obs_root_rel_robot_bodylink_pos (line 694) | def _get_obs_root_rel_robot_bodylink_pos( method _get_obs_root_rel_robot_bodylink_rot_wxyz (line 721) | def _get_obs_root_rel_robot_bodylink_rot_wxyz( method _get_obs_root_rel_robot_bodylink_rot_xyzw (line 751) | def _get_obs_root_rel_robot_bodylink_rot_xyzw( method _get_obs_root_rel_robot_bodylink_rot_mat (line 764) | def _get_obs_root_rel_robot_bodylink_rot_mat( method _get_obs_root_rel_robot_bodylink_lin_vel (line 781) | def _get_obs_root_rel_robot_bodylink_lin_vel( method _get_obs_root_rel_robot_bodylink_ang_vel (line 816) | def _get_obs_root_rel_robot_bodylink_ang_vel( method _get_obs_global_robot_bodylink_pos_flat (line 852) | def _get_obs_global_robot_bodylink_pos_flat( method _get_obs_global_robot_bodylink_rot_wxyz_flat (line 866) | def _get_obs_global_robot_bodylink_rot_wxyz_flat( method _get_obs_global_robot_bodylink_rot_xyzw_flat (line 882) | def _get_obs_global_robot_bodylink_rot_xyzw_flat( method _get_obs_global_robot_bodylink_rot_mat_flat (line 898) | def _get_obs_global_robot_bodylink_rot_mat_flat( method _get_obs_global_robot_bodylink_lin_vel_flat (line 914) | def _get_obs_global_robot_bodylink_lin_vel_flat( method _get_obs_global_robot_bodylink_ang_vel_flat (line 930) | def _get_obs_global_robot_bodylink_ang_vel_flat( method _get_obs_root_rel_robot_bodylink_pos_flat (line 946) | def _get_obs_root_rel_robot_bodylink_pos_flat( method _get_obs_root_rel_robot_bodylink_rot_wxyz_flat (line 962) | def _get_obs_root_rel_robot_bodylink_rot_wxyz_flat( method _get_obs_root_rel_robot_bodylink_rot_xyzw_flat (line 978) | def _get_obs_root_rel_robot_bodylink_rot_xyzw_flat( method _get_obs_root_rel_robot_bodylink_rot_mat_flat (line 994) | def _get_obs_root_rel_robot_bodylink_rot_mat_flat( method _get_obs_root_rel_robot_bodylink_lin_vel_flat (line 1010) | def _get_obs_root_rel_robot_bodylink_lin_vel_flat( method _get_obs_root_rel_robot_bodylink_ang_vel_flat (line 1026) | def _get_obs_root_rel_robot_bodylink_ang_vel_flat( method _get_obs_dof_pos (line 1043) | def _get_obs_dof_pos(env: ManagerBasedRLEnv): method _get_obs_dof_vel (line 1048) | def _get_obs_dof_vel(env: ManagerBasedRLEnv): method _get_obs_last_actions (line 1053) | def _get_obs_last_actions(env: ManagerBasedRLEnv): method _get_obs_ref_motion_states (line 1059) | def _get_obs_ref_motion_states( method _get_obs_ref_motion_states_fut (line 1071) | def _get_obs_ref_motion_states_fut( method _get_obs_vr_ref_motion_states (line 1083) | def _get_obs_vr_ref_motion_states( method _get_obs_vr_ref_motion_states_fut (line 1092) | def _get_obs_vr_ref_motion_states_fut( method _get_obs_ref_dof_pos_cur (line 1102) | def _get_obs_ref_dof_pos_cur( method _get_obs_immediate_next_two_dof_pos (line 1112) | def _get_obs_immediate_next_two_dof_pos( method _get_obs_ref_motion_cur_heading_aligned_root_pos (line 1122) | def _get_obs_ref_motion_cur_heading_aligned_root_pos( method _get_obs_ref_motion_fut_heading_aligned_root_pos (line 1134) | def _get_obs_ref_motion_fut_heading_aligned_root_pos( method _get_obs_ref_motion_cur_heading_aligned_root_rot6d (line 1146) | def _get_obs_ref_motion_cur_heading_aligned_root_rot6d( method _get_obs_ref_motion_fut_heading_aligned_root_rot6d (line 1158) | def _get_obs_ref_motion_fut_heading_aligned_root_rot6d( method _get_obs_ref_motion_cur_heading_aligned_root_lin_vel (line 1170) | def _get_obs_ref_motion_cur_heading_aligned_root_lin_vel( method _get_obs_ref_motion_fut_heading_aligned_root_lin_vel (line 1182) | def _get_obs_ref_motion_fut_heading_aligned_root_lin_vel( method _get_obs_ref_motion_cur_heading_aligned_root_ang_vel (line 1194) | def _get_obs_ref_motion_cur_heading_aligned_root_ang_vel( method _get_obs_ref_motion_fut_heading_aligned_root_ang_vel (line 1206) | def _get_obs_ref_motion_fut_heading_aligned_root_ang_vel( method _get_obs_ref_dof_vel_cur (line 1218) | def _get_obs_ref_dof_vel_cur( method _get_obs_ref_motion_filter_cutoff_hz (line 1228) | def _get_obs_ref_motion_filter_cutoff_hz( method _get_obs_ref_root_height_cur (line 1237) | def _get_obs_ref_root_height_cur( method _get_obs_ref_dof_pos_fut (line 1253) | def _get_obs_ref_dof_pos_fut( method _get_obs_ref_gravity_projection_cur (line 1272) | def _get_obs_ref_gravity_projection_cur( method _get_obs_ref_gravity_projection_fut (line 1285) | def _get_obs_ref_gravity_projection_fut( method _get_obs_ref_base_linvel_cur (line 1304) | def _get_obs_ref_base_linvel_cur( method _get_obs_ref_base_linvel_fut (line 1315) | def _get_obs_ref_base_linvel_fut( method _get_obs_ref_base_angvel_cur (line 1332) | def _get_obs_ref_base_angvel_cur( method _get_obs_ref_keybody_rel_pos_cur (line 1343) | def _get_obs_ref_keybody_rel_pos_cur( method _get_obs_ref_keybody_rel_pos_fut (line 1365) | def _get_obs_ref_keybody_rel_pos_fut( method _get_obs_ref_base_angvel_fut (line 1393) | def _get_obs_ref_base_angvel_fut( method _get_obs_ref_dof_vel_fut (line 1410) | def _get_obs_ref_dof_vel_fut( method _get_obs_ref_root_height_fut (line 1430) | def _get_obs_ref_root_height_fut( method _get_obs_global_anchor_diff (line 1453) | def _get_obs_global_anchor_diff( method _get_obs_global_anchor_pos_diff (line 1497) | def _get_obs_global_anchor_pos_diff( method _get_obs_global_anchor_rot_diff (line 1534) | def _get_obs_global_anchor_rot_diff( method _get_obs_velocity_command (line 1572) | def _get_obs_velocity_command( method _get_obs_place_holder (line 1603) | def _get_obs_place_holder(env: ManagerBasedRLEnv, n_dim: int): method _get_obs_ref_headling_aligned_vel_cmd (line 1607) | def _get_obs_ref_headling_aligned_vel_cmd( method _get_obs_heading_aligned_root_ang_vel (line 1636) | def _get_obs_heading_aligned_root_ang_vel(env: ManagerBasedRLEnv): class ObservationsCfg (line 1651) | class ObservationsCfg: function build_observations_config (line 1655) | def build_observations_config(obs_config_dict: dict): FILE: holomotion/src/env/isaaclab_components/isaaclab_rewards.py function _joint_ids_to_tensor (line 46) | def _joint_ids_to_tensor( function _select_effort_limit_vector (line 65) | def _select_effort_limit_vector( function key_dof_position_tracking_exp (line 132) | def key_dof_position_tracking_exp( function key_dof_velocity_tracking_exp (line 154) | def key_dof_velocity_tracking_exp( function motion_global_anchor_position_error_exp (line 176) | def motion_global_anchor_position_error_exp( function motion_global_anchor_orientation_error_exp (line 196) | def motion_global_anchor_orientation_error_exp( function motion_relative_body_position_error_exp (line 218) | def motion_relative_body_position_error_exp( function root_rel_keybodylink_pos_tracking_l2_exp (line 302) | def root_rel_keybodylink_pos_tracking_l2_exp( function motion_relative_body_orientation_error_exp (line 364) | def motion_relative_body_orientation_error_exp( function motion_global_body_linear_velocity_error_exp (line 432) | def motion_global_body_linear_velocity_error_exp( function motion_global_body_angular_velocity_error_exp (line 454) | def motion_global_body_angular_velocity_error_exp( function root_pos_xy_tracking_exp (line 476) | def root_pos_xy_tracking_exp( function root_rot_tracking_exp (line 495) | def root_rot_tracking_exp( function root_pos_rel_z_tracking_exp (line 517) | def root_pos_rel_z_tracking_exp( function root_lin_vel_tracking_l2_exp (line 533) | def root_lin_vel_tracking_l2_exp( function root_ang_vel_tracking_l2_exp (line 575) | def root_ang_vel_tracking_l2_exp( function root_rel_keybodylink_pos_tracking_l2_exp_bydmmc_style (line 617) | def root_rel_keybodylink_pos_tracking_l2_exp_bydmmc_style( function root_rel_keybodylink_rot_tracking_l2_exp (line 695) | def root_rel_keybodylink_rot_tracking_l2_exp( function root_rel_keybodylink_lin_vel_tracking_l2_exp (line 751) | def root_rel_keybodylink_lin_vel_tracking_l2_exp( function root_rel_keybodylink_ang_vel_tracking_l2_exp (line 861) | def root_rel_keybodylink_ang_vel_tracking_l2_exp( function global_keybodylink_lin_vel_tracking_l2_exp (line 926) | def global_keybodylink_lin_vel_tracking_l2_exp( function global_keybodylink_ang_vel_tracking_l2_exp (line 953) | def global_keybodylink_ang_vel_tracking_l2_exp( function feet_contact_time (line 981) | def feet_contact_time( function track_lin_vel_xy_yaw_frame_exp (line 997) | def track_lin_vel_xy_yaw_frame_exp( function feet_slide (line 1026) | def feet_slide( function feet_slide_ang_vel (line 1045) | def feet_slide_ang_vel( function foot_clearance_reward (line 1064) | def foot_clearance_reward( function feet_gait (line 1106) | def feet_gait( function joint_deviation_l2 (line 1152) | def joint_deviation_l2( function energy (line 1175) | def energy( function positive_work (line 1187) | def positive_work( class normed_positive_work (line 1206) | class normed_positive_work(ManagerTermBase): method __init__ (line 1209) | def __init__(self, cfg: RewardTermCfg, env: ManagerBasedRLEnv): method _maybe_build_cache (line 1215) | def _maybe_build_cache( method __call__ (line 1245) | def __call__( class normed_torque_rate (line 1274) | class normed_torque_rate(ManagerTermBase): method __init__ (line 1277) | def __init__(self, cfg: RewardTermCfg, env: ManagerBasedRLEnv): method reset (line 1287) | def reset(self, env_ids=None) -> None: method _maybe_build_cache (line 1299) | def _maybe_build_cache( method __call__ (line 1342) | def __call__( function track_stand_still_exp (line 1379) | def track_stand_still_exp( function stand_still_joint_deviation_l1 (line 1404) | def stand_still_joint_deviation_l1( function stand_still_action_rate (line 1430) | def stand_still_action_rate( function stand_still_dof_vel_l2 (line 1449) | def stand_still_dof_vel_l2( class action_acc (line 1467) | class action_acc(ManagerTermBase): method __init__ (line 1470) | def __init__(self, cfg: RewardTermCfg, env: ManagerBasedRLEnv): method reset (line 1481) | def reset(self, env_ids=None) -> None: method _maybe_build_cache (line 1496) | def _maybe_build_cache( method __call__ (line 1528) | def __call__(self, env: ManagerBasedRLEnv) -> torch.Tensor: function feet_stumble (line 1572) | def feet_stumble( function feet_too_near (line 1588) | def feet_too_near( function feet_contact_without_cmd (line 1599) | def feet_contact_without_cmd( function torso_xy_ang_vel_l2_penalty (line 1621) | def torso_xy_ang_vel_l2_penalty( function torso_upright_l2_penalty (line 1658) | def torso_upright_l2_penalty( function torso_upright_l2_penalty_v2 (line 1696) | def torso_upright_l2_penalty_v2( function stand_still_torso_upright_exp_v2 (line 1739) | def stand_still_torso_upright_exp_v2( function torso_linacc_xy_l2_penalty (line 1773) | def torso_linacc_xy_l2_penalty( function track_lin_vel_xy_heading_aligned_frame_exp (line 1809) | def track_lin_vel_xy_heading_aligned_frame_exp( function track_lin_vel_xy_heading_aligned_frame_exp_v2 (line 1840) | def track_lin_vel_xy_heading_aligned_frame_exp_v2( function track_ang_vel_z_heading_aligned_frame_exp_v2 (line 1878) | def track_ang_vel_z_heading_aligned_frame_exp_v2( function track_ang_vel_z_heading_aligned_frame_exp (line 1912) | def track_ang_vel_z_heading_aligned_frame_exp( function smoothed_track_ang_vel_z_heading_aligned_frame_exp (line 1933) | def smoothed_track_ang_vel_z_heading_aligned_frame_exp( function feet_air_time (line 1963) | def feet_air_time( function feet_air_time_v2 (line 1989) | def feet_air_time_v2( function feet_air_time_v3 (line 2020) | def feet_air_time_v3( function feet_air_time_v4 (line 2055) | def feet_air_time_v4( function yaw_rate_only_movement_l2_penalty (line 2085) | def yaw_rate_only_movement_l2_penalty( function fly (line 2116) | def fly( function stand_still_torso_lin_vel_l2_penalty (line 2133) | def stand_still_torso_lin_vel_l2_penalty( function stand_still_torso_ang_vel_l2_penalty (line 2147) | def stand_still_torso_ang_vel_l2_penalty( function stand_still_torso_lin_vel_exp (line 2161) | def stand_still_torso_lin_vel_exp( function stand_still_torso_ang_vel_exp (line 2190) | def stand_still_torso_ang_vel_exp( function yaw_rate_only_movement_exp (line 2219) | def yaw_rate_only_movement_exp( function yaw_rate_only_hip_yaw_usage_exp (line 2249) | def yaw_rate_only_hip_yaw_usage_exp( class RewardsCfg (line 2301) | class RewardsCfg: class TaskGatedReward (line 2305) | class TaskGatedReward: method __init__ (line 2308) | def __init__(self, func, task_name: str): method __call__ (line 2313) | def __call__(self, env: ManagerBasedRLEnv, *args, **kwargs): function build_rewards_config (line 2337) | def build_rewards_config(reward_config_dict: dict): FILE: holomotion/src/env/isaaclab_components/isaaclab_scene.py class SceneFunctions (line 43) | class SceneFunctions: method build_robot_config (line 47) | def build_robot_config( method build_lighting_config (line 203) | def build_lighting_config( method build_contact_sensor_config (line 229) | def build_contact_sensor_config(config: dict) -> ContactSensorCfg: class MotionTrackingSceneCfg (line 247) | class MotionTrackingSceneCfg(InteractiveSceneCfg): function build_scene_config (line 253) | def build_scene_config( function _cfg_to_kwargs (line 325) | def _cfg_to_kwargs(cfg: object) -> dict: function _build_unitree_actuator_cfg (line 333) | def _build_unitree_actuator_cfg( FILE: holomotion/src/env/isaaclab_components/isaaclab_simulator.py function build_simulator_config (line 21) | def build_simulator_config(sim_config_dict: dict) -> SimulationCfg: FILE: holomotion/src/env/isaaclab_components/isaaclab_termination.py function _list_supported_terminations (line 33) | def _list_supported_terminations() -> list[str]: function _resolve_termination_func (line 54) | def _resolve_termination_func(name: str): function global_bodylink_pos_far (line 69) | def global_bodylink_pos_far( function anchor_ref_z_far (line 102) | def anchor_ref_z_far( function ref_gravity_projection_far (line 119) | def ref_gravity_projection_far( function keybody_ref_pos_far (line 169) | def keybody_ref_pos_far( function keybody_ref_z_far (line 202) | def keybody_ref_z_far( function wholebody_mpjpe_far (line 235) | def wholebody_mpjpe_far( function motion_end (line 253) | def motion_end( class TerminationsCfg (line 269) | class TerminationsCfg: function build_terminations_config (line 273) | def build_terminations_config( FILE: holomotion/src/env/isaaclab_components/isaaclab_terrain.py function _convert_range_like_params (line 36) | def _convert_range_like_params(params: dict) -> dict: function plane_terrain (line 54) | def plane_terrain(difficulty: float, cfg: HfTerrainBaseCfg) -> np.ndarray: class HfPlaneTerrainCfg (line 67) | class HfPlaneTerrainCfg(HfTerrainBaseCfg): class RandomSpawnTerrainImporter (line 73) | class RandomSpawnTerrainImporter(TerrainImporter): method _compute_env_origins_curriculum (line 80) | def _compute_env_origins_curriculum( method update_env_origins (line 166) | def update_env_origins( function build_terrain_config (line 214) | def build_terrain_config( FILE: holomotion/src/env/isaaclab_components/isaaclab_utils.py function _get_dof_indices (line 36) | def _get_dof_indices( function _get_body_indices (line 52) | def _get_body_indices( function resolve_holo_config (line 79) | def resolve_holo_config(value): FILE: holomotion/src/env/isaaclab_components/isaaclab_velocity_tracking_command.py class HoloMotionUniformVelocityCommand (line 40) | class HoloMotionUniformVelocityCommand(CommandTerm): method __init__ (line 61) | def __init__( method __str__ (line 106) | def __str__(self) -> str: method command (line 123) | def command(self) -> torch.Tensor: method _update_metrics (line 131) | def _update_metrics(self): method _resample_command (line 151) | def _resample_command(self, env_ids: Sequence[int]): method _update_command (line 178) | def _update_command(self): method _set_debug_vis_impl (line 208) | def _set_debug_vis_impl(self, debug_vis: bool): method _debug_vis_callback (line 230) | def _debug_vis_callback(self, event): method _resolve_xy_velocity_to_arrow (line 258) | def _resolve_xy_velocity_to_arrow( class HoloMotionUniformVelocityCommandCfg (line 283) | class HoloMotionUniformVelocityCommandCfg(CommandTermCfg): class Ranges (line 323) | class Ranges: class VelTrack_CommandsCfg (line 364) | class VelTrack_CommandsCfg: function _convert_ranges_dict_to_object (line 368) | def _convert_ranges_dict_to_object( function build_velocity_commands_config (line 383) | def build_velocity_commands_config( FILE: holomotion/src/env/isaaclab_components/unitree_actuators.py class UnitreeActuator (line 38) | class UnitreeActuator(DelayedPDActuator): method __init__ (line 71) | def __init__(self, cfg: UnitreeActuatorCfg, *args, **kwargs): method compute (line 83) | def compute( method _clip_effort (line 107) | def _clip_effort(self, effort: torch.Tensor) -> torch.Tensor: method _compute_effort_limit (line 121) | def _compute_effort_limit(self, max_effort): class UnitreeErfiActuator (line 127) | class UnitreeErfiActuator(UnitreeActuator): method __init__ (line 137) | def __init__(self, cfg: UnitreeErfiActuatorCfg, *args, **kwargs): method reset (line 164) | def reset(self, env_ids: Sequence[int] | slice | None): method compute (line 204) | def compute( method _filter_joint_position_action (line 236) | def _filter_joint_position_action( method _maybe_dump_ema_filter_debug_verification (line 273) | def _maybe_dump_ema_filter_debug_verification( method _maybe_dump_ema_filter_debug_skip (line 327) | def _maybe_dump_ema_filter_debug_skip(self, reason: str) -> None: method _maybe_dump_ema_filter_debug_payload (line 335) | def _maybe_dump_ema_filter_debug_payload(self, payload: dict) -> None: method _parse_bool_env (line 364) | def _parse_bool_env(name: str, default: bool) -> bool: method _env_ids_to_tensor (line 370) | def _env_ids_to_tensor( method _sample_uniform (line 379) | def _sample_uniform( class UnitreeActuatorCfg (line 386) | class UnitreeActuatorCfg(DelayedPDActuatorCfg): class UnitreeErfiActuatorCfg (line 416) | class UnitreeErfiActuatorCfg(UnitreeActuatorCfg): class UnitreeActuatorCfg_M107_15 (line 453) | class UnitreeActuatorCfg_M107_15(UnitreeActuatorCfg): class UnitreeActuatorCfg_M107_24 (line 463) | class UnitreeActuatorCfg_M107_24(UnitreeActuatorCfg): class UnitreeActuatorCfg_Go2HV (line 473) | class UnitreeActuatorCfg_Go2HV(UnitreeActuatorCfg): class UnitreeActuatorCfg_N7520_14p3 (line 481) | class UnitreeActuatorCfg_N7520_14p3(UnitreeActuatorCfg): class UnitreeActuatorCfg_N7520_22p5 (line 500) | class UnitreeActuatorCfg_N7520_22p5(UnitreeActuatorCfg): class UnitreeActuatorCfg_N5010_16 (line 519) | class UnitreeActuatorCfg_N5010_16(UnitreeActuatorCfg): class UnitreeActuatorCfg_N5020_16 (line 534) | class UnitreeActuatorCfg_N5020_16(UnitreeActuatorCfg): class UnitreeActuatorCfg_W4010_25 (line 552) | class UnitreeActuatorCfg_W4010_25(UnitreeActuatorCfg): FILE: holomotion/src/env/motion_tracking.py function _joint_ids_to_tensor (line 80) | def _joint_ids_to_tensor( function _select_effort_limit_vector (line 98) | def _select_effort_limit_vector( class MotionTrackingEnv (line 164) | class MotionTrackingEnv: method __init__ (line 175) | def __init__( method num_envs (line 216) | def num_envs(self): method device (line 220) | def device(self): method _init_isaaclab_env (line 223) | def _init_isaaclab_env(self): method _init_motion_tracking_components (line 467) | def _init_motion_tracking_components(self): method step (line 472) | def step(self, actor_state: dict): method _update_robot_metrics (line 482) | def _update_robot_metrics(self, infos: dict) -> None: method _update_completion_rate_stats (line 563) | def _update_completion_rate_stats( method reset_idx (line 603) | def reset_idx(self, env_ids: torch.Tensor): method reset_all (line 606) | def reset_all(self): method set_is_evaluating (line 611) | def set_is_evaluating(self): method seed (line 615) | def seed(self, seed: int): FILE: holomotion/src/env/velocity_tracking.py class VelocityTrackingEnv (line 78) | class VelocityTrackingEnv: method __init__ (line 89) | def __init__( method num_envs (line 127) | def num_envs(self): method device (line 131) | def device(self): method _init_isaaclab_env (line 134) | def _init_isaaclab_env(self): method _init_motion_tracking_components (line 366) | def _init_motion_tracking_components(self): method step (line 369) | def step(self, actor_state: dict): method _update_completion_rate_stats (line 378) | def _update_completion_rate_stats( method reset_idx (line 415) | def reset_idx(self, env_ids: torch.Tensor): method reset_all (line 418) | def reset_all(self): method set_is_evaluating (line 423) | def set_is_evaluating(self): method seed (line 427) | def seed(self, seed: int): FILE: holomotion/src/evaluation/eval_motion_tracking.py function find_checkpoints_to_evaluate (line 26) | def find_checkpoints_to_evaluate( function main (line 113) | def main( function parse_args (line 167) | def parse_args() -> argparse.Namespace: FILE: holomotion/src/evaluation/eval_motion_tracking_single.py function load_training_config (line 31) | def load_training_config( function _infer_dataset_suffix (line 85) | def _infer_dataset_suffix(output_dir: str, checkpoint_path: str) -> str: function _checkpoint_sort_key (line 94) | def _checkpoint_sort_key(checkpoint_path: Path): function _normalize_ckpt_pt_names (line 101) | def _normalize_ckpt_pt_names(ckpt_pt_names) -> list[str]: function _resolve_export_ckpt_paths (line 125) | def _resolve_export_ckpt_paths(config: OmegaConf) -> list[Path]: function main (line 173) | def main(config: OmegaConf): FILE: holomotion/src/evaluation/eval_mujoco_sim2sim.py function _coerce_config_bool (line 87) | def _coerce_config_bool(value, default: bool = False) -> bool: class OffscreenRenderer (line 102) | class OffscreenRenderer: method __init__ (line 105) | def __init__( method set_overlay_callback (line 140) | def set_overlay_callback(self, callback) -> None: method render (line 144) | def render(self, data) -> np.ndarray: method set_align_view (line 160) | def set_align_view( method close (line 187) | def close(self): class VelocityKeyboardHandler (line 191) | class VelocityKeyboardHandler: method __init__ (line 194) | def __init__( method start_listener (line 219) | def start_listener(self): method stop_listener (line 241) | def stop_listener(self): method get_velocity_command (line 247) | def get_velocity_command(self) -> np.ndarray: method _handle_key (line 256) | def _handle_key(self, char: str): class MujocoEvaluator (line 322) | class MujocoEvaluator: method __init__ (line 325) | def __init__(self, config): method _reset_onnx_io_dump_buffers (line 477) | def _reset_onnx_io_dump_buffers(self): method _get_action_ema_filter_cfg (line 483) | def _get_action_ema_filter_cfg(self) -> tuple[bool, float]: method _reset_action_ema_filter (line 500) | def _reset_action_ema_filter(self) -> None: method _apply_action_ema_filter (line 503) | def _apply_action_ema_filter(self, raw_actions: np.ndarray) -> np.ndar... method _get_action_delay_cfg (line 521) | def _get_action_delay_cfg(self) -> tuple[int, str]: method _sample_policy_action_delay_step (line 541) | def _sample_policy_action_delay_step(self) -> int: method _reset_action_delay_randomization (line 546) | def _reset_action_delay_randomization(self) -> None: method _apply_action_delay (line 560) | def _apply_action_delay(self, raw_actions: np.ndarray) -> np.ndarray: method _normalize_foot_geom_name_groups (line 588) | def _normalize_foot_geom_name_groups(raw_spec) -> list[list[str]]: method _normalize_foot_body_name_groups (line 622) | def _normalize_foot_body_name_groups(raw_spec) -> list[list[str]]: method _resolve_foot_geom_ids_from_geom_names (line 661) | def _resolve_foot_geom_ids_from_geom_names( method _resolve_foot_geom_ids_from_body_names (line 678) | def _resolve_foot_geom_ids_from_body_names( method _init_low_level_foot_contact_logging (line 716) | def _init_low_level_foot_contact_logging(self) -> None: method _record_low_level_foot_contact_sample (line 755) | def _record_low_level_foot_contact_sample(self) -> None: method _flatten_single_step_output (line 815) | def _flatten_single_step_output(values, *, dtype=None) -> np.ndarray: method _discover_policy_moe_outputs (line 823) | def _discover_policy_moe_outputs(self) -> None: method _get_stacked_moe_routing_tensors (line 856) | def _get_stacked_moe_routing_tensors( method _get_stacked_low_level_foot_contact_tensors (line 868) | def _get_stacked_low_level_foot_contact_tensors( method _record_onnx_io_frame (line 894) | def _record_onnx_io_frame(self, input_feed, output_names, onnx_output): method _stack_onnx_io_frames (line 916) | def _stack_onnx_io_frames( method save_onnx_io_dump (line 927) | def save_onnx_io_dump(self, output_path, meta_info): method _find_actor_place_holder_ndim (line 942) | def _find_actor_place_holder_ndim(self): method _get_actor_obs_term_params (line 954) | def _get_actor_obs_term_params(self, term_name: str) -> dict: method _get_ref_keybody_indices (line 966) | def _get_ref_keybody_indices(self, term_name: str) -> np.ndarray: method _to_plain_obs_cfg (line 992) | def _to_plain_obs_cfg(cfg): method _get_actor_obs_schema_terms (line 1003) | def _get_actor_obs_schema_terms(self) -> list[str]: method _get_actor_atomic_obs_entries (line 1020) | def _get_actor_atomic_obs_entries(self) -> list[tuple[str, str, dict]]: method _get_policy_atomic_obs_list (line 1066) | def _get_policy_atomic_obs_list(self): method _body_origin_world_velocity (line 1122) | def _body_origin_world_velocity( method _get_anchor_body_name (line 1140) | def _get_anchor_body_name(self) -> str: method _get_torso_body_name (line 1148) | def _get_torso_body_name(self) -> str: method ref_motion_frame_idx (line 1156) | def ref_motion_frame_idx(self): method anchor_body_idx (line 1160) | def anchor_body_idx(self) -> int: method root_body_idx (line 1166) | def root_body_idx(self) -> int: method torso_body_idx (line 1170) | def torso_body_idx(self) -> int: method robot_global_bodylink_pos (line 1174) | def robot_global_bodylink_pos(self): method robot_global_bodylink_rot (line 1190) | def robot_global_bodylink_rot(self): method robot_global_bodylink_lin_vel (line 1208) | def robot_global_bodylink_lin_vel(self): method robot_global_bodylink_ang_vel (line 1234) | def robot_global_bodylink_ang_vel(self): method robot_dof_pos (line 1261) | def robot_dof_pos(self): method robot_dof_vel (line 1267) | def robot_dof_vel(self): method _ensure_ref_to_sim_transform_rigid (line 1274) | def _ensure_ref_to_sim_transform_rigid(self): method _detect_command_mode (line 1391) | def _detect_command_mode(self) -> str: method _init_obs_buffers (line 1405) | def _init_obs_buffers(self): method load_policy (line 1415) | def load_policy(self): method _read_onnx_metadata (line 1533) | def _read_onnx_metadata(self) -> dict: method _apply_onnx_metadata (line 1567) | def _apply_onnx_metadata(self): method _build_dof_mappings (line 1576) | def _build_dof_mappings(self): method _normalize_filter_cutoff_hz (line 1606) | def _normalize_filter_cutoff_hz(raw_values, num_frames: int) -> np.nda... method load_motion_data (line 1635) | def load_motion_data(self): method load_mujoco_model (line 1855) | def load_mujoco_model(self): method _init_camera_config (line 1871) | def _init_camera_config(self): method _configure_viewer_camera (line 1905) | def _configure_viewer_camera(self, viewer): method _init_video_tools (line 1912) | def _init_video_tools(self, tag: str): method _dump_robot_augmented_npz (line 1959) | def _dump_robot_augmented_npz(self) -> None: method _close_video_tools (line 2087) | def _close_video_tools(self): method _update_camera_lookat (line 2097) | def _update_camera_lookat(self, cam): method _maybe_record_frame (line 2108) | def _maybe_record_frame(self): method _apply_control (line 2125) | def _apply_control(self, sleep: bool): method _compute_pd_torque_command_ref (line 2173) | def _compute_pd_torque_command_ref(self) -> np.ndarray: method _get_obs_ref_motion_states (line 2211) | def _get_obs_ref_motion_states(self): method _get_obs_ref_motion_states_fut (line 2225) | def _get_obs_ref_motion_states_fut(self): method _get_obs_ref_dof_pos_fut (line 2256) | def _get_obs_ref_dof_pos_fut(self): method _get_obs_ref_root_height_fut (line 2277) | def _get_obs_ref_root_height_fut(self): method _get_obs_ref_dof_pos_cur (line 2302) | def _get_obs_ref_dof_pos_cur(self): method _get_obs_ref_dof_vel_cur (line 2311) | def _get_obs_ref_dof_vel_cur(self): method _get_obs_ref_motion_filter_cutoff_hz (line 2320) | def _get_obs_ref_motion_filter_cutoff_hz(self): method _get_obs_ref_root_height_cur (line 2334) | def _get_obs_ref_root_height_cur(self): method _get_obs_ref_gravity_projection_cur (line 2341) | def _get_obs_ref_gravity_projection_cur(self): method _get_obs_ref_gravity_projection_fut (line 2358) | def _get_obs_ref_gravity_projection_fut(self): method _get_obs_ref_base_linvel_cur (line 2390) | def _get_obs_ref_base_linvel_cur(self): method _get_obs_ref_base_linvel_fut (line 2414) | def _get_obs_ref_base_linvel_fut(self): method _get_obs_ref_base_angvel_cur (line 2451) | def _get_obs_ref_base_angvel_cur(self): method _get_obs_ref_base_angvel_fut (line 2475) | def _get_obs_ref_base_angvel_fut(self): method _get_obs_ref_keybody_rel_pos_cur (line 2512) | def _get_obs_ref_keybody_rel_pos_cur(self): method _get_obs_ref_keybody_rel_pos_fut (line 2557) | def _get_obs_ref_keybody_rel_pos_fut(self): method _get_obs_place_holder (line 2616) | def _get_obs_place_holder(self): method _get_obs_vr_ref_motion_states (line 2619) | def _get_obs_vr_ref_motion_states(self): method _get_obs_vr_ref_motion_states_fut (line 2632) | def _get_obs_vr_ref_motion_states_fut(self): method _get_obs_rel_robot_root_ang_vel (line 2657) | def _get_obs_rel_robot_root_ang_vel(self): method _get_obs_last_action (line 2671) | def _get_obs_last_action(self): method _get_obs_velocity_command (line 2674) | def _get_obs_velocity_command(self): method _get_obs_actor_ref_headling_aligned_vel_cmd (line 2690) | def _get_obs_actor_ref_headling_aligned_vel_cmd(self): method _get_obs_actor_velocity_command (line 2694) | def _get_obs_actor_velocity_command(self): method _get_obs_actor_projected_gravity (line 2697) | def _get_obs_actor_projected_gravity(self): method _get_obs_actor_rel_robot_root_ang_vel (line 2700) | def _get_obs_actor_rel_robot_root_ang_vel(self): method _get_obs_actor_dof_pos (line 2703) | def _get_obs_actor_dof_pos(self): method _get_obs_actor_dof_vel (line 2706) | def _get_obs_actor_dof_vel(self): method _get_obs_actor_last_action (line 2709) | def _get_obs_actor_last_action(self): method _get_obs_actor_place_holder (line 2712) | def _get_obs_actor_place_holder(self): method _get_obs_actor_ref_dof_pos_fut (line 2715) | def _get_obs_actor_ref_dof_pos_fut(self): method _get_obs_actor_ref_dof_pos_cur (line 2718) | def _get_obs_actor_ref_dof_pos_cur(self): method _get_obs_actor_ref_motion_filter_cutoff_hz (line 2721) | def _get_obs_actor_ref_motion_filter_cutoff_hz(self): method _get_obs_actor_ref_root_height_fut (line 2724) | def _get_obs_actor_ref_root_height_fut(self): method _get_obs_actor_ref_root_height_cur (line 2727) | def _get_obs_actor_ref_root_height_cur(self): method _get_obs_actor_ref_gravity_projection_cur (line 2730) | def _get_obs_actor_ref_gravity_projection_cur(self): method _get_obs_actor_ref_gravity_projection_fut (line 2733) | def _get_obs_actor_ref_gravity_projection_fut(self): method _get_obs_actor_ref_base_linvel_cur (line 2736) | def _get_obs_actor_ref_base_linvel_cur(self): method _get_obs_actor_ref_base_linvel_fut (line 2739) | def _get_obs_actor_ref_base_linvel_fut(self): method _get_obs_actor_ref_base_angvel_cur (line 2742) | def _get_obs_actor_ref_base_angvel_cur(self): method _get_obs_actor_ref_base_angvel_fut (line 2745) | def _get_obs_actor_ref_base_angvel_fut(self): method _get_obs_actor_ref_keybody_rel_pos_cur (line 2748) | def _get_obs_actor_ref_keybody_rel_pos_cur(self): method _get_obs_actor_ref_keybody_rel_pos_fut (line 2751) | def _get_obs_actor_ref_keybody_rel_pos_fut(self): method _get_obs_global_anchor_diff (line 2754) | def _get_obs_global_anchor_diff(self): method _get_obs_global_anchor_pos_diff (line 2796) | def _get_obs_global_anchor_pos_diff(self): method _get_obs_global_anchor_rot_diff (line 2836) | def _get_obs_global_anchor_rot_diff(self): method _get_obs_global_bodylink_translation (line 2886) | def _get_obs_global_bodylink_translation(self) -> np.ndarray: method _get_obs_global_bodylink_rotation_quat (line 2895) | def _get_obs_global_bodylink_rotation_quat(self) -> np.ndarray: method _get_obs_global_bodylink_velocity (line 2905) | def _get_obs_global_bodylink_velocity(self) -> np.ndarray: method _get_obs_global_bodylink_angular_velocity (line 2912) | def _get_obs_global_bodylink_angular_velocity(self) -> np.ndarray: method ref_global_bodylink_pos (line 2920) | def ref_global_bodylink_pos(self) -> np.ndarray | None: method ref_global_bodylink_rot (line 2966) | def ref_global_bodylink_rot(self) -> np.ndarray | None: method _draw_ref_body_spheres_to_scene (line 3003) | def _draw_ref_body_spheres_to_scene( method _get_obs_rel_anchor_lin_vel (line 3038) | def _get_obs_rel_anchor_lin_vel(self): method _get_obs_projected_gravity (line 3055) | def _get_obs_projected_gravity(self): method _get_obs_dof_pos (line 3067) | def _get_obs_dof_pos(self): method _get_obs_dof_vel (line 3074) | def _get_obs_dof_vel(self): method _record_robot_states (line 3079) | def _record_robot_states(self) -> None: method load_specific_motion (line 3133) | def load_specific_motion(self, npz_path): method reset_state_teleport (line 3162) | def reset_state_teleport(self): method save_batch_result (line 3249) | def save_batch_result(self, output_path, meta_info): method setup (line 3322) | def setup(self): method _create_eval_progress_bar (line 3359) | def _create_eval_progress_bar(self, desc: str, max_steps: int): method _advance_eval_frame (line 3366) | def _advance_eval_frame(self, max_steps: int) -> bool: method _run_eval_step (line 3376) | def _run_eval_step(self, max_steps: int) -> bool: method _build_mjcf_dof_names (line 3384) | def _build_mjcf_dof_names(self): method _build_actuator_qpos_indices (line 3398) | def _build_actuator_qpos_indices(self): method _build_actuator_name_map (line 3407) | def _build_actuator_name_map(self): method _build_actuator_force_range_map (line 3425) | def _build_actuator_force_range_map(self): method run_simulation_unitree (line 3450) | def run_simulation_unitree(self): method run_simulation_unitree_headless (line 3535) | def run_simulation_unitree_headless(self): method run_simulation (line 3579) | def run_simulation(self): method _update_policy (line 3586) | def _update_policy(self): function _get_config_value (line 3705) | def _get_config_value(config_obj, key: str): function _normalize_ckpt_name_list (line 3712) | def _normalize_ckpt_name_list(ckpt_onnx_names): function _resolve_multi_ckpt_paths (line 3732) | def _resolve_multi_ckpt_paths(ckpt_onnx_root_dir, ckpt_onnx_names): function _resolve_eval_ckpt_paths (line 3789) | def _resolve_eval_ckpt_paths(config_obj): function _checkpoint_tag_from_path (line 3810) | def _checkpoint_tag_from_path(ckpt_path: Path) -> str: function _build_eval_output_dir (line 3817) | def _build_eval_output_dir(ckpt_path: Path, dataset_name: str) -> Path: function _build_onnx_io_dump_dir (line 3823) | def _build_onnx_io_dump_dir(output_dir: str | Path) -> Path: function _build_onnx_io_dump_path (line 3827) | def _build_onnx_io_dump_path( function _build_onnx_io_dump_readme_text (line 3834) | def _build_onnx_io_dump_readme_text() -> str: function write_onnx_io_dump_readme (line 3878) | def write_onnx_io_dump_readme(output_dir: str | Path) -> Path: function _allocate_actor_counts (line 3886) | def _allocate_actor_counts(num_checkpoints: int, total_actors: int): function _infer_step_from_ckpt_name (line 3896) | def _infer_step_from_ckpt_name(ckpt_name: str): function _read_total_macro_row (line 3906) | def _read_total_macro_row(tsv_path: Path): function _write_total_macro_summary_table (line 3918) | def _write_total_macro_summary_table( function process_config (line 4051) | def process_config(override_config): function _create_ray_evaluator (line 4124) | def _create_ray_evaluator(config_dict, model_type): function run_mujoco_sim2sim_eval (line 4148) | def run_mujoco_sim2sim_eval(override_config: OmegaConf): function main (line 4537) | def main(override_config: OmegaConf): FILE: holomotion/src/evaluation/eval_velocity_tracking.py function load_training_config (line 29) | def load_training_config( function main (line 87) | def main(config: OmegaConf): FILE: holomotion/src/evaluation/find_worst_clips.py function find_and_save_bad_clips (line 39) | def find_and_save_bad_clips( function main (line 88) | def main() -> None: FILE: holomotion/src/evaluation/metrics.py function quat_inv (line 48) | def quat_inv(q): function quat_apply (line 52) | def quat_apply(q, v): function p_mpjpe (line 63) | def p_mpjpe(predicted: np.ndarray, target: np.ndarray) -> np.ndarray: function _parse_clip_len_from_name (line 123) | def _parse_clip_len_from_name(filename: str) -> Optional[int]: function _parse_metadata_entry (line 129) | def _parse_metadata_entry(raw_metadata) -> Dict[str, object]: function _extract_robot_control_dt (line 155) | def _extract_robot_control_dt( function _extract_low_level_contact_dt (line 175) | def _extract_low_level_contact_dt( function _aggregate_sample_metric_to_frames (line 200) | def _aggregate_sample_metric_to_frames( function _compute_torque_jump_series (line 220) | def _compute_torque_jump_series( function _safe_nanpercentile (line 241) | def _safe_nanpercentile(values: np.ndarray, q: float) -> float: function _safe_nanmean (line 249) | def _safe_nanmean(values: np.ndarray) -> float: function _safe_nanmedian (line 257) | def _safe_nanmedian(values: np.ndarray) -> float: function _compute_rolling_nanmean_max (line 265) | def _compute_rolling_nanmean_max( function _integrate_psd_band (line 291) | def _integrate_psd_band( function _compute_psd_high_frequency_ratio (line 313) | def _compute_psd_high_frequency_ratio( function _compute_torque_chatter_hf_ratio (line 354) | def _compute_torque_chatter_hf_ratio( function _compute_torso_roll_pitch_stability_metrics (line 376) | def _compute_torso_roll_pitch_stability_metrics( function _compute_expert_switching_js_div (line 411) | def _compute_expert_switching_js_div( function _compute_contact_stability_metrics (line 442) | def _compute_contact_stability_metrics( function _compute_clip_stability_summary (line 515) | def _compute_clip_stability_summary( function _compute_clip_torque_jump_summary (line 581) | def _compute_clip_torque_jump_summary( function _per_frame_metrics_from_npz (line 638) | def _per_frame_metrics_from_npz( function offline_evaluate_dumped_npzs (line 904) | def offline_evaluate_dumped_npzs( function parse_ckpt_and_dataset_from_eval_dirname (line 1284) | def parse_ckpt_and_dataset_from_eval_dirname( function run_evaluation (line 1313) | def run_evaluation( FILE: holomotion/src/evaluation/multi_model_metrics_report.py class AnalysisReportGenerator (line 57) | class AnalysisReportGenerator: method __init__ (line 60) | def __init__( method run (line 89) | def run(self) -> None: method _load_and_prepare_data (line 112) | def _load_and_prepare_data(self) -> Optional[pd.DataFrame]: method _create_kde_plot (line 156) | def _create_kde_plot(self, metric: str, save_path: Path) -> None: method _create_matplotlib_radar_chart (line 195) | def _create_matplotlib_radar_chart(self) -> None: method _generate_markdown_report (line 333) | def _generate_markdown_report(self) -> str: function parse_args (line 426) | def parse_args() -> argparse.Namespace: FILE: holomotion/src/evaluation/obs/obs_builder.py function get_gravity_orientation (line 24) | def get_gravity_orientation(quaternion: np.ndarray) -> np.ndarray: class _CircularBuffer (line 45) | class _CircularBuffer: method __init__ (line 51) | def __init__(self, max_len: int, feat_dim: int, device: str): method buffer (line 66) | def buffer(self) -> torch.Tensor: method append (line 78) | def append(self, data: torch.Tensor) -> None: class PolicyObsBuilder (line 96) | class PolicyObsBuilder: method __init__ (line 108) | def __init__( method reset (line 142) | def reset(self) -> None: method _compute_term (line 148) | def _compute_term( method build_policy_obs (line 162) | def build_policy_obs(self) -> np.ndarray: FILE: holomotion/src/evaluation/ray_evaluator_actor.py class RayEvaluatorActor (line 30) | class RayEvaluatorActor: method __init__ (line 37) | def __init__(self, config_dict, output_dir): method run_clip (line 48) | def run_clip(self, file_path): function _load_ray_evaluator (line 83) | def _load_ray_evaluator(config_dict, model_type): FILE: holomotion/src/evaluation/ray_metrics_postprocess.py function run_metrics_postprocess_job (line 28) | def run_metrics_postprocess_job( FILE: holomotion/src/modules/agent_modules.py function _module_device (line 35) | def _module_device(module: nn.Module) -> torch.device: function _clone_module_for_cpu_export (line 43) | def _clone_module_for_cpu_export(module: nn.Module) -> nn.Module: class TensorDictAssembler (line 56) | class TensorDictAssembler(torch.nn.Module): method __init__ (line 57) | def __init__(self, schema_config: dict, *, output_mode: str = "flat"): method _get_from_data (line 82) | def _get_from_data(data: TensorDict, key: str): method _validate_to_seq (line 96) | def _validate_to_seq( method _validate_and_flatten (line 120) | def _validate_and_flatten( method forward (line 144) | def forward(self, data: TensorDict) -> torch.Tensor: method infer_output_dim (line 232) | def infer_output_dim(self, sample: TensorDict) -> int: class PPOActorOnnxModule (line 240) | class PPOActorOnnxModule(nn.Module): method __init__ (line 241) | def __init__( method forward (line 254) | def forward(self, obs: torch.Tensor) -> torch.Tensor: class PPOTFActorOnnxModule (line 265) | class PPOTFActorOnnxModule(nn.Module): method __init__ (line 266) | def __init__( method forward (line 279) | def forward( class PPOTFWoKVCacheActorOnnxModule (line 299) | class PPOTFWoKVCacheActorOnnxModule(nn.Module): method __init__ (line 300) | def __init__( method forward (line 313) | def forward(self, obs: torch.Tensor) -> torch.Tensor: class PPOCondTFActorOnnxModule (line 333) | class PPOCondTFActorOnnxModule(nn.Module): method __init__ (line 334) | def __init__( method forward (line 364) | def forward( class PPOActor (line 410) | class PPOActor(TensorDictModuleBase): method __init__ (line 411) | def __init__( method _process_module_config (line 554) | def _process_module_config(self, module_config_dict, num_actions): method _sigma_from_params (line 574) | def _sigma_from_params(self) -> torch.Tensor: method _normalize_actor_obs (line 579) | def _normalize_actor_obs( method _sigma_like (line 600) | def _sigma_like(self, like: torch.Tensor) -> torch.Tensor: method actor (line 617) | def actor(self): method flat_obs_dim (line 621) | def flat_obs_dim(self) -> int: method export_onnx (line 632) | def export_onnx( method forward (line 677) | def forward( method update_distribution (line 741) | def update_distribution(self, actor_obs): method override_sigma (line 749) | def override_sigma(self, sigma_override: float | torch.Tensor) -> None: class PPOCritic (line 778) | class PPOCritic(TensorDictModuleBase): method __init__ (line 779) | def __init__( method _normalize_critic_obs (line 884) | def _normalize_critic_obs( method forward (line 905) | def forward( class PPOTFActor (line 947) | class PPOTFActor(PPOActor): method __init__ (line 955) | def __init__( method _sigma_from_params (line 1001) | def _sigma_from_params(self) -> torch.Tensor: method reset_kv_cache (line 1007) | def reset_kv_cache(self, num_envs: int, device): method clear_env_cache (line 1011) | def clear_env_cache(self, env_ids: torch.Tensor): method onnx_past_key_values_shape (line 1015) | def onnx_past_key_values_shape( method onnx_moe_layer_indices (line 1032) | def onnx_moe_layer_indices(self) -> list[int]: method onnx_routing_output_names (line 1042) | def onnx_routing_output_names(self) -> list[str]: method _maybe_update_aux_router_future_recon_norm (line 1053) | def _maybe_update_aux_router_future_recon_norm( method export_onnx (line 1070) | def export_onnx( method update_distribution (line 1151) | def update_distribution(self, actor_obs): method forward (line 1162) | def forward( method sequence_forward_logp (line 1341) | def sequence_forward_logp( class PPOTFRefRouterActor (line 1512) | class PPOTFRefRouterActor(PPOTFActor): method _leaf_obs_name (line 1514) | def _leaf_obs_name(term: str) -> str: method _infer_flat_term_dim (line 1518) | def _infer_flat_term_dim( method infer_router_feature_indices (line 1554) | def infer_router_feature_indices( method __init__ (line 1591) | def __init__( class PPOTFRefRouterSeqActor (line 1640) | class PPOTFRefRouterSeqActor(PPOTFActor): method _leaf_obs_name (line 1663) | def _leaf_obs_name(term: str) -> str: method _infer_flat_term_dim (line 1667) | def _infer_flat_term_dim( method _validate_v2_aux_config (line 1702) | def _validate_v2_aux_config(cls, module_config_dict: dict) -> None: method _build_aux_router_future_recon_schema (line 1727) | def _build_aux_router_future_recon_schema( method _prepare_aux_router_future_recon (line 1759) | def _prepare_aux_router_future_recon( method _infer_shared_ref_layout (line 1784) | def _infer_shared_ref_layout( method __init__ (line 1891) | def __init__( class PPOTFRefRouterV3Actor (line 1967) | class PPOTFRefRouterV3Actor(PPOTFRefRouterSeqActor): method __init__ (line 1968) | def __init__( class PPOCondTFActor (line 2048) | class PPOCondTFActor(PPOTFActor): method __init__ (line 2051) | def __init__( method _infer_future_term_dims (line 2113) | def _infer_future_term_dims(self, obs_example: TensorDict) -> list[int]: method flat_obs_dim (line 2151) | def flat_obs_dim(self) -> int: method _normalize_state_obs (line 2160) | def _normalize_state_obs( method _assemble_state_future (line 2178) | def _assemble_state_future( method _split_flat_obs (line 2189) | def _split_flat_obs( method export_onnx (line 2218) | def export_onnx( method update_distribution (line 2276) | def update_distribution(self, actor_obs): method forward (line 2291) | def forward( method sequence_forward_logp_cond (line 2469) | def sequence_forward_logp_cond( FILE: holomotion/src/modules/network_modules.py class EmpiricalNormalization (line 26) | class EmpiricalNormalization(nn.Module): method __init__ (line 29) | def __init__( method mean (line 90) | def mean(self): method std (line 94) | def std(self): method forward (line 97) | def forward(self, x): method normalize_only (line 111) | def normalize_only(self, x): method update (line 116) | def update(self, x): method inverse (line 147) | def inverse(self, y): method sync_stats_across_processes (line 150) | def sync_stats_across_processes(self, accelerator): class MLP (line 225) | class MLP(nn.Module): method __init__ (line 226) | def __init__( method forward (line 288) | def forward(self, x: torch.Tensor) -> torch.Tensor: class ConvMLP (line 303) | class ConvMLP(nn.Module): method __init__ (line 306) | def __init__( method forward (line 356) | def forward(self, hist_seq: torch.Tensor) -> torch.Tensor: class ReferenceMotionConvRouterEncoder (line 363) | class ReferenceMotionConvRouterEncoder(nn.Module): method __init__ (line 366) | def __init__( method forward (line 434) | def forward(self, seq: torch.Tensor) -> torch.Tensor: class SingleQueryAttentionPool (line 450) | class SingleQueryAttentionPool(nn.Module): method __init__ (line 451) | def __init__(self, d_model: int): method forward (line 460) | def forward( class GroupedMoETransformerPolicy (line 498) | class GroupedMoETransformerPolicy(nn.Module): method __init__ (line 516) | def __init__( method _load_from_state_dict (line 913) | def _load_from_state_dict( method _router_no_grad_context (line 962) | def _router_no_grad_context(self): method _apply_base_freeze_router_state (line 967) | def _apply_base_freeze_router_state(self) -> None: method _apply_freeze_router_state (line 972) | def _apply_freeze_router_state(self) -> None: method _set_cos_sin_cache (line 979) | def _set_cos_sin_cache(self, seq_len): method get_cos_sin (line 996) | def get_cos_sin(self, x, position_ids): method _init_last_moe_router_shift_state (line 1008) | def _init_last_moe_router_shift_state(self, num_envs: int, device) -> ... method _accumulate_last_moe_router_shift (line 1039) | def _accumulate_last_moe_router_shift( method get_last_moe_router_shift_stats (line 1085) | def get_last_moe_router_shift_stats( method reset_kv_cache (line 1095) | def reset_kv_cache(self, num_envs: int, device): method clear_env_cache (line 1123) | def clear_env_cache(self, env_ids: torch.Tensor | None): method set_collect_routing_stats (line 1156) | def set_collect_routing_stats(self, collect: bool) -> None: method reset_routing_stats (line 1165) | def reset_routing_stats(self) -> None: method clear_router_distribution_cache (line 1170) | def clear_router_distribution_cache(self) -> None: method _set_capture_router_distributions (line 1178) | def _set_capture_router_distributions(self, capture: bool) -> None: method _set_capture_router_features (line 1184) | def _set_capture_router_features( method apply_dynamic_bias_update_from_stats (line 1197) | def apply_dynamic_bias_update_from_stats(self) -> None: method _make_causal_mask (line 1202) | def _make_causal_mask(self, T: int, device) -> torch.Tensor: method _forward_layers_range (line 1206) | def _forward_layers_range( method _forward_layers (line 1332) | def _forward_layers( method _compute_router_hidden (line 1362) | def _compute_router_hidden(self, x: torch.Tensor) -> torch.Tensor | None: method sequence_mu (line 1365) | def sequence_mu( method sequence_hidden (line 1441) | def sequence_hidden( method _embed_future_tokens (line 1484) | def _embed_future_tokens( method sequence_mu_cond (line 1525) | def sequence_mu_cond( method predict_aux_from_pre_moe (line 1629) | def predict_aux_from_pre_moe( method predict_aux_router_command_from_router_features (line 1707) | def predict_aux_router_command_from_router_features( method update_aux_router_future_recon_normalizer (line 1726) | def update_aux_router_future_recon_normalizer( method normalize_aux_router_future_recon_target (line 1748) | def normalize_aux_router_future_recon_target( method predict_aux_router_future_recon_from_router_hidden (line 1771) | def predict_aux_router_future_recon_from_router_hidden( method single_step_mu_cond (line 1790) | def single_step_mu_cond( method forward (line 1914) | def forward( method single_step_mu (line 1930) | def single_step_mu(self, x: torch.Tensor) -> torch.Tensor: method _forward_inference_onnx (line 2012) | def _forward_inference_onnx( class ReferenceRoutedGroupedMoETransformerPolicy (line 2112) | class ReferenceRoutedGroupedMoETransformerPolicy(GroupedMoETransformerPo... method __init__ (line 2113) | def __init__( method _apply_freeze_router_state (line 2185) | def _apply_freeze_router_state(self) -> None: method _compute_router_hidden (line 2189) | def _compute_router_hidden(self, x: torch.Tensor) -> torch.Tensor | None: method _forward_inference_onnx_cond (line 2201) | def _forward_inference_onnx_cond( class ReferenceRoutedGroupedMoETransformerPolicyV2 (line 2281) | class ReferenceRoutedGroupedMoETransformerPolicyV2( method __init__ (line 2286) | def __init__( method _apply_freeze_router_state (line 2545) | def _apply_freeze_router_state(self) -> None: method _build_shared_ref_tokens (line 2556) | def _build_shared_ref_tokens( method _build_shared_ref_tokens_single_step (line 2574) | def _build_shared_ref_tokens_single_step( method _split_actor_ref_inputs (line 2604) | def _split_actor_ref_inputs( method _encode_future_tokens (line 2639) | def _encode_future_tokens(self, ref_fut_x: torch.Tensor) -> torch.Tensor: method _pool_router_context (line 2654) | def _pool_router_context( method _apply_actor_ref_film (line 2679) | def _apply_actor_ref_film( method _actor_film_gain (line 2695) | def _actor_film_gain(self) -> torch.Tensor: method _normalize_actor_film_delta (line 2700) | def _normalize_actor_film_delta(self, delta: torch.Tensor) -> torch.Te... method _ensure_internal_cache_device (line 2704) | def _ensure_internal_cache_device( method reset_kv_cache (line 2728) | def reset_kv_cache(self, num_envs: int, device): method clear_env_cache (line 2765) | def clear_env_cache(self, env_ids: torch.Tensor | None): method predict_aux_from_pre_moe (line 2801) | def predict_aux_from_pre_moe( method sequence_mu (line 2826) | def sequence_mu( method sequence_hidden (line 2911) | def sequence_hidden( method forward (line 2965) | def forward( method single_step_mu (line 2980) | def single_step_mu(self, x: torch.Tensor) -> torch.Tensor: method _forward_inference_onnx (line 3082) | def _forward_inference_onnx( class ReferenceRoutedGroupedMoETransformerPolicyV3 (line 3207) | class ReferenceRoutedGroupedMoETransformerPolicyV3( method __init__ (line 3212) | def __init__( method _apply_freeze_router_state (line 3406) | def _apply_freeze_router_state(self) -> None: method _build_router_ref_motion (line 3415) | def _build_router_ref_motion( method _build_shared_router_summary (line 3433) | def _build_shared_router_summary( method _build_router_h_per_layer (line 3440) | def _build_router_h_per_layer( method _build_ref_hist_hidden (line 3454) | def _build_ref_hist_hidden( method _build_ref_hist_hidden_single_step (line 3469) | def _build_ref_hist_hidden_single_step( method predict_aux_from_pre_moe (line 3496) | def predict_aux_from_pre_moe( method sequence_mu (line 3508) | def sequence_mu( method sequence_hidden (line 3584) | def sequence_hidden( method forward (line 3628) | def forward( method single_step_mu (line 3643) | def single_step_mu(self, x: torch.Tensor) -> torch.Tensor: method _forward_inference_onnx (line 3716) | def _forward_inference_onnx( class GroupedMoEBlock (line 3805) | class GroupedMoEBlock(nn.Module): method __init__ (line 3806) | def __init__( method reset_parameters (line 3994) | def reset_parameters(self) -> None: method _load_from_state_dict (line 3998) | def _load_from_state_dict( method _apply_freeze_router_state (line 4085) | def _apply_freeze_router_state(self) -> None: method reset_routing_stats (line 4088) | def reset_routing_stats(self) -> None: method accumulate_routing_stats (line 4103) | def accumulate_routing_stats(self, topk_idx: torch.Tensor) -> None: method _apply_bias_update_from_counts (line 4110) | def _apply_bias_update_from_counts(self, counts: torch.Tensor) -> None: method apply_bias_update_from_counts (line 4151) | def apply_bias_update_from_counts(self) -> None: method _update_routed_expert_stats_and_floor_loss (line 4157) | def _update_routed_expert_stats_and_floor_loss( method _compute_sparse_experts (line 4260) | def _compute_sparse_experts( method _compute_with_grouped_mm (line 4302) | def _compute_with_grouped_mm( method _compute_with_topk_selection (line 4328) | def _compute_with_topk_selection( method _compute_with_loop_fallback (line 4368) | def _compute_with_loop_fallback( method compute_moe_ffn (line 4391) | def compute_moe_ffn( method forward (line 4500) | def forward( class ModernTransformerBlock (line 4542) | class ModernTransformerBlock(nn.Module): method __init__ (line 4551) | def __init__( method forward (line 4598) | def forward( class DeepseekV3MLP (line 4642) | class DeepseekV3MLP(nn.Module): method __init__ (line 4645) | def __init__(self, hidden_size=None, intermediate_size=None): method forward (line 4662) | def forward(self, x: torch.Tensor) -> torch.Tensor: class RMSNorm (line 4669) | class RMSNorm(nn.Module): method __init__ (line 4672) | def __init__(self, dim: int, eps: float = 1e-6): method forward (line 4677) | def forward(self, x: torch.Tensor) -> torch.Tensor: class ModernAttention (line 4683) | class ModernAttention(nn.Module): method __init__ (line 4697) | def __init__( method forward (line 4749) | def forward( method forward_single_token (line 4823) | def forward_single_token( class ModernCrossAttention (line 4937) | class ModernCrossAttention(nn.Module): method __init__ (line 4940) | def __init__( method forward (line 4987) | def forward( function repeat_kv (line 5051) | def repeat_kv(hidden_states: torch.Tensor, n_rep: int) -> torch.Tensor: function export_safe_scaled_dot_product_attention (line 5074) | def export_safe_scaled_dot_product_attention( function rotate_half (line 5114) | def rotate_half(x): function apply_rotary_pos_emb (line 5121) | def apply_rotary_pos_emb(q, k, cos, sin, position_ids=None, unsqueeze_di... function _grouped_linear (line 5138) | def _grouped_linear( FILE: holomotion/src/motion_retargeting/gmr_to_holomotion.py function quaternion_to_axis_angle (line 45) | def quaternion_to_axis_angle(q: torch.Tensor) -> torch.Tensor: function dof_to_pose_aa (line 58) | def dof_to_pose_aa( function load_any_pkl (line 91) | def load_any_pkl(p: Path): function unwrap_source (line 96) | def unwrap_source(obj) -> Dict[str, np.ndarray]: function make_motion_key (line 107) | def make_motion_key(p: Path, src_dir: Path) -> str: function key_to_filename (line 112) | def key_to_filename(key: str) -> str: function get_ref_schema (line 116) | def get_ref_schema( function infer_T (line 157) | def infer_T(src_inner: Dict[str, np.ndarray]) -> Optional[int]: function build_inner_from_source (line 177) | def build_inner_from_source( function to_torch (line 280) | def to_torch(tensor): function batch_interpolate_tensor (line 287) | def batch_interpolate_tensor( function fast_interpolate_motion (line 364) | def fast_interpolate_motion(motion_dict, source_fps, target_fps): function process_single_motion (line 406) | def process_single_motion( class InMemoryAlignedLoader (line 658) | class InMemoryAlignedLoader: method __init__ (line 661) | def __init__(self, mapping: Dict[str, Dict[str, object]]): method keys (line 664) | def keys(self) -> List[str]: method __len__ (line 667) | def __len__(self): method __getitem__ (line 670) | def __getitem__(self, k: str): method load (line 673) | def load(self, k: str): method get (line 676) | def get(self, k: str, default=None): function arrays_for_npz (line 680) | def arrays_for_npz( class MotionProcessorActor (line 712) | class MotionProcessorActor: method __init__ (line 717) | def __init__( method _dof_to_pose_aa_cached (line 728) | def _dof_to_pose_aa_cached( method process_pkl (line 750) | def process_pkl( function main (line 795) | def main(cfg: DictConfig) -> None: FILE: holomotion/src/motion_retargeting/holomotion_fk.py class MJCFParser (line 31) | class MJCFParser: method __init__ (line 32) | def __init__(self, robot_file_path: str) -> None: method parse_vec (line 36) | def parse_vec( method _find_parent (line 49) | def _find_parent( method _select_include_children (line 59) | def _select_include_children( method _resolve_includes (line 73) | def _resolve_includes(cls, root: ETree.Element, base_dir: str) -> None: method load_root (line 96) | def load_root(self) -> ETree.Element: method parse (line 101) | def parse( class URDFParser (line 206) | class URDFParser: method __init__ (line 207) | def __init__(self, urdf_path: str) -> None: method _as_tf (line 211) | def _as_tf( method _load_chain (line 220) | def _load_chain(self) -> pk.Chain: method parse (line 225) | def parse( class HoloMotionFK (line 353) | class HoloMotionFK(torch.nn.Module): method __init__ (line 354) | def __init__( method forward (line 426) | def forward( method _forward_impl (line 532) | def _forward_impl( FILE: holomotion/src/motion_retargeting/holomotion_preprocess.py function compute_slices (line 48) | def compute_slices( function _reshape_time_flat (line 66) | def _reshape_time_flat(a: np.ndarray) -> Tuple[np.ndarray, Tuple[int, ..... function _butterworth_lowpass_smooth_time (line 72) | def _butterworth_lowpass_smooth_time( function _quat_normalize (line 98) | def _quat_normalize(q: np.ndarray) -> np.ndarray: function _quat_hemisphere_align (line 104) | def _quat_hemisphere_align(q: np.ndarray) -> np.ndarray: function _quat_conjugate (line 118) | def _quat_conjugate(q: np.ndarray) -> np.ndarray: function _quat_multiply (line 124) | def _quat_multiply(a: np.ndarray, b: np.ndarray) -> np.ndarray: function _finite_difference_time (line 135) | def _finite_difference_time(a: np.ndarray, dt: float) -> np.ndarray: function _angular_velocity_from_quat (line 148) | def _angular_velocity_from_quat( function butterworth_filter_ref_arrays (line 157) | def butterworth_filter_ref_arrays( function _summary (line 168) | def _summary(arr: np.ndarray) -> Dict[str, float]: function _ds_summary (line 190) | def _ds_summary(arr: np.ndarray) -> Dict[str, float]: function _interpolate_linear (line 212) | def _interpolate_linear( function _interpolate_quaternions_slerp (line 232) | def _interpolate_quaternions_slerp( function _extract_yaw_only_quat (line 259) | def _extract_yaw_only_quat(quat: np.ndarray) -> np.ndarray: function _dof_to_pose_aa (line 275) | def _dof_to_pose_aa( function _compute_fk_motion (line 310) | def _compute_fk_motion( class ProcessedClip (line 373) | class ProcessedClip: class HoloMotionPreprocessor (line 379) | class HoloMotionPreprocessor: method __init__ (line 387) | def __init__( method _resolve_pipeline (line 403) | def _resolve_pipeline(self, pipeline: Optional[List[str]]) -> List[str]: method process_clip (line 408) | def process_clip(self, clip: ProcessedClip) -> List[ProcessedClip]: method _apply_slicing (line 450) | def _apply_slicing(self, clip: ProcessedClip) -> List[ProcessedClip]: method _apply_filtering (line 516) | def _apply_filtering(self, clip: ProcessedClip) -> ProcessedClip: method _apply_filename_as_motionkey (line 538) | def _apply_filename_as_motionkey( method _apply_add_legacy_keys (line 560) | def _apply_add_legacy_keys(self, clip: ProcessedClip) -> ProcessedClip: method _apply_legacy_to_ref_keys (line 599) | def _apply_legacy_to_ref_keys(self, clip: ProcessedClip) -> ProcessedC... method _get_humanoid_fk (line 639) | def _get_humanoid_fk(self) -> HumanoidBatch: method _get_default_dof_pos (line 649) | def _get_default_dof_pos(self) -> np.ndarray: method _apply_add_padding (line 660) | def _apply_add_padding(self, clip: ProcessedClip) -> ProcessedClip: method process_npz_file (line 820) | def process_npz_file(self, npz_path: Path) -> List[ProcessedClip]: method run_on_directory (line 843) | def run_on_directory( method _run_on_directory_sequential (line 876) | def _run_on_directory_sequential( method _run_on_directory_ray (line 898) | def _run_on_directory_ray( method tag_directory (line 951) | def tag_directory(self, clips_dir: Path, tags_path: Path) -> None: class PreprocessorActor (line 1064) | class PreprocessorActor: method __init__ (line 1067) | def __init__( method process_npz_file (line 1086) | def process_npz_file(self, npz_path_str: str) -> List[ProcessedClip]: function main (line 1096) | def main(cfg: DictConfig) -> None: FILE: holomotion/src/motion_retargeting/kinematic_filter.py function _eval_rule (line 30) | def _eval_rule(val: float, op: str, thr: float) -> bool: function _deep_get (line 46) | def _deep_get(container: Dict[str, Any], parts: List[str]) -> Optional[f... function _resolve_value (line 57) | def _resolve_value( function filter_with_schema (line 78) | def filter_with_schema( function _default_schema_path (line 131) | def _default_schema_path() -> Path: function run (line 144) | def run( function main (line 244) | def main(cfg: DictConfig) -> None: FILE: holomotion/src/motion_retargeting/pack_hdf5_v2.py function _ensure_dir (line 32) | def _ensure_dir(path: str) -> None: class ArraySpec (line 37) | class ArraySpec: class ClipEntry (line 44) | class ClipEntry: class Hdf5ShardWriter (line 50) | class Hdf5ShardWriter: method __init__ (line 51) | def __init__( method append_motion (line 90) | def append_motion( method finalize (line 118) | def finalize(self) -> Dict[str, Any]: function _normalize_root_list (line 146) | def _normalize_root_list(value: Any) -> List[str]: function _discover_motion_entries (line 156) | def _discover_motion_entries(roots: List[str]) -> List[ClipEntry]: function _load_metadata_json (line 185) | def _load_metadata_json(npz_path: Path) -> Tuple[str, Dict[str, Any]]: function _cast_array (line 201) | def _cast_array(array: np.ndarray, name: str, npz_path: Path) -> np.ndar... function _discover_array_specs (line 220) | def _discover_array_specs(first_npz: Path) -> List[ArraySpec]: function _load_npz_arrays (line 253) | def _load_npz_arrays( function _relative_npz_path (line 310) | def _relative_npz_path(npz_path: Path, roots: List[str]) -> str: function _nan_array_names (line 322) | def _nan_array_names(arrays: Dict[str, np.ndarray]) -> List[str]: function _estimate_bytes_for_motion (line 333) | def _estimate_bytes_for_motion(npz_path: Path, mode: str) -> int: function main (line 369) | def main(cfg: OmegaConf) -> None: FILE: holomotion/src/motion_retargeting/reference_filtering.py function _reshape_time_flat (line 27) | def _reshape_time_flat(a: np.ndarray) -> Tuple[np.ndarray, Tuple[int, ..... function _butterworth_lowpass_smooth_time (line 33) | def _butterworth_lowpass_smooth_time( function _quat_normalize (line 59) | def _quat_normalize(q: np.ndarray) -> np.ndarray: function _quat_hemisphere_align (line 65) | def _quat_hemisphere_align(q: np.ndarray) -> np.ndarray: function _quat_conjugate (line 79) | def _quat_conjugate(q: np.ndarray) -> np.ndarray: function _quat_multiply (line 85) | def _quat_multiply(a: np.ndarray, b: np.ndarray) -> np.ndarray: function _finite_difference_time (line 96) | def _finite_difference_time(a: np.ndarray, dt: float) -> np.ndarray: function _angular_velocity_from_quat (line 109) | def _angular_velocity_from_quat( function butterworth_filter_ref_arrays (line 118) | def butterworth_filter_ref_arrays( function butterworth_filter_root_dof_arrays (line 162) | def butterworth_filter_root_dof_arrays( FILE: holomotion/src/motion_retargeting/utils/rotation_conversions.py function wxyz_to_xyzw (line 13) | def wxyz_to_xyzw(quat): function xyzw_to_wxyz (line 17) | def xyzw_to_wxyz(quat): function quaternion_to_matrix (line 48) | def quaternion_to_matrix(quaternions: torch.Tensor) -> torch.Tensor: function _copysign (line 79) | def _copysign(a: torch.Tensor, b: torch.Tensor) -> torch.Tensor: function _sqrt_positive_part (line 99) | def _sqrt_positive_part(x: torch.Tensor) -> torch.Tensor: function matrix_to_quaternion (line 110) | def matrix_to_quaternion(matrix: torch.Tensor) -> torch.Tensor: function _axis_angle_rotation (line 176) | def _axis_angle_rotation(axis: str, angle: torch.Tensor) -> torch.Tensor: function euler_angles_to_matrix (line 206) | def euler_angles_to_matrix( function _angle_from_tan (line 239) | def _angle_from_tan( function _index_from_letter (line 272) | def _index_from_letter(letter: str) -> int: function matrix_to_euler_angles (line 282) | def matrix_to_euler_angles( function random_quaternions (line 326) | def random_quaternions( function random_rotations (line 353) | def random_rotations( function random_rotation (line 374) | def random_rotation( function standardize_quaternion (line 391) | def standardize_quaternion(quaternions: torch.Tensor) -> torch.Tensor: function quaternion_raw_multiply (line 407) | def quaternion_raw_multiply(a: torch.Tensor, b: torch.Tensor) -> torch.T... function quaternion_multiply (line 429) | def quaternion_multiply(a: torch.Tensor, b: torch.Tensor) -> torch.Tensor: function quaternion_invert (line 448) | def quaternion_invert(quaternion: torch.Tensor) -> torch.Tensor: function quaternion_apply (line 463) | def quaternion_apply( function axis_angle_to_matrix (line 489) | def axis_angle_to_matrix(axis_angle: torch.Tensor) -> torch.Tensor: function matrix_to_axis_angle (line 505) | def matrix_to_axis_angle(matrix: torch.Tensor) -> torch.Tensor: function axis_angle_to_quaternion (line 521) | def axis_angle_to_quaternion(axis_angle: torch.Tensor) -> torch.Tensor: function quaternion_to_axis_angle (line 554) | def quaternion_to_axis_angle(quaternions: torch.Tensor) -> torch.Tensor: function rotation_6d_to_matrix (line 585) | def rotation_6d_to_matrix(d6: torch.Tensor) -> torch.Tensor: function matrix_to_rotation_6d (line 611) | def matrix_to_rotation_6d(matrix: torch.Tensor) -> torch.Tensor: FILE: holomotion/src/motion_retargeting/utils/torch_humanoid_batch.py class HumanoidBatch (line 53) | class HumanoidBatch: method __init__ (line 54) | def __init__(self, cfg, device=None): method from_mjcf (line 207) | def from_mjcf(self, path): method fk_batch (line 285) | def fk_batch( method convert_to_proper_kinematic (line 380) | def convert_to_proper_kinematic(self, return_dict): method forward_kinematics_batch (line 427) | def forward_kinematics_batch( method _compute_velocity (line 488) | def _compute_velocity(p, time_delta, guassian_filter=True): method _compute_angular_velocity (line 500) | def _compute_angular_velocity(r, time_delta: float, guassian_filter=Tr... method load_mesh (line 519) | def load_mesh(self): method mesh_fk (line 610) | def mesh_fk(self, pose=None, trans=None): function main (line 670) | def main(cfg: DictConfig): FILE: holomotion/src/motion_retargeting/utils/visualize_with_mujoco.py class OffscreenRenderer (line 34) | class OffscreenRenderer: method __init__ (line 37) | def __init__(self, model, height, width): method render (line 66) | def render( method close (line 92) | def close(self): function _get_key_prefix_order (line 96) | def _get_key_prefix_order(cfg: DictConfig) -> List[str]: function _get_ref_key_prefix_order (line 121) | def _get_ref_key_prefix_order(cfg: DictConfig) -> List[str]: function _pick_with_prefixes (line 140) | def _pick_with_prefixes( function _resolve_visualization_arrays (line 164) | def _resolve_visualization_arrays( function _draw_body_spheres_to_scene (line 198) | def _draw_body_spheres_to_scene( function _load_npz_as_motion (line 234) | def _load_npz_as_motion( function _collect_all_npz (line 268) | def _collect_all_npz( function _infer_fps_from_meta (line 300) | def _infer_fps_from_meta( function _time_length (line 310) | def _time_length(*arrays) -> int: function process_single_motion_remote_npz (line 321) | def process_single_motion_remote_npz( class MotionRendererNPZ (line 423) | class MotionRendererNPZ: method process_single_motion (line 424) | def process_single_motion( function main (line 521) | def main(cfg: DictConfig) -> None: FILE: holomotion/src/training/h5_dataloader.py function _cpu_only_dataloader_worker_init_fn (line 90) | def _cpu_only_dataloader_worker_init_fn(worker_id: int) -> None: function _allocate_batch_counts (line 96) | def _allocate_batch_counts( function _configure_weighted_bins (line 134) | def _configure_weighted_bins( function _collect_manifest_keys (line 300) | def _collect_manifest_keys( function _normalize_online_filter_cfg (line 336) | def _normalize_online_filter_cfg( function preview_weighted_bin_from_manifest (line 370) | def preview_weighted_bin_from_manifest( function preview_uniform_from_manifest (line 417) | def preview_uniform_from_manifest( function preview_sampling_from_cfg (line 585) | def preview_sampling_from_cfg(motion_cfg: Mapping[str, Any]) -> None: class _WorldFrameNormalizeTransform (line 650) | class _WorldFrameNormalizeTransform: method _apply_prefix (line 654) | def _apply_prefix( method __call__ (line 700) | def __call__(self, arrays: Dict[str, Tensor]) -> None: class _CpuFKTransform (line 755) | class _CpuFKTransform: method __init__ (line 758) | def __init__(self, robot_file_path: str) -> None: method __call__ (line 764) | def __call__( class MotionWindow (line 797) | class MotionWindow: class MotionClipSample (line 809) | class MotionClipSample: class ClipBatch (line 829) | class ClipBatch: method collate_fn (line 849) | def collate_fn(samples: List[MotionClipSample]) -> "ClipBatch": class Hdf5RootDofDataset (line 901) | class Hdf5RootDofDataset(Dataset[MotionClipSample]): method __init__ (line 904) | def __init__( method set_progress_counter (line 1046) | def set_progress_counter(self, counter: Optional[mp.Value]) -> None: method _normalize_motion_key (line 1050) | def _normalize_motion_key(value: Any) -> Optional[str]: method _build_motion_key_aliases (line 1063) | def _build_motion_key_aliases( method _enumerate_windows (line 1085) | def _enumerate_windows(self) -> List[MotionWindow]: method __len__ (line 1130) | def __len__(self) -> int: method _cast_motion_np (line 1134) | def _cast_motion_np(np_array: np.ndarray, name: str) -> Tensor: method _make_scalar_metadata_tensor (line 1151) | def _make_scalar_metadata_tensor(value: float, length: int) -> Tensor: method _sample_online_filter_cutoff_hz (line 1154) | def _sample_online_filter_cutoff_hz(self) -> float: method _add_online_filtered_reference_tensors (line 1167) | def _add_online_filtered_reference_tensors( method _derive_root_state_tensors (line 1193) | def _derive_root_state_tensors( method __getitem__ (line 1214) | def __getitem__(self, index: int) -> MotionClipSample: method _get_shard_handle (line 1294) | def _get_shard_handle(self, shard_index: int) -> h5py.File: method close (line 1335) | def close(self) -> None: method __del__ (line 1342) | def __del__(self) -> None: function _normalize_root_list (line 1346) | def _normalize_root_list(value: Any) -> List[str]: function build_motion_datasets_from_cfg (line 1354) | def build_motion_datasets_from_cfg( function _cache_collate_fn (line 1491) | def _cache_collate_fn( class InfiniteDistributedSampler (line 1508) | class InfiniteDistributedSampler(DistributedSampler): method __iter__ (line 1511) | def __iter__(self): class InfiniteRandomSampler (line 1520) | class InfiniteRandomSampler(Sampler[int]): method __init__ (line 1523) | def __init__(self, data_source: Dataset, seed: int = 0) -> None: method __iter__ (line 1528) | def __iter__(self): method __len__ (line 1538) | def __len__(self) -> int: class WeightedBinInfiniteSampler (line 1543) | class WeightedBinInfiniteSampler(Sampler[int]): method __init__ (line 1546) | def __init__( method __iter__ (line 1567) | def __iter__(self): method __len__ (line 1610) | def __len__(self) -> int: class PrioritizedInfiniteSampler (line 1614) | class PrioritizedInfiniteSampler(Sampler[int]): method __init__ (line 1617) | def __init__( method state_version (line 1680) | def state_version(self) -> int: method get_pool_statistics (line 1683) | def get_pool_statistics(self) -> Optional[Dict[str, float]]: method _aggregate_by_index (line 1689) | def _aggregate_by_index( method _pool_batch_sizes (line 1713) | def _pool_batch_sizes(self) -> Tuple[int, int]: method _priority_scores_for_indices (line 1721) | def _priority_scores_for_indices(self, indices: Tensor) -> Tensor: method _pool_metric_stats (line 1738) | def _pool_metric_stats(self) -> Dict[str, float]: method get_window_state_for_indices (line 1756) | def get_window_state_for_indices( method _rebuild_prioritized_pool (line 1796) | def _rebuild_prioritized_pool(self, candidate_indices: Tensor) -> None: method maybe_update_from_observations (line 1861) | def maybe_update_from_observations( method _reset_uniform_cycle (line 1983) | def _reset_uniform_cycle(self) -> None: method _next_uniform_index (line 2018) | def _next_uniform_index(self) -> int: method _sample_uniform_indices (line 2028) | def _sample_uniform_indices( method _sample_prioritized_indices (line 2058) | def _sample_prioritized_indices( method _sample_batch_indices (line 2069) | def _sample_batch_indices(self, generator: torch.Generator) -> Tensor: method get_scores_for_indices (line 2100) | def get_scores_for_indices(self, window_indices: Tensor) -> Tensor: method __iter__ (line 2109) | def __iter__(self): method __len__ (line 2125) | def __len__(self) -> int: class Hdf5MotionDataset (line 2129) | class Hdf5MotionDataset(Dataset[MotionClipSample]): method __init__ (line 2132) | def __init__( method set_progress_counter (line 2238) | def set_progress_counter(self, counter: Optional[mp.Value]) -> None: method _enumerate_windows (line 2241) | def _enumerate_windows(self) -> List[MotionWindow]: method __len__ (line 2288) | def __len__(self) -> int: method __getitem__ (line 2291) | def __getitem__(self, index: int) -> MotionClipSample: method _get_shard_handle (line 2367) | def _get_shard_handle(self, shard_index: int) -> h5py.File: method close (line 2407) | def close(self) -> None: class MotionClipBatchCache (line 2415) | class MotionClipBatchCache: method _infer_cuda_device_index (line 2419) | def _infer_cuda_device_index() -> int: method _normalize_stage_device (line 2429) | def _normalize_stage_device( method __init__ (line 2474) | def __init__( method current_batch (line 2584) | def current_batch(self) -> ClipBatch: method max_frame_length (line 2589) | def max_frame_length(self) -> int: method clip_count (line 2593) | def clip_count(self) -> int: method mode (line 2597) | def mode(self) -> str: method swap_index (line 2601) | def swap_index(self) -> int: method num_batches (line 2605) | def num_batches(self) -> int: method set_mode (line 2610) | def set_mode(self, mode: str) -> None: method set_seed (line 2619) | def set_seed(self, seed: int, *, reinitialize: bool = True) -> None: method advance (line 2625) | def advance(self) -> None: method enable_weighted_bin_sampling (line 2654) | def enable_weighted_bin_sampling( method enable_cache_curriculum_sampling (line 2734) | def enable_cache_curriculum_sampling( method _prepare_cache_curriculum_dump_dir (line 2780) | def _prepare_cache_curriculum_dump_dir( method set_cache_curriculum_dump_dir (line 2794) | def set_cache_curriculum_dump_dir(self, dump_dir: str) -> None: method update_cache_curriculum (line 2800) | def update_cache_curriculum( method _refresh_prefetched_batch (line 2825) | def _refresh_prefetched_batch(self) -> None: method _maybe_dump_cache_curriculum_scores_json (line 2830) | def _maybe_dump_cache_curriculum_scores_json( method cache_curriculum_scores_for_window_indices (line 2938) | def cache_curriculum_scores_for_window_indices( method cache_curriculum_pool_statistics (line 2952) | def cache_curriculum_pool_statistics( method sample_env_assignments (line 2959) | def sample_env_assignments( method _prepare_gather_indices (line 2996) | def _prepare_gather_indices( method gather_tensor (line 3028) | def gather_tensor( method lengths_for_indices (line 3049) | def lengths_for_indices(self, clip_indices: Tensor) -> Tensor: method motion_keys_for_indices (line 3053) | def motion_keys_for_indices(self, clip_indices: Tensor) -> List[str]: method window_indices_for_indices (line 3060) | def window_indices_for_indices(self, clip_indices: Tensor) -> Tensor: method _prime_buffers (line 3066) | def _prime_buffers(self) -> None: method _fetch_next_batch (line 3094) | def _fetch_next_batch(self) -> ClipBatch: method _load_next_batch (line 3109) | def _load_next_batch(self) -> ClipBatch: method _load_next_batch_raw (line 3114) | def _load_next_batch_raw(self) -> ClipBatch: method _load_next_batch_with_progress (line 3125) | def _load_next_batch_with_progress(self) -> ClipBatch: method _stage_batch_blocking (line 3166) | def _stage_batch_blocking(self, batch: ClipBatch) -> ClipBatch: method _stage_batch (line 3199) | def _stage_batch( method _build_iterator (line 3269) | def _build_iterator( method _build_dataloader (line 3280) | def _build_dataloader(self) -> None: method close (line 3417) | def close(self) -> None: method __del__ (line 3435) | def __del__(self) -> None: method _loader_timeout_seconds (line 3438) | def _loader_timeout_seconds(self) -> float: method _result_timeout (line 3443) | def _result_timeout(self) -> Optional[float]: method _should_use_batch_progress (line 3449) | def _should_use_batch_progress(self) -> bool: FILE: holomotion/src/training/reference_filter_export.py function _to_numpy (line 37) | def _to_numpy(array_like) -> np.ndarray: function _require_tensor (line 43) | def _require_tensor( function _quat_xyzw_to_rpy (line 51) | def _quat_xyzw_to_rpy(quat_xyzw: np.ndarray) -> np.ndarray: function _write_npz (line 60) | def _write_npz(output_path: Path, payload: Mapping[str, np.ndarray]) -> ... function _plot_series_groups (line 64) | def _plot_series_groups( function _plot_dof_matrix (line 104) | def _plot_dof_matrix( function export_reference_filter_debug_artifacts (line 133) | def export_reference_filter_debug_artifacts( function _to_plain_sequence (line 373) | def _to_plain_sequence(values) -> list[str]: function export_reference_filter_artifacts_from_config (line 381) | def export_reference_filter_artifacts_from_config(config) -> Path: FILE: holomotion/src/training/train.py function _resolve_mujoco_eval_onnx_names (line 34) | def _resolve_mujoco_eval_onnx_names( function _exec_mujoco_eval (line 76) | def _exec_mujoco_eval(eval_override_dict: dict) -> None: function _maybe_export_reference_filter_artifacts (line 102) | def _maybe_export_reference_filter_artifacts(config: OmegaConf) -> None: function main (line 117) | def main(config: OmegaConf): FILE: holomotion/src/utils/config.py function setup_hydra_resolvers (line 28) | def setup_hydra_resolvers(): function compile_config (line 66) | def compile_config( function compile_config_hf_accelerate (line 89) | def compile_config_hf_accelerate( function compile_config_devices (line 147) | def compile_config_devices(config): function compile_config_directories (line 187) | def compile_config_directories(config, eval: bool = False) -> None: FILE: holomotion/src/utils/frame_utils.py function positions_world_to_env_frame (line 23) | def positions_world_to_env_frame( function root_relative_positions_from_env_frame (line 58) | def root_relative_positions_from_env_frame( function root_relative_positions_from_mixed_position_frames (line 108) | def root_relative_positions_from_mixed_position_frames( FILE: holomotion/src/utils/isaac_utils/maths.py function normalize (line 28) | def normalize(x, eps: float = 1e-9): function torch_rand_float (line 33) | def torch_rand_float(lower, upper, shape, device): function copysign (line 39) | def copysign(a, b): function set_seed (line 45) | def set_seed(seed, torch_deterministic=False): FILE: holomotion/src/utils/isaac_utils/rotations.py function quat_unit (line 34) | def quat_unit(a): function quat_apply (line 39) | def quat_apply(a: Tensor, b: Tensor, w_last: bool) -> Tensor: function quat_apply_yaw (line 54) | def quat_apply_yaw(quat: Tensor, vec: Tensor, w_last: bool) -> Tensor: function wrap_to_pi (line 62) | def wrap_to_pi(angles): function quat_conjugate (line 69) | def quat_conjugate(a: Tensor, w_last: bool) -> Tensor: function quat_apply (line 79) | def quat_apply(a: Tensor, b: Tensor, w_last: bool) -> Tensor: function quat_rotate (line 94) | def quat_rotate(q: Tensor, v: Tensor, w_last: bool) -> Tensor: function quat_rotate_inverse (line 115) | def quat_rotate_inverse(q: Tensor, v: Tensor, w_last: bool) -> Tensor: function quat_angle_axis (line 136) | def quat_angle_axis(x: Tensor, w_last: bool) -> Tuple[Tensor, Tensor]: function quat_from_angle_axis (line 153) | def quat_from_angle_axis(angle: Tensor, axis: Tensor, w_last: bool) -> T... function vec_to_heading (line 164) | def vec_to_heading(h_vec): function heading_to_quat (line 170) | def heading_to_quat(h_theta, w_last: bool): function quat_axis (line 184) | def quat_axis(q: Tensor, axis: int, w_last: bool) -> Tensor: function normalize_angle (line 191) | def normalize_angle(x): function get_basis_vector (line 196) | def get_basis_vector(q: Tensor, v: Tensor, w_last: bool) -> Tensor: function quat_to_angle_axis (line 201) | def quat_to_angle_axis(q): function slerp (line 226) | def slerp(q0, q1, t): function angle_axis_to_exp_map (line 253) | def angle_axis_to_exp_map(angle, axis): function my_quat_rotate (line 262) | def my_quat_rotate(q, v): function calc_heading (line 279) | def calc_heading(q): function quat_to_exp_map (line 294) | def quat_to_exp_map(q): function calc_heading_quat (line 304) | def calc_heading_quat(q, w_last): function calc_heading_quat_inv (line 318) | def calc_heading_quat_inv(q, w_last): function quat_inverse (line 332) | def quat_inverse(x, w_last): function get_euler_xyz (line 339) | def get_euler_xyz(q: Tensor, w_last: bool) -> Tuple[Tensor, Tensor, Tens... function get_euler_xyz_in_tensor (line 374) | def get_euler_xyz_in_tensor(q): function quat_pos (line 406) | def quat_pos(x): function is_valid_quat (line 415) | def is_valid_quat(q): function quat_normalize (line 421) | def quat_normalize(q): function quat_mul (line 428) | def quat_mul(a, b, w_last: bool): function quat_mul_norm (line 459) | def quat_mul_norm(x, y, w_last): function quat_mul_norm (line 468) | def quat_mul_norm(x, y, w_last): function quat_identity (line 477) | def quat_identity(shape: List[int]): function quat_identity_like (line 486) | def quat_identity_like(x): function transform_from_rotation_translation (line 492) | def transform_from_rotation_translation( function transform_rotation (line 508) | def transform_rotation(x): function transform_translation (line 514) | def transform_translation(x): function transform_mul (line 520) | def transform_mul(x, y): function quaternion_to_matrix (line 535) | def quaternion_to_matrix( function axis_angle_to_quaternion (line 577) | def axis_angle_to_quaternion(axis_angle: torch.Tensor) -> torch.Tensor: function wxyz_to_xyzw (line 611) | def wxyz_to_xyzw(quat): function xyzw_to_wxyz (line 616) | def xyzw_to_wxyz(quat): function matrix_to_quaternion (line 620) | def matrix_to_quaternion(matrix: torch.Tensor) -> torch.Tensor: function _sqrt_positive_part (line 684) | def _sqrt_positive_part(x: torch.Tensor) -> torch.Tensor: function quat_w_first (line 694) | def quat_w_first(rot): function quat_from_euler_xyz (line 700) | def quat_from_euler_xyz(roll, pitch, yaw): function remove_yaw_component (line 717) | def remove_yaw_component( FILE: holomotion/src/utils/onnx_export.py function _list_to_csv_str (line 26) | def _list_to_csv_str(arr, *, decimals: int = 3, delimiter: str = ",") ->... function attach_onnx_metadata_holomotion (line 33) | def attach_onnx_metadata_holomotion(env, onnx_path: str) -> None: function export_policy_to_onnx (line 67) | def export_policy_to_onnx( FILE: holomotion/src/utils/reference_prefix.py function resolve_reference_tensor_key (line 21) | def resolve_reference_tensor_key( FILE: holomotion/src/utils/torch_utils.py function to_torch (line 15) | def to_torch(x, dtype=torch.float, device="cpu", requires_grad=False): function quat_mul (line 22) | def quat_mul(q1: torch.Tensor, q2: torch.Tensor) -> torch.Tensor: function normalize (line 61) | def normalize(x, eps: float = 1e-9): function quat_apply (line 66) | def quat_apply(quat: torch.Tensor, vec: torch.Tensor) -> torch.Tensor: function quat_apply_inverse (line 88) | def quat_apply_inverse(quat: torch.Tensor, vec: torch.Tensor) -> torch.T... function quat_rotate (line 110) | def quat_rotate(q, v): function quat_rotate_inverse (line 127) | def quat_rotate_inverse(q, v): function quat_conjugate (line 144) | def quat_conjugate(a): function quat_unit (line 152) | def quat_unit(a): function quat_from_angle_axis (line 157) | def quat_from_angle_axis(angle, axis): function normalize_angle (line 165) | def normalize_angle(x): function tf_inverse (line 170) | def tf_inverse(q, t): function tf_apply (line 176) | def tf_apply(q, t, v): function tf_vector (line 181) | def tf_vector(q, v): function tf_combine (line 186) | def tf_combine(q1, t1, q2, t2): function get_basis_vector (line 191) | def get_basis_vector(q, v): function get_axis_params (line 195) | def get_axis_params(value, axis_idx, x_value=0.0, dtype=np.float64, n_di... function copysign (line 208) | def copysign(a, b): function get_euler_xyz (line 214) | def get_euler_xyz(q: torch.Tensor) -> tuple: function quat_from_euler_xyz (line 248) | def quat_from_euler_xyz(roll, pitch, yaw): function torch_rand_float (line 264) | def torch_rand_float(lower, upper, shape, device): function torch_random_dir_2 (line 270) | def torch_random_dir_2(shape, device): function tensor_clamp (line 276) | def tensor_clamp(t, min_t, max_t): function scale (line 281) | def scale(x, lower, upper): function unscale (line 286) | def unscale(x, lower, upper): function unscale_np (line 290) | def unscale_np(x, lower, upper): function quat_to_angle_axis (line 295) | def quat_to_angle_axis(q): function angle_axis_to_exp_map (line 318) | def angle_axis_to_exp_map(angle, axis): function quat_to_exp_map (line 326) | def quat_to_exp_map(q): function slerp (line 335) | def slerp(q0, q1, t): function my_quat_rotate (line 361) | def my_quat_rotate(q, v): function calc_heading (line 378) | def calc_heading(q): function calc_heading_quat (line 392) | def calc_heading_quat(q): function calc_heading_quat_inv (line 405) | def calc_heading_quat_inv(q): function axis_angle_from_quat (line 418) | def axis_angle_from_quat( function quat_box_minus (line 483) | def quat_box_minus( function quat_error_magnitude (line 517) | def quat_error_magnitude( function quat_inv (line 537) | def quat_inv(q: torch.Tensor, eps: float = 1e-9) -> torch.Tensor: function xyzw_to_wxyz (line 553) | def xyzw_to_wxyz(q: torch.Tensor) -> torch.Tensor: function wxyz_to_xyzw (line 564) | def wxyz_to_xyzw(q: torch.Tensor) -> torch.Tensor: function quat_mul_wxyz (line 576) | def quat_mul_wxyz(q1: torch.Tensor, q2: torch.Tensor) -> torch.Tensor: function rotate_vec_wxyz (line 588) | def rotate_vec_wxyz(q_wxyz: torch.Tensor, v: torch.Tensor) -> torch.Tensor: function rotate_vec_inv_wxyz (line 612) | def rotate_vec_inv_wxyz(q_wxyz: torch.Tensor, v: torch.Tensor) -> torch.... function subtract_frame_transforms (line 636) | def subtract_frame_transforms( function quat_normalize_wxyz (line 674) | def quat_normalize_wxyz(q_wxyz: torch.Tensor) -> torch.Tensor: function matrix_from_quat (line 689) | def matrix_from_quat(quaternions: torch.Tensor) -> torch.Tensor: function rot6d_from_quat (line 723) | def rot6d_from_quat(quaternions: torch.Tensor) -> torch.Tensor: function matrix_from_rot6d (line 741) | def matrix_from_rot6d(rot6d: torch.Tensor) -> torch.Tensor: function quat_from_matrix (line 770) | def quat_from_matrix(mat: torch.Tensor) -> torch.Tensor: function quat_from_rot6d (line 832) | def quat_from_rot6d(rot6d: torch.Tensor) -> torch.Tensor: function euler_xyz_from_quat (line 847) | def euler_xyz_from_quat( function yaw_quat (line 899) | def yaw_quat(quat: torch.Tensor) -> torch.Tensor: function standardize_quaternion (line 922) | def standardize_quaternion(quaternions: torch.Tensor) -> torch.Tensor: function gaussian_kernel1d (line 938) | def gaussian_kernel1d( function gaussian_filter1d (line 950) | def gaussian_filter1d(x: torch.Tensor, sigma: float, dim: int) -> torch.... function smooth_time_series (line 965) | def smooth_time_series( function grad_t (line 979) | def grad_t(x: torch.Tensor, dt: float) -> torch.Tensor: function axis_angle_to_matrix (line 993) | def axis_angle_to_matrix( FILE: holomotion/src/utils/unitree_g1_actuator_calculator.py class MotorFamily (line 27) | class MotorFamily: class JointSpec (line 40) | class JointSpec: function seconds_to_delay_steps (line 114) | def seconds_to_delay_steps(delay_seconds: float, physics_dt: float) -> int: function compute_pd_gains (line 218) | def compute_pd_gains( function fmt_float (line 227) | def fmt_float(x: float) -> str: function fmt_value (line 231) | def fmt_value(value: Any, indent: int = 0) -> str: function build_single_group_cfg (line 258) | def build_single_group_cfg( function render_single_group_cfg (line 327) | def render_single_group_cfg( function print_summary (line 372) | def print_summary(cfg: dict[str, Any]) -> None: function main (line 400) | def main() -> None: FILE: tests/benchmark_legacy_onnx_attention.py class _RawAttentionModule (line 20) | class _RawAttentionModule(nn.Module): method forward (line 21) | def forward( class _SafeAttentionModule (line 33) | class _SafeAttentionModule(nn.Module): method forward (line 34) | def forward( function _export_model (line 51) | def _export_model( function _benchmark_session (line 71) | def _benchmark_session( function main (line 97) | def main() -> None: FILE: tests/benchmark_moe_router_export.py function _extract_int_setting (line 8) | def _extract_int_setting(config_path: Path, key: str) -> int: function _load_b0310_shape_config (line 19) | def _load_b0310_shape_config() -> dict[str, int]: function _router_scores_training (line 38) | def _router_scores_training( function _router_scores_export_safe (line 56) | def _router_scores_export_safe( function _benchmark (line 72) | def _benchmark( function _run_case (line 96) | def _run_case( function main (line 143) | def main() -> None: FILE: tests/test_actor_export_config.py class _DummyTFModule (line 37) | class _DummyTFModule(nn.Module): method __init__ (line 38) | def __init__(self): method forward (line 45) | def forward( class _DummyAttentionTFModule (line 54) | class _DummyAttentionTFModule(nn.Module): method __init__ (line 55) | def __init__(self): method forward (line 62) | def forward( class _RecordingDeviceModule (line 89) | class _RecordingDeviceModule(nn.Module): method __init__ (line 90) | def __init__(self): method to (line 95) | def to(self, device): function _make_minimal_real_transformer_actor (line 101) | def _make_minimal_real_transformer_actor( function _capture_moe_router_outputs (line 150) | def _capture_moe_router_outputs( function _make_minimal_ref_router_actor (line 201) | def _make_minimal_ref_router_actor() -> PPOTFRefRouterActor: function _make_ref_router_v2_obs_schema (line 238) | def _make_ref_router_v2_obs_schema() -> dict: function _make_ref_router_v2_obs (line 268) | def _make_ref_router_v2_obs(batch_size: list[int]) -> TensorDict: function _make_minimal_ref_router_v2_actor (line 296) | def _make_minimal_ref_router_v2_actor() -> PPOTFRefRouterSeqActor: function _make_minimal_ref_router_v3_actor (line 334) | def _make_minimal_ref_router_v3_actor() -> PPOTFRefRouterV3Actor: function test_export_policy_to_onnx_uses_opset_17 (line 370) | def test_export_policy_to_onnx_uses_opset_17(monkeypatch, tmp_path): function test_export_policy_to_onnx_restores_training_mode (line 410) | def test_export_policy_to_onnx_restores_training_mode(monkeypatch, tmp_p... function test_clone_module_for_cpu_export_does_not_move_live_module (line 466) | def test_clone_module_for_cpu_export_does_not_move_live_module(monkeypat... function test_ppotf_actor_export_uses_legacy_torchscript (line 482) | def test_ppotf_actor_export_uses_legacy_torchscript(monkeypatch, tmp_path): function test_ppotf_actor_export_onnx_avoids_isnan (line 511) | def test_ppotf_actor_export_onnx_avoids_isnan(tmp_path): function test_ppotf_real_transformer_export_onnx_avoids_isnan (line 534) | def test_ppotf_real_transformer_export_onnx_avoids_isnan(tmp_path): function test_ppotf_real_moe_transformer_export_reaches_router_ops (line 551) | def test_ppotf_real_moe_transformer_export_reaches_router_ops(tmp_path): function test_ppotf_real_moe_transformer_export_exposes_routing_outputs (line 573) | def test_ppotf_real_moe_transformer_export_exposes_routing_outputs(tmp_p... function test_ppotf_real_moe_transformer_export_dense_last_uses_actual_moe_indices (line 602) | def test_ppotf_real_moe_transformer_export_dense_last_uses_actual_moe_in... function test_ppotf_real_moe_transformer_export_avoids_reduce_log_sum_exp (line 634) | def test_ppotf_real_moe_transformer_export_avoids_reduce_log_sum_exp( function test_export_safe_moe_router_matches_training_scores_for_topk1 (line 658) | def test_export_safe_moe_router_matches_training_scores_for_topk1(monkey... function test_export_safe_moe_router_matches_training_scores_with_dynamic_bias (line 696) | def test_export_safe_moe_router_matches_training_scores_with_dynamic_bias( function test_grouped_moe_router_x_keeps_topk_when_main_input_changes (line 745) | def test_grouped_moe_router_x_keeps_topk_when_main_input_changes(monkeyp... function test_grouped_moe_router_x_changes_topk_when_router_input_changes (line 781) | def test_grouped_moe_router_x_changes_topk_when_router_input_changes( function test_ref_router_actor_export_keeps_single_obs_input_and_reaches_moe (line 818) | def test_ref_router_actor_export_keeps_single_obs_input_and_reaches_moe( function test_ref_router_v2_actor_export_keeps_single_obs_input_and_reaches_moe (line 839) | def test_ref_router_v2_actor_export_keeps_single_obs_input_and_reaches_moe( function test_ref_router_v3_actor_export_keeps_single_obs_input_and_reaches_moe (line 868) | def test_ref_router_v3_actor_export_keeps_single_obs_input_and_reaches_moe( function test_real_transformer_actor_export_supports_selected_expert_margin (line 897) | def test_real_transformer_actor_export_supports_selected_expert_margin( FILE: tests/test_algo_base_iteration_logging.py function test_log_iteration_uses_checkpoint_start_for_total_iterations (line 10) | def test_log_iteration_uses_checkpoint_start_for_total_iterations(): FILE: tests/test_build_quantization_dataset.py function _load_module (line 5) | def _load_module(): function test_allocate_sample_counts_normalizes_weights_and_matches_total (line 20) | def test_allocate_sample_counts_normalizes_weights_and_matches_total(): function test_build_quantization_dataset_creates_symlinks (line 42) | def test_build_quantization_dataset_creates_symlinks(tmp_path): function test_build_quantization_dataset_caps_each_dataset_at_available_clips (line 76) | def test_build_quantization_dataset_caps_each_dataset_at_available_clips( FILE: tests/test_cache_curriculum_sampler.py function _update_sampler (line 15) | def _update_sampler( function _update_sampler_subset (line 35) | def _update_sampler_subset( class _ChunkLimitedSampler (line 60) | class _ChunkLimitedSampler: method __init__ (line 61) | def __init__(self, *, max_query_size: int) -> None: method _checked_indices (line 66) | def _checked_indices(self, window_indices: torch.Tensor) -> torch.Tensor: method get_scores_for_indices (line 76) | def get_scores_for_indices( method get_window_state_for_indices (line 82) | def get_window_state_for_indices( method get_pool_statistics (line 97) | def get_pool_statistics(self) -> dict[str, float]: class _FakeTrainDataset (line 107) | class _FakeTrainDataset: method __init__ (line 108) | def __init__(self, windows: list[SimpleNamespace]) -> None: method __len__ (line 111) | def __len__(self) -> int: method close (line 114) | def close(self) -> None: function test_sampler_uses_configured_uniform_ratio_immediately (line 118) | def test_sampler_uses_configured_uniform_ratio_immediately(): function test_completion_rate_relative_improvement_alone_drives_scores (line 129) | def test_completion_rate_relative_improvement_alone_drives_scores(): function test_sampler_weights_progress_by_remaining_difficulty (line 149) | def test_sampler_weights_progress_by_remaining_difficulty(): function test_sampler_tracks_cumulative_selection_counts (line 167) | def test_sampler_tracks_cumulative_selection_counts(): function test_low_completion_plateau_drops_from_prioritized_replay (line 187) | def test_low_completion_plateau_drops_from_prioritized_replay(): function test_prioritized_windows_persist_beyond_immediate_batch (line 211) | def test_prioritized_windows_persist_beyond_immediate_batch(): function test_sampler_reports_pool_means_and_membership_churn (line 247) | def test_sampler_reports_pool_means_and_membership_churn(): function test_sampler_hot_path_avoids_full_dataset_temporaries (line 280) | def test_sampler_hot_path_avoids_full_dataset_temporaries(monkeypatch): function test_ppo_logs_only_core_curriculum_metrics (line 337) | def test_ppo_logs_only_core_curriculum_metrics(): function test_cache_curriculum_dumps_on_scheduled_swap_even_without_state_update (line 382) | def test_cache_curriculum_dumps_on_scheduled_swap_even_without_state_upd... function test_update_cache_curriculum_refreshes_prefetched_batch_when_state_changes (line 405) | def test_update_cache_curriculum_refreshes_prefetched_batch_when_state_c... function test_cache_curriculum_whole_window_dump_streams_rows_in_chunks (line 442) | def test_cache_curriculum_whole_window_dump_streams_rows_in_chunks( FILE: tests/test_domain_rand_config_builder.py class _DummyEventTermCfg (line 17) | class _DummyEventTermCfg: method __init__ (line 18) | def __init__(self, **kwargs): class _DummySceneEntityCfg (line 22) | class _DummySceneEntityCfg: method __init__ (line 23) | def __init__(self, *args, **kwargs): method resolve (line 27) | def resolve(self, _scene): function _load_domain_rand_module (line 31) | def _load_domain_rand_module(monkeypatch): function test_build_domain_rand_config_skips_non_event_metadata (line 80) | def test_build_domain_rand_config_skips_non_event_metadata(monkeypatch): FILE: tests/test_eval_mujoco_action_delay.py function test_action_delay_cfg_defaults_to_disabled_episode (line 9) | def test_action_delay_cfg_defaults_to_disabled_episode(): function test_action_delay_cfg_rejects_invalid_delay_type (line 21) | def test_action_delay_cfg_rejects_invalid_delay_type(): function test_apply_action_delay_passthrough_when_disabled (line 40) | def test_apply_action_delay_passthrough_when_disabled(): function test_apply_action_delay_episode_reuses_single_sample (line 58) | def test_apply_action_delay_episode_reuses_single_sample(monkeypatch): function test_apply_action_delay_step_resamples_each_policy_step (line 86) | def test_apply_action_delay_step_resamples_each_policy_step(monkeypatch): FILE: tests/test_eval_mujoco_action_ema.py function test_action_ema_filter_cfg_reads_erfi_settings (line 7) | def test_action_ema_filter_cfg_reads_erfi_settings(): function test_action_ema_filter_defaults_to_disabled_for_non_erfi (line 29) | def test_action_ema_filter_defaults_to_disabled_for_non_erfi(): function test_apply_action_ema_filter_uses_previous_filtered_action (line 51) | def test_apply_action_ema_filter_uses_previous_filtered_action(): function test_reset_action_ema_filter_clears_state (line 70) | def test_reset_action_ema_filter_clears_state(): FILE: tests/test_eval_mujoco_contact_export.py function _build_export_evaluator (line 10) | def _build_export_evaluator(tmp_path: Path): function test_save_batch_result_exports_low_level_contact_traces (line 105) | def test_save_batch_result_exports_low_level_contact_traces(tmp_path: Pa... function test_dump_robot_augmented_npz_exports_low_level_contact_traces (line 127) | def test_dump_robot_augmented_npz_exports_low_level_contact_traces( function test_init_low_level_foot_contact_logging_falls_back_to_ankle_roll_bodies (line 152) | def test_init_low_level_foot_contact_logging_falls_back_to_ankle_roll_bo... FILE: tests/test_eval_mujoco_s100_horizon_ptq.py class _FakeIoNode (line 14) | class _FakeIoNode: method __init__ (line 15) | def __init__(self, name, shape): function _make_value_info (line 20) | def _make_value_info(name, shape): function _make_fake_onnx_model (line 29) | def _make_fake_onnx_model(): function _make_evaluator (line 45) | def _make_evaluator(model_path: Path, bc_path: Path | None = None): function test_load_policy_falls_back_to_horizon_quantized_bc_for_ptq_onnx (line 63) | def test_load_policy_falls_back_to_horizon_quantized_bc_for_ptq_onnx( function test_load_policy_resolves_common_horizon_runtime_artifact_names (line 127) | def test_load_policy_resolves_common_horizon_runtime_artifact_names( function test_load_policy_raises_original_error_when_ptq_fallback_bc_missing (line 178) | def test_load_policy_raises_original_error_when_ptq_fallback_bc_missing( function test_load_policy_keeps_standard_onnxruntime_path_for_regular_onnx (line 204) | def test_load_policy_keeps_standard_onnxruntime_path_for_regular_onnx( function test_load_policy_prefers_explicit_bc_path_for_inference_and_onnx_for_metadata (line 252) | def test_load_policy_prefers_explicit_bc_path_for_inference_and_onnx_for... function test_bc_runtime_run_normalizes_inputs_for_hbruntime (line 310) | def test_bc_runtime_run_normalizes_inputs_for_hbruntime(monkeypatch, tmp... function test_update_policy_raises_clear_error_before_runtime_on_obs_dim_mismatch (line 358) | def test_update_policy_raises_clear_error_before_runtime_on_obs_dim_mism... FILE: tests/test_eval_mujoco_use_gpu.py class _FakeIoNode (line 11) | class _FakeIoNode: method __init__ (line 12) | def __init__(self, name, shape): function test_load_policy_treats_false_string_use_gpu_as_cpu (line 17) | def test_load_policy_treats_false_string_use_gpu_as_cpu(monkeypatch): function test_create_ray_evaluator_preserves_use_gpu_false (line 63) | def test_create_ray_evaluator_preserves_use_gpu_false(monkeypatch): function test_run_mujoco_sim2sim_eval_preserves_use_gpu_false (line 81) | def test_run_mujoco_sim2sim_eval_preserves_use_gpu_false( FILE: tests/test_eval_onnx_io_dump.py class _Config (line 18) | class _Config(SimpleNamespace): method get (line 19) | def get(self, key, default=None): function test_save_onnx_io_dump_stacks_per_frame_inputs_and_outputs (line 23) | def test_save_onnx_io_dump_stacks_per_frame_inputs_and_outputs(tmp_path): function test_write_onnx_io_dump_readme_creates_chinese_loading_instructions (line 83) | def test_write_onnx_io_dump_readme_creates_chinese_loading_instructions( function test_save_batch_result_persists_low_level_torque_dump_and_dt (line 95) | def test_save_batch_result_persists_low_level_torque_dump_and_dt(tmp_path): function test_save_batch_result_persists_moe_routing_tensors (line 147) | def test_save_batch_result_persists_moe_routing_tensors(tmp_path): function test_dump_robot_augmented_npz_persists_moe_routing_tensors (line 207) | def test_dump_robot_augmented_npz_persists_moe_routing_tensors(tmp_path): function test_ray_actor_run_clip_overwrites_existing_outputs_and_sidecar (line 265) | def test_ray_actor_run_clip_overwrites_existing_outputs_and_sidecar(tmp_... function test_ray_actor_skips_sidecar_for_non_default_model_type (line 325) | def test_ray_actor_skips_sidecar_for_non_default_model_type(tmp_path): function test_ray_actor_treats_empty_model_type_as_default_holomotion (line 369) | def test_ray_actor_treats_empty_model_type_as_default_holomotion(tmp_path): function test_ray_actor_init_uses_configured_evaluator_module (line 414) | def test_ray_actor_init_uses_configured_evaluator_module( FILE: tests/test_evaluation_metrics.py function _make_eval_data (line 14) | def _make_eval_data( function test_per_frame_metrics_include_torque_jump_diagnostics (line 102) | def test_per_frame_metrics_include_torque_jump_diagnostics(): function test_offline_evaluate_dumped_npzs_exports_torque_jump_summary_metrics (line 142) | def test_offline_evaluate_dumped_npzs_exports_torque_jump_summary_metrics( function test_compute_clip_stability_summary_detects_chatter_and_support_events (line 215) | def test_compute_clip_stability_summary_detects_chatter_and_support_even... function test_compute_clip_stability_summary_reports_expert_switching_js_div (line 320) | def test_compute_clip_stability_summary_reports_expert_switching_js_div(): function test_offline_evaluate_dumped_npzs_reports_nan_contact_metrics_for_legacy_npz (line 364) | def test_offline_evaluate_dumped_npzs_reports_nan_contact_metrics_for_le... FILE: tests/test_isaaclab_termination.py class _Scene (line 27) | class _Scene(SimpleNamespace): method __getitem__ (line 28) | def __getitem__(self, key): function _load_isaaclab_termination_module (line 32) | def _load_isaaclab_termination_module(module_name: str): function test_wholebody_mpjpe_far_flags_envs_above_mean_error_threshold (line 115) | def test_wholebody_mpjpe_far_flags_envs_above_mean_error_threshold(): function test_wholebody_mpjpe_far_uses_immediate_next_reference (line 142) | def test_wholebody_mpjpe_far_uses_immediate_next_reference(): function test_keybody_ref_pos_far_uses_immediate_next_reference (line 164) | def test_keybody_ref_pos_far_uses_immediate_next_reference(): function test_ref_gravity_projection_far_uses_immediate_next_reference (line 200) | def test_ref_gravity_projection_far_uses_immediate_next_reference(): function test_build_terminations_config_registers_wholebody_mpjpe_far (line 237) | def test_build_terminations_config_registers_wholebody_mpjpe_far(): function test_build_terminations_config_resolves_native_isaaclab_termination (line 258) | def test_build_terminations_config_resolves_native_isaaclab_termination(): function test_build_terminations_config_raises_on_unknown_termination (line 279) | def test_build_terminations_config_raises_on_unknown_termination(): FILE: tests/test_mean_process_5metrics.py function test_macro_report_appends_torque_jump_columns_to_legacy_tables (line 34) | def test_macro_report_appends_torque_jump_columns_to_legacy_tables( FILE: tests/test_motion_cache_gather_state.py function _expected_field (line 21) | def _expected_field( class MotionCacheGatherStateTests (line 36) | class MotionCacheGatherStateTests(unittest.TestCase): method test_normalize_online_filter_cfg_includes_velocity_smoothing_sigmas (line 37) | def test_normalize_online_filter_cfg_includes_velocity_smoothing_sigmas( method test_normalize_online_filter_cfg_uses_fk_sigma_fallback_defaults (line 58) | def test_normalize_online_filter_cfg_uses_fk_sigma_fallback_defaults(s... method test_build_motion_datasets_from_cfg_passes_fk_sigma_fallback (line 67) | def test_build_motion_datasets_from_cfg_passes_fk_sigma_fallback(self): method test_build_motion_datasets_from_cfg_defaults_fk_sigma_fallback (line 95) | def test_build_motion_datasets_from_cfg_defaults_fk_sigma_fallback(self): method test_gather_tensor_returns_expected_values (line 122) | def test_gather_tensor_returns_expected_values(self): method test_gather_tensor_reflects_updated_indices_without_cached_state (line 182) | def test_gather_tensor_reflects_updated_indices_without_cached_state(s... method test_cpu_fk_transform_forwards_explicit_vel_smoothing_sigma (line 236) | def test_cpu_fk_transform_forwards_explicit_vel_smoothing_sigma(self): method test_cpu_fk_transform_defaults_vel_smoothing_sigma_to_two (line 265) | def test_cpu_fk_transform_defaults_vel_smoothing_sigma_to_two(self): method test_hdf5_v2_sample_exposes_zero_cutoff_metadata_when_disabled (line 289) | def test_hdf5_v2_sample_exposes_zero_cutoff_metadata_when_disabled(self): method test_hdf5_v2_sample_exposes_sampled_cutoff_metadata (line 300) | def test_hdf5_v2_sample_exposes_sampled_cutoff_metadata(self): method test_hdf5_v2_sample_generates_filtered_reference_family (line 314) | def test_hdf5_v2_sample_generates_filtered_reference_family(self): method test_hdf5_v2_sample_uses_split_fk_smoothing_sigmas (line 336) | def test_hdf5_v2_sample_uses_split_fk_smoothing_sigmas(self): method test_hdf5_v2_sample_skips_filtered_reference_family_when_disabled (line 353) | def test_hdf5_v2_sample_skips_filtered_reference_family_when_disabled( method _make_stub_root_dof_dataset (line 368) | def _make_stub_root_dof_dataset( FILE: tests/test_motion_cache_startup.py class _FakeDataset (line 15) | class _FakeDataset: method __init__ (line 16) | def __init__(self, length: int = 8) -> None: method __len__ (line 21) | def __len__(self) -> int: method __getitem__ (line 24) | def __getitem__(self, index: int): method set_progress_counter (line 27) | def set_progress_counter(self, counter) -> None: method close (line 30) | def close(self) -> None: class MotionCacheStartupTests (line 34) | class MotionCacheStartupTests(unittest.TestCase): method test_motion_cache_uses_explicit_constructor_seed (line 35) | def test_motion_cache_uses_explicit_constructor_seed(self): method test_setup_seeding_does_not_reinitialize_motion_cache (line 55) | def test_setup_seeding_does_not_reinitialize_motion_cache(self): method test_motion_cache_passes_loader_timeout_to_dataloader (line 79) | def test_motion_cache_passes_loader_timeout_to_dataloader(self): method test_motion_cache_disables_progress_bar_in_distributed_runs (line 104) | def test_motion_cache_disables_progress_bar_in_distributed_runs(self): method test_motion_cache_keeps_progress_bar_for_local_runs (line 126) | def test_motion_cache_keeps_progress_bar_for_local_runs(self): method test_motion_cache_requires_positive_loader_timeout (line 148) | def test_motion_cache_requires_positive_loader_timeout(self): FILE: tests/test_motion_tracking_command_reference_prefix.py class MotionTrackingCommandReferencePrefixTests (line 11) | class MotionTrackingCommandReferencePrefixTests(unittest.TestCase): method test_ft_ref_prefix_uses_filtered_tensor_when_present (line 12) | def test_ft_ref_prefix_uses_filtered_tensor_when_present(self): method test_ft_ref_prefix_requires_filtered_tensor (line 21) | def test_ft_ref_prefix_requires_filtered_tensor(self): method test_ref_prefix_falls_back_to_unprefixed_tensor (line 29) | def test_ref_prefix_falls_back_to_unprefixed_tensor(self): method test_ref_prefix_prefers_prefixed_tensor_when_present (line 38) | def test_ref_prefix_prefers_prefixed_tensor_when_present(self): FILE: tests/test_motion_tracking_timing.py class _DummyConfig (line 19) | class _DummyConfig: method __init__ (line 20) | def __init__(self, *args, **kwargs): function _install_fake_motion_command_deps (line 25) | def _install_fake_motion_command_deps(monkeypatch): function _load_motion_command_module (line 167) | def _load_motion_command_module(monkeypatch): function test_immediate_next_reference_getters_use_slot_one (line 179) | def test_immediate_next_reference_getters_use_slot_one(monkeypatch): function test_update_command_skips_just_reset_envs (line 224) | def test_update_command_skips_just_reset_envs(monkeypatch): function test_update_command_resumes_advancing_after_reset_step (line 246) | def test_update_command_resumes_advancing_after_reset_step(monkeypatch): function test_mpjpe_metrics_use_immediate_next_reference (line 268) | def test_mpjpe_metrics_use_immediate_next_reference(monkeypatch): function test_mpkpe_metrics_use_immediate_next_reference (line 298) | def test_mpkpe_metrics_use_immediate_next_reference(monkeypatch): FILE: tests/test_mujoco_filtered_ref_compat.py function _make_minimal_motion_npz (line 34) | def _make_minimal_motion_npz(path: Path, *, include_cutoff: bool) -> None: function test_policy_obs_list_accepts_shared_cutoff_term (line 53) | def test_policy_obs_list_accepts_shared_cutoff_term(): function test_cutoff_obs_getters_use_current_frame_and_default_zero (line 68) | def test_cutoff_obs_getters_use_current_frame_and_default_zero(): function test_policy_obs_list_v2_uses_only_actor_schema_terms (line 84) | def test_policy_obs_list_v2_uses_only_actor_schema_terms(): function test_load_specific_motion_loads_cutoff_metadata_with_zero_fallback (line 101) | def test_load_specific_motion_loads_cutoff_metadata_with_zero_fallback(): FILE: tests/test_obs_norm_compile.py function _make_actor_with_obs_norm (line 7) | def _make_actor_with_obs_norm(obs_dim: int = 16) -> PPOTFActor: function test_obs_norm_update_is_not_captured_by_dynamo (line 16) | def test_obs_norm_update_is_not_captured_by_dynamo(): FILE: tests/test_observation_frames.py class _DummyConfig (line 19) | class _DummyConfig: method __init__ (line 20) | def __init__(self, *args, **kwargs): class _Scene (line 25) | class _Scene(SimpleNamespace): method __getitem__ (line 26) | def __getitem__(self, key): function _identity_quat (line 30) | def _identity_quat(*shape: int) -> torch.Tensor: function _load_observation_module (line 36) | def _load_observation_module(monkeypatch): function test_ref_future_observations_can_limit_num_frames (line 145) | def test_ref_future_observations_can_limit_num_frames(monkeypatch): function _make_env (line 239) | def _make_env(): function test_global_robot_bodylink_pos_is_in_environment_frame (line 264) | def test_global_robot_bodylink_pos_is_in_environment_frame(monkeypatch): function test_root_rel_robot_bodylink_pos_uses_consistent_env_frame (line 276) | def test_root_rel_robot_bodylink_pos_uses_consistent_env_frame(monkeypat... function test_global_anchor_pos_diff_uses_environment_frame_consistently (line 294) | def test_global_anchor_pos_diff_uses_environment_frame_consistently( function test_build_additive_uniform_noise_cfg_supports_optional_z_override (line 307) | def test_build_additive_uniform_noise_cfg_supports_optional_z_override( function test_build_additive_uniform_noise_cfg_keeps_scalar_bounds_without_z_override (line 330) | def test_build_additive_uniform_noise_cfg_keeps_scalar_bounds_without_z_... FILE: tests/test_onnx_attention_export.py class _ExportAttentionModule (line 19) | class _ExportAttentionModule(nn.Module): method forward (line 20) | def forward( class _ExportCausalAttentionModule (line 37) | class _ExportCausalAttentionModule(nn.Module): method forward (line 38) | def forward( function _export_model (line 54) | def _export_model( function _export_op_types (line 72) | def _export_op_types( function _run_onnx (line 84) | def _run_onnx( function test_export_safe_attention_uses_native_bool_mask_outside_export (line 104) | def test_export_safe_attention_uses_native_bool_mask_outside_export( function test_export_safe_attention_matches_sdpa_for_valid_masks (line 151) | def test_export_safe_attention_matches_sdpa_for_valid_masks(): function test_legacy_attention_export_avoids_isnan (line 184) | def test_legacy_attention_export_avoids_isnan(): function test_legacy_attention_export_ort_matches_pytorch_for_future_mask (line 203) | def test_legacy_attention_export_ort_matches_pytorch_for_future_mask(): function test_legacy_attention_export_ort_matches_pytorch_for_causal_path (line 238) | def test_legacy_attention_export_ort_matches_pytorch_for_causal_path(): function test_legacy_attention_export_ort_matches_pytorch_for_kv_mask (line 265) | def test_legacy_attention_export_ort_matches_pytorch_for_kv_mask(): FILE: tests/test_onnx_export.py class _FakeEntry (line 7) | class _FakeEntry: method __init__ (line 8) | def __init__(self): class _FakeTensor (line 13) | class _FakeTensor: method __init__ (line 14) | def __init__(self, values): method __getitem__ (line 17) | def __getitem__(self, index): method cpu (line 20) | def cpu(self): method tolist (line 23) | def tolist(self): function test_attach_onnx_metadata_uses_default_joint_gains (line 27) | def test_attach_onnx_metadata_uses_default_joint_gains(monkeypatch): FILE: tests/test_plot_moe_expert_heatmap.py function _load_plot_moe_expert_heatmap_module (line 14) | def _load_plot_moe_expert_heatmap_module(): function _write_eval_npz (line 24) | def _write_eval_npz(path: Path) -> None: function test_plot_dump_exports_moe_heatmap_pdf (line 58) | def test_plot_dump_exports_moe_heatmap_pdf(tmp_path): function test_selected_expert_weights_are_renormalized_within_selected_ids (line 74) | def test_selected_expert_weights_are_renormalized_within_selected_ids(): function test_selected_expert_heatmap_only_colors_activated_experts (line 108) | def test_selected_expert_heatmap_only_colors_activated_experts(): function test_collect_npz_paths_recursively_sorts_directory_entries (line 148) | def test_collect_npz_paths_recursively_sorts_directory_entries(tmp_path): function test_plot_input_path_directory_generates_all_heatmaps_with_tqdm (line 163) | def test_plot_input_path_directory_generates_all_heatmaps_with_tqdm( function test_plot_dump_requires_2d_robot_dof_torque (line 219) | def test_plot_dump_requires_2d_robot_dof_torque(tmp_path): FILE: tests/test_plot_state_series.py function _load_plot_state_series_module (line 13) | def _load_plot_state_series_module(): function test_plot_dump_exports_time_matched_scalar_series (line 23) | def test_plot_dump_exports_time_matched_scalar_series(tmp_path): FILE: tests/test_ppo_checkpoint_sigma_override.py class _DummyActor (line 10) | class _DummyActor(nn.Module): method __init__ (line 11) | def __init__(self, events: list[str]): method override_sigma (line 17) | def override_sigma(self, sigma_override): function test_ppo_load_reapplies_sigma_override_after_checkpoint_restore (line 22) | def test_ppo_load_reapplies_sigma_override_after_checkpoint_restore(): function test_ppo_load_skips_optimizer_restore_during_offline_eval (line 80) | def test_ppo_load_skips_optimizer_restore_during_offline_eval(): function test_ppo_load_skips_incompatible_optimizer_state_restore (line 119) | def test_ppo_load_skips_incompatible_optimizer_state_restore(): function test_checkpoint_state_to_cpu_moves_nested_tensors (line 177) | def test_checkpoint_state_to_cpu_moves_nested_tensors(): FILE: tests/test_ppo_entropy_annealing.py function _build_entropy_algo (line 13) | def _build_entropy_algo( function test_entropy_coef_is_constant_when_annealing_disabled (line 32) | def test_entropy_coef_is_constant_when_annealing_disabled(): function test_entropy_coef_decays_and_respects_resumed_total_iterations (line 44) | def test_entropy_coef_decays_and_respects_resumed_total_iterations(): function test_entropy_coef_clamps_to_zero_at_and_after_zero_point (line 58) | def test_entropy_coef_clamps_to_zero_at_and_after_zero_point(): function test_validate_entropy_schedule_config_rejects_invalid_values (line 82) | def test_validate_entropy_schedule_config_rejects_invalid_values( function test_learn_sets_current_iteration_before_each_update (line 95) | def test_learn_sets_current_iteration_before_each_update(): FILE: tests/test_ppo_symmetry_loss.py class _DummyAccelerator (line 14) | class _DummyAccelerator: method autocast (line 15) | def autocast(self): method backward (line 18) | def backward(self, loss): method clip_grad_norm_ (line 21) | def clip_grad_norm_(self, parameters, max_norm): method reduce (line 24) | def reduce(self, tensor, reduction="mean"): class _DummyActor (line 28) | class _DummyActor(nn.Module): method __init__ (line 29) | def __init__(self, num_actions: int, mirror_offset: float): method forward (line 35) | def forward( class _DummyCritic (line 62) | class _DummyCritic(nn.Module): method __init__ (line 63) | def __init__(self): method forward (line 67) | def forward(self, obs_td: TensorDict, *, update_obs_norm: bool = True): class _SingleBatchStorage (line 75) | class _SingleBatchStorage: method __init__ (line 76) | def __init__(self, batch): method iter_minibatches (line 86) | def iter_minibatches(self, num_mini_batches: int, num_epochs: int): method clear (line 90) | def clear(self): function _install_mirror_stub (line 94) | def _install_mirror_stub(): function test_setup_symmetry_builds_expected_dof_permutation_and_signs (line 149) | def test_setup_symmetry_builds_expected_dof_permutation_and_signs(): function test_mirror_actor_obs_uses_slash_qualified_actor_terms_only (line 232) | def test_mirror_actor_obs_uses_slash_qualified_actor_terms_only(): function test_update_reports_symmetry_loss_only_for_velocity_tracking (line 276) | def test_update_reports_symmetry_loss_only_for_velocity_tracking(): FILE: tests/test_ppo_tf_aux_keybody.py function _make_aux_policy (line 23) | def _make_aux_policy( function _make_aux_actor (line 71) | def _make_aux_actor() -> PPOTFActor: function _make_aux_command_policy (line 92) | def _make_aux_command_policy( function _make_temporal_aux_actor (line 134) | def _make_temporal_aux_actor() -> PPOTFActor: function _make_temporal_only_aux_actor (line 155) | def _make_temporal_only_aux_actor() -> PPOTFActor: function test_rollout_storage_allocates_ref_and_robot_keybody_targets (line 161) | def test_rollout_storage_allocates_ref_and_robot_keybody_targets(): function test_grouped_moe_policy_returns_keybody_position_predictions (line 187) | def test_grouped_moe_policy_returns_keybody_position_predictions(): function test_grouped_moe_policy_omits_denoise_predictions_when_weights_zero (line 205) | def test_grouped_moe_policy_omits_denoise_predictions_when_weights_zero(): function test_ppotf_actor_sequence_logp_emits_actor_facing_dof_denoise_keys (line 220) | def test_ppotf_actor_sequence_logp_emits_actor_facing_dof_denoise_keys(): function test_grouped_moe_policy_default_layout_keeps_dense_first_and_moe_tail (line 244) | def test_grouped_moe_policy_default_layout_keeps_dense_first_and_moe_tai... function test_grouped_moe_policy_dense_layer_at_last_keeps_only_middle_layers_moe (line 258) | def test_grouped_moe_policy_dense_layer_at_last_keeps_only_middle_layers... function test_grouped_moe_policy_dense_layer_at_last_allows_shallow_fully_dense (line 283) | def test_grouped_moe_policy_dense_layer_at_last_allows_shallow_fully_den... function test_grouped_moe_policy_command_recon_uses_live_router_features (line 298) | def test_grouped_moe_policy_command_recon_uses_live_router_features(): function test_grouped_moe_policy_freeze_router_detaches_router_features_and_params (line 329) | def test_grouped_moe_policy_freeze_router_detaches_router_features_and_p... function test_grouped_moe_policy_loads_legacy_aux_command_recon_head_keys (line 363) | def test_grouped_moe_policy_loads_legacy_aux_command_recon_head_keys(): function test_grouped_moe_policy_ignores_legacy_aux_command_recon_head_keys_when_disabled (line 389) | def test_grouped_moe_policy_ignores_legacy_aux_command_recon_head_keys_w... function test_grouped_moe_policy_clears_router_cache_before_deepcopy (line 412) | def test_grouped_moe_policy_clears_router_cache_before_deepcopy(): function test_grouped_moe_block_tracks_least_utilized_expert_stats (line 443) | def test_grouped_moe_block_tracks_least_utilized_expert_stats(): function test_grouped_moe_block_tracks_dead_expert_margin_to_topk_loss (line 471) | def test_grouped_moe_block_tracks_dead_expert_margin_to_topk_loss(): function test_grouped_moe_block_tracks_selected_expert_margin_to_unselected (line 524) | def test_grouped_moe_block_tracks_selected_expert_margin_to_unselected(): function test_ppotf_summarize_moe_layer_stats_includes_least_utilized_metrics (line 581) | def test_ppotf_summarize_moe_layer_stats_includes_least_utilized_metrics(): function test_compute_routed_expert_orthogonal_loss_uses_active_experts_only (line 613) | def test_compute_routed_expert_orthogonal_loss_uses_active_experts_only(): function test_compute_routed_expert_orthogonal_loss_returns_zero_below_two_active (line 654) | def test_compute_routed_expert_orthogonal_loss_returns_zero_below_two_ac... function test_ppotf_actor_sequence_logp_emits_router_features_for_aux_router_losses (line 679) | def test_ppotf_actor_sequence_logp_emits_router_features_for_aux_router_... function test_ppotf_actor_sequence_logp_emits_only_router_features_for_temporal_only_aux (line 703) | def test_ppotf_actor_sequence_logp_emits_only_router_features_for_tempor... function test_masked_adjacent_router_js_averages_only_valid_adjacent_tokens (line 727) | def test_masked_adjacent_router_js_averages_only_valid_adjacent_tokens(): function test_masked_adjacent_router_normed_smooth_l1_averages_only_valid_adjacent_tokens (line 765) | def test_masked_adjacent_router_normed_smooth_l1_averages_only_valid_adj... function test_masked_aux_keybody_mse_averages_only_valid_tokens (line 808) | def test_masked_aux_keybody_mse_averages_only_valid_tokens(): function test_masked_aux_huber_averages_only_valid_tokens (line 819) | def test_masked_aux_huber_averages_only_valid_tokens(): function test_setup_configs_rejects_router_aux_terms_outside_motion_tracking (line 835) | def test_setup_configs_rejects_router_aux_terms_outside_motion_tracking(): function test_setup_configs_rejects_unknown_router_switch_penalty_metric (line 851) | def test_setup_configs_rejects_unknown_router_switch_penalty_metric(): function test_setup_configs_reads_dead_expert_margin_to_topk_only (line 873) | def test_setup_configs_reads_dead_expert_margin_to_topk_only(): function test_setup_configs_reads_selected_expert_margin_to_unselected (line 901) | def test_setup_configs_reads_selected_expert_margin_to_unselected(): function test_setup_configs_reads_aux_router_future_recon (line 943) | def test_setup_configs_reads_aux_router_future_recon(): function test_setup_configs_reads_router_expert_orthogonal (line 972) | def test_setup_configs_reads_router_expert_orthogonal(): function test_setup_configs_rejects_router_expert_orthogonal_without_dead_margin (line 996) | def test_setup_configs_rejects_router_expert_orthogonal_without_dead_mar... function test_build_transition_uses_filtered_residual_targets_for_denoise_outputs (line 1014) | def test_build_transition_uses_filtered_residual_targets_for_denoise_out... function test_build_transition_rejects_mismatched_denoise_dof_target_shape (line 1116) | def test_build_transition_rejects_mismatched_denoise_dof_target_shape(): function test_compute_aux_router_future_recon_loss_uses_normalized_future_targets (line 1179) | def test_compute_aux_router_future_recon_loss_uses_normalized_future_tar... function test_root_relative_body_pos_uses_consistent_environment_frame (line 1268) | def test_root_relative_body_pos_uses_consistent_environment_frame(): FILE: tests/test_ref_router_actor.py function _make_ref_router_obs_schema (line 10) | def _make_ref_router_obs_schema() -> dict: function _make_ref_router_obs (line 31) | def _make_ref_router_obs(batch_size: list[int]) -> TensorDict: function _make_ref_router_actor (line 48) | def _make_ref_router_actor( function test_ref_router_actor_infers_only_actor_ref_feature_indices (line 93) | def test_ref_router_actor_infers_only_actor_ref_feature_indices(): function test_ref_router_actor_single_step_and_sequence_logp_match_contract (line 104) | def test_ref_router_actor_single_step_and_sequence_logp_match_contract(): function test_ref_router_actor_rejects_aux_router_future_recon (line 148) | def test_ref_router_actor_rejects_aux_router_future_recon(): function test_ppotf_select_actor_wrapper_rejects_ref_router_cross_attn (line 158) | def test_ppotf_select_actor_wrapper_rejects_ref_router_cross_attn(): function test_ref_router_actor_freeze_router_freezes_router_obs_embed (line 171) | def test_ref_router_actor_freeze_router_freezes_router_obs_embed(): function test_ref_router_actor_freeze_router_reapplies_after_load_state_dict (line 182) | def test_ref_router_actor_freeze_router_reapplies_after_load_state_dict(): FILE: tests/test_ref_router_seq_actor.py function _make_ref_router_v2_obs_schema (line 30) | def _make_ref_router_v2_obs_schema( function _make_ref_router_v2_obs (line 72) | def _make_ref_router_v2_obs(batch_size: list[int]) -> TensorDict: function _make_ref_router_v2_actor (line 98) | def _make_ref_router_v2_actor( function _make_ref_router_v3_actor (line 154) | def _make_ref_router_v3_actor( function test_ppotf_select_actor_wrapper_uses_ref_router_seq_actor (line 208) | def test_ppotf_select_actor_wrapper_uses_ref_router_seq_actor(): function test_ppotf_select_actor_wrapper_uses_ref_router_v3_actor (line 216) | def test_ppotf_select_actor_wrapper_uses_ref_router_v3_actor(): function test_ref_router_seq_actor_infers_shared_ref_partitions_without_router_schemas (line 224) | def test_ref_router_seq_actor_infers_shared_ref_partitions_without_route... function test_ref_router_v3_actor_keeps_full_obs_backbone_and_layer_router_adapters (line 240) | def test_ref_router_v3_actor_keeps_full_obs_backbone_and_layer_router_ad... function test_ref_router_v3_history_backbone_consumes_flat_ref_motion (line 252) | def test_ref_router_v3_history_backbone_consumes_flat_ref_motion(): function test_ref_router_v3_actor_sequence_logp_emits_aux_router_future_recon (line 274) | def test_ref_router_v3_actor_sequence_logp_emits_aux_router_future_recon(): function test_ref_router_v3_actor_updates_future_recon_empirical_normalizer (line 303) | def test_ref_router_v3_actor_updates_future_recon_empirical_normalizer(): function test_ref_router_v2_freeze_router_freezes_reference_router_path (line 335) | def test_ref_router_v2_freeze_router_freezes_reference_router_path(): function test_ref_router_v3_freeze_router_reapplies_after_load_state_dict (line 367) | def test_ref_router_v3_freeze_router_reapplies_after_load_state_dict(): function test_ref_router_v2_film_head_starts_near_identity (line 395) | def test_ref_router_v2_film_head_starts_near_identity(): function test_ref_router_v2_pre_moe_hidden_precedes_film_modulation (line 413) | def test_ref_router_v2_pre_moe_hidden_precedes_film_modulation(): function test_ref_router_v2_film_gain_is_bounded_per_channel (line 457) | def test_ref_router_v2_film_gain_is_bounded_per_channel(): function test_ref_router_v2_film_perturbation_rms_stays_bounded (line 475) | def test_ref_router_v2_film_perturbation_rms_stays_bounded(): function test_ref_router_v2_aux_prediction_stays_bound_to_returned_pre_moe_hidden (line 494) | def test_ref_router_v2_aux_prediction_stays_bound_to_returned_pre_moe_hi... function test_ref_router_v2_sequence_single_step_and_cached_onnx_agree (line 545) | def test_ref_router_v2_sequence_single_step_and_cached_onnx_agree(): function test_ref_router_v3_sequence_single_step_and_cached_onnx_agree (line 583) | def test_ref_router_v3_sequence_single_step_and_cached_onnx_agree(): function test_ref_router_seq_actor_single_step_and_sequence_logp_match_contract (line 621) | def test_ref_router_seq_actor_single_step_and_sequence_logp_match_contra... function test_ref_router_v3_actor_single_step_and_sequence_logp_match_contract (line 665) | def test_ref_router_v3_actor_single_step_and_sequence_logp_match_contrac... function test_ref_router_seq_actor_sequence_logp_emits_aux_preds_without_metadata (line 709) | def test_ref_router_seq_actor_sequence_logp_emits_aux_preds_without_meta... function test_ref_router_seq_actor_requires_all_shared_ref_terms (line 743) | def test_ref_router_seq_actor_requires_all_shared_ref_terms(): function test_ref_router_seq_actor_rejects_aux_router_command_recon (line 750) | def test_ref_router_seq_actor_rejects_aux_router_command_recon(): function test_ref_router_seq_actor_rejects_unsupported_aux_state_pred_weights (line 757) | def test_ref_router_seq_actor_rejects_unsupported_aux_state_pred_weights(): FILE: tests/test_reference_filter_export.py function _quat_xyzw_from_rpy (line 21) | def _quat_xyzw_from_rpy(roll: float, pitch: float, yaw: float) -> torch.... function _make_sample (line 39) | def _make_sample(*, include_filtered: bool = True) -> MotionClipSample: class ReferenceFilterExportTests (line 104) | class ReferenceFilterExportTests(unittest.TestCase): method test_export_reference_filter_artifacts_from_config_builds_dataset (line 105) | def test_export_reference_filter_artifacts_from_config_builds_dataset( method test_export_reference_filter_debug_artifacts_writes_outputs (line 159) | def test_export_reference_filter_debug_artifacts_writes_outputs(self): method test_export_reference_filter_debug_artifacts_requires_filtered_tensors (line 219) | def test_export_reference_filter_debug_artifacts_requires_filtered_ten... FILE: tests/test_reference_motion_config_wiring.py class ReferenceMotionConfigWiringTests (line 48) | class ReferenceMotionConfigWiringTests(unittest.TestCase): method test_motion_tracking_observation_configs_expose_cutoff_term (line 49) | def test_motion_tracking_observation_configs_expose_cutoff_term(self): method test_motion_tracking_termination_configs_forward_ref_prefix (line 60) | def test_motion_tracking_termination_configs_forward_ref_prefix(self): method test_robot_training_config_uses_hdf5_v2_backend (line 70) | def test_robot_training_config_uses_hdf5_v2_backend(self): method test_termination_ref_prefix_resolves_with_reward_config (line 74) | def test_termination_ref_prefix_resolves_with_reward_config(self): method _config_has_obs_term (line 91) | def _config_has_obs_term(config, term_name: str) -> bool: FILE: tests/test_root_rel_rewards.py class _DummyConfig (line 25) | class _DummyConfig: method __init__ (line 26) | def __init__(self, *args, **kwargs): class _DummyManagerTermBase (line 37) | class _DummyManagerTermBase: method __init__ (line 38) | def __init__(self, cfg, env): method num_envs (line 43) | def num_envs(self): method device (line 47) | def device(self): method reset (line 50) | def reset(self, env_ids=None): function _identity_quat (line 54) | def _identity_quat(*shape: int) -> torch.Tensor: function _load_rewards_module (line 60) | def _load_rewards_module(monkeypatch): function _load_motion_tracking_module (line 158) | def _load_motion_tracking_module(monkeypatch): function _make_env (line 301) | def _make_env(): function _make_torque_rate_env (line 380) | def _make_torque_rate_env( function _make_action_acc_env (line 415) | def _make_action_acc_env(action: torch.Tensor): function test_root_rel_keybody_pos_reward_uses_true_root_frame (line 426) | def test_root_rel_keybody_pos_reward_uses_true_root_frame(monkeypatch): function test_root_rel_keybody_pos_bydmmc_reward_uses_true_root_frame (line 443) | def test_root_rel_keybody_pos_bydmmc_reward_uses_true_root_frame( function test_root_rel_keybody_lin_vel_reward_uses_true_root_frame (line 462) | def test_root_rel_keybody_lin_vel_reward_uses_true_root_frame(monkeypatch): function test_root_pos_xy_tracking_uses_immediate_next_reference (line 485) | def test_root_pos_xy_tracking_uses_immediate_next_reference(monkeypatch): function test_global_keybody_lin_vel_tracking_uses_immediate_next_reference (line 513) | def test_global_keybody_lin_vel_tracking_uses_immediate_next_reference( function test_normed_torque_rate_matches_selected_joint_math (line 552) | def test_normed_torque_rate_matches_selected_joint_math(monkeypatch): function test_normed_torque_rate_assembles_limits_across_actuator_groups (line 591) | def test_normed_torque_rate_assembles_limits_across_actuator_groups( function test_normed_torque_rate_resets_first_step_history (line 627) | def test_normed_torque_rate_resets_first_step_history(monkeypatch): function test_normed_torque_rate_reuses_cached_normalization (line 667) | def test_normed_torque_rate_reuses_cached_normalization(monkeypatch): function test_normed_positive_work_matches_selected_joint_math (line 699) | def test_normed_positive_work_matches_selected_joint_math(monkeypatch): function test_normed_positive_work_assembles_effort_limits_across_actuators (line 738) | def test_normed_positive_work_assembles_effort_limits_across_actuators( function test_normed_positive_work_reuses_cached_effort_limits (line 773) | def test_normed_positive_work_reuses_cached_effort_limits(monkeypatch): function test_normed_positive_work_requires_positive_finite_velocity_limits (line 811) | def test_normed_positive_work_requires_positive_finite_velocity_limits( function test_action_acc_matches_second_order_action_change (line 846) | def test_action_acc_matches_second_order_action_change(monkeypatch): function test_action_acc_reset_clears_history (line 871) | def test_action_acc_reset_clears_history(monkeypatch): function test_build_rewards_config_exposes_action_acc_term (line 892) | def test_build_rewards_config_exposes_action_acc_term(monkeypatch): function test_motion_tracking_logs_normed_torque_rate_metric (line 909) | def test_motion_tracking_logs_normed_torque_rate_metric(monkeypatch): FILE: tests/test_unitree_actuators.py class _DummyArticulationActions (line 29) | class _DummyArticulationActions: method __init__ (line 30) | def __init__( class _DummyDelayedPDActuatorCfg (line 43) | class _DummyDelayedPDActuatorCfg: method __init__ (line 47) | def __init__(self, **kwargs): class _DummyDelayedPDActuator (line 52) | class _DummyDelayedPDActuator: method __init__ (line 53) | def __init__(self, cfg, *args, **kwargs): method _parse_joint_parameter (line 75) | def _parse_joint_parameter(self, value, default): method reset (line 90) | def reset(self, env_ids): method compute (line 93) | def compute(self, control_action, joint_pos, joint_vel): function _configclass (line 111) | def _configclass(cls): function _load_unitree_actuator_module (line 127) | def _load_unitree_actuator_module(monkeypatch): function _make_erfi_actuator (line 161) | def _make_erfi_actuator(module, *, cfg_kwargs=None, num_envs=4, num_join... function _make_action (line 198) | def _make_action(actuator): function test_unitree_erfi_reset_samples_all_rfi (line 206) | def test_unitree_erfi_reset_samples_all_rfi(monkeypatch): function test_unitree_erfi_reset_samples_all_rao (line 221) | def test_unitree_erfi_reset_samples_all_rao(monkeypatch): function test_unitree_erfi_rfi_without_randomized_limit_uses_effort_limit_ratio (line 234) | def test_unitree_erfi_rfi_without_randomized_limit_uses_effort_limit_ratio( function test_unitree_erfi_reset_randomizes_rfi_scale_within_range (line 261) | def test_unitree_erfi_reset_randomizes_rfi_scale_within_range(monkeypatch): function test_unitree_erfi_rao_bias_stays_constant_between_resets (line 279) | def test_unitree_erfi_rao_bias_stays_constant_between_resets(monkeypatch): function test_unitree_erfi_rfi_changes_each_compute (line 306) | def test_unitree_erfi_rfi_changes_each_compute(monkeypatch): function test_unitree_erfi_disabled_matches_plain_unitree (line 335) | def test_unitree_erfi_disabled_matches_plain_unitree(monkeypatch): function test_unitree_erfi_ema_filters_joint_positions (line 358) | def test_unitree_erfi_ema_filters_joint_positions(monkeypatch): function test_unitree_erfi_ema_reset_clears_only_selected_envs (line 409) | def test_unitree_erfi_ema_reset_clears_only_selected_envs(monkeypatch): function test_unitree_erfi_ema_debug_dump_records_formula (line 464) | def test_unitree_erfi_ema_debug_dump_records_formula(monkeypatch, tmp_pa... function test_unitree_erfi_ema_debug_stop_after_dump (line 523) | def test_unitree_erfi_ema_debug_stop_after_dump(monkeypatch, tmp_path): function test_unitree_erfi_ema_debug_dump_records_skip_reason (line 564) | def test_unitree_erfi_ema_debug_dump_records_skip_reason( function _load_scene_module (line 598) | def _load_scene_module(monkeypatch): function test_scene_builder_selects_unitree_erfi_cfg (line 692) | def test_scene_builder_selects_unitree_erfi_cfg(monkeypatch): function test_scene_builder_keeps_plain_unitree_cfg (line 705) | def test_scene_builder_keeps_plain_unitree_cfg(monkeypatch): function test_scene_builder_disables_erfi_when_domain_rand_missing (line 716) | def test_scene_builder_disables_erfi_when_domain_rand_missing(monkeypatch): function test_scene_builder_applies_domain_rand_action_delay_to_unitree (line 727) | def test_scene_builder_applies_domain_rand_action_delay_to_unitree( function test_scene_builder_applies_domain_rand_action_delay_to_unitree_erfi (line 742) | def test_scene_builder_applies_domain_rand_action_delay_to_unitree_erfi( function test_scene_builder_applies_erfi_ema_filter_config (line 764) | def test_scene_builder_applies_erfi_ema_filter_config(monkeypatch): function test_scene_builder_disables_action_delay_when_domain_rand_missing (line 782) | def test_scene_builder_disables_action_delay_when_domain_rand_missing( FILE: tests/test_visualize_with_mujoco.py function test_resolve_visualization_arrays_uses_robot_for_pose_and_ref_for_overlay (line 13) | def test_resolve_visualization_arrays_uses_robot_for_pose_and_ref_for_ov...