batterymhm / CONTRIBUTING.md
williamTLmiller's picture
Make it a full tech repo: packaging, CI, docs, examples, community files
4671c68 verified
|
Raw
History Blame Contribute Delete
1.7 kB
# Contributing to BatteryMHM
Thanks for your interest in the Miller Harmonic Method! Contributions of all
kinds are welcome — bug reports, new examples, benchmark reproductions,
documentation, and feature ideas.
## Ground rules
- This project is released under **CC BY-NC 4.0** and the method is **patent
pending** (see [`LICENSE`](LICENSE)). By contributing, you agree your
contribution is licensed under the same terms.
- Keep the harmonic core (`batterymhm/algebra.py`, `atomic.py`) faithful to the
published method. Changes to the fold map, the Chi matrix, or the operations
should come with a clear rationale and tests.
- No proprietary data and no trained weights in the repository.
## Development setup
```bash
git clone <your-fork-url>
cd batterymhm
python -m pip install -e ".[dev]"
```
## Before you open a pull request
```bash
ruff check . # lint
pytest -q # tests must pass
python demo.py # the demo must still run and PASS
```
- Add or update tests for any behavior change (`tests/`).
- Keep functions small and documented; match the existing style.
- Update `CHANGELOG.md` under "Unreleased".
## Reporting bugs / requesting features
Open an issue using the templates in `.github/ISSUE_TEMPLATE/`, or start a
discussion on the Hugging Face model page. Please include a minimal
reproduction and your Python / NumPy / scikit-learn versions.
## Reproducing benchmarks
The published Severson (cell SOH) and Matbench (formation energy) numbers are
reproducible with this method plus the public datasets linked in the README.
If your reproduction differs, please open an issue with your exact setup — we
care a lot about honest, reproducible numbers.