WELCOME TO THE NEW PLATFORM FOR THE OPENSIM DOCUMENTATION

Remember to update your bookmarks with our new URL.
If you find missing content or broken links, let us know: opensim@stanford.edu


Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

The new release has fixes and enhancements to Static Optimization and the Scale Tool, improvements to the Metabolic models in OpenSim, along with several other bug fixes and compatibility with Visual Studio 2013. More details about the changes and how to upgrade are described below:

New Features and Bug Fixes

  • We made several improvements and bug fixes to Static Optimization.
    • Output messages are more informative when the optimizer fails to find a solution (e.g., if the model is under-actuated). This addresses the cryptic " DLASD4" error experienced on Windows x64. We upgraded the underlying optimization library used by OpenSim (Lapack). The upgraded Lapack library includes a bug fix, so that when the optimizer fails, the message is passed properly to OpenSim and thus the user. This is also helps prevent previously reported crashes when running Static Optimization.
    • Static Optimization can now handle models with passive elements. The forces from passive elements are applied according to the dynamics of the system and outputs in the _forces file. The tool no longer outputs erroneous "activations" for passive elements.
    • We updated the test case for static optimization accordingly.

  • Ligaments are now scaled by the ScaleTool
    • The Scale Tool updates the path of ligaments during the scaling process. The resting length is also scaled according to the new geometry.
    • The documentation for How Scaling Works was updated to describe these changes and include more details about how the algorithm scales models. We also updated the test cases to test scaling.

  • We created new examples and scripts:
    • We created a new example demonstrating how to use Static Optimization, fix common problems, and evaluate the quality of your results. ADD LINK
    • We developed a new Matlab script to automatically generate an actuators files to be used in Static Optimization, RRA, and CMC. The script tries to identify coordinates connected to ground and attach point and torque actuators (residual actuators). It attaches coordinate actuators at other coordinates. The Script can be found in the Matlab scripts folder.

    • We include a FindOpenSim.cmake script that makes it easier to build plugins. It is located in the sdk folder of the Windows installation, or in the root directory of the source distribution. Instructions for using this script are contained within the script itself. Here's an example.

  • We fixed several additional bugs reported by users.
    • When running Inverse Dynamics in previous versions of OpenSim, if you ran the tool once and then re-ran with a new motion file, this new motion file was not used. We fixed this bug.
    • We fixed a bug where external forces were not visualized properly by the Associate Motion Data ... tool in the GUI. The bug occurred when the "Point Expressed In" and "Force Expressed In" body were different. Now both inputs are respected.
    • The GUI no longer resamples output motions from tools for playback. This resampling was originally intended to improve visual playback of motions; however, the resampling creates issues when using these resampled motions as input to tools. 
    • Fixed bug where a debug preference greater than 10 caused a crash.
    • Inverse Kinematics could sometimes complain of assembly failures when in fact tolerance had been achieved.

  • We updated scripting functionality as requested by users.
    • We've exposed the CMC_TaskSet through scripting to allow users to generate task files through Matlab or Python scripting
    • We fixed a bug where appending to a ForceSet through Matlab scripting caused a crash.

  • We improved the metabolic models included with OpenSim.
    • We added the ability to scale muscle effort by a constant factor to compensate for excessive coactivation in a simulation. We also added flags enabling users to include negative mechanical work and/or forbid the total instantaneous power from being negative. The Umberger2010 model also now includes the capability to use the recruitment model from Bhargava et al., 2004.
    • More details are available on the doxygen documentation ADD LINK and will be provided in an upcoming publication.

  • We upgraded to Simbody 3.5.3 and as a result:
    • OpenSim now supports Contact Mesh files in .obj or .stl format
    • OpenSim has new Lapack libraries, which leads to better message handling, as described above for Static Optimization
    • Advanced OpenSim C++ API users have access to Simbody 3.5 features; see Simbody's changelog.

  • We made updates and fixes to the build system:
    • The OpenSim 3.3 source code now builds in Visual Studio 2013 and in Visual Studio 2015 Release Candidate (RC).
    • We fixed minor bugs that we detected when compiling on OSX with Clang 3.5 (AppleClang 6.0).
    • Other updates?

Upgrade Notes

  • Users scaling models with ligaments should note that these components will now automatically be scaled and will no longer need special handling

  • Users running Static Optimization with models that have passive elements should not that forces from the elements will now be applied according to the dynamics of the system.

  • We disabled access to StaticOptimization analysis from the AnalysisList panel in the GUI to disallow concurrent running of Static Optimization with other analyses. Now the only entry point is "Static Optimization" under Tools in the application. This change is to prevent confusion, since running a Muscle Analysis concurrent with Static Optimization will not give valid results, since the Muscle Analysis requires integration (is not Static).

  • Developers building from source will need to use Simbody 3.5.3. 

  • On Linux and OSX, note that Simbody 3.5.3 defaults to using C++11 while OpenSim 3.3 defaults to C++03, and these are incompatible. Most users should set the Simbody CMake variable SIMBODY_STANDARD_11 to OFF prior to building Simbody so that both packages are built using the same compiler standards. Alternatively, if you are interested in using C++11 with OpenSim 3.3, you can set the OpenSim CMake variable OPENSIM_STANDARD_11 to ON.

  • Other build changes?
  • No labels