RotCurves: A PYTHON package for efficient modelling and fitting of galactic rotation curves at high-z
Rotation curves are a fundamental tool in the study of galaxies across cosmic time, and with the advent of large integral field unit (IFU) kinematic surveys there is an increasing need for efficient and flexible modelling tools. We present RotCurves, a parametric forward-modeling tool designed for rotation curve analysis at high-z, correcting for ``beam smearing" by projecting and convolving the beam PSF in the plane of the galaxy. We benchmark RotCurves against the established parametric code dysmalpy using synthetic observations. The typical runtime with RotCurves is a few ~10ms, a factor 250 faster than dysmalpy for a single realization. For well-resolved systems (PSF FWHM < Reff), the mock observed rotation and dispersion curves agree to within 5% up to 3Reff, where most of the discrepancies are in the inner disk. whereas in marginally resolved systems (PSF FWHM > 1.5 Reff) discrepancies increase to up to 15%. Using a built-in MCMC fitting procedure, RotCurves recovers well the intrinsic model parameters across a wide range of galaxy properties and accounting for realistic noise patterns. Systematic biases emerge for the effective radius and for low disk masses (Mdisk < 3x10^9 Msun). We show excellent parameter recovery at high signal-to-noise ratios (S/N > 25), with increasing deviations in parameter recovery at lower S/N. RotCurves is best suited for inclinations of 10 < i < 80. RotCurves is built as an exploratory tool for rapid testing of mass model assumptions, parameter studies and for efficiently processing large samples of observational data from large IFU surveys. The code is publicly available on github.
💡 Research Summary
RotCurves is a new Python package designed for fast forward‑modeling of galaxy rotation curves, specifically targeting high‑redshift (high‑z) integral‑field unit (IFU) observations where beam smearing is a major source of systematic error. The authors introduce the package, benchmark it against the widely used 3‑D forward‑modeling tool dysmalpy, and demonstrate its performance in a series of synthetic tests that mimic realistic IFU data.
The core methodology of RotCurves is to construct an axisymmetric mass model (disk, bulge, dark‑matter halo, etc.) in the galaxy’s intrinsic plane, project it onto the sky, and then convolve the projected velocity field with the point‑spread function (PSF) directly in the galaxy plane. This approach reproduces the beam‑smearing effect without the need to generate a full 3‑D data cube or a 4‑D hyper‑cube, dramatically reducing computational load. A single model evaluation typically takes ~10 ms, making the code roughly 250 times faster than dysmalpy, which requires on the order of seconds per evaluation.
Accuracy tests show that for well‑resolved systems (PSF full‑width at half‑maximum, FWHM < effective radius Reff) the mock observed rotation and dispersion curves agree with the input model to within 5 % out to 3 Reff. In marginally resolved cases (PSF ≈ 1.5 Reff) discrepancies rise to ~15 %, reflecting the intrinsic limits of the data rather than the modeling approach. The built‑in Markov Chain Monte Carlo (MCMC) fitting routine simultaneously samples seven key parameters (disk mass, scale radius, halo profile parameters, inclination, systemic velocity, intrinsic dispersion, etc.). Parameter recovery is excellent for signal‑to‑noise ratios (S/N) greater than 25, with only modest systematic biases appearing at lower S/N. Specifically, the effective radius tends to be slightly underestimated and disk masses below ~3 × 10⁹ M⊙ show larger scatter, indicating that very low‑mass, low‑S/N galaxies are the most challenging regime.
RotCurves performs best for inclinations between 10° and 80°. Outside this range, projection effects become more severe and the forward model loses stability. The code is modular: users can swap in alternative mass profiles (e.g., NFW, Burkert, Einasto) or emission distributions (e.g., Sérsic) without altering the core pipeline. Documentation and example notebooks are provided on GitHub, facilitating rapid adoption even for users with limited experience in forward modeling.
The authors discuss the scientific context: rotation curves remain a primary probe of the gravitational potential, dark‑matter distribution, and baryonic–dark matter interplay across cosmic time. High‑z IFU surveys (KMOS 3D, KROSS, MUSE deep fields) and recent JWST/NIRSpec and ALMA observations have produced thousands of galaxy kinematic maps, but traditional 3‑D tools become computationally prohibitive for such large samples. RotCurves fills this gap by offering a speed‑optimized yet accurate alternative, enabling extensive parameter studies, systematic tests of different mass‑model assumptions, and rapid processing of large observational datasets.
In summary, RotCurves delivers a compelling combination of speed (∼10 ms per model), accuracy (≤5 % for well‑resolved data), and flexibility (customizable mass profiles, built‑in Bayesian inference). It is openly available, well‑documented, and poised to become a standard tool for the next generation of high‑z galaxy kinematic analyses.
Comments & Academic Discussion
Loading comments...
Leave a Comment