GSoC’25@OpenAstronomy — Final Report
GSoC’25@OpenAstronomy — Final Submission
Organization: OpenAstronomy (RADIS)
Mentors: Nicolas Minesi, Erwan Pannier
Electronic spectra for RADIS
This project will extend RADIS to calculate electronic spectra, enabling analysis of high-temperature phenomena in plasmas, flames, and exoplanet atmospheres. Currently, RADIS excels at rovibrational calculations but lacks electronic capabilities. This project will implement electronic spectroscopy in RADIS by leveraging existing ExoMol integration, adding separate electronic temperature parameters, implementing population distributions for electronic states, and creating functions for manual adjustment of electronic band intensities. Deliverables include OH electronic spectra with manual band adjustment capability, implementation of electronic temperature handling, non-equilibrium OH spectrum calculation, and extension to support electronic spectra for all ExoMol molecules. This enhancement will make RADIS a comprehensive spectroscopic tool capable of handling the full range of molecular transitions within a unified framework.
The Solution
My work focused on extending RADIS to calculate electronic spectra by:
- Leveraging existing ExoMol database integration
- Adding separate electronic temperature parameters
- Implementing non-equilibrium population distributions
- Creating manual band intensity adjustment capabilities
What I Accomplished
1. Electronic Non-Equilibrium Workflow & Band Scaling
The Problem: Researchers needed empirical control over spectral intensities for model-experiment matching.
My Solution:
- Implemented ElectronicPartitionFunction which computes electronic state populations.
- Implemented per-band manual scaling in non_eq_bands()
- Added band_scaling parameter for fine-tuning absorption/emission coefficients
- Enabled automatic band label generation from ExoMol v-level information
Impact: Researchers can now calibrate theoretical spectra against experimental data with unprecedented precision.
2. ExoMol Integration & Metadata Preservation
The Challenge: ExoMol databases contained rich electronic state information, but RADIS wasn’t capturing it.
My Implementation:
- Modified ExoMol ingestion to retain critical quantum numbers (v, parity, state labels)
- Preserved electronic degeneracies (geu/gel) for proper population weighting
- Added automatic band labeling from vibrational quantum numbers
Technical Details:
- Set skip_optional_data=False by default for ExoMol
- Implemented state-transition joining for complete metadata propagation
- Added dbformat="hdf5-radisdb" tagging for pipeline compatibility
3. OH Electronic Data Integration
The Milestone: Complete OH (hydroxyl radical) electronic spectroscopy support.
What I Built:
- Added OH spectroscopic constants for X²Π and A²Σ⁺ states
- Integrated Dunham constants and electronic term energies (Te)
- Implemented nuclear spin and degeneracy handling
- Created seamless MoLLIST OH dataset integration
4. Enhanced ElectronicState Architecture
Architectural Improvement: Extended the ElectronicState class to carry term energies (Te) directly, improving clarity and enabling better electronic level bookkeeping.
5. User-Facing Workflow & Documentation
Deliverable: A complete, working example demonstrating:
- ExoMol MoLLIST OH fetching
- Non-equilibrium electronic spectrum calculation
- Band-wise intensity scaling
- visualization with slit functions
Technical Deep Dive
Electronic State Handling
The core innovation was making electronic temperatures (Telec) independent from vibrational (Tvib) and rotational (Trot) temperatures. This enables modeling of:
- Plasma conditions where electrons independently excite electronic states
- Non-equilibrium flames with temperature gradients
- Atmospheric phenomena with complex energy distributions
Data Pipeline Architecture


Performance Optimizations
- Maintained Vaex caching for large datasets (millions of transitions)
- Minimized memory overhead through selective metadata retention
- Preserved backward compatibility with existing RADIS workflows
Results & Validation
Functional Validation
- OH Electronic Spectra: Successfully generated A²Σ⁺ ← X²Π transitions
- Temperature Independence: Confirmed Telec operates separately from Tvib/Trot
- Band Scaling: Verified per-band intensity adjustments work correctly
- Performance: Handled large ExoMol datasets without degradation
User Experience
The final workflow mirrors established RADIS patterns, ensuring minimal learning curve.

Matching my Implementation with SPECAIR



Pull Requests
PoC: Add support for electronic spectra from ExoMol #842
Key Learnings
Technical Insights
- Metadata is important: For electronic spectroscopy, preserving optional ExoMol data (quantum numbers, state labels, degeneracies) proved absolutely crucial.
- Incremental Architecture: Small, strategic API changes unlocked major new physics capabilities without breaking existing functionality.
- User-Centric Design: A single, comprehensive example dramatically reduces adoption barriers.
Scientific Impact
Electronic spectroscopy in RADIS now enables research in:
- Combustion diagnostics with OH radical monitoring
- Plasma physics with non-equilibrium temperature modeling
- Atmospheric science for exoplanet characterization
- Industrial processes requiring high-temperature spectral analysis
Current Limitations & Future Work
Immediate Next Steps
- Molecule Expansion: Extend beyond OH to other ExoMol species
- Comprehensive Testing: Add unit tests for electronic band construction
- Performance Benchmarking: Profile memory usage on massive datasets
Longer-Term Vision
- Full ExoMol Catalog: Support electronic spectra for 100+ molecular species
- Advanced Non-Equilibrium: Multi-temperature modeling with energy transfer
Acknowledgments
I want to express my sincere thanks to my mentors who have been the backbone of my GSoC journey. Nicolas Minesi & Erwan Pannier have been more than just mentors — they’ve been guides who were always there when I needed help, whether it was understanding complex molecular spectroscopy concepts or debugging tricky code issues.
The RADIS community holds a special place in my heart. What makes it unique is not just the code we write, but the welcoming atmosphere where every question is valued and every idea is heard. The enthusiasm of community members to explore new approaches and support each other has made this experience truly enriching.
To Google — thank you for creating GSoC, a program that has opened doors for students like me to step into the world of open source. This experience has taught me not just about writing code, but about being part of something bigger — a community that builds software to advance scientific research.
Looking ahead, I’m excited to continue this journey with RADIS beyond GSoC. The foundations we’ve built with electronic spectra implementation are just the beginning, and I’m looking forward to contributing more, reviewing code, and helping the project grow.
This summer has been more than just a coding project — it’s been about growth, learning, and becoming part of an amazing scientific computing community. Thank you all for making this possible.