Muscle Strength Scaling

Hi Any-Buddies

I am using the Twente lower limb model, and I am scaling the model to my subject with an (adapted) LengthMassFat-Scaling law. Although the Strength-Scaling is defined for each segment, it seems to me, that these variables are never used in the Model.

Following all the links, I couldn’t find any variable that linked the initial strength (F0) of a muscle to this Strength Scaling.
Therefore, I have added a few lines of code to the model, that links the Strength Scaling to the initial strength in both to the Simple Muscle model, as well the 3E model. (-> something to consider in the next repository release? :))

Furthermore, I have realized that the Fiber-Lenght Scaling is kind of a dead-end as well (although it seems, in the 3E -Muscle Model, that there was the intention to implement it as well). Thus, I have tried to implement this scaling Factor to scale the optimal fiber length of the muscle according to the fiber Lenght Scaling:
AnyVar FiberLengthFactor = .FiberLengthScaleLeg;
AnyMuscleModel3E SoleusLateralis4Par = {
F0 = .PCSAfactor*85.9/3;
AnyVar LfbarTemp = (5.08/100) *.FiberLengthFactor;


However, when doing so, I get the following warning message:

LegCalibrationStudy6.Internal_dependency : Wrong initialization of AnyVarRef linking to value Lfbar in study LegCalibrationStudy6 :
Dependency (Right-hand side or internal dependency) may be evaluated later than this AnyVarRef object. This is not allowed, because it could override the AnyVarRef value transfer.

It is “only” a warning message, but not the thing I would like to see in my models.
Any idea for a work around/solution?


1 Like

Hi Christine,

This is something we have also noticed recently and it will definitely be part of the next major release of the repository, thanks for writing this to us.

When we did the fix in our version we got the same warnings, here is the explanation:

If you are using the leg together with a model which has the thighlength, shanklength as design variables then these variables may effectively change the fiberlength because this is the link we and you have introduced. Similarly this is also what the calibration routine can do in some cases, if it is not enough to change the tendon length, it will also change the fiber length.

In this is way you will get the warnings because two instances in the script can change the same variable.

So when the model is loaded the fiber length get scaled then you run the calibration and by default it will regard the fiber length as a designvar and throw the warning. In the next release of the system we are looking for a way to avoid the warnings and only display the warning if the variable was actually changed.

So always remember to rerun the calibration after the model has changed size.

Best regards


Hi Soren

thanks for your quick answer.

I did not realize that the calibration study could also change the fiber length and not only the tendon length. But in that case, the warning message makes somehow sense, if the fiber length can be changed by both the seg-Length optimization and the calibration sequence (although they are actually run sequentially…).

I will look out for the next system release and ignore the warnings in the meantime! :slight_smile:


I was wondering how you included the strength scaling to the TLEM MusPar. I think it is logical to multiply the F0 with the factor, just the way it is done in previous versions:
AnyMuscleModel3E SoleusLateralis4Par = {
F0 = .PCSAfactor85.9/3[b][COLOR=magenta].StrengScaleShank [/b][/COLOR]; // Maximum force output at optimum fiber length

etc. for the other muscles (take into account the thighscaling for muscles in the thigh and pelvisscaling for muscles in the pelvis)
Is this correct?



you have actually pointed out a very good question how to define a correct strength scaling factor.

As each muscle spans at least two to three segments, one would have to choose the correct scaling factor for each muscle individually, for example in terms of the segment in which the major part of the muscle belly is located. For example for soleus and gastrocnemius it would be the shank, for the quadriceps the thigh, and for the gluteus medius/minimus and maximus the pelvis segment etc, as you have defined in your example.
If you do so, you have to go through each of the muscles individually and asign “their segment”.

For simplicity, I have considered the strength scaling factor of the leg muscles not in terms of invidual segments, but as one single factor, taking the average of the shank, thigh and pelvis strength scale factor.

This was much easier to do, as I did not have to change the code for each muscle, but I just had to change the scaling factor once.

This method has the disadvantage that for example a person with pronounced thigh but small shank muscles may not be represented well with this methodology.
However, unless you consider the individual segment circumferences also in your calculation of the individual segment masses, I would assume that the differences in the strength scaling factor is minimal between the different segments of the lower limb.

In general, I would say there is not “one correct” way to define the strength scaling factor.

There is such a large inter-individual variance in the relationship between weight, BMI, fat-free mass and muscle strength that you may come up with many different ways of defining a strength scaling law, and probably none can reflect the “true strength scale” of each muscle.

I myself went for the simplest method for the strength scaling and defined one Leg Strength Scale factor for all muscles of the lower extremity. However I considered the left and right leg individually taking the segment length and circumferences, age, gender, weight and height into account for the calculation of segment mass, Fat-Free mass and strength scaling factors etc.


1 Like

Thanks for your quick reply. I think it is indeed dependant of your own goal. At the moment I am only looking at 1 leg. I used the same scalingsegment as in the normal (non TLEM) muspar file in most cases. I think some muscles are still under discussion whether they are thigh or pelvis muscles. Maybe it is an idea to insert another factor in the scaling if the muscle belly lies in two segments. But that will take a lot of time to model and the results will not improve that much.

Best regards

That’s the beauty of the AnyBody System! You can define and adapt the model in the way it suits best your research question and purpose!:slight_smile:

Have fun and good luck with your model!