Page 1 of 1

Questions about the Analyze tool(body kinematic)

Posted: Sat Jun 20, 2020 8:51 am
by yanran6
Hi,

I'm using the Analyze tool to get results of body kinematic (inputs: scaled model, the result of inverse kinematic to, ground reaction force file). I'm not quite sure the labels meaning in the output file. What's the difference between "pelvis_X" and "pelvis_Ox"? Which one is the linear acceleration and rotational acceleration?

Additionally, is there any reference theory of the computation of body kinematic? How does the OpenSim apply the central difference scheme to calculate the velocity and acceleration?

Re: Questions about the Analyze tool(body kinematic)

Posted: Sun Jun 21, 2020 11:22 pm
by mitkof6
Hi Yanran,

pelvis_[X, Y, Z] are the linear accelerations and [Ox, Oy, Oz] are the rotational accelerations. The represent the position and orientation of the body reference frame as observed by the ground reference frame.

Body kinematics are calculated as follows:

1. The coordinates from IK are filtered and then splines are used to calculate first and second derivatives.
2. These are used to update the state of the model.
3. The position of the bodies is calculated by setting the pose of the model from the kinematics
4. The velocity and accelerations are calculated using specific formulas that take into account the velocity and acceleration of the parent body and joint's motion.

https://simbody.github.io/3.7.0/classSi ... ml#details
A good link to understand more about the algorithms implemented: http://royfeatherstone.org/

Re: Questions about the Analyze tool(body kinematic)

Posted: Fri Jul 03, 2020 9:21 am
by yanran6
Hi Dimitar,

Sorry for the late reply for thanks. I'm still struggling to understand the theory behind the acceleration calculation in Opensim. Which specific formulas are used for point acceleration in the Opensim.

Or a quick question is the linear acceleration calculated as the second derivative of the origin of the segment coordinate systems?

I get my body kinematic and point kinematic results from the Analyze tool with inverse kinematic results as input. But the acceleration values are wired. From the result of velocity, I can see the change of velocity is very small (vel=-0.0013761 (t=0s), -0.00131352(t=0.01s),-0.131224(t
0.02s),-0.139191(t=0.03s)...). But whether the linear accelerations or angular accelerations are quite large (almost 114 rad/s), which looks impossible.
In the Analyse tool setup file, I only provide IK results and ground reaction force. I didn't add actuator and control. I really don't know how to find the reason now. Do you know any possible reasons?

Thanks,
Yanran

Re: Questions about the Analyze tool(body kinematic)

Posted: Sat Jul 11, 2020 3:55 pm
by mitkof6
Hi Yanran,

Sorry for my delayed answer.

I am not sure, but it is possible that during the body kinematics analysis your actuators actuate the model producing large accelerations. Can you try removing the force set of the model and re-run the analysis? Unfortunately, the AnalyzeTool does not work as you might think. The best way to understand how they work is to look at the source code.

https://github.com/opensim-org/opensim- ... l.cpp#L526
https://github.com/opensim-org/opensim- ... s.cpp#L438

Dimitar