Metadata-Version: 2.4
Name: EclipsingBinaries
Version: 5.0.0a21
Summary: Binary Star Package for Ball State University's Astronomy Research Group
Author: Kyle Koeller
License-Expression: CC-BY-NC-4.0
Project-URL: Documentation, https://eclipsingbinaries.readthedocs.io/
Project-URL: Source, https://github.com/kjkoeller/EclipsingBinaries
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: Astronomy
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: astropy>=6.0
Requires-Dist: astroquery>=0.4.6
Requires-Dist: ccdproc>=2.4.0
Requires-Dist: matplotlib>=3.8.0
Requires-Dist: numpy>=1.26
Requires-Dist: pandas>=2.1.1
Requires-Dist: PyAstronomy>=0.18.1
Requires-Dist: scipy>=1.11.2
Requires-Dist: statsmodels>=0.14
Requires-Dist: tqdm>=4.64.1
Requires-Dist: pyia>=1.4
Requires-Dist: photutils>=1.8.0
Requires-Dist: tkinterdnd2>=0.6.1
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Provides-Extra: docs
Requires-Dist: sphinx; extra == "docs"
Requires-Dist: matplotlib; extra == "docs"
Requires-Dist: furo; extra == "docs"
Requires-Dist: myst-parser; extra == "docs"
Dynamic: license-file

[![Python 3.12](https://github.com/kjkoeller/EclipsingBinaries/actions/workflows/ci_tests.yml/badge.svg)](https://github.com/kjkoeller/EclipsingBinaries/actions/workflows/ci_tests.yml)
[![Documentation Status](https://readthedocs.org/projects/eclipsingbinaries/badge/?version=latest)](https://eclipsingbinaries.readthedocs.io/en/latest/?badge=latest)
[![PyPI version](https://badge.fury.io/py/EclipsingBinaries.svg)](https://badge.fury.io/py/EclipsingBinaries)
[![GitHub release](https://img.shields.io/github/v/release/kjkoeller/EclipsingBinaries)](https://github.com/kjkoeller/EclipsingBinaries/releases/)
![GitHub](https://img.shields.io/github/license/kjkoeller/EclipsingBinaries)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/9cd9a15e47ab4ed7b78071d096ea099d)](https://www.codacy.com/gh/kjkoeller/EclipsingBinaries/dashboard?utm_source=github.com&utm_medium=referral&utm_content=kjkoeller/EclipsingBinaries&utm_campaign=Badge_Grade)
[![astropy](http://img.shields.io/badge/powered%20by-AstroPy-orange.svg?style=flat)](http://www.astropy.org/)

# EclipsingBinaries

EclipsingBinaries is a Python project for faster analysis of eclipsing binary star systems. The package can currently reduce data, find comparison stars from the APASS catalog, calculate and plot O-C values, find the color index and effective temperature, O’Connell effect parameters, download TESS data, and perform interactive multi-aperture photometry with auto-suggested, optimized radii.

-----

## Documentation

You can find the documentation at this [site](https://eclipsingbinaries.readthedocs.io/en/latest/?badge=latest#) and any questions can be talked about in the discussions page or in an issue.

-----

## OS and Python Versions Stable On

The list of OS’s and Python versions listed below have been tested to be able to build the package on.

- Macos- 3.12
- Ubuntu- 3.12
- Windows- 3.12

The minimum working Python version is 3.12 and as of right now no versions lower work with all aspects of this package.

The GUI uses tkinter, which some Python installs leave out:

- macOS with Homebrew Python: `brew install python-tk@3.12` (match your Python version). The python.org installer already includes it.
- Windows: the python.org installer includes it as long as "tcl/tk and IDLE" stays checked.
- Ubuntu/Debian: install the system package before starting the app:

```
sudo apt install python3-tk
```

Drag and drop works with both Tk 8.6 and Tk 9. If it can't load (for example an Intel Mac running Tk 9), the app still starts and the Browse buttons work as usual.

-----

## Installation and Usage

To install type the following,

```
pip install EclipsingBinaries
```

Once installed, in the command line type the following:

```
EclipsingBinaries
```

This opens the GUI, which has every program in one window. Programs run in the background
with a Cancel button and a status bar, each program remembers the folders and files you
used last, and finished runs offer buttons to open the output folder or view the results.
File and folder fields accept drag and drop. See
[Running EclipsingBinaries](https://eclipsingbinaries.readthedocs.io/en/latest/EB.html) for details.

To check the version you have,

```
pip show EclipsingBinaries
```

this will show numerous things, but you want to look at the version and make sure it is up to date.

If your version is not the most recent version then in order to update type the following,

```
pip install --upgrade EclipsingBinaries
```

### Pipeline

To use the pipeline functionality type the following:

```
EB_pipeline -h
```

This prints every available option. A typical run looks like:

```
EB_pipeline raw_images/ reduced_images/ --ra 00:28:27.96 --dec 78:57:42.65 --name NSVS_254037 --loc BSUO
```

The input and output folders and `--ra`, `--dec` and `--name` are required. See the
[pipeline docs](https://eclipsingbinaries.readthedocs.io/en/latest/pipeline.html) for the rest.

-----

## Dependencies

- python >=3.12
- astropy>=6.0
- astroquery>=0.4.6
- ccdproc>=2.4.0
- matplotlib>=3.8.0
- numpy>=1.26
- pandas>=2.1.1
- PyAstronomy>=0.18.1
- scipy>=1.11.2
- statsmodels>=0.14
- tqdm>=4.64.1
- pyia>=1.4
- photutils>=1.8.0
- tkinterdnd2>=0.6.1
- tkinter for the GUI (see the notes above)

pip installs everything except tkinter. `pyproject.toml` has the authoritative list.

-----

## Development

```
git clone https://github.com/kjkoeller/EclipsingBinaries.git
cd EclipsingBinaries
pip install -e ".[test,docs]"
pytest
```

The tests run without an internet connection. See the
[contributing guide](https://eclipsingbinaries.readthedocs.io/en/latest/contributing.html) for more.

-----

## License

EclipsingBinaries is released under the
[Creative Commons Attribution-NonCommercial 4.0 International](https://creativecommons.org/licenses/by-nc/4.0/)
license. See [LICENSE](LICENSE) for the full text.
