An optimized transit-fitting algorithm to search for periodic features in light curves
Project description
An optimized transit-fitting algorithm to search for periodic transits of small planets
Motivation
We present a new method to detect planetary transits from time-series photometry, the Transit Least Squares (TLS) algorithm. While the commonly used Box Least Squares (BLS, Kovács et al. 2002) algorithm searches for rectangular signals in stellar light curves, TLS searches for transit-like features with stellar limb-darkening and including the effects of planetary ingress and egress. Moreover, TLS analyses the entire, unbinned data of the phase-folded light curve. These improvements yield a ~10 % higher detection efficiency (and similar false alarm rates) compared to BLS. The higher detection efficiency of our freely available Python implementation comes at the cost of higher computational load, which we partly compensate by applying an optimized period sampling and transit duration sampling, constrained to the physically plausible range. A typical Kepler K2 light curve, worth of 90 d of observations at a cadence of 30 min, can be searched with TLS in 10 seconds real time on a standard laptop computer, just as with BLS.
Installation
TLS can be installed conveniently using: pip install transitleastsquares
If you have multiple versions of Python and pip on your machine, try: pip3 install transitleastsquares
The latest version can be pulled from github::
git clone https://github.com/hippke/tls.git
cd tls
python setup.py install
If the command python
does not point to Python 3 on your machine, you can try to replace the last line with python3 setup.py install
. If you don't have git
on your machine, you can find installation instructions here. TLS also runs on Python 2, but without multi-threading.
Dependencies: Python 3, NumPy, numba, batman-package, tqdm, optional: argparse (for the command line version), astroquery (for LD and stellar density priors from Kepler K1, K2, and TESS).
If you have trouble installing, please open an issue.
Getting started
Here is a short animation of a real search for planets in Kepler K2 data. For more examples, have a look at the tutorials and the documentation.
Attribution
Please cite Hippke & Heller (2019, A&A 623, A39) if you find this code useful in your research. The BibTeX entry for the paper is:
@ARTICLE{2019A&A...623A..39H,
author = {{Hippke}, Michael and {Heller}, Ren{\'e}},
title = "{Optimized transit detection algorithm to search for periodic transits of small planets}",
journal = {\aap},
year = "2019",
month = "Mar",
volume = {623},
eid = {A39},
pages = {A39},
doi = {10.1051/0004-6361/201834672},
archivePrefix = {arXiv},
eprint = {1901.02015},
primaryClass = {astro-ph.EP},
adsurl = {https://ui.adsabs.harvard.edu/\#abs/2019A&A...623A..39H},
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}
Contributing Code, Bugfixes, or Feedback
We welcome and encourage contributions. If you have any trouble, open an issue.
Copyright 2019 Michael Hippke & René Heller.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for foldedleastsquares-1.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4bcfbbce6509475774c36dbbbd571d08bf1efc454b7ccfcc78ba3325a5997675 |
|
MD5 | 6d2f2512aba9052cb98ccbec0657a8ef |
|
BLAKE2b-256 | 17b5068b1274150b3db390d3c8e257b7e1fe94691c998d4fc56056d693fd23f5 |