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.
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.