Share 
Follow 
AboutDownloadsDocumentsForumsSource CodeIssuesNews
Date:
2021-01-02 06:35
Priority:
3
State:
Open
Submitted by:
B.J. Fregly (fregly)
Assigned to:
Nobody (None)
Summary:
OpenSim-generated du/dt curves appear to be incorrect

Detailed description
I just ran the Analyze tool, including Kinematics and Body Kinematics, on an OpenSim model for which I had just generated Inverse Kinematics results. Since I cannot read in my own u and du/dt values, I wanted to verify that when OpenSim differentiated the q values in my IK-generated .mot file processed with a 6 Hz low pass cutoff frequency, it generated the correct u and du/dt curves. I need all three types of curves (q, u, and du/dt) for an IMU motion measurement project on which I am working.

Unzip the attached file and run the included Matlab program, which reads in the q, u, and du/dt data output by the Analyze Tool, fits the q curves with a smoothing Bspline, and then analytically calculates the associated u and du/dt curves for comparison.

I included an analytical test function at the start to confirm that the Bspline function is creating the correct u and du/dt curves.

As you will see, when du/dt curves output by the OpenSim Analyze Tool was WAY to large and not the correct shape either. So unless I am missing something (which is always possible), it appears that OpenSim is not calculating the du/dt curves correctly. I don’t know if that means Body Kinematics and Point Kinematics results will be wrong as well, but I definitely need Body Kinematics to work properly for the project on which I am working.

Let me know if you have any questions about this bug report. Hopefully I am just doing something silly!

Add A Comment: Notepad

Message  ↓
Date: 2021-01-05 08:15
Sender: B.J. Fregly

I just did an Autolev-based calculation of Body Kinematics results from the Analyze Tool, and while the positions and velocities were spot on, the accelerations from OpenSim were again WAY to large compared to the accelerations calculated by Autolev. So it appears that the du/dt values are not just being output incorrectly - they appear to be incorrect internally as well. To do this test, I created a lower body OpenSim model with IMUs on it that matches experimental measurements. I then created an identical Autolev model that had exactly the same joint kinematic structure and IMU positions/orientations on the body segments. Given that the positions and velocities match perfectly, I am convinced that the OpenSim acceleration calculations are incorrect.

Attachments:
Size Name Date By Download
377 KiBOpenSim Bug1.zip2021-01-02 06:35freglyOpenSim Bug1.zip
Field Old Value Date By
File Added740: OpenSim Bug1.zip2021-01-02 06:35fregly
Feedback