Skip to content

Commit 1e432a5

Browse files
authored
Merge pull request #1297 from rzellem/1281-add-rv-scripts-for-joint-fit
Updated documentation and fixed links
2 parents 7984eee + 3d8152f commit 1e432a5

File tree

10 files changed

+1124
-140
lines changed

10 files changed

+1124
-140
lines changed

README.md

+71-61
Original file line numberDiff line numberDiff line change
@@ -3,70 +3,78 @@
33
[![PyPI](https://img.shields.io/pypi/v/exotic)](https://pypi.python.org/pypi/exotic/)
44
[![Caltech](http://img.shields.io/badge/license-Caltech-blue)](https://github.com/rzellem/EXOTIC/blob/main/LICENSE)
55
[![NASA ADS](https://img.shields.io/badge/NASA%20ADS-2020PASP..132e4401Z-blue)](https://ui.adsabs.harvard.edu/abs/2020PASP..132e4401Z/abstract/)
6+
[![Slack](https://img.shields.io/badge/Slack-Exoplanet_Watch-purple?logo=Slack)](https://join.slack.com/t/uol-ets/shared_invite/zt-2khgvlo2a-hcFH0S7aVIDT28_NMTOgWQ)
7+
[![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1CNRbMQC0FmiVC9Pxj_lUhThgXqgbrVB_)
8+
[![Hugging Face](https://img.shields.io/badge/%F0%9F%A4%97-Chat_Assistant-yellow)](https://hf.co/chat/assistant/66c0cb652a9c7710cec9341c)
69

7-
A Python 3 package for analyzing photometric data of transiting exoplanets into lightcurves and retrieving transit epochs and planetary radii.
10+
![Windows](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white)
11+
![Mac](https://img.shields.io/badge/Mac-000000?style=for-the-badge&logo=apple&logoColor=white)
12+
![Linux](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black)
813

9-
The EXOplanet Transit Interpretation Code relies upon the [transit method](https://exoplanets.nasa.gov/alien-worlds/ways-to-find-a-planet/#/2) for exoplanet detection. This method detects exoplanets by measuring the dimming of a star as an orbiting planet transits, which is when it passes between its host star and the Earth. If we record the host star’s emitted light, known as the flux, and observe how it changes as a function of time, we should observe a small dip in the brightness when a transit event occurs. A graph of host star flux vs. time is known as a lightcurve, and it holds the key to determining how large the planet is, and how long it will be until it transits again.
14+
A Python 3 package for reducing and analyzing photometric data of exoplanetary transits. As an exoplanet passes in front of its host star, the observed brightness of the star drops by a small amount. This drop in brightness is known as a [transit]((https://exoplanets.nasa.gov/alien-worlds/ways-to-find-a-planet/#/2)). Our software aids in creating lightcurves from images, enabling extraction of planetary parameters (e.g. Rp/Rs, Inclination, Mid-transit, etc.) through fitting astrophysical models to the data.
1015

1116
![Light Curve Graph displaying brightness versus time. (NASA Ames)](https://github.com/rzellem/EXOTIC/raw/main/docs/images/transitsimple.jpg)
1217
(NASA Ames)
1318

14-
The objective of this pipeline is to help you reduce your images of your transiting exoplanet into a lightcurve, and fit a model to your data to extract planetary information that is crucial to increasing the efficiency of larger observational platforms, and futhering our astronomical knowledge.
15-
16-
## New Users
17-
Below are the instructions for installing and running EXOTIC for the first time. However, if you are a new user, we recommend you follow the "How to Run EXOTIC Locally on your Computer using the Sample Data" tutorial, which includes detailed installation instructions, on our website under ["How to Analyze Your Exoplanet Observations"](https://exoplanets.nasa.gov/exoplanet-watch/how-to-contribute/how-to-reduce-your-data/).
18-
19-
## Installation and Running
20-
21-
EXOTIC can run on a Windows, Macintosh, or Linux/Unix computer. You can also use EXOTIC via the free Google Colab, which features cloud computing, many helpful plotting functions, and a simplified installation. However, if you are a user with many images or large images, we recommend running EXOTIC locally on your own computer.
22-
23-
**Google Colab Cloud**
24-
- Features: does not require the user to install any software locally on their own computer.
25-
- Limitations: Requires user to upload their images to a free Gdrive account.
26-
- Recommendations: If you run out of space on your default Google/Gdrive account, you can sign up for a new, free account to use. Some users even make a new Google account for every new dataset to avoid running out of space.
27-
- [How to use EXOTIC on the Colab video](https://drive.google.com/file/d/10zlQRgT8iV3dSe0FVW7tiL-V86ewai_1/view)
28-
- [How to use EXOTIC on the Colab written instructions](http://docs.google.com/document/d/1GLnfX1DdGPpd1ArKNcoF2GGV6pwKR3aEYuwjSQlhiZQ/edit?usp=sharing)
29-
- [EXOTIC: Google Colab Cloud Version](https://colab.research.google.com/drive/1UcDfm3z1WnfdOpRwjCQYwDgK9Wh2cU6x?usp=sharing) (includes step-by-step instructions)
30-
31-
32-
**Locally On Your Own Computer**
33-
- Features: Images are read off of the user's harddrive- nothing is uploaded to Gdrive. This method can be helpful for those with large filesizes, many files, or a slow internet connection.
34-
- Limitations: Requires user to install Python3 and multiple subpackages.
35-
36-
- Installation Instructions:
37-
1.[Download and install the latest release of Python.](https://www.python.org/downloads/)
38-
**NOTE FOR WINDOWS USERS:** make sure to check the box "Add Python to PATH" when installing.
39-
**NOTE FOR ALL USERS:** please download and install the latest release of Python, even if you have a previous installation already on your computer, to ensure that all Python packages are properly installed.
40-
2. [Download the latest release of EXOTIC.](https://github.com/rzellem/EXOTIC/releases)
41-
3. Unzip this file.
42-
4. Double-click on the appropriate installer for your operating system:
43-
- Windows: run_exotic_windows.bat
44-
- Macintosh: run_exotic_macintosh.command
45-
- Linux: run_exotic_linux.sh
46-
5. If you get a security warning about the software being from an unidentified, unsigned, or non-trusted developer, you can bypass it by:
47-
- Windows: click "More info" and then the "Run away" box at the bottom of the window.
48-
- Macintosh: Please follow [these instructions](https://support.apple.com/guide/mac-help/open-a-mac-app-from-an-unidentified-developer-mh40616/mac).
49-
50-
- **We also recommend that you download our [sample transiting exoplanet dataset](https://github.com/rzellem/EXOTIC_sampledata)** to confirm that EXOTIC is running correctly on the Google Colab Cloud or your own computer.
51-
- How EXOTIC Works
52-
- [Document](https://github.com/rzellem/EXOTIC/blob/main/Documentation/English/How-EXOTIC-Works.pdf)
53-
- [Video](https://drive.google.com/file/d/1x0kl8WtpEw9wS0JInbjVWvdzuTc9TTvS/view)
54-
55-
- Lastly, we offer these documents [in other languages](https://github.com/rzellem/EXOTIC/raw/main/Documentation/)
56-
57-
## Requirements
58-
FITS files with a modern header including parameters for UT time, exposure time, WCS coordinations (optional) are required for EXOTIC.
59-
60-
## Sample Data and Outputs
61-
We provide a [sample dataset](https://github.com/rzellem/EXOTIC_sampledata/releases/) consisting of 142 `fits` files taken by a 6” telescope of the exoplanet HAT-P-32 b (V-mag = 11.44) observed on December 20, 2017. The telescope used to collect this dataset is part of the [MicroObservatory Robotic Telescope Network](http://microobservatory.org) operated by the Harvard-Smithsonian Center for Astrophysics.
62-
63-
[Sample Data](https://github.com/rzellem/EXOTIC_sampledata/releases/)
19+
## Installation + Setup
20+
21+
To install EXOTIC, you need to have Python 3.10 or lower installed on your computer. You can then install EXOTIC by following these steps:
22+
23+
1. Install [Anaconda](https://www.anaconda.com/products/distribution) or [Miniconda](https://docs.conda.io/en/latest/miniconda.html) (a minimal version of Anaconda) on your computer.
24+
2. Create a new virtual environment and activate it:
25+
26+
```
27+
conda create -n exotic python=3.10
28+
conda activate exotic
29+
```
30+
3. Install EXOTIC and its dependencies:
31+
```
32+
pip install exotic
33+
```
34+
5. (Optional) Run EXOTIC's graphical user interface (GUI):
35+
```
36+
exotic-gui
37+
```
38+
39+
After installing EXOTIC, you can verify the installation by running the following command in your terminal or command prompt:
40+
41+
```
42+
python -c "import exotic"
43+
```
44+
45+
If EXOTIC is installed correctly, you should not see any error messages. You can now start using EXOTIC by following the [examples](https://github.com/rzellem/EXOTIC/tree/main/examples) provided in the repository or by using our [sample dataset](https://github.com/rzellem/EXOTIC_sampledata/releases/). **If you're a new user**, we recommend starting with the beginner tutorial in Google Colab and then following our installation instructions for your operating system.
46+
47+
## Google Colab Cloud
48+
49+
Google Colab is a free cloud service that allows you to run Python code in a Jupyter notebook environment without having to install any software on your computer. We have a series of tutorials that you can run in Google Colab to learn how to use EXOTIC. You can access these tutorials by clicking on the following links:
50+
- [Beginner Tutorial](https://colab.research.google.com/drive/1Xxx7XAwgRhtV7VmxpE1Jsb3SUumsZjWR) for getting started with [sample data](https://github.com/rzellem/EXOTIC_sampledata/releases/)
51+
- [Standard Tutorial](https://colab.research.google.com/drive/1CNRbMQC0FmiVC9Pxj_lUhThgXqgbrVB_) for people who use data from MicroObservatory robotic telescopes (we can give you [data](https://exoplanets.nasa.gov/exoplanet-watch/how-to-contribute/data-checkout/) to convert to a light curve)
52+
- [Advanced Tutorial](https://colab.research.google.com/drive/1_954Ec5bWeAH9r8xAxRZ1EmhF_03xVfe) for people who use observations from their own telescope
53+
54+
If those links are broken check our [website](https://exoplanets.nasa.gov/exoplanet-watch/exotic/welcome/) for the latest.
55+
56+
[![](docs/images/exotic_colab.png)](https://exoplanets.nasa.gov/exoplanet-watch/exotic/welcome/)
57+
58+
## New User Tutorials
59+
60+
The user community behind [Exoplanet Watch](https://exoplanets.nasa.gov/exoplanet-watch/about-exoplanet-watch/overview/) has created extensive documentation to help you get started with EXOTIC. We recommend you start with the following resources:
61+
62+
- [Installation instructions](https://github.com/rzellem/EXOTIC/tree/main/docs) for Windows, Mac, and Linux.
63+
- [How to use EXOTIC on the Colab (video)](https://drive.google.com/file/d/10zlQRgT8iV3dSe0FVW7tiL-V86ewai_1/view)
64+
- [How to use EXOTIC on the Colab](http://docs.google.com/document/d/1GLnfX1DdGPpd1ArKNcoF2GGV6pwKR3aEYuwjSQlhiZQ/edit?usp=sharing)
65+
- [EXOTIC Tutorial (video)](https://drive.google.com/file/d/1x0kl8WtpEw9wS0JInbjVWvdzuTc9TTvS/view)
66+
- [Exoplanet Watch Observer's Manual](https://docs.google.com/document/d/1KrGKRElbA8VG98quocr6QRUeLtKtrjW4pgX8o1BXDjw/edit?usp=sharing)
67+
- [AI Chatbot for Exoplanet Watch](https://hf.co/chat/assistant/66c0cb652a9c7710cec9341c)
68+
- These documents [in other languages](https://github.com/rzellem/EXOTIC/tree/main/docs/regions)
69+
70+
## Sample Data
71+
We recommend you test exotic with a [sample dataset](https://github.com/rzellem/EXOTIC_sampledata/releases/) consisting of 142 `fits` files taken by a 6” telescope of the exoplanet HAT-P-32 b (V-mag = 11.44) observed on December 20, 2017. The telescope used to collect this dataset is part of the [MicroObservatory Robotic Telescope Network](http://microobservatory.org) operated by the Harvard-Smithsonian Center for Astrophysics.
6472

6573
A lightcurve from the sample dataset is shown below:
6674

6775
![Lightcurve graph showing relative flux versus phase with error bars and interpolated curve.](https://github.com/rzellem/EXOTIC/raw/main/docs/images/HAT-P-32bExample.png)
6876

69-
For the full output of EXOTIC please see the [example output](https://github.com/rzellem/EXOTIC/raw/main/Documentation/English/example_output.txt)
77+
Exotic will output the final parameters in a text file and a plot of the light curve. The output will look similar to the following:
7078

7179
```
7280
*********************************************************
@@ -166,27 +174,29 @@ Get EXOTIC up and running faster with a json file. Please see the included file
166174

167175
- Hot Pixel Masking
168176

169-
![](https://github.com/rzellem/EXOTIC/raw/main/docs/images/Hot_pixel_mask.png)
177+
- Image to image alignment for centroid tracking
178+
179+
- Optimal Aperture Photometry
170180

171-
- Aperture Photometry with PSF centroiding (2D Gaussian + rotation)
181+
- PSF Photometry
172182

173-
![HAT-P-32 b Centroid Position Graph, X-Pixel versus Time in Julian Date.](https://github.com/rzellem/EXOTIC/raw/main/docs/images/centroids.png)
183+
![HAT-P-32 b Centroid Position Graph, X-Pixel versus Time in Julian Date.](docs/images/observing_stats.png)
174184

175185
- Stellar masking in background estimate
176186

177187
![](https://github.com/rzellem/EXOTIC/raw/main/docs/images/Background_Estimate.png)
178188

179189
- Multiple comparison star + aperture size optimization
180190

181-
- Non-linear 4 parameter limb darkening with [LDTK](https://github.com/hpparvi/ldtk)
191+
- Non-linear 4 parameter limb darkening with [LDTK](https://github.com/hpparvi/ldtk). For a list of compatible filters please see: [filters.py](https://github.com/rzellem/EXOTIC/blob/main/exotic/api/filters.py)
182192

183-
- Light curve parameter optimization with [Nested Sampling](https://dynesty.readthedocs.io/en/latest/index.html)
193+
- Light curve parameter optimization with [Nested Sampling](https://johannesbuchner.github.io/UltraNest/readme.html)
184194

185-
![Chart showing how Nested Sampling iterations reveal light curve optimization results.](https://github.com/rzellem/EXOTIC/raw/main/docs/images/posterior_sample.png)
195+
![Chart showing how Nested Sampling iterations reveal light curve optimization results.](examples/single_transit/triangle.png)
186196

187197
## Contributing to EXOTIC
188198

189-
EXOTIC is an open source project that welcomes contributions. Please fork the repository and submit a pull request to the develop branch for your addition(s) to be reviewed.
199+
EXOTIC is an open source project that welcomes contributions. Please fork the repository and submit a pull request to the `develop` branch and join our slack channel to get ahold of our team. We are always looking for new contributors to help us improve the software and documentation.
190200

191201
## Citation
192202
If you use any of these algorithms in your work, please cite our 2020 paper: [Zellem, Pearson, Blaser, et al. 2020](https://ui.adsabs.harvard.edu/abs/2020arXiv200309046Z/abstract)
@@ -195,7 +205,7 @@ Please also include the following statement in your paper's Acknowledgements sec
195205
>This publication makes use of data products from Exoplanet Watch, a citizen science project managed by NASA’s Jet Propulsion Laboratory on behalf of NASA’s Universe of Learning. This work is supported by NASA under award number NNX16AC65A to the Space Telescope Science Institute.
196206
197207
## Exoplanet Watch
198-
![https://exoplanets\.nasa\.gov/exoplanet-watch/about\-exoplanet\-watch/](https://github.com/rzellem/EXOTIC/raw/main/docs/images/ExoplanetWatch.png)
208+
[![](https://github.com/rzellem/EXOTIC/raw/main/docs/images/ExoplanetWatch.png)](https://exoplanets.nasa.gov/exoplanet-watch/how-to-contribute/checklist/)
199209

200210
Contribute to [Exoplanet Watch](https://exoplanets.nasa.gov/exoplanet-watch/about-exoplanet-watch/), a citizen science project that improves the properties of exoplanets and their orbits using observations processed with EXOTIC. Register with [AAVSO](https://www.aavso.org/exoplanet-section) and input your Observer Code to help track your contributions allowing for proper credit on future publications using those measurements. Ask about our Exoplanet Watch Slack Channel!
201211

docs/images/exotic_colab.png

3.32 MB
Loading

docs/images/observing_stats.png

89.9 KB
Loading

docs/images/posterior_sample.png

-185 KB
Binary file not shown.

0 commit comments

Comments
 (0)