Elastica is a software to simulate the dynamics of filaments that, at every cross-section, can undergo all six possible modes of deformation, allowing the filament to bend, twist, stretch and shear, while interacting with complex environments via muscular activity, surface contact, friction and hydrodynamics.
Project description
PyElastica
PyElastica is the python implementation of Elastica: an open-source project for simulating assemblies of slender, one-dimensional structures using Cosserat Rod theory.
Visit cosseratrods.org for more information and learn about Elastica and Cosserat rod theory.
Installation
PyElastica is compatible with Python 3.6 - 3.8. The easiest way to install PyElastica is with PIP.
$ pip install pyelastica
Documentation
Documentation of PyElastica is available here
Tutorials
We have created several Jupyter notebooks and Python scripts to help users get started with PyElastica. The Jupyter notebooks are available on Binder, allowing you to try out some of the tutorials without having to install PyElastica.
We have also included an example script for visualizing PyElastica simulations using POVray. This script is located in the examples folder (examples/visualization
).
Contribution
If you would like to participate, please read our contribution guideline
PyElastica is developed by the Gazzola Lab at the University of Illinois at Urbana-Champaign.
List of publications and submissions
- Control-oriented modeling of bend propagation in an octopus arm (UIUC, 2021)
- A physics-informed, vision-based method to reconstruct all deformation modes in slender bodies (UIUC, 2021) (IEEE ICRA 2022) code
- Optimal control of a soft CyberOctopus arm (UIUC, 2021) (ACC 2021)
- Elastica: A compliant mechanics environment for soft robotic control (UIUC, 2021) (IEEE RA-L 2021)
- Controlling a CyberOctopus soft arm with muscle-like actuation (UIUC, 2020)
- Energy shaping control of a CyberOctopus soft arm (UIUC, 2020) (IEEE CDC 2020)
Citation
We ask that any publications which use Elastica cite the following papers:
Overall and for single rods:
Gazzola, Dudte, McCormick, Mahadevan, Forward and inverse problems in the mechanics of soft filaments, Royal Society Open Science, 2018. doi: 10.1098/rsos.171628
@article{Gazzola2018,
title={Forward and inverse problems in the mechanics of soft filaments},
author={Gazzola, M and Dudte, LH and McCormick, AG and Mahadevan, L},
journal={Royal Society open science},
volume={5},
number={6},
pages={171628},
year={2018},
publisher={The Royal Society Publishing},
doi = {10.1098/rsos.171628},
url = {https://doi.org/10.1098/rsos.171628},
}
For assemblies of rods:
Zhang, Chan, Parthasarathy, Gazzola, Modeling and simulation of complex dynamic musculoskeletal architectures, Nature Communications, 2019. doi: 10.1038/s41467-019-12759-5
@article{Zhang2019,
title={Modeling and simulation of complex dynamic musculoskeletal architectures},
author={Zhang, X and Chan, FK and Parthasarathy, T and Gazzola, M},
journal={Nature Communications},
volume={10},
number={1},
pages={1--12},
year={2019},
publisher={Nature Publishing Group},
doi = {10.1038/s41467-019-12759-5},
url = {https://doi.org/10.1038/s41467-019-12759-5},
}
For control of soft robots:
Naughton, Sun, Tekinalp, Parthasarathy, Chowdhary and Gazzola, Elastica: A compliant mechanics environment for soft robotic control, IEEE Robotics and Automation Letters, 2021. doi: 10.1109/LRA.2021.3063698
@article{Naughton2021,
author={Naughton, N and Sun, J and Tekinalp, A and Parthasarathy, T and Chowdhary, G and Gazzola, M},
journal={IEEE Robotics and Automation Letters},
title={Elastica: A compliant mechanics environment for soft robotic control},
year={2021},
volume={6},
number={2},
pages={3389-3396},
doi={10.1109/LRA.2021.3063698}
}
Senior Developers ✨
Names arranged alphabetically
- Arman Tekinalp
- Chia-Hsien Shih (Cathy)
- Fan Kiat Chan
- Noel Naughton
- Seung Hyun Kim
- Tejaswin Parthasarathy (Teja)
- Yashraj Bhosale (Yash)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pyelastica-0.2.3.tar.gz
.
File metadata
- Download URL: pyelastica-0.2.3.tar.gz
- Upload date:
- Size: 92.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.8.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c2be2ec4c46255732017e428c04aba8047639f921e079843d8c61d1c0490366 |
|
MD5 | 633762af0e41b430b12904372850b5b8 |
|
BLAKE2b-256 | 4194b8c4da585ff222c561696cdd58b9d0d0ebce0deffc94280789e524277b43 |