opensim-org

opensim-core: Model Musculoskeletal Movement and Simulations

OpenSim Core is a C++ toolkit for building musculoskeletal models and simulating movement. It includes command-line applications and Java and Python bindings for researchers and developers working in biomechanics and movement science.

Stars
1.1k
Forks
400
Stars, last 10 days
+7

Our take

Health score

66/100

How it is scored
Activity
66
Community
82
Issues
53
Pull requests
62

+7 stars in the last 10 days

  • Merges more pull requests than 90% of the projects we track

Overview

OpenSim Core provides libraries and tools for creating models of musculoskeletal structures and simulating movement. It supports analysis of movement and neuromuscular control through C++ libraries and command-line applications.

The repository is the source code for OpenSim 4.x, including Java and Python bindings. It is aimed at researchers, educators, and developers who need to build or script biomechanics workflows. The OpenSim GUI is maintained separately.

Key Features

  • C++ libraries for musculoskeletal modeling and dynamic simulation.
  • Command-line applications, including inverse kinematics and computed muscle control.
  • Java and Python bindings for scripting and integration.
  • C++ examples for working with the API.
  • Build scripts and instructions for Windows, macOS, and Linux, including Ubuntu and Debian.
  • Releases for the OpenSim 4.x series.

Use Cases

  • Biomechanics researchers can create musculoskeletal models and simulate human or animal movement.
  • Movement-science teams can use command-line tools such as inverse kinematics and computed muscle control in analysis workflows.
  • Developers can extend OpenSim or integrate its C++ libraries into research software.
  • Researchers and educators can script OpenSim workflows using its Java or Python bindings.

Getting Started

Choose the setup path that matches your use: build instructions for C++ development, or scripting setup for Python and MATLAB. The README links to additional setup options, API documentation, and examples.

Considerations

  • This repository does not include the OpenSim GUI; its source code is in the separate GUI repository.
  • C++ development requires building the project. Refer to the platform-specific instructions for supported build setups.
  • OpenSim 4.x source is here; users seeking OpenSim 3.x or earlier are directed to separate legacy build guidance.
  • The project uses Apache-2.0, but third-party components may have their own licenses. Check the repository's license and notices before redistributing components.

Found this useful?

Share it with someone who would like opensim-core.