def inverse_dynamics()

in ml3/envs/bullet_sim.py [0:0]


    def inverse_dynamics(self, des_acc):
        for link_idx in self.controlled_joints:
            self.sim.changeDynamics(self.robot_id, link_idx, linearDamping=0.0, angularDamping=0.0, jointDamping=0.0)
        cur_joint_states = self.sim.getJointStates(self.robot_id, self.controlled_joints)
        cur_joint_angles = [cur_joint_states[i][0] for i in range(self.n_dofs)]
        cur_joint_vel = [cur_joint_states[i][1] for i in range(self.n_dofs)]
        torques = self.sim.calculateInverseDynamics(self.robot_id,
                                                    cur_joint_angles,
                                                    cur_joint_vel,
                                                    des_acc)
        return np.asarray(torques)