Background Multibody dynamics simulation is a core technique in computational biomechanics and mechanical systems research. Existing open-source platforms are either poorly suited to biomechanics researchers or lack contact mechanics and graphical user interfaces. No single lightweight Python-native package provides forward dynamics, penalty contact, physiological joint constraints, and a graphical interface in combination. Methods OpenMBD is implemented in Python 3 with three external dependencies (NumPy, Matplotlib, Pillow). The dynamics engine applies the Principle of Virtual Power with analytic ZYX-Euler Jacobians and a Recursive Newton-Euler algorithm to assemble and solve the equations of motion with minimal coordinates. Contact mechanics use a penalty-based nonlinear viscoelastic model with hysteresis, applied to ellipsoid body geometry. Physiological joint range-of-motion limits for all major joints of the human body are enforced by continuous penalty spring-dampers parameterised from normative data. Numerical integration uses the Symplectic Euler scheme at a set time step. A Tkinter graphical user interface and a standalone browser-based JSON model editor are provided. Results OpenMBD is distributed with model files: an adult male, an adult female, a car and a bicycle, defined in an open JSON format. Use cases are presented covering fall, sport collisions and custom model definition using the JSON format and browser-based editor. Three output files are automatically generated per simulation run: an output CSV, a summary text file, and a GIF animation. Conclusions OpenMBD addresses a genuine gap in the open-source biomechanics software landscape by providing a Python-native forward dynamics simulator that is installation-trivial, GUI-accessible, and biomechanically parameterised. The software is released under the MIT licence and is available at https://gtbiomech.github.io/OpenMBD/.
No takes yet. Share an insight, caveat, or question.
G Tierney (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: