Probing Cusp-Core with Star Clusters

The standard \(\Lambda \rm{CDM}\) model, in the linear regime, provides an unparalleled match to observations (e.g. the 12 peak match of the CMB [~pbh1]). However, in the non-linear regime, such as galaxy scale and smaller, there are long-standing tensions between simulation and observation – not the least of which is the ‘cusp-core’ problem (compare cuspy models from [~pbh2] to the observations of [~pbh3]). This tension might be resolved by dark matter (DM) -baryon interactions, such as by supernovae (SN). For instance, during galaxy formation a burst or series of bursts of star formation might inject energy into the local (central) DM, thus transforming a cusp into a core [~pbh4]. There should be a lower mass bound under which a galaxy will have insufficient integrated SN energy to effect the DM cusp-core transformation [~pbh5].

Thus, it is of particular interest to examine the central DM density of faint and low mass galaxies as these systems are the most likely to retain an unevolved cusped DM profile [~pbh6]. Perhaps the most promising method of probing the central DM densities of galaxies is through a survival analysis technique. In essence, star clusters orbiting a galaxy with a cuspy profiles will feel the effects of dynamical friction [~pbh7], while for galaxies with a cored profile the dynamical friction ceases inside the core [~pbh8]. Consequently, in cuspy profiles the star-cluster rapidly sinks to the center of the galaxy, while in a cored profile the star cluster maintains a long-term stable orbit [~pbh9].

This method has been applied to Fornax [~pbh10], Sagittarious [~pbh9], and most recently Eridanus II [~pbh11]. It is this last system that is the most promising both for understanding the cusp-core problem, but also (explained in a different section) for probing the nature of DM: particle or macroscopic object. Eridanus II is an ultra-faint dwarf galaxy discovered by the Dark Energy Survey :cite:ex_npbh-Bechtol2015, Koposov2015. It is thought to be a distant (366 kpc from the Sun) Milky Way satellite, though this is uncertain [~pbh12]. Eridanus II has a half-light radius of \(R_{1/2} = 2.31 \rm{[asec]}\). Most importantly, Eri II has a star cluster at a projected distance of ~45 pc from the center of Eri II. The star cluster is fainter and more extended than is expected for star cluster in the Milky Way [~pbh13].

The host dwarf galaxy is modeled as a static potential. Based on [~pbh6] the best-choice parameterization is that of a cored-NFW potential. The parameters are given by observation: \(R_{1/2}=0.28 [\rm{kpc}]\) [~pbh14], core \(n=1\) [~pbh6], \(M_{200}=~4.7 \times 10^8 [\rm{M}_\odot]\) [~pbh15]. However as in [~pbh11] the actual potential used is a spherical Dehnen potential [~pbh16] which is fit to a core-NFW potential with the given parameters: \(4.79 \times 10^8 [\rm{M}_\odot]\), \(r_0=0.877 [\rm{kpc}]\), \(\alpha=0\) [~pbh11],

\[\rho(r) = \frac{\mathrm{amp}\cdot(3-\alpha)}{4\,\pi\,a^3}\,\frac{1}{(r/a)^{\alpha}\,(1+r/a)^{4-\alpha}}\]

The best-fit Dehnen Potential is shown in the following figure.

alternate text

In addition to the static potential, also implemented is the galpy Chandrasekhar dynamical friction, which roughly follows [~pbh17].

\[\mathbf{F}(\mathbf{x},\mathbf{v}) = -2\pi\,[G\,M]\,[G\,\rho(\mathbf{x})]\,\ln[1+\Lambda^2] \,\left[\mathrm{erf}(X)-\frac{2X}{\sqrt{\pi}}\exp\left(-X^2\right)\right]\,\frac{\mathbf{v}}{|\mathbf{v}|^3}\,\]

The [~pbh17] dynamical friction matches N-body simulations and also the desired core-stalling behavior necessary to explain the long-term survival of the Eri II star cluster [~pbh18], if it is actually old. For computational reasons, the dynamical friction calculations are restricted to outside the core-stalling radius ([~pbh19]).

There are good reasons to believe that the star cluster is old. When comparing Eri II to similar stellar mass dwarf galaxies ([~pbh20] and [~pbh11]) the stellar populations are consistent with a population at least 5 Gyr old.

The star cluster is modeled as a Plummer sphere ([~pbh21]) with initial half-mass radius 10 pc ([~pbh11]). The stellar IMF is an modified Kroupa IMF ([~pbh22]), with mass range fixed between 0.1 and 100 \(\rm{M}_\odot\) and a metallicity of Z=0.0008. Kinematically, the star cluster is set on a circular orbit at an initial distance of 140 pc ([~pbh11]).

Given this initial setup, the system is simulated for 10 Gyr, allowing the star cluster to sink into the Eri II potential and achieve a stable core-stalled orbit. The details of the simulation are given in the following section.


Running a Simulation

We now explain how a simulation is set up to reproduce the results of Contenta (2018) [~pbh11]. There are two primary sections: a broad overview of the method of the code, and a detailed step-by-step through the workings of the code (see Following the Code).

Overview

digraph { rankdir=LR graph [fontsize=10 fontname="Verdana"] node [shape=record fontsize=10 fontname="Verdana"] subgraph cluster_new_sim { label = "Make No-PBH System" "Dehnen Spherical Potential"; "Star Cluster"; "Dynamical Friction"; } "Parameters" -> "Command Script"; "Command Script" -> "New Simulation"; "Command Script" -> "Reload Simulation"; "New Simulation" -> "Dehnen Spherical Potential" [ lhead=cluster_new_sim ]; "Dehnen Spherical Potential" -> "System" [ ltail=cluster_new_sim ] ; "Reload Simulation" -> "System" [ label = "Initial System + Snapshot" ]; "System" -> "simulate_EriII"; }

Each simulation starts in a script folder that defines all the relevant parameters. The code is structured this way such that the outputs of each simulation are self-contained and easily reproduced. Very little of the actual simulation code is contained in the script folder, instead residing in an installable code repository. This project is called eridanus_pbh and can be installed from the github repository to which these are the docs. A pip installable version may follow.

From the parameters, the main script controller is called. The function of the script controller is to ensure that the appropriate output folders exist / are created, to create the system or load the system from a snapshot, and finally to pass the system to the simulation functions. This is shown schematically, above.

Following the Code

In this section we follow the code in detail. The previous schematic gave a broad overview of the code structure, this schematic is a more complete step-by-step of the code operation.

digraph "Simulation Steps" { compound=true graph [fontsize=10 fontname="Verdana"]; node [shape=record fontsize=10 fontname="Verdana"]; subgraph cluster_setup { subgraph cluster_new_sim { label = "Make No-PBH System" subgraph cluster_star_cluster { label = "Star Cluster" "Initialize Cluster" -> "Bound Cluster"; "Initialize Cluster" -> "Unbound Cluster"; "Bound Cluster" -> "Unbound Cluster"; } "Dehnen Spherical Potential" -> "Gravity Bridge"; "Dehnen Spherical Potential" -> "Initialize Cluster" [ lhead=cluster_star_cluster ]; "Dehnen Spherical Potential" -> "Dynamical Friction"; "Bound Cluster" -> "Gravity Bridge"; "Unbound Cluster" -> "Gravity Bridge"; "Dynamical Friction" -> "Gravity Bridge"; } subgraph cluster_reload_sim { label = "Reload Simulation" "Load Setup" -> "Combined Snapshot"; "Load Subsystem Snapshots " -> "Combined Snapshot"; "Combined Snapshot" -> "Remake Gravity Bridge" [ label="connect subsytems" ]; } "Continue Sim." -> "Load Setup" [ lhead=cluster_reload_sim ]; "Remake Gravity Bridge" -> "System" [ ltail=cluster_reload_sim ]; "New Sim." -> "Dehnen Spherical Potential" [ lhead=cluster_new_sim ]; "Gravity Bridge" -> "System" [ ltail=cluster_new_sim ]; } subgraph cluster_sim_EriII { label = "Simulate EriII" "Stellar Evolution 1" -> "Run Gravity" [ label="1/2 time step" ]; "Run Gravity" -> "Stellar Evolution 2" [ label="1/2 time step" ]; "Stellar Evolution 2" -> "Save Snapshot"; "Save Snapshot" -> "Stellar Evolution 1" [ label="loop over time" ] } "Parameters" -> "Script Command" [ label = "Parser" ]; "Script Command" -> "Continue Sim." [ label = "from_(last_)snap" ]; "Script Command" -> "New Sim." [ label = "from_start" ]; "System" -> "Stellar Evolution 1" [ lhead=cluster_sim_EriII ]; }

The following is an example of the parameters which determine a simulation. In this case, the simulation is for a star cluster originating 140 pc from the center of the Eridanus center. The star cluster has a mass of \(1.9\times 10^4 [\rm{M}_\odot]\) and half-mass radius of 10 pc. These are the best-fit values from [~pbh11]. Also, this simulation has a 100 percent smooth and non-dissipational DM component that is described by a Dehnen spherical potential [~pbh16] with a mass of \(4.79\times 10^8 [\rm{M}_\odot]\) and scale radius \(0.877 [\rm{kpc}]\). Again, these are the Contenta et. al (2018) [~pbh11] best-fit results.

_TIME_START = 0.0 | amu.Myr
_TIME_HALT = 12 | amu.Myr
_TIME_STEP = 50 | amu.kyr

_TIME_SNAP = 1 | amu.Myr  # for taking a snapshot

# Eridanus Full Potential (CORED)
# from Contenta 2018
_ERI_CORE_POT_MASS = 4.79e8 * apu.solMass
_ERI_CORE_POT_A = 0.877 * apu.kpc

# STAR CLUSTER
_SC_MASS = 1.9e4 | amu.MSun
_SC_R_HM = 10 | amu.parsec  # best-fit half mass radius
_SC_POSITION = [0.14, 0, 0] | amu.kpc
_SC_VEL_DIR = [0, 1, 0]  # for circular velocity

# evolution
_SC_STELLAR_EVLN = SSE

# gravity
_SC_GRAVITY_CODE = BHTree
_SC_TSTEP = _TIME_STEP / 2.0
_SC_NUM_WORKERS = 8
_SC_OPENING_ANGLE = 0.6
_SC_SMOOTHING_LENGTH = 0.1 | amu.parsec

# dynamical friction
_USE_DF = True
_DYNFRIC_R_MIN = 0.05 | amu.kpc
_DYNFRIC_TSTEP = 10 | amu.Myr

Following the setting of parameters, a parser object is constructed with all the parameters as the default values. This is not because the parameter values will be changed at runtime, though they could be and the change recorded, but entirely for code practice compliance with astropy templates. The parser object is passed to the program main, which is the Script Command from the schematic.

The main program first parses the arguments, then ensures that the appropriate output folders exist / are created. These folders are an output/ and figures/ folder, the former contains the initial condition and snapshots while the latter holds plots generated during the script running. Next the command script determines whether to start a new simulation (if given the flag --new_sim), continue from a specified snapshot (--from_snap), or the most recent snapshot (--from_last_snap).

Starting a New Simulation

  • Dehnen Spherical Potential

  • Star Cluster

Continue a Simulation

continue


Coda

Philosophical Note

This project is working to embrace the newest format of the Astropy Affiliate Package system. For details on the coding guidelines, see Coding Guidelines, and here for a research project-focused form of the template package.

References

References

~pbh1

Planck Collaboration, Y. Akrami, F. Arroja, M. Ashdown, J. Aumont, C. Baccigalupi, M. Ballardini, A. J. Banday, R. B. Barreiro, N. Bartolo, S. Basak, R. Battye, K. Benabed, J. -P. Bernard, M. Bersanelli, P. Bielewicz, J. J. Bock, J. R. Bond, J. Borrill, F. R Bouchet, and et al. Planck 2018 results. I. Overview and the cosmological legacy of Planck. arXiv e-prints, pages arXiv:1807.06205, 2018. arXiv:1807.06205.

~pbh2

John Dubinski and R. G. Carlberg. The Structure of Cold Dark Matter Halos. \apj , 378:496, 1991. doi:10.1086/170451.

~pbh3

Ben Moore. Evidence against dissipation-less dark matter from observations of galaxy haloes. \nat , 370(6491):629–631, August 1994. doi:10.1038/370629a0.

~pbh4

Julio F. Navarro, Vincent R. Eke, and Carlos S. Frenk. The cores of dwarf galaxy haloes. \mnras , 283(3):L72–L78, December 1996. arXiv:astro-ph/9610187, doi:10.1093/mnras/283.3.L72.

~pbh5

Jorge Peñarrubia, Andrew Pontzen, Matthew G. Walker, and Sergey E. Koposov. The Coupling between the Core/Cusp and Missing Satellite Problems. \apjl , 759(2):L42, 2012. arXiv:1207.2772, doi:10.1088/2041-8205/759/2/L42.

~pbh6(1,2,3)

J. I. Read, O. Agertz, and M. L. M. Collins. Dark matter cores all the way down. \mnras , 459(3):2573–2590, 2016. arXiv:1508.04143, doi:10.1093/mnras/stw713.

~pbh7

X. Hernandez and Gerard Gilmore. Dynamical friction in dwarf galaxies. \mnras , 297(2):517–525, June 1998. arXiv:astro-ph/9802261, doi:10.1046/j.1365-8711.1998.01511.x.

~pbh8

J. I. Read, Tobias Goerdt, Ben Moore, A. P. Pontzen, Joachim Stadel, and George Lake. Dynamical friction in constant density cores: a failure of the Chandrasekhar formula. \mnras , 373(4):1451–1460, December 2006. arXiv:astro-ph/0606636, doi:10.1111/j.1365-2966.2006.11022.x.

~pbh9(1,2)

Jorge Peñarrubia, Matthew G. Walker, and Gerard Gilmore. Tidal disruption of globular clusters in dwarf galaxies with triaxial dark matter haloes. \mnras , 399(3):1275–1292, November 2009. arXiv:0905.0924, doi:10.1111/j.1365-2966.2009.15027.x.

~pbh10

David R. Cole, Walter Dehnen, Justin I. Read, and Mark I. Wilkinson. The mass distribution of the Fornax dSph: constraints from its globular cluster distribution. \mnras , 426(1):601–613, October 2012. arXiv:1205.6327, doi:10.1111/j.1365-2966.2012.21885.x.

~pbh11(1,2,3,4,5,6,7,8,9)

Filippo Contenta, Eduardo Balbinot, James A. Petts, Justin I. Read, Mark Gieles, Michelle L. M. Collins, Jorge Peñarrubia, Maxime Delorme, and Alessia Gualandris. Probing dark matter with star clusters: a dark matter core in the ultra-faint dwarf Eridanus II. \mnras , 476(3):3124–3136, May 2018. arXiv:1705.01820, doi:10.1093/mnras/sty424.

~pbh12

T. S. Li, J. D. Simon, A. Drlica-Wagner, K. Bechtol, M. Y. Wang, J. García-Bellido, J. Frieman, J. L. Marshall, D. J. James, L. Strigari, A. B. Pace, E. Balbinot, Y. Zhang, T. M. C. Abbott, S. Allam, A. Benoit-Lévy, G. M. Bernstein, E. Bertin, D. Brooks, D. L. Burke, A. Carnero Rosell, M. Carrasco Kind, J. Carretero, C. E. Cunha, C. B. D’Andrea, L. N. da Costa, D. L. DePoy, S. Desai, H. T. Diehl, T. F. Eifler, B. Flaugher, D. A. Goldstein, D. Gruen, R. A. Gruendl, J. Gschwend, G. Gutierrez, E. Krause, K. Kuehn, H. Lin, M. A. G. Maia, M. March, F. Menanteau, R. Miquel, A. A. Plazas, A. K. Romer, E. Sanchez, B. Santiago, M. Schubnell, I. Sevilla-Noarbe, R. C. Smith, F. Sobreira, E. Suchyta, G. Tarle, D. Thomas, D. L. Tucker, A. R. Walker, R. H. Wechsler, W. Wester, B. Yanny, and DES Collaboration. Farthest Neighbor: The Distant Milky Way Satellite Eridanus II. \apj , 838(1):8, 2017. arXiv:1611.05052, doi:10.3847/1538-4357/aa6113.

~pbh13

William E. Harris. A New Catalog of Globular Clusters in the Milky Way. arXiv e-prints, pages arXiv:1012.3224, December 2010. arXiv:1012.3224.

~pbh14

D. Crnojević, D. J. Sand, D. Zaritsky, K. Spekkens, B. Willman, and J. R. Hargis. Deep Imaging of Eridanus II and Its Lone Star Cluster. \apjl , 824(1):L14, June 2016. arXiv:1604.08590, doi:10.3847/2041-8205/824/1/L14.

~pbh15

Andrea V. Macciò, Aaron A. Dutton, Frank C. van den Bosch, Ben Moore, Doug Potter, and Joachim Stadel. Concentration, spin and shape of dark matter haloes: scatter and the dependence on mass and environment. \mnras , 378(1):55–71, June 2007. arXiv:astro-ph/0608157, doi:10.1111/j.1365-2966.2007.11720.x.

~pbh16(1,2)

W. Dehnen. A Family of Potential-Density Pairs for Spherical Galaxies and Bulges. \mnras , 265:250, November 1993. doi:10.1093/mnras/265.1.250.

~pbh17(1,2)

J. A. Petts, J. I. Read, and A. Gualandris. A semi-analytic dynamical friction model for cored galaxies. \mnras , 463(1):858–869, 2016. arXiv:1607.04284, doi:10.1093/mnras/stw2011.

~pbh18

Tobias Goerdt, Ben Moore, J. I. Read, Joachim Stadel, and Marcel Zemp. Does the Fornax dwarf spheroidal have a central cusp or core? \mnras , 368(3):1073–1077, 2006. arXiv:astro-ph/0601404, doi:10.1111/j.1365-2966.2006.10182.x.

~pbh19

Jo Bovy. galpy: A python Library for Galactic Dynamics. \apjs , 216(2):29, 2015. arXiv:1412.3451, doi:10.1088/0067-0049/216/2/29.

~pbh20

Alan W. McConnachie. The Observed Properties of Dwarf Galaxies in and around the Local Group. \aj , 144(1):4, July 2012. arXiv:1204.1562, doi:10.1088/0004-6256/144/1/4.

~pbh21

H. C. Plummer. On the problem of distribution in globular star clusters. \mnras , 71:460–470, 1911. doi:10.1093/mnras/71.5.460.

~pbh22

Pavel Kroupa. On the variation of the initial mass function. \mnras , 322(2):231–246, 2001. arXiv:astro-ph/0009005, doi:10.1046/j.1365-8711.2001.04022.x.