Metadata-Version: 2.1
Name: starccato
Version: 0.0.2
Summary: Starccato is a fast stellar core-collapse gravitational wave generator.
Author-email: Tarin Eccleston <tarin.eccleston@gmail.com>, Matthew Edwards <matt.edwards@auckland.ac.nz>
Project-URL: Homepage, https://github.com/starccato/starccato
Project-URL: Bug Reports, https://github.com/starccato/starccato
Project-URL: Source, https://github.com/starccato/starccato
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: scikit-learn>=1.3.2
Requires-Dist: torch>=2.0.1
Requires-Dist: torchsummary>=1.5.1
Requires-Dist: torchvision>=0.15.2
Requires-Dist: pandas
Requires-Dist: click
Requires-Dist: loguru
Requires-Dist: matplotlib
Requires-Dist: tqdm
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: pytest-click; extra == "dev"
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
Requires-Dist: coverage[toml]; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: flake8>=5.0.4; extra == "dev"
Requires-Dist: black==22.10.0; extra == "dev"
Requires-Dist: jupyter-book; extra == "dev"

[![Coverage Status](https://coveralls.io/repos/github/starccato/starccato/badge.svg?branch=main)](https://coveralls.io/github/starccato/starccato?branch=main)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![PyPi version](https://pypip.in/v/starccato/badge.png)](https://crate.io/packages/starccato/)

# starccato (Stellar Core Collapse GW generator)

Starccato is a fast stellar core-collapse gravitational wave generator.

## Installation

```
pip install starccato
```

## Training with starccato

Train the model with the following command:
```bash
starccato_train --outdir weights/ --epochs 8
```

From within python:
```python
import starccato
from starccato.training import train


train(outdir="weights/", epochs=128)
starccato.generate_signals(n=10, weights_file="weights/generator_weights.pth")

```


## Development

```
git clone https://github.com/tarin-e/starccato.git
cd starccato
pip install -e ".[dev]"
pre-commit install
```

Ensure unit tests are passing locally and on the CI!
```
pytest tests/
```

## Releasing to PyPI

1. Manually change the version number in `pyproject.toml`  (has to be higher than previous)
1. Create a tagged commit with the version number
2. Push the tag to GitHub

```
git tag -a v0.1.0 -m "v0.1.0"
git push origin v0.1.0
```
