Wrapping problem

Hi

I am using a model based on the BergmannGH validation model in the repository. I am having a problem with the Infraspinatus_5 muscle path.

When I input the following for plane of elevation, elevation and rotation the model works:
0.5, 0.5, 0.5 rad
0.5, 0.4, 0.5 rad

However when I input elevation between 0.4 and 0.5 the model gives the following error:
ERROR(OBJ1) : E:/AnyBody_Monique/T…s/08.01a/MuscleDef.any : infraspinatus_5.SPLine : Number of allowed iterations for contact solution has been exceeded in Main.BodyModel.Muscles.infraspinatus_5.SPLine

From reading the forum it seems this is to do with the wrapping so I have made the wrapping object visible. At 0.4 elevation the muscle wraps near the bottom of the humeral sphere while at 0.5 elevation the muscle wraps near the top of the sphere so it should be in between for elevations between 0.4 and 0.5. Maybe it is due to the muscle slipping so I increased SPline.StringMesh to 60 - this did not solve the problem. I also tried to increase the number of time steps but this did not help either. I read on the forum that you could also change SPLine.RelTol for example to 1e-06.

This seemed to solve the problem however I am unclear on the effect of this change. The description for SPLine.RelTol gives:
“Relative tolerance that is used to determine whether the solution is acceptable. The string length is used for normalization of the displacement.” which did not help clarify. What effect on the solution does reducing this value have?

Thanks for the help

Monique

Hi Monique,

I did not forget that problem with infraspinatus_5.SPLine, but I have to postpone it til Monday. At the moment I cannot say exactly what causes the error, but we will look into that.

Amir

Hi Monique,

SPLine.RelTol is a relative tolerance for the change of position in each iteration step of the contact solver, a crude tolerance can make the algorithm accept a position in one time step (the first for instance) and then improve it significantly in the next time step before it actually recognizes that it should stop within a (after one contact iteration).

I think a tolerance of 1e-6 sounds ok, if the value is reduced to much i think you will see fluctuations on the length of the measure.

Best regards
Søren

1 Like