Skip to content

Commit

Permalink
Merge pull request #245 from bhosale2/244_magnetic_cosserat_rods
Browse files Browse the repository at this point in the history
(#244) magnetic cosserat rods functionality
  • Loading branch information
bhosale2 committed May 3, 2023
2 parents 24f301a + 35879fd commit 39d3ae9
Show file tree
Hide file tree
Showing 4 changed files with 52 additions and 7 deletions.
9 changes: 8 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,15 @@ make install
make pre-commit-install
```

If you are planning to contribute to the examples,
extra dependencies can be installed using `poetry install -E examples`.

If you are planning to contribute on the functionality for simulating magnetic Cosserat rods,
implementation details can be found [here](https://github.com/armantekinalp/MagnetoPyElastica).

If you are planning to contribute on documentation, extra dependencies can be installed
using `poetry install -E docs`. The detail instruction is included
using `poetry install -E docs`.
The detail instruction is included
[here](https://github.com/GazzolaLab/PyElastica/blob/master/docs/README.md).

4. Now your working environment is set!
Expand Down
25 changes: 20 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,39 @@

[![Build_status][badge-travis]][link-travis] [![CI][badge-CI]][link-CI] [![Documentation Status][badge-docs-status]][link-docs-status] [![codecov][badge-codecov]][link-codecov] [![Downloads][badge-pepy-download-count]][link-pepy-download-count] [![DOI][badge-doi]][link-doi] [![Binder][badge-binder]][link-binder] [![Gitter][badge-gitter]][link-gitter]
</div>

PyElastica is the python implementation of **Elastica**: an *open-source* project for simulating assemblies of slender, one-dimensional structures using Cosserat Rod theory.

[![gallery][link-readme-gallary]][link-project-website]

Visit [cosseratrods.org][link-project-website] for more information and learn about Elastica and Cosserat rod theory.

## How to Start
## How to Start
[![PyPI version][badge-pypi]][link-pypi] [![Documentation Status][badge-docs-status]][link-docs-status]

PyElastica is compatible with Python 3.7 - 3.10.

~~~bash
$ pip install pyelastica
$ pip install pyelastica
~~~

With this you get a minimal version with very little dependencies.

All options:
- `magnetism`: use this if you want to simulate magnetic Cosserat rods
interacting with external magnetic environments (details can be found [here](https://github.com/armantekinalp/MagnetoPyElastica)) .
- `examples`: installs dependencies to run example cases,
found under the folder `examples`.
- `docs`: packages to build documentation

Options can be combined e.g.
```bash
pip install "pyelastica[magnetism,examples,docs]"
```

Documentation of PyElastica is available [here][link-docs-website].

Example cases for simulating magnetic Cosserat rods can be found [here](https://github.com/armantekinalp/MagnetoPyElastica).
## Citation

We ask that any publications which use Elastica cite as following:
Expand All @@ -36,7 +51,7 @@ We ask that any publications which use Elastica cite as following:
Zhi Dou and
Chia-Hsien (Cathy) Shih and
Mattia Gazzola},
title = {{PyElastica: Open-source software for the
title = {{PyElastica: Open-source software for the
simulation of assemblies of slender, one-
dimensional structures using Cosserat Rod theory}},
month = feb,
Expand All @@ -50,7 +65,7 @@ We ask that any publications which use Elastica cite as following:

<details>
<summary><h4>References</h4></summary>

- Gazzola, Dudte, McCormick, Mahadevan, <strong>Forward and inverse problems in the mechanics of soft filaments</strong>, Royal Society Open Science, 2018. doi: [10.1098/rsos.171628](https://doi.org/10.1098/rsos.171628)
- Zhang, Chan, Parthasarathy, Gazzola, <strong>Modeling and simulation of complex dynamic musculoskeletal architectures</strong>, Nature Communications, 2019. doi: [10.1038/s41467-019-12759-5](https://doi.org/10.1038/s41467-019-12759-5)

Expand Down
21 changes: 20 additions & 1 deletion poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ numpydoc = {version = "^1.3.1", optional = true}
docutils = {version = "^0.18", optional = true}
cma = {version = "^3.2.2", optional = true}
matplotlib = {version = "^3.3.2", optional = true}
magneto_pyelastica = {version = "^0.0.1", optional = true}

[tool.poetry.dev-dependencies]
black = "21.12b0"
Expand Down Expand Up @@ -79,6 +80,9 @@ examples = [
"cma",
"matplotlib",
]
magnetism = [
"magneto_pyelastica",
]

[tool.black]
# https://github.com/psf/black
Expand Down

0 comments on commit 39d3ae9

Please sign in to comment.