backflip_holonomic_tucking_constraint
https://github.com/evecharbie/backflip_holonomic_tucking_constraint
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.2%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: EveCharbie
- Language: Python
- Default Branch: revision1
- Size: 88.5 MB
Statistics
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 0
- Releases: 2
Metadata Files
README.md
Introduction
This repository contains data and code from optimal control problems (OCP) of a planar digital twin performing a backward tuck somersault. The simulations explore the impact of limb-on-limb contact during the "tuck" phase, specifically how allowing the digital twin to pull its shanks with its hands (using holonomic constraints) affects movement compared to not having any contact or just having contact without force (kinematic constraints).
https://github.com/user-attachments/assets/d0aacbbe-1787-49c2-922c-8e6e37570ee7
Cite this work
bibtex
@article{Farr2025,
title = {Including limb-on-limb holonomic constraints in predictive simulation allows replicating athlete’s backflip technique},
journal = {Multibody System Dynamics},
volume = {},
pages = {},
year = {2025},
issn = {},
doi = {https://doi.org/10.1007/s11044-025-10082-0},
url = {https://rdcu.be/emfNR},
author = {A. Farr, E. Charbonneau, M. Begon and P. Puchaud},
keywords = {Holonomic constraint, Constraint dynamics, Predictive simulation, Optimal control, Biomechanics, Gymnastics, Closed-loop}
Status
| Type | Status |
|---|---|
| Zenodo | |
How to install dependencies
In order to run the code, you need to install the following packages from pyomeca:
bash
conda install -c conda-forge biorbd=1.11.1 python-graphviz matplotlib numpy scipy pyorerun bioviz=2.3.2 plotly
Installing Bioptim from source
- Clone the repository:
bash git clone https://github.com/Ipuch/bioptim.git cd bioptim git checkout ReleasePaperBackTuck - Install the library:
bash python setup.py install# Setting Linear Solver for Ipopt To enhance optimization, configure the linear solver (e.g.,ma57) in your script:python from bioptim import Solver solver = Solver.IPOPT() solver.set_linear_solver("ma57")Otherwise, use mumps, but you won't replicate the results.
Exemples
In the folder examples\, you will find the following examples (NTC, KTC, HTC):
- somersault_htc.py: This script generates the optimal control problem with the holonomic constraint.
- somersault_htc_taudot.py: This script generates the optimal control problem with the holonomic constraint and torque derivative driven
- somersault_ktc_taudot.py: This script generates the optimal control problem with the kinematic constraint and torque derivative driven
- somersault.py: This script generates the optimal control problem without the holonomic constraint.
- somersault_taudot.py: This script generates the optimal control problem without the holonomic constraint and torque derivative driven
Owner
- Name: Eve Charbonneau
- Login: EveCharbie
- Kind: user
- Location: Montréal
- Company: S2Mlab
- Repositories: 28
- Profile: https://github.com/EveCharbie
PhD student at Université de Montréal #biomechanics #trampoline
Citation (CITATION.cff)
cff-version: 1.1.0 message: "If you use this software, please cite it as below." authors: - family-names: Farr given-names: Anaïs orcid: https://orcid.org/0000-0003-4060-3386 - family-names: Charbonneau given-names: Eve orcid: https://orcid.org/0000-0002-9215-3885 - family-names: Begon given-names: Mickael orcid: https://orcid.org/0000-0002-4107-9160 - family-names: Puchaud given-names: Pierre orcid: https://orcid.org/0000-0002-9335-630X title: tucked_backflip version: 0.1.0 date-released:
GitHub Events
Total
- Release event: 2
- Push event: 7
- Create event: 3
Last Year
- Release event: 2
- Push event: 7
- Create event: 3