exoplanet-workflows
General workflows and best practices for exoplanet detection and characterization from light curve data. Use when planning an exoplanet analysis pipeline, understanding when to use different methods, or troubleshooting detection issues.
Install
mkdir -p .claude/skills/exoplanet-workflows && curl -L -o skill.zip "https://mcp.directory/api/skills/download/2932" && unzip -o skill.zip -d .claude/skills/exoplanet-workflows && rm skill.zipInstalls to .claude/skills/exoplanet-workflows
About this skill
Exoplanet Detection Workflows
This skill provides general guidance on exoplanet detection workflows, helping you choose the right approach for your data and goals.
Overview
Exoplanet detection from light curves typically involves:
- Data loading and quality control
- Preprocessing to remove instrumental and stellar noise
- Period search using appropriate algorithms
- Signal validation and characterization
- Parameter estimation
Pipeline Design Principles
Key Stages
- Data Loading: Understand your data format, columns, time system
- Quality Control: Filter bad data points using quality flags
- Preprocessing: Remove noise while preserving planetary signals
- Period Search: Choose appropriate algorithm for signal type
- Validation: Verify candidate is real, not artifact
- Refinement: Improve period precision if candidate is strong
Critical Decisions
What to preprocess?
- Remove outliers? Yes, but not too aggressively
- Remove trends? Yes, stellar rotation masks transits
- How much? Balance noise removal vs. signal preservation
Which period search algorithm?
- TLS: Best for transit-shaped signals (box-like dips)
- Lomb-Scargle: Good for any periodic signal, fast exploration
- BLS: Alternative to TLS, built into Astropy
What period range to search?
- Consider target star type and expected planet types
- Hot Jupiters: short periods (0.5-10 days)
- Habitable zone: longer periods (depends on star)
- Balance: wider range = more complete, but slower
When to refine?
- After finding promising candidate
- Narrow search around candidate period
- Improves precision for final measurement
Choosing the Right Method
Transit Least Squares (TLS)
Use when:
- Searching for transiting exoplanets
- Signal has transit-like shape (box-shaped dips)
- You have flux uncertainties
Advantages:
- Most sensitive for transits
- Handles grazing transits
- Provides transit parameters
Disadvantages:
- Slower than Lomb-Scargle
- Only detects transits (not RV planets, eclipsing binaries with non-box shapes)
Lomb-Scargle Periodogram
Use when:
- Exploring data for any periodic signal
- Detecting stellar rotation
- Finding pulsation periods
- Quick period search
Advantages:
- Fast
- Works for any periodic signal
- Good for initial exploration
Disadvantages:
- Less sensitive to shallow transits
- May confuse harmonics with true period
Box Least Squares (BLS)
Use when:
- Alternative to TLS for transits
- Available in astropy
Note: TLS generally performs better than BLS for exoplanet detection.
Signal Validation
Strong Candidate (TLS)
- SDE > 9: Very strong candidate
- SDE > 6: Strong candidate
- SNR > 7: Reliable signal
Warning Signs
- Low SDE (<6): Weak signal, may be false positive
- Period exactly half/double expected: Check for aliasing
- High odd-even mismatch: May not be planetary transit
How to Validate
- Signal strength metrics: Check SDE, SNR against thresholds
- Visual inspection: Phase-fold data at candidate period
- Odd-even consistency: Do odd and even transits have same depth?
- Multiple transits: More transits = more confidence
Multi-Planet Systems
Some systems have multiple transiting planets. Strategy:
- Find first candidate
- Mask out first planet's transits
- Search remaining data for additional periods
- Repeat until no more significant signals
See Transit Least Squares documentation for transit_mask function.
Common Issues and Solutions
Issue: No significant detection (low SDE)
Solutions:
- Check preprocessing - may be removing signal
- Try less aggressive outlier removal
- Check for data gaps during transits
- Signal may be too shallow for detection
Issue: Period is 2x or 0.5x expected
Causes:
- Period aliasing from data gaps
- Missing alternate transits
Solutions:
- Check both periods manually
- Look at phase-folded light curves
- Check if one shows odd-even mismatch
Issue: flux_err required error
Solution: TLS requires flux uncertainties as the third argument - they're not optional!
Issue: Results vary with preprocessing
Diagnosis:
- Compare results with different preprocessing
- Plot each preprocessing step
- Ensure you're not over-smoothing
Expected Transit Depths
For context:
- Hot Jupiters: 0.01-0.03 (1-3% dip)
- Super-Earths: 0.001-0.003 (0.1-0.3% dip)
- Earth-sized: 0.0001-0.001 (0.01-0.1% dip)
Detection difficulty increases dramatically for smaller planets.
Period Range Guidelines
Based on target characteristics:
- Hot Jupiters: 0.5-10 days
- Warm planets: 10-100 days
- Habitable zone:
- Sun-like star: 200-400 days
- M-dwarf: 10-50 days
Adjust search ranges based on mission duration and expected planet types.
Best Practices
- Always include flux uncertainties - critical for proper weighting
- Visualize each preprocessing step - ensure you're improving data quality
- Check quality flags - verify convention (flag=0 may mean good OR bad)
- Use appropriate sigma - 3 for initial outliers, 5 after flattening
- Refine promising candidates - narrow period search for precision
- Validate detections - check SDE, SNR, phase-folded plots
- Consider data gaps - may cause period aliasing
- Document your workflow - reproducibility is key
References
Official Documentation
Key Papers
- Hippke & Heller (2019) - Transit Least Squares paper
- Kovács et al. (2002) - BLS algorithm
Lightkurve Tutorial Sections
- Section 3.1: Identifying transiting exoplanet signals
- Section 2.3: Removing instrumental noise
- Section 3.2: Creating periodograms
Dependencies
pip install lightkurve transitleastsquares numpy matplotlib scipy
More by benchflow-ai
View all skills by benchflow-ai →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversBoost productivity with Task Master: an AI-powered tool for project management and agile development workflows, integrat
pg-aiguide — Version-aware PostgreSQL docs and best practices tailored for AI coding assistants. Improve queries, migrat
Supercharge AI platforms with Azure MCP Server for seamless Azure API Management and resource automation. Public Preview
Discover AntV Visualization Libraries for smart documentation, code examples, and best practices in g2, g6, l7, x6, f2,
Analyze your Cursor Chat History for coding insights, development patterns, and best practices with powerful search and
Access clean code rules and best practices on-demand from GitHub with Agent Rules—no local files needed, supports many f
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.