Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...


OpenSim 4.1 is currently in beta testing. If you'd like to try out the software, you can download it here (scroll down to OpenSim Beta Releases) and get the testing instructions here.
Note
Info

Interested in trying out our latest beta release? Read more about What's New in OpenSim 4.2?


The OpenSim 4.1 release enables users to read in inertial measurement unit (IMU) data and compute inverse kinematics based on IMU orientations. This workflow is called OpenSense. This is an exciting initial step towards supporting biomechanical analyses with IMUs in OpenSim. For this release, the user is primarily responsible for ensuring proper calibration and registration of the sensors to an appropriate OpenSim model. In the future, we plan to add more advanced algorithms for calibration, registration, and drift correction. You can read more about these new capabilities and try an example:  /wiki/spaces/OpenSim/pages/53084286 OpenSense - Kinematics with IMU Data.

We have also fixed a number of several bugs and improved the user experience in a number of ways. A few highlights include the following:

  • We fixed a bug in InverseKinematics and Scaling where in which markers not included the MarkerWeightSet were still tracked.
  • Disabled muscles are removed during static optimization and on playback , and disabled muscles are shown in grey in the graphical user interface (GUI), disabled muscles show in gray.
  • Based on user feedback, we changed the default time for a forward simulation via the GUI simulate button to 5 seconds (from 1000 seconds).
  • We streamlined the interface to read data files into tables. In Matlab, Python, or C++ this now requires one line instead of three and avoids downcasting. TODO: Where to find more. Read more on the Common Scripting Commands page.
  • We improved the provided Matlab utilities for C3D reading. You can find these utilities in your distribution where you saved the OpenSim resources. See the folder "Code/Matlab".
  • We added utilities to trim TimeSeriesTables, including trim(startTime, endTime), trimTo(newEndTime), and trimFrom(newStartTime).

  • Vector operations in Matlab are faster (3-4X) by exposing API commands for addition, subtraction, etc. with vectors.  To see usage, see "Code/Matlab/Utilities/osimC3D.m".
  • The dynamic walker examples have been upgraded and completely converted to Matlab code. They show users how to build a simple model and run a forward simulation with varying model components and parameters. The examples include Building a Dynamic Walker in Matlab and Dynamic Walking Challenge: Go the Distance!.
  • We updated to Python 3.7, since the previous version 2.7 will be deprecated soon. Users can still create bindings for Python 2 if building from source.
  • We fixed a bug where wrap geometry with multiple via points over wrap objects was not displayed correctly when wrap objects went from engaged to disengaged. Note that in 4.0 the display of muscles may be incorrect, but computations are still correct.

...

Upgrade to version 4.1 should be seamless overall. A few things to note:

  • If you have code that reads data files into tables, you will need to update to use the new methods. 
  • Static Optimization results may be different from version 4.0 if you ran the analysis with disabled muscles. 
  • Your inverse kinematics and scaling results could change based on bug fixes described above (e.g., if you have set-up files where markers were omitted from the MarkerWeightSet). 

...