muscle recruitment solver problem

Hello AnyBody Community

I am working with the Mocap model to investigate differences of joint forces and muscle activities during different types of running in sports. It is my first project using AnyBody.

My attached model uses a C3D file of a typical rear-foot strike. The kinematic solver seems to work fine. But the inverse dynamic solver can not finish. It seems that there is a problem with the hand muscles and the used muscle recruitment solver. I get these types of Error-Mesages or warnings.
pectoralis_major_clavicular_part_3.SPLine : Number of allowed iterations for contact solution has been exceeded…

…muscle recruitment solver aborted after reaching maximum of iterations…

I tried two different MR_solver–> MR_polinomial with Power= 3 & MR_MinMaxAux with AuxQuadraticTerm.Weight = 1
But the error is the same.

Previously, I tested my model with some eaysier movements like a squad or lifting one leg in different ways. And the model worked totally fine.

It would be great, if someone could have a look on my model. I am happy for every help I can get.

Best regards
Christian:)

Update:
Since the GRFPrediction example (wiki) shows the same warnings, it might be negligible in that case. So I excluded all hand muscles which presented a warning.
For the aborted muscle recruitment solver: I adjusted a better initial condition and a MR_MinMaxAux solver --> no more errors

New Problem:
The GRFPrediction doesn’t work properly. Even though there are 25 nodes on the sole, the prediction works only for 3 frames using just 3 nodes. Afterwards all values are equal to zero. And there is no Error message.
I tried to adjust the node distance to the sole, increased the radius for a better detection sphere and used a new AnyFixedRefFrame as detection plane. (If I understand the settings right)
But nothing worked.

It would be really nice if someone could help me.

Best regards
Christian

Dear Christian,

Attached please find the modified version of your model that I tried to fix.

  1. The biggest issue why the GRF prediction code was not working properly is that you should also consider the velocity parameter.
    I increased the velocity limit in the GRF prediction code.
  FootPlateConditionalContact GRF_Prediction_Right(
    PLATE_BASE_FRAME = Main.EnvironmentModel.TreadmillSurf,
    NORMAL_DIRECTION = "Z",
    NODES_FOLDER = FootNodes,
    NUMBER_OF_NODES = 25,
    SHOW_TRIGGER_VOLUME = 0
  ) =
  {
    Settings =
    {
       LimitDistLow = -0.10;                  
       LimitDistHigh = 0.04;               
       LimitVelHigh = 0.8*5;                 
       Radius = 10;                        
       Strength = 200;                     
       FrictionCoefficient = 0.5;          
       ScaleFactor = 1;                    
       ForceVectorDrawScaleFactor = 0.0005;
    };
    CreateFootContactNodes25 FootNodes(foot_ref = 
        Main.Studies.HumanModel.BodyModel.Right.Leg.Seg.Foot) = { };
  };

I would like to recommend you read a paper about GRF prediction using AnyBody:
Jung, Y., Jung, M., Ryu, J., Yoon, S., Park, S. K., & Koo, S. (2016). Dynamically adjustable foot-ground contact model to estimate ground reaction force during walking and running. Gait & posture, 45, 62-68.

I hope this may be helpful to you.

Best regards,
Moonki