CMC using the smooth motion generated by IK runs fine when only sufficient reserve actuators are used (choose "Replace model's force set"). However, strangely enough, when actuators and muscles are used (choose "Append to model's force set"), the analysis fails with the following error. There is no difference between the two other than whether or not the muscles are used.
Code: Select all
CMC::computeControls, t = 6.03
CMC::computeControls: small force range for TrapeziusScapula_I (0.0 to 0.0)
CMC::computeControls: small force range for DeltoideusClavicle_A (0.0 to 0.0)
CMC::computeControls: small force range for DeltoideusScapula_M (0.0 to 0.0)
CMC::computeControls, t = 6.04
CMC::computeControls: small force range for TrapeziusScapula_I (0.0 to 0.0)
CMC::computeControls: small force range for DeltoideusClavicle_A (0.0 to 0.0)
CMC::computeControls: small force range for DeltoideusScapula_M (0.0 to 0.0)
CMC::computeControls, t = 6.05
CMC::computeControls: small force range for TrapeziusScapula_I (0.0 to 0.0)
CMC::computeControls: small force range for DeltoideusClavicle_A (0.0 to 0.0)
CMC::computeControls: small force range for DeltoideusScapula_M (0.0 to 0.556131)
CMC::computeControls, t = 6.06
CMC::computeControls: small force range for TrapeziusScapula_I (1.19317 to 1.19322)
CMC::computeControls: small force range for DeltoideusClavicle_A (0.0 to 0.0)
SimTK Exception thrown at InteriorPointOptimizer.cpp:264:
Optimizer failed: Ipopt: Search direction becomes too small (status 3)
OPTIMIZATION FAILED...
CMC::computeControls: Optimizer could not find a solution.
Unable to find a feasible solution at time = 6.06.
Model cannot generate the forces necessary to achieve the target acceleration.
Possible issues: 1. not all model degrees-of-freedom are actuated,
2. there are tracking tasks for locked coordinates, and/or
3. there are unnecessary control constraints on reserve/residual actuators.
What else should I consider to complete the CMC?
Also, as indicated before the error message, the muscle "TrapeziusScapula_I" seems to be too short to exert force for a while before the analysis fails, and the analysis fails almost as soon as the muscle starts to stretch and exert force. I do not know if this is the cause of the failure.
My understanding is that a solution can be found whether the muscle can exert force or not, as long as there are enough actuators present.