StellarPop v0.3.1 — Ruby on Rails Stellar Population Synthesis Pipeline

I've been building StellarPop, an open source stellar population synthesis
(SPS) fitting pipeline written in Ruby on Rails. v0.3.1 is now live on Zenodo.

My first job out of the university was at JHU APL working on both lasers / electroptics and space physics projects, so this is really a fun project for me.

What it does:

StellarPop fits observed SDSS ugriz photometry of galaxies against synthetic
spectra to infer stellar age, metallicity, and star formation history from
integrated galaxy light alone.

Science stack:

  • BaSeL 3.1 stellar spectral library
  • MIST isochrone grids (12 metallicities)
  • Kroupa, Salpeter, and Chabrier IMFs
  • Exponential, constant, burst, and delayed exponential SFH models
  • K-corrections for redshifted galaxies
  • SDSS ugriz filter convolution
  • Chi-squared grid sweep with ranked results

30 galaxy local catalog. Async pipeline via Sidekiq. SQLite. Fully reproducible.

Zenodo: StellarPop: A Ruby on Rails Stellar Population Synthesis Pipeline

Github: GitHub - unixneo/stellar_pop: Description: brief summary — first working end-to-end stellar population synthesis pipeline in Ruby on Rails with BaSeL 3.1 spectral library and SDSS photometry integration · GitHub

StellarPop v0.3.3

Science Improvements

  • Migrated from DR18 to DR19 as default SDSS dataset
  • SDSS photometry now fetched by objid — eliminates wrong object matching
  • Both petroMag and modelMag stored per galaxy with configurable mag_type
  • NGC3379 age estimate corrected from 0.5 Gyr to 8-10 Gyr after objid fix
  • Chabrier (2003) IMF added alongside Kroupa and Salpeter
  • Delayed exponential SFH model added (SFR(t) = t/tau² × exp(-t/tau))
  • burst_age_gyr grid parameter added — burst SFH centered at specified age
  • K-corrections implemented (Chilingarian et al. 2010) for z < 0.1
  • Literature observations updated for 16 galaxies with published sources

Pipeline & Infrastructure

  • SDSS dataset release (DR18/DR19) configurable via pipeline config UI
  • mag_type preference (petrosian/model) configurable via pipeline config UI
  • Objid verification and fix rake tasks added
  • DR19 photometry fetch rake task with objid-based lookup and coordinate fallback
  • Observation uncertainty columns and weighted chi-squared added to TODO

Catalog

  • 29 DR19 galaxies with verified objids and fresh photometry
  • 8 DR18 galaxies retained as placeholders pending resolution
  • All 29 DR19 galaxies have benchmark observation records with literature sources

Known Limitations

  • u-band photometry unreliable for some bright extended galaxies (e.g. NGC4365)
  • Age-metallicity degeneracy remains in broadband ugriz fitting
  • Weighted chi-squared (by photometric errors) not yet implemented

Dev Status

I am on break from this project for a while. It's very tedious and time consuming. Feel free to clone, fork or submit a PR if this kind of astrophysics application is of interest to you.