Hello,
I have a question regarding joint reaction forces. I need to obtain six elements for each joint: forces and moments along the x, y, and z axes, specifically Fx, Fy, Fz, Mx, My, and Mz.
The inverse dynamics (or joint reaction analysis) provided by OpenSim is unsatisfactory for my needs. I require both the linear forces and the moments in all three dimensions. (Fx, Fy, Fz, Mx, My, and Mz.)
Can anyone provide methods to capture these six elements for each joint in OpenSim?
Thank you.
How to get Joint Forces?
- jaebeom jo
- Posts: 3
- Joined: Sun Aug 27, 2023 11:51 pm
- Mohammadreza Rezaie
- Posts: 407
- Joined: Fri Nov 24, 2017 12:48 am
Re: How to get Joint Forces?
Hi,
Please note that, depends on the input data, Joint Reaction Analysis (JRA) tool could give you both intersegmental forces/moments and joints contact forces/moments. Inverse Dynamics (ID) output is in joints frames (or better to say, coordinates), but the JRA output could be expressed in ground, parent body, or child body (mostly used) frames.
Intersegmental forces/moments: GRF and forces/moments of coordinates are required. To do that, simply exclude muscles from the model (either by disabling or removing), create an actuator file in which every free coordinate has a CoordinateActuator with optimal force of 1 (N or Nm), and min and max controls of -inf and +inf, respectively. Note that if the names of the actuators match the ID output (columns labels), you can simply use ID output as the force file in the JRA tool. Otherwise, you must run the Static Optimization to find their forces/moments.
Joints contact forces/moments: GRF, muscles forces and/or (reserve/residual) actuators forces/moments are required. Both Static Optimization and CMC tools could give you the required force file. Please see Joint Reactions Analysis for more details.
Hope this helps,
-Mohammadreza
Please note that, depends on the input data, Joint Reaction Analysis (JRA) tool could give you both intersegmental forces/moments and joints contact forces/moments. Inverse Dynamics (ID) output is in joints frames (or better to say, coordinates), but the JRA output could be expressed in ground, parent body, or child body (mostly used) frames.
Intersegmental forces/moments: GRF and forces/moments of coordinates are required. To do that, simply exclude muscles from the model (either by disabling or removing), create an actuator file in which every free coordinate has a CoordinateActuator with optimal force of 1 (N or Nm), and min and max controls of -inf and +inf, respectively. Note that if the names of the actuators match the ID output (columns labels), you can simply use ID output as the force file in the JRA tool. Otherwise, you must run the Static Optimization to find their forces/moments.
Joints contact forces/moments: GRF, muscles forces and/or (reserve/residual) actuators forces/moments are required. Both Static Optimization and CMC tools could give you the required force file. Please see Joint Reactions Analysis for more details.
Hope this helps,
-Mohammadreza
- jaebeom jo
- Posts: 3
- Joined: Sun Aug 27, 2023 11:51 pm
Re: How to get Joint Forces?
Thank your TIP!, Mohammadreza.kernalnet wrote: ↑Tue Jan 09, 2024 8:09 amIntersegmental forces/moments: GRF and forces/moments of coordinates are required. To do that, simply exclude muscles from the model (either by disabling or removing), create an actuator file in which every free coordinate has a CoordinateActuator with optimal force of 1 (N or Nm), and min and max controls of -inf and +inf, respectively. Note that if the names of the actuators match the ID output (columns labels), you can simply use ID output as the force file in the JRA tool. Otherwise, you must run the Static Optimization to find their forces/moments.
I had researched Joint Reaction Forces before, but I forgot about it because I'm not using muscles now.
I was struggling because using muscles felt difficult, but following your instructions, it seems like I can get the joint reaction Force/Moment what I want.
Thank you again. Have a great day!
- Rajarshi Roy
- Posts: 4
- Joined: Mon Jan 20, 2020 1:07 pm
Re: How to get Joint Forces?
Thank you, Mohammadreza, for the suggestions regarding generating intersegmental forces using the ID outputs and the CoordinateActuators! That works well for the Arm26 example.
However, when I tried to do ID + JRA with whole body (scaled version of Gait2354_Simbody, with muscles excluded as per your suggestion), I notice that there is motion in all of the model joints and the model looks noticeably more "bent" in configuration compared to the original model. This happens when I run the JRA tool (ID doesn't alter the kinematics beyond what is specified in the IK motion file). I have specified no motion in the joints, and the only forces acting are the bodies' weights. Do you have any idea why this might be resulting ? I am not being able to figure this out. I am not running any RRA to alter the joint kinematics either.
I am attaching the figure to this comment. Many thanks!!
However, when I tried to do ID + JRA with whole body (scaled version of Gait2354_Simbody, with muscles excluded as per your suggestion), I notice that there is motion in all of the model joints and the model looks noticeably more "bent" in configuration compared to the original model. This happens when I run the JRA tool (ID doesn't alter the kinematics beyond what is specified in the IK motion file). I have specified no motion in the joints, and the only forces acting are the bodies' weights. Do you have any idea why this might be resulting ? I am not being able to figure this out. I am not running any RRA to alter the joint kinematics either.
I am attaching the figure to this comment. Many thanks!!
- Attachments
-
- Picture1.png (196.14 KiB) Viewed 735 times
- Mohammadreza Rezaie
- Posts: 407
- Joined: Fri Nov 24, 2017 12:48 am
Re: How to get Joint Forces?
If I understand correctly, you are using JRA without prescribing any motion. I have never used JRA in that way. Perhaps you need to create a dummy motion file for your purpose.
- Rajarshi Roy
- Posts: 4
- Joined: Mon Jan 20, 2020 1:07 pm
Re: How to get Joint Forces?
Correct, I held the model fixed with the only load being gravity. I can try with a superimposed motion and see if that helps.
- Rajarshi Roy
- Posts: 4
- Joined: Mon Jan 20, 2020 1:07 pm
Re: How to get Joint Forces?
Hi MohammadReza, I added a motion file with motion in the hip (L+R), knee (L+R), ankle (L+R) and pelvis tilt, but it seems that upon running JRA, the model still translated and bent in configuration. It seems that this offset takes place right at the start of the motion (after running JRA).
- Attachments
-
- Picture1.png (160.04 KiB) Viewed 680 times