Hi Nick,
many thanks for getting back to mem and apologies if it took me a long time to pick this back up.
So, just to give you a better idea of what I am doing:
I am prescribing the ground reaction forces via the ModOpAddExternalLoads method, providing a an .xml file that directs to a .mot file that contains the GRF traces. And yes, I have checked that the file is in the working directory and, in fact, the file is found when I am not adding a parameter to the problem. I'll explain in more details:
I would like to optimise (or, at least try) for the contact parameters of a Sphere to Halfspace contact model that is located at the shoulder level. However, I do not have a reliable experimental force that I can use within the MocoContactTrackingGoal which is why I am not using it. The goals that I am using to optimise the parameters are: MocoMarkerTrackingGoal and MocoControlGoal. Therefore, I am pretty much using the kinematics to optimise while prescribing GRFs at the feet.
The funny thing is that when I follow the parameter registration procedure, therefore creating a MocoParameter and adding it to the problem (ie problem.addParameter), the problem reaches the following point:
Code: Select all
This is Ipopt version 3.12.8, running with linear solver mumps.
NOTE: Other linear solvers might be more efficient (see Ipopt documentation).
Number of nonzeros in equality constraint Jacobian...: 5092993
Number of nonzeros in inequality constraint Jacobian.: 0
Number of nonzeros in Lagrangian Hessian.............: 0
and the I get the following error:
Code: Select all
[error] IO.OpenInputFile(const string&,openmode mode): failed to open external_force.mot.
from which follow warnings as such:
Code: Select all
Error in Function::operator() for 'cost_marker_tracking_goal_integrand'
which, I guess, come from the lack of an external force file.
My doubt arises from the fact that as soon as I comment out all the problem.addParameter lines, all of a sudden, I don't have the same issue and the optimisation starts, with the file that gets found again.
I hope a provided more details this time around and apologies if it's too long of a post.
All the best,
Andrea