Skip to main content

A Python package for musculoskeletal modelling (version 0.4.0)

Project description

msk_modelling_python v0.4.0

A Python package for musculoskeletal modelling.

Author: Basilio Goncalves, PhD, University of Vienna, 2024 https://ufind.univie.ac.at/de/person.html?id=1004543 https://github.com/basgoncalves


Pre-requisites for Installation

  1. Download a Code Interpreter
    I recommend Visual Studio Code, but use your preferred one.

  2. Download and Install Python (>= 3.8)
    Make sure it is the correct bit version: Python 3.8

  3. Download and Install OpenSim (suggest >=4.3)
    OpenSim Downloads

  4. Install Rapid Env Editor (optional)
    Rapid Env Editor

  5. MOKKA (optional / only Windows users) Open-source and cross-platform software to easily analyze biomechanical data


Pip installation (works for python 3.8)

(for later versions try OpenSim using Conda) https://pypi.org/project/msk-modelling-python/0.4.0/

Activate your Virtual Environment**

you can use Python or Conda

cd <your project folder>
python -m venv msk

Note: replace 'msk' if you want a different name

.\msk\Scripts\activate

Install uv package manager

pip install uv

Install msk-modelling-python

uv pip install msk-modelling-python

Test usage

This launches the GUI.

python -m msk_modelling_python

To run in batch mode:

python -m msk_modelling_python -b msk_modelling_python/settings.py

Work with the code

  1. Activate your virtual enviroment (assume name 'msk')
    .\msk\Scripts\activate
    

  1. Clone this Module "msk_modelling_python" to your virtual environment
    cd .\msk\Lib\site-packages
    
    git clone https://github.com/basgoncalves/msk_modelling_python.git
    
    Note: Ensure the name of the package is exactly "msk_modelling_python"

  1. Run OpenSim Setup from Installation Folder
    See OpenSim Scripting in Python

    cd 'C:\OpenSim 4.5\sdk\Python'
    
    python setup_win_python38.py
    
    python -m pip install .
    

    Note: run commands from shell or terminal


  1. Add the Path to the OpenSim Libraries to Your Environment Variables
    Add the following paths to your PATH variable:
    C:\OpenSim 4.5\bin
    C:\OpenSim 4.5\lib
    
    Note: see for help https://answers.microsoft.com/en-us/windows/forum/all/change-system-variables-on-windows-11/f172c29e-fd9e-4f0b-949d-c4696bd656b8

  1. Verify the OpenSim Installation.
    python 
    
    import opensim as osim
    model = osim.Model()
    

  1. Install requirements (in the terminal)
    cd .\msk\Lib\site-packages\msk_modelling_python
    pip install -r requirements.txt
    

  1. Launch msk_modelling_python
    python -m msk_modelling_python
    
    Note: to configure batch processing, edit msk_modelling_python\settings.py (see BatchSettings and CEINMSSettings classes)

  1. Basic Usage

    GUI mode (default):

    python -m msk_modelling_python
    

    Batch mode — configure msk_modelling_python\settings.py first, then:

    python -m msk_modelling_python -b msk_modelling_python/settings.py
    

    Key settings to configure in settings.py:


  1. Use Example Scripts Use example scripts in the "ExampleScripts" directory to get started with common tasks and workflows.

This package includes a combination of other packages and custom functions to manipulate and analyze biomechanical data. Originally inspired by the MATLAB version of BOPS (Batch OpenSim Processing Scripts) - BOPS

Tools to be Included:


Code Structure

  1. msk_modelling_python — main package entry point; run with python -m msk_modelling_python

  2. settings.py — central configuration file; edit BatchSettings, CEINMSSettings, UISettings, and RecordingSettings classes to control all pipeline behaviour

  3. gui/ — PyQt-based graphical interface (launched by default); widgets for batch processing, C3D export, EMG, CEINMS calibration, and results viewing

  4. utils/ — core processing functions: OpenSim (IK, ID, SO, MA), CEINMS, EMG normalisation, model scaling, C3D export, and XML helpers

  5. core/ — session and analysis runner logic used by both GUI and batch modes

  6. config/ — config manager for loading/saving settings

  7. record/ — video recording and camera utilities for motion capture sessions


Examples

Launch the GUI for interactive use:

python -m msk_modelling_python

For scripted/batch pipelines, configure msk_modelling_python\settings.py and run:

python -m msk_modelling_python -b msk_modelling_python/settings.py

The pipeline supports: C3D export → model scaling → IK → ID → SO → muscle analysis → CEINMS calibration → CEINMS execution.


Contact

For any questions or inquiries, please contact:

References

Thelen, D. G. -2003- J. Biomech. Eng. 125, 70–77

Lloyd, D. G. et al. -2003- J. Biomech. 36, 765–776

Delp, S. L. et al. -2007- IEEE Trans. Biomed. Eng. 54, 1940–1950

Pizzolato, C. et al. -2015- J. Biomech. 48, 3929–3936

Hicks, J. L. et al. -2015- J. Biomech. Eng. 137,

Rajagopal, A. et al. -2016- IEEE Trans. Biomed. Eng. 63, 2068–2079

Goncalves, B. A. M. et al. -2023- Gait Posture 106, S68

Goncalves, B. A. M. et al. -2024- Med. Sci. Sport. Exerc. 56, 402–410

Version updates 0.0.17

  • Version bump with new images and path adjustments in classes

Version updates 0.0.20

  • Attempted CEINMS2 integration via pip packaging

Version updates 0.3.6

  • Updated utils
  • Added CEINMS support with troubleshooting functions and executables for hybrid and synergy calibrations

Version updates 0.4.0

  • Improved app and batch processing with new settings and GUI entry point
  • Cleaned up stale files and moved CEINMS settings
  • Added n8n-inspired workflow pipeline system with a complete OpenSim batch processing example and quick-start guide

Version: 0.4.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

msk_modelling_python-0.4.0-py3-none-any.whl (81.7 MB view details)

Uploaded Python 3

File details

Details for the file msk_modelling_python-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for msk_modelling_python-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ae7b02a81e8847f3abe54da3a6d3470a4a93550e43504d9b9ac319083333ff52
MD5 2c5fca2ec2d9e4cef327bf54836d6ceb
BLAKE2b-256 648367b54bcde6306e00491be503b57146cb0720282f87650a9c3b938dfb980b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page