Papers
Topics
Authors
Recent
Search
2000 character limit reached

GalCEM: Galactic Chemical Evolution Model

Updated 23 January 2026
  • GalCEM is an open-source, Python-based framework designed for precision isotopic chemical evolution modeling in galaxies, tracking 86 elements and 451 isotopes.
  • It employs a modular architecture that integrates detailed yield data from massive stars, LIMs, and SNIa using advanced numerical methods like a 4th-order Runge–Kutta integrator.
  • Its design enables fast, high-fidelity simulations validated against observational benchmarks, with extensible features for future multi-zone and neutron-capture enhancements.

GalCEM (GALactic Chemical Evolution Model) is an open-source, modular, Python-based numerical framework for precision isotopic chemical evolution modeling within galaxies. Designed to solve the full integrodifferential one-zone chemical evolution equations governing the time-dependent masses of individual isotopes in the interstellar medium (ISM), GalCEM integrates detailed yield data from multiple nucleosynthetic channels, leveraging array-based numerical engines to achieve both high speed and high fidelity. The current implementation tracks 86 elements subdivided into 451 isotopes and includes contributions from massive stars, low- and intermediate-mass stars, and Type Ia supernovae. GalCEM is publicly available and extensible, providing researchers with a flexible platform for simulating the chemical enrichment history from light to intermediate elements, with future expansions planned for neutron-capture channels and spatially resolved treatments (Gjergo et al., 2023).

1. Mathematical Formulation and Core Equations

GalCEM solves the canonical one-zone galactic chemical evolution (GCE) equation for each tracked isotope ii:

dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)

where:

  • Mi,gas(t)M_{i,\rm gas}(t) is the mass of isotope ii in the ISM,
  • Xi,infX_{i,\rm inf} and Xi,gasX_{i,\rm gas} are the abundance fractions in infalling and ISM gas,
  • ψ(t)\psi(t) is the star formation rate (SFR),
  • ω=0\omega=0 for no outflow,
  • RP,i(t)R_{P,i}(t) are the rates of isotope ii returned via nucleosynthetic channel dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)0: low-intermediate mass stars, core-collapse supernovae, and Type Ia supernovae respectively.

For SNCC and LIM channels, the birth-time convolution rate is:

dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)1

For SNIa, a delay-time distribution (DTD, Greggio 2005) produces:

dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)2

where dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)3 is the stellar yield, dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)4 the IMF, dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)5 the lifetime, dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)6 the Jacobian, and dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)7 is computed analytically from binary mass-ratio distributions. The system is advanced using a classical 4th-order Runge–Kutta method with uniform time step dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)8 Myr.

2. Modular Architecture and Numerical Engines

GalCEM features three primary ingredient classes—morphology, yields, and input parameters—tightly coupled with its numerical engines. Morphology encompasses the IMF (dMi,gasdt=Xi,infM˙inf(t)(1ω)Xi,gas(t)ψ(t)+PRP,i(t)\frac{\mathrm{d} M_{i,\rm gas}}{\mathrm{d} t} = X_{i,\rm inf} \, \dot{M}_{\rm inf}(t) - (1-\omega) \, X_{i,\rm gas}(t) \, \psi(t) + \sum_P R_{P,i}(t)9), SFR (Mi,gas(t)M_{i,\rm gas}(t)0), infall, outflow, and stellar lifetime functions (Mi,gas(t)M_{i,\rm gas}(t)1). Yield tables for different enrichment channels (FRUITY AGB [Cristallo et al.], Limongi & Chieffi SNCC, Iwamoto SNIa) provide data for 86 elements and 451 isotopes. Input parameters configure solver options, including channel selection, yield choices, and timestep control.

Numerical engines perform:

  1. Multidimensional yield table preprocessing and spline interpolation;
  2. Construction of time-step grid arrays for each channel and isotope;
  3. Efficient convolution integral evaluation via Simpson’s rule;
  4. ODE integration via a fourth-order Runge–Kutta solver.

The entry point, the OneZone class, orchestrates initialization, isotope extraction, and the iterative evolution loop.

3. Yield Table Preprocessing and Interpolation

To optimize computation, GalCEM employs the standalone GalCemInterpolant tool, which ingests raw stellar yield tables and constructs smooth multidimensional splines for each isotope.

  • For LIM (FRUITY), interpolation occurs in Mi,gas(t)M_{i,\rm gas}(t)2 space.
  • For SNCC yields (Limongi & Chieffi), Mi,gas(t)M_{i,\rm gas}(t)3 space is used.
  • SNIa yields (Iwamoto) are similarly treated.

Splines are typically constructed in Mi,gas(t)M_{i,\rm gas}(t)4, and the mass–lifetime Mi,gas(t)M_{i,\rm gas}(t)5 relation and its inverse are also interpolated for analytic Jacobian computation. The framework is dimensionally agnostic and supports extensions (e.g., extra dimensions for He enhancement). In-sample RMSE errors are Mi,gas(t)M_{i,\rm gas}(t)6, yielding machine-precision fidelity in tabulated values.

4. Convolution Grid-Mapping and Computational Performance

At each time step Mi,gas(t)M_{i,\rm gas}(t)7 and for each enrichment channel Mi,gas(t)M_{i,\rm gas}(t)8, GalCEM constructs a grid in Mi,gas(t)M_{i,\rm gas}(t)9 (with ii0 points) over relevant mass ranges. Array-based mappings provide immediate evaluation of ii1, birth times ii2, IMF values ii3, yields ii4, and stored past SFR values ii5. The convolution integral for each isotope/channel reduces to a dot-product of pre-computed arrays, numerically integrated via Simpson’s rule.

This array-centric approach suppresses expensive Python-level looping, providing order-of-magnitude speed enhancements. A single full run (451 isotopes, 86 elements, typical spiral galaxy) completes in minutes on standard workstation hardware (Gjergo et al., 2023).

5. Validation Against Observational Data

Benchmark simulations using Milky Way-like parameters (ii6, ii7 Gyr, SFR ii8, Kroupa (2001) IMF, standard yield choices) yield age–metallicity and [Fe/H] tracks that intersect the solar point at ii9 Gyr and agree with APOKASC stellar-age measurements (Silva Aguirre et al. 2018). Elemental [X/Fe] versus [Fe/H] tracks for C to Zn and Li reproduce key features: the Xi,infX_{i,\rm inf}0-plateau at low [Fe/H], knee at Xi,infX_{i,\rm inf}1, and iron-peak rises from SNIa. Minor discrepancies at the few tenths dex level suggest areas for further model refinement, including treatment of rotating massive stars and additional enrichment sources.

6. Public Availability and Usage

GalCEM is hosted at https://github.com/egjergo/GalCEM and distributed via PyPI:

Xi,infX_{i,\rm inf}2

A minimal script for one-zone GCE simulation is:

Xi,infX_{i,\rm inf}3

Channels can be toggled and yield options specified:

Xi,infX_{i,\rm inf}4

Solver timestep granularity is adjustable:

Xi,infX_{i,\rm inf}5 Complete configuration documentation is provided within galcem/classes/inputs.py. Planned future expansions include adaptive timestepping, multi-zone capability, neutron-capture channels (e.g., r-process), and expanded yield libraries.

7. Roadmap and Prospective Extensions

Current limitations restrict nucleosynthetic coverage to light and intermediate elements (C to Zn, Li) and one-zone galactic models. Upcoming releases aim to incorporate the full periodic table by adding neutron-capture channels and spatially-dependent galaxy properties. Further anticipated features include adaptive timestep solvers and multi-zone enrichment coupling. The GalCEM architecture is designed for extensibility, facilitating precision studies of galactic chemical evolution across parameter regimes and astrophysical contexts (Gjergo et al., 2023).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to GalCEM.