Page 1 of 1

Wrong acceleration when doing analysis

Posted: Wed Sep 09, 2020 4:43 pm
by claytonfk
Hi,

First of all, I am aware that this problem was already reported here twice. However, I have additional information here for the developers and people that might come across the same issue.

The problem: I am using Analysis tool + OutputReporter to get the position, velocity and acceleration of a marker during a motion. While the position and velocity values seem good, the acceleration values are too high (in the order of thousands of meters per second :shock: )
I am using the gait2392 model and the normal, crouch1 motions.

Attempt to solve 1: I tried using MATLAB instead of the software to do the same job. Unfortunately the error persists.

Attempt to solve 2: I turned off gravity (setting it 0 0 0). The acceleration changes only a bit. But still too high to be correct.

Attempt to solve 3: Following the hint of Carmichael Ong, I prescribed the motion on the model, and used the Forward tool + OutputReporter. Strangely, the acceleration for the height axis (Z?) decreased significantly and looks correct (even though I have not verified by comparing to the finite differences of the velocity). The acceleration for the remaining axes are still too high.


Is there any other workaround worth trying? Or was this issue already addressed in the latest commit on Github?

Thank you.

Re: Wrong acceleration when doing analysis

Posted: Tue Sep 15, 2020 11:30 pm
by ongcf
It seems that the issue occurs because accelerations are calculated given any external forces being applied, so depending on the setup of your problem, this can cause some odd acceleration values if external forces or constraints aren't all correctly applied.

A workaround is to trust the position and velocity outputs, and then use MATLAB/Python/etc to calculate accelerations from the velocities.

Re: Wrong acceleration when doing analysis

Posted: Sun Oct 18, 2020 9:23 am
by azarangasadi
Hi, I'm using point kinematics and having the same issue! accelerations in thousands and trust me I saw a million once!!! So what should we do? just trust the position and use MATLAB to differentiate twice?