Skip to main content

Covariance tools for fitting stellar spectra

Project description

Starfish

Documentation Status Build Status Coverage Status PyPI DOI

Starfish is a set of tools used for spectroscopic inference. We designed the package to robustly determine stellar parameters using high resolution spectral models.

Warning!

There have been major, breaking updates since version 0.2.0, please see this page regarding these changes if you are used to the old version!

Citations

If you use this code or derivative components of this code in your research, please cite our paper as well as the code. See CITATION.bib for a BibTeX formatted reference of this work.

Papers

If you have used Starfish in your work, please let us know and we can add you to this list!

Please bear in mind that this package is under heavy development and features may evolve rapidly. If something doesn't work, please fill an issue on this repository. If you would like to contribute to this project (either with bugfixes, documentation, or new features) please feel free to fork the repository and submit a pull request!

Installation Instructions

Prerequisites

Starfish has several dependencies, however most of them should be satisfied by an up-to-date scientific python installation. We highly recommend using the Anaconda Scientific Python Distribution and updating to Python 3.6 or greater. This code makes no attempt to work on the Python 2.x series, and I doubt it will if you try. This package is tested across Linux, Mac OS X, and Windows.

To make sure you are running the correct version of python, start a python interpreter via the system shell and you should see something similar

$ python
Python 3.6.1 |Anaconda custom (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 

If your shell says Python 2.x, try using the python3 command instead of python.

Installation

For the most current stable release of Starfish, use the releases from PyPI

$ pip install astrostarfish

If you want to be on the most up-to-date version (or a development version), install from source via

$ pip install git+https://github.com/iancze/Starfish.git#egg=astrostarfish

To test that you've properly installed Starfish, try doing the following inside of a Python interpreter session

>>> import Starfish
>>> Starfish.__version__
'0.3.0'

If you see any errors, then something went wrong--please file an issue.

Now that you've successfully installed the code, please see the documentation on how to begin using Starfish to solve your spectroscopic inference problem.

Contributing

If you are interested in contributing to Starfish, first off, thank you! We appreciate your time and effort into making our project better. To get set up in a development environment, it is highly recommended to develop in a virtual environment. We use pipenv (pending a better PEP 517/518 compliant tool) to manage our environments, to get started clone the repository (and we recommend forking us first)

$ git clone https://github.com/<your_fork>/Starfish.git starfish
$ cd starfish

and then create the virtual environment and install all the packages and developer dependencies from the Pipfile with

$ pipenv install -d

and to enter the virtual environment, simply issue

$ pipenv shell

whenever you're in the starfish folder.

We also enforce the black code style. This tools allows automatically formatting everything for you, which is much easier than caring about it yourself! We have a pre-commit hook that will blacken your code before you commit so you can avoid failing the CI tests because you forgot to format. To use this, just install the hook with

$ pipenv run pre-commit install

From then on, any commits will format your code before succeeding!

Take a look through the issues if you are looking for a place to start improving Starfish!

Tests

We use pytest for testing; within the virtual environment

$ pytest

Note that we use the black code style and our CI testing will check that everything is formatted correctly. To check your code

$ pytest --black

although if you follow the instructions for using pre-commit you should have no issues.

Contributors

See CONTRIBUTORS.md for a full list of contributors.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

astrostarfish-0.3.1.tar.gz (44.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

astrostarfish-0.3.1-py3-none-any.whl (51.3 kB view details)

Uploaded Python 3

File details

Details for the file astrostarfish-0.3.1.tar.gz.

File metadata

  • Download URL: astrostarfish-0.3.1.tar.gz
  • Upload date:
  • Size: 44.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.4

File hashes

Hashes for astrostarfish-0.3.1.tar.gz
Algorithm Hash digest
SHA256 dac2724c6c325e66faca2a49cece1e59b3e3c1fe614488bc6a0c58831cfda281
MD5 b130632b5099394d722d006a6f42b2e1
BLAKE2b-256 b992b56e599d1a646ca3934712d3c670b11060975614689299e37a796b4ca784

See more details on using hashes here.

File details

Details for the file astrostarfish-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: astrostarfish-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 51.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.4

File hashes

Hashes for astrostarfish-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 726372f73f4ac5b4e745a95418f43dc559ef92456681019c69be992d23a4abf8
MD5 a70f82776d3d9d5dd64c177a67346ac1
BLAKE2b-256 94cbe2fc867835bead322882770e922638fc82d5be0b2de9f360a50ff613563e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page