| Variables | |
| a0 = np.zeros(model.nv) | |
| acc | |
| bl_id = model.getFrameId("base_link") | |
| collision_model | |
| data = model.createData() | |
| list | feet_ids = [model.getFrameId(n) for n in feet_names] | 
| list | feet_names = ["FL_FOOT", "FR_FOOT", "HL_FOOT", "HR_FOOT"] | 
| fext__bl = pin.Force(ls__bl[joint_ids.index(joint.id)]) | |
| list | fs_ext = [pin.Force(np.zeros(6)) for _ in range(len(model.joints))] | 
| g_bl = g_grav[:6] | |
| g_grav = pin.rnea(model, data, q0, v0, a0) | |
| g_j = g_grav[6:] | |
| Jc__feet_bl_T = np.zeros([6, 3 * ncontact]) | |
| Jc__feet_j_T = np.zeros([12, 3 * ncontact]) | |
| list | joint_ids = [model.getJointId(n) for n in joint_names] | 
| list | joint_names = ["FL_KFE", "FR_KFE", "HL_KFE", "HR_KFE"] | 
| list | Js__feet_bl = [np.copy(J[:3, :6]) for J in Js__feet_q] | 
| list | Js__feet_q | 
| list | Js_feet3d_q = [np.copy(J[:3, :]) for J in Js__feet_q] | 
| list | Js_feet_j = [np.copy(J[:3, 6:]) for J in Js__feet_q] | 
| l_sp__bl = data.oMf[bl_id].actInv(data.oMf[foot_id].act(l_sp__f)) | |
| l_sp__f = pin.Force(l__f, np.zeros(3)) | |
| linewidth | |
| ls = np.linalg.pinv(Jc__feet_bl_T) @ g_bl | |
| list | ls__bl = [] | 
| ls__f = np.split(ls, ncontact) | |
| string | mesh_dir = pinocchio_model_dir | 
| model | |
| string | model_path = pinocchio_model_dir / "example-robot-data/robots" | 
| ncontact = len(feet_names) | |
| string | pinocchio_model_dir = Path(__file__).parent.parent / "models" | 
| q0 | |
| tau = g_j - Jc__feet_j_T @ ls | |
| tau_rnea = pin.rnea(model, data, q0, v0, a0, fs_ext) | |
| string | urdf_filename = "solo12.urdf" | 
| string | urdf_model_path = model_path / "solo_description/robots" / urdf_filename | 
| v0 = np.zeros(model.nv) | |
| visual_model | |
| static-contact-dynamics.a0 = np.zeros(model.nv) | 
Definition at line 91 of file static-contact-dynamics.py.
| static-contact-dynamics.acc | 
Definition at line 187 of file static-contact-dynamics.py.
| static-contact-dynamics.bl_id = model.getFrameId("base_link") | 
Definition at line 108 of file static-contact-dynamics.py.
| static-contact-dynamics.collision_model | 
Definition at line 62 of file static-contact-dynamics.py.
| static-contact-dynamics.data = model.createData() | 
Definition at line 65 of file static-contact-dynamics.py.
| list static-contact-dynamics.feet_ids = [model.getFrameId(n) for n in feet_names] | 
Definition at line 107 of file static-contact-dynamics.py.
| list static-contact-dynamics.feet_names = ["FL_FOOT", "FR_FOOT", "HL_FOOT", "HR_FOOT"] | 
Definition at line 106 of file static-contact-dynamics.py.
| static-contact-dynamics.fext__bl = pin.Force(ls__bl[joint_ids.index(joint.id)]) | 
Definition at line 173 of file static-contact-dynamics.py.
| list static-contact-dynamics.fs_ext = [pin.Force(np.zeros(6)) for _ in range(len(model.joints))] | 
Definition at line 170 of file static-contact-dynamics.py.
| static-contact-dynamics.g_bl = g_grav[:6] | 
Definition at line 99 of file static-contact-dynamics.py.
Definition at line 97 of file static-contact-dynamics.py.
| static-contact-dynamics.g_j = g_grav[6:] | 
Definition at line 100 of file static-contact-dynamics.py.
| static-contact-dynamics.Jc__feet_bl_T = np.zeros([6, 3 * ncontact]) | 
Definition at line 121 of file static-contact-dynamics.py.
| static-contact-dynamics.Jc__feet_j_T = np.zeros([12, 3 * ncontact]) | 
Definition at line 154 of file static-contact-dynamics.py.
| list static-contact-dynamics.joint_ids = [model.getJointId(n) for n in joint_names] | 
Definition at line 168 of file static-contact-dynamics.py.
| list static-contact-dynamics.joint_names = ["FL_KFE", "FR_KFE", "HL_KFE", "HR_KFE"] | 
Definition at line 167 of file static-contact-dynamics.py.
| list static-contact-dynamics.Js__feet_bl = [np.copy(J[:3, :6]) for J in Js__feet_q] | 
Definition at line 117 of file static-contact-dynamics.py.
| list static-contact-dynamics.Js__feet_q | 
Definition at line 113 of file static-contact-dynamics.py.
| list static-contact-dynamics.Js_feet3d_q = [np.copy(J[:3, :]) for J in Js__feet_q] | 
Definition at line 186 of file static-contact-dynamics.py.
| list static-contact-dynamics.Js_feet_j = [np.copy(J[:3, 6:]) for J in Js__feet_q] | 
Definition at line 152 of file static-contact-dynamics.py.
Definition at line 137 of file static-contact-dynamics.py.
| static-contact-dynamics.l_sp__f = pin.Force(l__f, np.zeros(3)) | 
Definition at line 136 of file static-contact-dynamics.py.
| static-contact-dynamics.linewidth | 
Definition at line 6 of file static-contact-dynamics.py.
| static-contact-dynamics.ls = np.linalg.pinv(Jc__feet_bl_T) @ g_bl | 
Definition at line 126 of file static-contact-dynamics.py.
| list static-contact-dynamics.ls__bl = [] | 
Definition at line 134 of file static-contact-dynamics.py.
Definition at line 129 of file static-contact-dynamics.py.
| string static-contact-dynamics.mesh_dir = pinocchio_model_dir | 
Definition at line 58 of file static-contact-dynamics.py.
| static-contact-dynamics.model | 
Definition at line 62 of file static-contact-dynamics.py.
| string static-contact-dynamics.model_path = pinocchio_model_dir / "example-robot-data/robots" | 
Definition at line 57 of file static-contact-dynamics.py.
| static-contact-dynamics.ncontact = len(feet_names) | 
Definition at line 109 of file static-contact-dynamics.py.
| string static-contact-dynamics.pinocchio_model_dir = Path(__file__).parent.parent / "models" | 
Definition at line 55 of file static-contact-dynamics.py.
| static-contact-dynamics.q0 | 
Definition at line 67 of file static-contact-dynamics.py.
| static-contact-dynamics.tau = g_j - Jc__feet_j_T @ ls | 
Definition at line 158 of file static-contact-dynamics.py.
Definition at line 176 of file static-contact-dynamics.py.
| string static-contact-dynamics.urdf_filename = "solo12.urdf" | 
Definition at line 59 of file static-contact-dynamics.py.
| string static-contact-dynamics.urdf_model_path = model_path / "solo_description/robots" / urdf_filename | 
Definition at line 60 of file static-contact-dynamics.py.
| static-contact-dynamics.v0 = np.zeros(model.nv) | 
Definition at line 90 of file static-contact-dynamics.py.
| static-contact-dynamics.visual_model | 
Definition at line 62 of file static-contact-dynamics.py.