ucl-exoplanets / ExoTETHyS

GNU General Public License v3.0
17 stars 3 forks source link

= ExoTETHyS: :author: Giuseppe Morello :sectnums: :sectnumlevels: 2 :toc: preamble :toclevels: 4 :source-language: python :experimental: :xrefstyle: short

Tools for Exoplanetary Transits around Host Stars

image::logo.png[width=40%] version: 2.0.10

ifdef::env-github[] :tip-caption: :bulb: :note-caption: :information_source: :important-caption: :heavy_exclamation_mark: :caution-caption: :fire: :warning-caption: :warning: endif::[]

ExoTETHyS is an open-source package for modeling exoplanetary transits, eclipsing binaries and related phenomena. + It includes various subpackages with different functions. We remind to the link:user_manuals/[user manuals] and relevant papers (see below) for their rationale and detailed instructions. You can also consult the wiki with the answers to frequently asked questions (link:../../wiki/ExoTETHyS-FAQ[FAQ]).

== Getting started

These instructions will get you to have a version of the package on your computer up and running.

=== Requirements The code is consistent with python2/3. + The required python libraries are specified in the file requirements.txt.

=== Download and installation

==== From Pypi

Type on the terminal: pip install exotethys + This command installs the latest stable version of the package.

==== From Github

The most updated version of the package is available on GitHub. As this version is constantly under development, stability is not guaranteed.

To download and install with a single command, type on the terminal + pip install git+git://github.com/ucl-exoplanets/ExoTETHyS.

To download, then (optionally) install:

  1. Go to https://github.com/ucl-exoplanets/ExoTETHyS, + then click the green button Clone or download, + then click Download ZIP to download the whole repository. + + Alternatively type on the terminal + git clone https://github.com/ucl-exoplanets/ExoTETHyS.

  2. Access the root folder from terminal (you may need to unzip first).

  3. After accessing the root folder from terminal, type pip install . to install the package. + + Otherwise, you could import the package without installation, if you run python from the root folder.

  4. To test the installation, you can type: [source, bash]

    pytest PATH_TO_ROOT/exotethys/tests/test_sail.py  
    pytest PATH_TO_ROOT/exotethys/tests/test_trip.py 
    pytest PATH_TO_ROOT/exotethys/tests/boats_trip.py 

NOTE: The root folder name depends on the download process. It appears to be ExoTETHyS-master if downloaded from the web browser interface, ExoTETHyS if git cloned from terminal.

==== Before using

TIP: If this is the first time that you are using ExoTETHyS, you can skip this subsection.

If you had already installed/used an older version of ExoTETHyS (v1.x.y), you should delete the old database folder to avoid incompatibility issues.

NOTE: If a file from the old database is mistakenly used with this new version, the run will fail raising an error message. There is no risk to obtain wrong results.

The database folder should be located in your home: /PATH_HOME/.exotethys. You could locate and remove this folder. + This operation can also be performed by using the manage_database subpackage of ExoTETHyS, as follows:

[source, bash]

>>> from exotethys import manage_database as mdb 
>>> mdb.rm_database() 
Are you sure that you want to delete the directory /Users/pepe/.exotethys? [y/N]: y 

WARNING: The above operation is irreversible. It is highly recommended that you read more about the manage_database subpackage before deciding to perform this operation.

=== Quick how to run the subpackages

NOTE: The following example files are written to be launched from root directory level. + Alternatively, the paths in the examples need to be personalized by the user.

  1. SAIL -- Stellar Atmosphere Intensity Limb + This subpackage can compute the stellar limb-darkening coefficients for requested targets. + [source, bash]

    >>> from exotethys import sail  
    >>> sail.ldc_calculate('PATH_TO_ROOT/examples/sail_example1.txt')   

    Consult the link:user_manuals/SAIL_manual.adoc[SAIL manual].

  2. TRIP -- Transit Ring-Integrated Profile + This subpackage can compute transit light-curves by using stellar specific intensities rather than (approximate) limb-darkening coefficients. + [source, bash]

    >>> from exotethys import trip  
    >>> trip.trip_calculate('PATH_TO_ROOT/examples/trip_example1.txt')  

    Consult the link:user_manuals/TRIP_manual.adoc[TRIP manual].

  3. BOATS -- Bias in the Occultation Analysis of Transiting Systems +
    This subpackage can compute the potential bias in transit/eclipse depth due to neglecting the exoplanetary flux and/or its variation with the orbital phase (common approximations). It also provides the predicted transit/eclipse depth values with the photon noise limited error bars. + [source, bash]

    >>> from exotethys import boats  
    >>> boats.boats_calculate_transit('PATH_TO_ROOT/examples/boats_example4.txt')  
    >>> boats.boats_calculate_eclipse('PATH_TO_ROOT/examples/boats_example5.txt')  

    Consult the link:user_manuals/BOATS_manual.adoc[BOATS manual].

  4. manage_database + This subpackage can be used to manage the .exotethys folder that is created in your home the first time that a file is downloaded to perform a calculation. It contains 3 functions to list, copy and remove the items in this folder. Consult the link:user_manuals/manage_database_manual.adoc[manage_database manual].

== License

This package is an open source project under GNU General Public License v3.

== References

If you use this package for your research, please consider citing the following references:

If you adopt the built-in stellar model grids, please consider citing the relevant references:

MPS_Atlas_set1_2023 & MPS_Atlas_set2_2023

Atlas_2000

Phoenix_2012_13 & Phoenix_drift_2012

Phoenix_2018

Stagger_2018

Stagger_2015

If you adopt the built-in instrumental passbands, please consider citing the relevant references:

JWST

Spitzer

HST

TESS

Kepler

== Contributors

Developer and corresponding author

Python support, revision and useful comments

Database of stellar models

Peer-reviewers