Skip to main content

An Automated Pipeline for the Selection of Transmission Spectroscopy Candidates

Project description

PREFACE

Prioritization and Ranking of Exoplanets For Astronomical Characterization and Exploration (PREFACE) is a Python package for selection of promising exoplanet transmission spectroscopy observations based on their expected scientific return and observational feasibility.


To-do List

As this project is work in progress, here is the current to-do list:

  • Make PREFACE pip-installable
  • Fix a bug where the moonlight noise metric calculation sometimes return NaN
  • Finish documentation
  • (Maybe) Determine the default moonlight amplification factor that more properly and sensibly punishes full moon nights
  • (Maybe) Reduce multiprocessing overhead
  • (Maybe) Month- and location-dependent aerosol scattering parameters via end-to-end AERONET data retrieval

Installation

Install the latest stable release from PyPI:

pip install preface-spearnet

Usage

Using preface consists of four steps:

  1. Configure the observing instrument with TelescopeConfigurations.
  2. Define the observing window and output options with OutputConfigurations.
  3. Optionally configure moonlight modelling and multiprocessing with MoonlightNoiseConfigurations and MultiprocessingConfigurations.
  4. Execute the complete pipeline with run_preface().

Input validation is performed automatically before pipeline execution.

Full documentation (configuration reference, PREFACE workflow and output descriptions, and API) is available at preface-spearnet.readthedocs.io.

Example

import datetime as dt
from preface import run_preface
from preface.configs import (
    TelescopeConfigurations,
    OutputConfigurations,
    MoonlightNoiseConfigurations,
    MultiprocessingConfigurations,
)

ObsStart = dt.datetime(2025, 10, 1)
ObsEnd = dt.datetime(2026, 5, 31)
OutputFolder = r"C:\PREFACE_Output"

TelescopeConfigs = TelescopeConfigurations(
    instrument="TNT ULTRASPEC",
    filter_name="r",
    run_mode="Half_Well",
    toggle_sky_noise=True,
    toggle_defocus=False
)

OutputConfigs = OutputConfigurations(
    observation_start=ObsStart,
    observation_end=ObsEnd,
    output_folder=OutputFolder,
    metric_mode="Rank",
    viable_cumulative_cut=0.97
)

MoonlightConfigs = MoonlightNoiseConfigurations(
    toggle_moonlight_noise=True,
    scattering_aod=0.2,
    absorption_aod=0.3,
    asymmetry_factor=0.6,
    moonlight_amplification_factor=5,
    toggle_graph_outputs=True,
    event_weight_graph_threshold=0.75
)

MultiprocessingConfigs = MultiprocessingConfigurations(
    toggle_multiprocessing=True,
    cores_to_leave_out=2
)

run_preface(
    TelescopeConfigurations=TelescopeConfigs,
    OutputConfigurations=OutputConfigs,
    MoonlightNoiseConfigurations=MoonlightConfigs,
    MultiprocessingConfigurations=MultiprocessingConfigs
)

Authors

Jake Staberg Morgan (Original author)

Chatdanai Sawangwong (Current maintainer)
email: chatdanai.saw@gmail.com

Supachai Awiphan
email: supachai@narit.or.th

Orarik Tasuya
email: orarik@narit.or.th

Napaporn A-thano
email: napaporn@narit.or.th

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

preface_spearnet-2.0.0b1-py3-none-any.whl (83.3 kB view details)

Uploaded Python 3

File details

Details for the file preface_spearnet-2.0.0b1-py3-none-any.whl.

File metadata

File hashes

Hashes for preface_spearnet-2.0.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 15e13683360e284975799c9c3740a0d34e44b16b32ae3f22d4460f437445e1fa
MD5 09f75cd7c89c076359080c37d7d021a4
BLAKE2b-256 a61f46d3837eb37d5bd65a7d0de7cba73532c36ab702d4661d273012893049e7

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