Pmet - unit and total value

Hi AnyBody,

I have two questions regarding the metabolic power, Pmet:

  1. Which unit has Pmet? Is it W/kg or W?
  2. Is it possible to get a total value of Pmet for the whole body in the mocap model?

Thank you for your reply.

rena

Dear Rena,

  1. The unit of Pmet is W.

  2. Yes, it is possible, but you need to search for all the Pmet objects, convert them to values and add them together. Here is a code snippet for it, which should be used under the Inverse Dynamics study:
    AnyFolder Studies ={
    // Usually, there is no need to make changes in the following files. Changes in the Kinematics
    // and InverseDynamics file may lead to model failure and/or unrealistic results:
    #if MotionAndParameterOptimizationModel == 1
    #include “Model/Kinematics.any”
    #endif

    #if InverseDynamicModel == 1
    #include “Model/InverseDynamics.any”
    AnyVector Pmet_sample=Main.Studies.InverseDynamicStudy.BodyModel.Right.Leg.Mus.FlexorHallucisLongus1.Pmet;
    AnyObjectPtrArray pArr = ObjSearchRecursive(“Main.Studies.HumanModel”, “*.Pmet”);

    AnySearchFun Fun_Pmet_RightLeg =
    {
    Search = “Main.Studies.InverseDynamicStudy.BodyModel.Right.Leg.Mus.*.Pmet”;
    };
    AnyFloat Array_Pmet_RightLeg = Fun_Pmet_RightLeg();

    AnySearchFun Fun_Pmet_LeftLeg =
    {
    Search = “Main.Studies.InverseDynamicStudy.BodyModel.Left.Leg.Mus.*.Pmet”;
    };
    AnyFloat Array_Pmet_LeftLeg = Fun_Pmet_LeftLeg();

    AnyFloat Array_Pmet_BothLeg = arrcat(Array_Pmet_RightLeg,Array_Pmet_LeftLeg);
    #endif

};

The code above first looks for all the objects that end with Pmet, then it looks for RightLeg muscles and so on. Please note that AnySearchFun can only loop over objects of one level, e.g., “…Right.Leg.Mus.*.Pmet”; therefore, you need to use the AnySearchFun again for other muscles, such as those on the upper extremity, to have included all the muscles, at which time it will compute the summed metabolic power for you.

Hope it helps.

Best Regards,
Mohammad S. Shourijeh, PhD
AnyBody Team

Thank you very much for your reply.

Do you know any literature in which the simulation of Pmet is validated?

Best regards

Rena

Dear Rena,

In general there are much more indirect validations of metabolic power and energy than the real validation in the literature where people have used it as a criterion to predict motion. Here are some examples:

AnyBody Pmet: link

and validation of metabolic energy rate in general:
Davy and Audu 1987 (link)
Anderson and Pandy 2001 (link)
Shourijeh and McPhee 2014 (link).

Hope it helps,
Mohammad

Hi Mohammad,

I have done the analysis but now there are some problems. Maybe you can help me.

  1. In the Model Tree the Array_Pmet_*-values are listed, but all values are 0. Do you know the problem? Is there a problem with the muscles I used? I used the Mocap-Model.

  2. My second question is: I would like to get an ModelOutput like Pmech or MaxMuscleAktivity. How should I proceed?

Thank you for your reply.
Best regards.

Rena

Hi Rena,

Try to wrap all the Pmet-related lines of the snippet code into Main.Studies.InverseDynamics like the following:

#if InverseDynamicModel == 1
  #include "Model/InverseDynamics.any"  

Main.Studies.InverseDynamicStudy =
{

AnyFloat Pmet_sample=…
.
.
.
AnyFloat Array_Pmet_BothLeg = …
};

#endif

Hope it helps,
Mohammad