OpenSim's scripting capabilities allows users to:
- 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
- Access a limited subset of Simbody multibody calculations.
However, not all of OpenSim's functionality is available through scripting. Specifically:
- 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.
You can access OpenSim scripting through
- 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.