A comprehensive Python-based pipeline for processing and analyzing photometric observations of variable stars, from raw AAVSO data to publication-ready BAV reports.
This modular analysis pipeline transforms amateur astronomical observations into scientifically rigorous results suitable for professional databases and publications. The system supports multiple types of variable stars and implements state-of-the-art statistical methods for parameter estimation and uncertainty quantification.
- Automated Data Processing: AAVSO report parsing with metadata extraction
- Astrometric Integration: SIMBAD coordinate queries and constellation determination
- Precision Time Corrections: Heliocentric corrections and airmass calculations
- Bayesian Parameter Estimation: Advanced MCMC sampling for robust uncertainties
- Multi-Variable Support: Specialized analysis for different variable star types
- BAV Compliance: Standardized output formats for international databases
- Publication Quality: High-resolution plots and comprehensive documentation
- Notebook:
exoplanet_fit.ipynb
- Method: Bayesian transit modeling with PyMC and Exoplanet
- Parameters: Planet radius, orbital period, transit timing, impact parameter
- Output: Precise transit centers with MCMC-derived uncertainties
- Notebook:
rr_monte_carlo.ipynb
- Method: Fourier series fitting with Monte Carlo error propagation
- Parameters: Pulsation period, amplitude, phase relationships
- Output: Maximum/minimum timing with statistical uncertainties
- Eclipsing Binaries: Detached, semi-detached, and contact systems
- Cepheid Variables: Classical and Type II Cepheids
- Cataclysmic Variables: Dwarf novae and classical novae
- Long-Period Variables: Mira stars and semi-regular variables
- Data Import: Parse AAVSO report files with complete metadata
- Coordinate Processing: Query SIMBAD for precise J2000 coordinates
- Time Corrections: Apply heliocentric light-travel-time corrections
- Airmass Calculation: Compute observational conditions throughout night
- Quality Assessment: Generate diagnostic plots for data validation
- Format Standardization: Export to common CSV format for analysis
- Results Integration: Combine with theoretical models
- BAV Export: Generate compliant MiniMax and Report formats
- Publication Plots: Create final documentation with metadata tables
- Physics-Based Modeling: Full Keplerian orbital mechanics
- Advanced Sampling: Hamiltonian Monte Carlo with automatic tuning
- Parameter Constraints: Stellar density, limb darkening, impact parameter
- Uncertainty Quantification: Posterior distributions with HDI intervals
- Model Validation: Posterior predictive checking and residual analysis
- Period Determination: Lomb-Scargle periodogram analysis
- Fourier Decomposition: Multi-harmonic series with optimized coefficients
- Monte Carlo Sampling: Error propagation through nonlinear transformations
- Phase Analysis: Precise maximum/minimum timing determination
- Statistical Validation: Bootstrap resampling and confidence intervals
conda install numpy pandas matplotlib scipy astropy
conda install -c conda-forge pymc pytensor exoplanet astroquery arviz
- Place AAVSO report file in
data/
directory - Run
BAV_lightcurve.ipynb
for data processing and visualization - Choose appropriate analysis notebook:
- For exoplanets: Run
exoplanet_fit.ipynb
- For RR Lyrae/HADS: Run
rr_monte_carlo.ipynb
- For exoplanets: Run
- Return to
BAV_lightcurve.ipynb
for final BAV format generation
# 1. Process raw observations
# BAV_lightcurve.ipynb β data/lc_obs.csv
# 2. Specialized analysis (example: exoplanet)
# exoplanet_fit.ipynb β data/lc_synth.csv, data/uncertainties.csv
# 3. Generate final reports
# BAV_lightcurve.ipynb β BAV MiniMax/Report files + publication plots
lightcurve/
βββ BAV_lightcurve.ipynb # Main pipeline notebook
βββ exoplanet_fit.ipynb # Exoplanet transit analysis
βββ rr_monte_carlo.ipynb # RR Lyrae/HADS analysis
βββ data/ # Data directory
β βββ *.txt # AAVSO report files
β βββ lc_obs.csv # Standardized observations
β βββ lc_synth.csv # Synthetic lightcurves
β βββ uncertainties.csv # Parameter uncertainties
β βββ *_MiniMax.txt # BAV MiniMax format
β βββ *_BAVReport.txt # BAV Report format
β βββ *.png # Publication plots (high-res)
β βββ *.pdf # Publication plots (vector)
βββ README.md # This file
- BAV Database: Automatic format compliance for submission
- AAVSO Integration: VSX catalog cross-referencing
- Literature Comparison: Precision timing for period studies
- Multi-Site Coordination: Standardized timing systems
- Period Change Detection: Long-term timing analysis
- Stellar Astrophysics: Fundamental parameter determination
- Exoplanet Characterization: Precise radius and timing measurements
- Binary Evolution: Orbital period decay studies
- Modern Methods: Exposure to cutting-edge statistical techniques
- Professional Standards: Learn publication-quality data analysis
- Modular Design: Understand scientific software architecture
- Reproducible Research: Complete workflow documentation
- Bayesian Inference: Full posterior distributions with proper uncertainties
- MCMC Sampling: Advanced Hamiltonian Monte Carlo implementation
- Model Selection: Posterior predictive checking and information criteria
- Error Propagation: Rigorous uncertainty quantification through all steps
- Time Systems: Proper heliocentric corrections and coordinate transformations
- Astrometry: SIMBAD integration for precise coordinates
- Photometry: Professional uncertainty handling and systematic corrections
- Documentation: Complete observational metadata preservation
- Modular Architecture: Extensible design for new variable types
- Data Standards: Consistent interfaces between analysis modules
- Version Control: Complete project history and collaboration support
- Reproducibility: Deterministic results with documented dependencies
We welcome contributions for additional variable star types, improved algorithms, or enhanced visualization capabilities. Please see our contribution guidelines for details on development standards and testing procedures.
This project is open source and available under the MIT License. Please cite appropriately in scientific publications.
This pipeline builds upon excellent open-source packages:
- PyMC: Bayesian modeling and MCMC sampling
- Exoplanet: Specialized astronomical modeling
- Astropy: Fundamental astronomy tools
- AstroQuery: Astronomical database access
- ArviZ: Bayesian analysis visualization
Special thanks to the BAV and AAVSO communities for establishing data standards and promoting amateur-professional collaboration in variable star research.