Skip to main content

Pipeline for detecting circumbinary planets in TESS light curves

Reason this release was yanked:

This version will not work when the NPZ data files have different keys than the default ones

Project description

mono-cbp: Search for Monotransits of Circumbinary Planets

A Python package for detecting circumbinary planets in TESS eclipsing binary light curves through the identification of single transit events ("monotransits").

Python Version License: GPL v3

Overview

mono-cbp is a pipeline designed to systematically search for circumbinary planets by detecting individual transit signatures in TESS eclipsing binary systems. The pipeline automates the complete workflow from masking stellar eclipses, threshold crossing event (TCE) detection, Bayesian vetting, and completeness analysis, making it easy to process large catalogues of eclipsing binaries.

Key Features

  • Eclipse Masking: Automatically mask primary and secondary eclipses in eclipsing binary light curves using eclipse positions and widths and binary ephemeris provided by an input catalogue
  • Transit Detection: Removes unwanted trends from the input light curves and performs single-event detection using the by identifying Threshold Crossing Events (see Hawthorn et al. 2024)
  • Bayesian Model Comparison: Event classification to discern transit-like events and systematics/detrending artefacts
  • Injection-Retrieval Testing: Completeness analysis through synthetic transit injection and recovery statistics
  • Modular Architecture: Use individual components independently or run the complete integrated pipeline
  • Configuration-Driven: Easily customise parameters via Python dictionaries or JSON files without modifying code
  • Command-Line Interface: Shell scripts and CLI subcommands for batch processing and reproducibility

Installation

Requirements

  • Python 3.8 or higher (tested most rigorously with Python 3.9)

From PyPI (Recommended)

The easiest way to install mono-cbp is from PyPI:

pip install mono-cbp

It is advisable to install mono-cbp into a Python environment using your favourite package manager, e.g. for conda:

conda create --name mono-cbp python=3.9
conda activate mono-cbp
pip install mono-cbp

This installs the package and creates the mono-cbp command-line tool.

From Source

For development or to use the latest unreleased features:

git clone https://github.com/bdrdavies/mono-cbp.git
cd mono-cbp
pip install -e .

This installs the package in editable mode.

Verify Installation

To check that the installation has been successful:

python -c "import mono_cbp; print(mono_cbp.__version__)"
mono-cbp --help

Dependencies

All dependencies are automatically installed when you install mono-cbp.

See pyproject.toml or requirements.txt for the complete dependency list and version constraints.

Troubleshooting Installation

If you encounter issues:

  • Python version: The package has been tested most thoroughly with Python 3.9.
  • Dependency conflicts: If you have conflicts with existing packages, create a fresh environment
  • Import errors: If you see import errors, ensure all dependencies installed correctly by checking pip show mono-cbp and comparing against pyproject.toml

Examples & Tutorials

There are a series of Jupyter notebooks in the examples/ directory to demonstrate how to use the package in your own code:

  1. 00_download_light_curves.ipynb - Download TESS light curves in the mono-cbp format using lightkurve
  2. 01_complete_pipeline.ipynb - End-to-end workflow on sample data
  3. 02_eclipse_masking.ipynb - Eclipse masking demo
  4. 03_transit_finding.ipynb - TCE detection example
  5. 04_model_comparison.ipynb - Bayesian model comparison example
  6. 05_injection_retrieval.ipynb - Completeness testing

Documentation

Documentation is available in the docs/ directory:

Support & Contact

For questions, issues, or feature requests:

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

mono_cbp-0.1.7.tar.gz (68.4 kB view details)

Uploaded Source

Built Distribution

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

mono_cbp-0.1.7-py3-none-any.whl (73.9 kB view details)

Uploaded Python 3

File details

Details for the file mono_cbp-0.1.7.tar.gz.

File metadata

  • Download URL: mono_cbp-0.1.7.tar.gz
  • Upload date:
  • Size: 68.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for mono_cbp-0.1.7.tar.gz
Algorithm Hash digest
SHA256 c8fbb609249eee7dd7eff9b9b0fb21d1b6233d93fbaebfe74fee0374cefee51d
MD5 9028b6af04377117dfb001f9439d3698
BLAKE2b-256 b2fcfe1c4cb6343ae08103054a223a9e7448f8adc466c3877b242f7f2e3ab794

See more details on using hashes here.

File details

Details for the file mono_cbp-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: mono_cbp-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 73.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for mono_cbp-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0a9eb57de66263f74f9f047e03449fe001dca7798f28c308db2eb36a258d7b3d
MD5 9104322922de66235ef1a9de56ea3d6a
BLAKE2b-256 7c35a0001a9d95840a13b77d77f4a0bfdb31c56a521a801b95c8cfd0a8ae02a4

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