simbody/simbody
High-performance C++ multibody dynamics/physics library for simulating articulated biomechanical and mechanical systems like vehicles, robots, and the human skeleton.
What it solves
Simbody is a high-performance toolkit designed for the science- and engineering-quality simulation of articulated mechanisms. It handles the complex physics of rigid bodies interconnected by joints, influenced by forces and motions, and restricted by constraints, which is essential for simulating biomechanical structures (like human skeletons) and mechanical systems (like robots).
How it works
Simbody uses a multibody dynamics library that models motion in generalized/internal coordinates in O(n) time, often referred to as a Featherstone-style physics engine. It provides a C++ API that allows developers to build domain-specific applications rather than being a standalone app. It supports a wide variety of joint and force types, forward/inverse/mixed dynamics, and numerical integrators with error control.
Who it’s for
It is intended for researchers and engineers in fields such as biomechanics (e.g., users of OpenSim), robotics (e.g., users of Gazebo), and biomolecular research (e.g., users of MacroMoleculeBuilder).
Highlights
- High-performance dynamics: Uses O(n) generalized coordinate modeling for efficiency.
- Versatile simulation: Supports forward, inverse, and mixed dynamics, as well as contact models (Hertz, Hunt and Crossley).
- Extensible API: Provides a C++ interface for easy extension of joint, constraint, and force types.
- Integrated tools: Includes a variety of numerical integrators and an OpenGL-based visualizer.
Related
- Project
- Project
- Project
- Project
- Project