Metadata-Version: 2.4
Name: mohrcircleplotter
Version: 0.0.1
Summary: Python library to plot Mohr's circle for visualization and analysis
Author: Earl Magsipoc
License-Expression: MIT
Project-URL: Homepage, https://github.com/e-mags/MohrCirclePlotter
Project-URL: Documentation, https://e-mags.github.io/MohrCirclePlotter
Project-URL: Repository, https://github.com/e-mags/MohrCirclePlotter.git
Project-URL: Issues, https://github.com/e-mags/MohrCirclePlotter/issues
Keywords: mohr circle,stress transformation,engineering,mohr coulomb
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Education
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: matplotlib>=3.5.0
Requires-Dist: numpy>=1.20.0
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: pytest-cov>=2.12.0; extra == "dev"
Requires-Dist: black>=21.0; extra == "dev"
Requires-Dist: isort>=5.10.0; extra == "dev"
Requires-Dist: flake8>=3.9.0; extra == "dev"
Requires-Dist: mypy>=0.910; extra == "dev"
Provides-Extra: docs
Requires-Dist: sphinx>=4.0.0; extra == "docs"
Requires-Dist: furo>=2021.10.09; extra == "docs"
Requires-Dist: sphinx-autodoc-typehints>=1.12.0; extra == "docs"
Dynamic: license-file

# MohrCirclePlotter
A Python library to plot Mohr's circle

## ⚠️ Disclaimer

This software is provided for **educational and research purposes only**. Results produced by this package should not be used as the sole basis for engineering design decisions without independent verification by a qualified professional engineer.

THE AUTHORS AND CONTRIBUTORS ACCEPT NO LIABILITY for any damages, losses, or consequences arising from the use or misuse of this software. See [`LICENSE`](LICENSE) for full terms.

## Installation

```bash
pip install mohrcircleplotter
```

## Documentation
Mohr's circles are plotted on a matplotlib plot. If these circles are stresses at failure, a Mohr-Coulomb failure envelope can be estimated. More details can be found in [https://e-mags.github.io/MohrCirclePlotter/](https://e-mags.github.io/MohrCirclePlotter/)

```python
from mohrcircleplotter import MohrPlot

plot = MohrPlot(halfplot=True,show_tension=True, units='MPa')

# Define some circles (sigma_x, sigma_y, tau_xy)
circles = [
    (80, 30, 30),
    (60, 20, 20),
    (40, 10, 10)
]

for sigma_x, sigma_y, tau_xy in circles:
    plot.oriented_circle(sigma_x, sigma_y, tau_xy)

# Estimate and plot the Mohr-Coulomb failure envelope
plot.estimated_mc_envelope()
```
![Graph showing MC envelope estimated over Mohr's circles](https://github.com/e-mags/MohrCirclePlotter/raw/main/docs/source/_static/estimate_mc_envelope.png)


