HuntCrossleyForce Implementation in Moco
Posted: Mon Mar 16, 2020 2:33 pm
Hello Moco admin,
First of all, Thanks for creating Moco. It makes direct collocation so much more user friendly.
I am trying to use the Hunt Crossley Force. Based on the reading some literature (Serrancoli et al 2019 [Subject-Exoskeleton Contact Model Calibration Leads to Accurate Interaction Force Predictions] Appendix 1), my understanding is that we need the smoothed model of the HuntCrossleyForce. I think the force class SmoothSphereHalfSpaceForce implements this smoothed model (https://opensim-org.github.io/opensim-moco-site/docs/). Please correct me if I am wrong, I am still learning Moco.
I was trying to implement this force class SmoothSphereHalfSpaceForce in Moco (using MATLAB) and I am having the hardest time setting the socket for the half sphere and the sphere. The function that I believe I need is setPropertyIndex_socket_half_sphere_frame and setPropertyIndex_socket_sphere_frame, respectively. The methodsview tells me that the argument required for these functions is of type org.opensim.modeling.SWIGTYPE_p_PropertyIndex. I am having the hardest time finding the org.opensim.modeling.SWIGTYPE_p_PropertyIndex for the sockets like '/ground', '/bodyset/calcn_r', '/bodyset/toes_r', etc.
Can you help me with these? Or if you could add a new function where we can simply specify the sockets as a strings? I noticed that other force classes like PointActuators, CoordinateActuators have the function set_body that works really well.
I appreciate your help!
Dhruv
First of all, Thanks for creating Moco. It makes direct collocation so much more user friendly.
I am trying to use the Hunt Crossley Force. Based on the reading some literature (Serrancoli et al 2019 [Subject-Exoskeleton Contact Model Calibration Leads to Accurate Interaction Force Predictions] Appendix 1), my understanding is that we need the smoothed model of the HuntCrossleyForce. I think the force class SmoothSphereHalfSpaceForce implements this smoothed model (https://opensim-org.github.io/opensim-moco-site/docs/). Please correct me if I am wrong, I am still learning Moco.
I was trying to implement this force class SmoothSphereHalfSpaceForce in Moco (using MATLAB) and I am having the hardest time setting the socket for the half sphere and the sphere. The function that I believe I need is setPropertyIndex_socket_half_sphere_frame and setPropertyIndex_socket_sphere_frame, respectively. The methodsview tells me that the argument required for these functions is of type org.opensim.modeling.SWIGTYPE_p_PropertyIndex. I am having the hardest time finding the org.opensim.modeling.SWIGTYPE_p_PropertyIndex for the sockets like '/ground', '/bodyset/calcn_r', '/bodyset/toes_r', etc.
Can you help me with these? Or if you could add a new function where we can simply specify the sockets as a strings? I noticed that other force classes like PointActuators, CoordinateActuators have the function set_body that works really well.
I appreciate your help!
Dhruv