Parameter optimization

Hi,

I am using GaitFullBody model to study lifting motion. My model loads and runs fine. However, after parameter optimization step, when I try to run inverse dynamics analysis, the marker locations from the C3D data and on the model do not align. There is a lot of gap between some markers. If there is so much gap then how do I know that model is running using accurate kinematics. Can the – OptX=“On”,OptY=“On”,OptZ=“On”, – values be modified to better align the the markers?

Thanks.

Hi,

It comes from the SternoClavicular joint. In your parameter optimization model the SC joint is driven by the markers. Whereas in the inverse dynamic model the three rotation are fixed with an AnyKinEqSimpleDriver. So you need to transfer the SC motion from the first model to the second, via the output file like for the other joints.

Take the two attached files to replace those you have and run again the optimization. It will run fine with this.

Best regards, Sylvain.

Thank you for reply.

I am facing a problem during inverse dynamics analysis. I get the following message every time I run inverse dynamics analysis.

ERROR(OBJ1) : D:/D…s/A…y/N…r/A…2/A…2/Body/A…n/Arm/Muscle.any : latissimus_dorsi_5.SPLine : Number of allowed iterations for contact solution has been exceeded in Main.Studies.HumanModel.BodyModel.Right.ShoulderArm.Mus.latissimus_dorsi_5.SPLine

Do I get this message because of the relatively awkward posture model run into?

What can I do to fix this error?

Thank you

Hi,

It means the surface wrapping of the muscle failled. It can be caused by a too extreme motion of the shoulder, but your motion seems reasonable.
You can start by increasing the SPline.mesh number. It may help.

It can also happen because the muscle ends up on the edge of the cylinder it wraps on. Use an anydraw to display all the surfaces this muscle wraps on and check for problem like wrapping on the edges, changes of side on the cylinder, thing like this.

Best regards, Sylvain.

Hi,

Thanks for your reply. I tried increasing SPline.mesh number to upto 80 but still my model fails during inverse dynamics calculations. What is the acceptable number SPline.mesh number?

I am facing this problem with a simple lifting motion as well. Please see the attached model. Model is not running into any extreme position but I am getting the same error again.

Please advise.

Thank you.

Hi,

80 is enough for the SPline.mesh. A high value gives a good accuracy of the wrapping but it is also time consuming for the computation.
Did you check the wrapping surfaces by displaying them in the model view? See if anything strange happens with the muscle?

The model you sent can’t run the inverse dynamic analysis (the text files are corrupted it seems so it doesn’t load at all). Please send a version that can run the inverse model if you want us to check on it.

Best regards, Sylvain.

Hi,

I did display the surface and I don’t see anything unusual happening with the muscle. This muscle does intersect with Serratus Anterior muscle, but the intersection happen long time before the model quit running. I am getting the following error message:

Number of allowed iterations for contact solution has been exceeded in Main.Studies.HumanModel.BodyModel.Right.ShoulderArm.Mus.latissimus_dorsi_3.SPLine

My model is attached. I am also attaching the text files for hand force separably. Please advise on what I am doing wrong.

Thank you.

Hi,

I have to admit that it is a little strange. There are no clear reasons for the wraping to fail.
In that case the last option is to increase the Relative Tolerance for this particular wrapping muscle, it makes the contact less strict and therefore it is easier for the solver to find a solution. You can add this line in AnyShortestPathMuscle latissimus_dorsi_3 :
SPLine.RelTol = 1e-06;

It will work with this.

Best regards, Sylvain.