# Upper limb joint angles

Hi everybody!
I'm mechanical engineering student and for my thesis work I'm currently working on the study of upper limb movements in metal workers.
For the study I should know the joint angles and reaction forces of the joints, but I can't figure out what values ​​I have to look for in the model tree.
Expecially I should look for the joint angles of the shoulder (abduction/adduction, flexion and extension), of the elbow (pronusupination, extension), of the wrist (palm flexion and ulnar deviation) and related reaction forces.
Where can I find the meaning of the various acronyms? Is there a legend to follow? Or a forum/tutorial page where there are written what they refer to?

Andrea

Hi @Andrea and welcome to the forum!

In the model tree you can go to the `HumaModel/BodyModel/Interface/Right/` folder and see all the joint angles (in radians) of the right side. There are folders for the left and Trunk aswell.
The reaction forces are located at `HumanModel/BodyModel/SelectedOutput/Right/ShoulderArm/JointReactionForces/`

When you go the variables on the model tree you will only see the current time step value - to see the curve over the whole simulation you can find the same variables from the chart view.

I am not quite sure what you mean about the acronyms and legends? are there any specific ones you are unsure what means?

Some helpful resources can be found here:

Best regards,
Bjørn
AnyBody Technology

Hi Bjørn,
Yes, I have to see the curve over the whole simulation of these values ​​and then plot them, and I think I have found them!! Thanks for the help and sorry if I confused you.
I have another question: when I read the values ​​of the joint reaction forces (as well as any other force) I see that they can be both negative and positive, what does this mean? what should I associate to a negative value and what to a positive value?

Andrea

Hi @Andrea

Great to hear you found it.
The joint reaction forces can be both positive and negative as they represent two directions.
For instance the `GlenoHumeral_AnteriorPosterior` joint reaction force is negative when pointing posteriorly and positive when pointing anteriorly.

Best regards,
Bjørn
AnyBody Technology

Hi Bjørn,
I have to develop a new model based on a c3d file for thesis work.
With my professor we tried to add two external loads, applied to the right PalmNode, one representing the weight of a drill and the other representing the reaction force of the wall during drilling and we decided to put them immediately under the acceleration vector of gravity in the LabSpecifiData.
I followed the tutorial 11 lesson 5:Forces and once the model was loaded the code did not give me errors, but despite this the model does not seem to be affected by these two new forces, as if they were not there. What can be the reason? How can i fix it?

Andrea

Hi Bjørn,
Sorry, but reading my message I could create some misunderstandings
I forgot to write you that I'm looking at how the forces of the right shoulder muscles and the joint reaction forces of the right shoulder change for different loads, but even applying the forces I do not see any changes.

Andrea

Hi @Andrea

It sounds like the external load and reaction code is not included in the study.
The way it works is that the study you run must include the model, environment and any extra added forces,constraints etc.
This is because you can define a model with multiple studies where each simulates something different.
If you are using an `AnyMoCap` based model the Inverse dynamics study includes the following:

``````/// Study for running the inverse dynamic simulation
AnyBodyStudy InverseDynamicStudy =
{
AnyComponentDefinition obj = {};
Gravity = Main.ModelSetup.LabSpecificData.Gravity;
AnyFolder& C3DData= Main.ModelSetup.C3DFileData ;
AnyFolder& BodyModel= Main.HumanModel.BodyModel;
AnyFolder& EnvironmentModel = Main.EnvironmentModel;
AnyFolder ModelEnvironmentConnection =
{
#include "HumanGroundResiduals.any"
#include "JointsAndDriversOptimized.any"
};

// Include markers for visualization, but exclude the driver part
AnyFolder &Markers= Main.ModelSetup.MocapDrivers;

// Exclude marker drivers and soft rhythms
#include "ExcludeSoftDrivers.any"

#include "InverseDynamicSettings.any"
};
``````

So the extra code you add must insert the reaction force and external load into one of the folders mentioned above, or you reference the code like in the above snippet.
Must suited would probably be to add it to the `EnvironmentModel` folder.

Best regards,
Bjørn
AnyBody Technology

Hi Bjørn,