What's available?
- Instantiate and run tools from setup files or programmatically
- Perform batch processing of common workflows (e.g., inverse kinematics, computed muscle control, EMG-driven simulation).
- Utilize the OpenSim API without the overhead of learning to program in C++ and setting up a development environment
- Write "main" programs similar to those written by C++ developers, while taking advantage of the many open-source Matlab/Python packages for data processing, statistics, machine learning, etc.
- Access a limited subset of Simbody multibody calculations.
- Access to the OpenSim API to create and simulate models
Use the Simbody visualizer
Limitations
- In general, cannot create new component (e.g., a custom muscle; though there are some exceptions).
- Cannot create plugins for use through the GUI or command-line.
- Not all Simbody classes are available.
- In this mode, there’s no access to OpenSim's plotter (use Matlab/Python native plotter) or visualizer (use the Simbody visualizer).
- Some internal SimTK classes (that belong to the SimTK namespace and simbody internals) are not available for construction, but the most commonly used classes are available (SimTK::Vec3, Vector, Mat33, State, Inertia).
Interfaces
- Matlab
- Python
- The scripting shell in the OpenSim GUI (which is a Jython interpreter embedded in the application)
- A Jython interpreter
The sections below outline how to get started with scripting and describe the available functionality.