Metadata-Version: 2.4
Name: efa-gui
Version: 1.0.0
Summary: Computational elliptic Fourier analysis tools for particle shape descriptors.
Author: Computational Elliptic Fourier Analysis contributors
Project-URL: Homepage, https://computational-elliptic-fourier-analysis-1.streamlit.app/
Keywords: elliptic-fourier-analysis,shape-analysis,particle-analysis,morphometrics
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: matplotlib
Requires-Dist: scipy
Provides-Extra: app
Requires-Dist: plotly; extra == "app"
Requires-Dist: streamlit; extra == "app"
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"

# Computational Elliptic Fourier Analysis

[![Streamlit App](https://static.streamlit.io/badges/streamlit_badge_black_white.svg)](https://computational-elliptic-fourier-analysis-1.streamlit.app/)

An interactive **Streamlit web app** for particle shape analysis using EFA.

## Quick Start

1. **Launch App**: [computational-elliptic-fourier-analysis-1.streamlit.app](https://computational-elliptic-fourier-analysis-1.streamlit.app/)
2. **Download Test Data**: [`test_data.csv`](./test_data.csv) (set px/mm = 77)
3. **Read Manual**: [`User Manual (PDF)`](./User%20Manual.pdf)

## Installation

Install the package from PyPI:

```bash
pip install efa-gui
```

## Usage

```python
from pathlib import Path

from efa_gui import (
    PARAMS_FIXED,
    compute_shape_indices,
    load_xy_csv,
)

df_xy = load_xy_csv(Path("test_data.csv").read_bytes())
results, errors = compute_shape_indices(df_xy, PARAMS_FIXED)
print(results.head())
```

For local development:

```bash
pip install -e ".[dev]"
python -m build
twine check dist/*
```

## Citation

If you use this app or code in your work, please cite:

Boribayeva, A., Sultaniyar, S., Lukmanov, I., Baigarina, A., Rojas-Solórzano, L. R., Curtis, J. S., Govender N. & Golman, B. (2026). Integrated characterization, classification, and quasi-3D reconstruction of highly irregular particles using multiscale shape descriptors for predictive DEM flow simulation. Powder Technology, 122435.
