From 929076afedf121aee0778ccd7efe013b8fb68db1 Mon Sep 17 00:00:00 2001 From: Aaron LI Date: Fri, 25 Jan 2019 15:08:35 +0800 Subject: clusters: Assume equipartition between B field and CR Equipartition between the magnetic fields and cosmic rays is assumed, i.e., eta_b == x_cr. Therefore remove "extragalactic/clusters/eta_b" configuration option. --- fg21sim/configs/config.spec | 16 +++------------- fg21sim/extragalactic/clusters/halo.py | 2 +- fg21sim/extragalactic/clusters/helper.py | 16 ++++++++++++++-- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/fg21sim/configs/config.spec b/fg21sim/configs/config.spec index d580d3f..1ba8dd3 100644 --- a/fg21sim/configs/config.spec +++ b/fg21sim/configs/config.spec @@ -354,13 +354,6 @@ stream = option("stderr", "stdout", "", default="stderr") # Unit: [Gyr] time_traceback = float(default=3.0, min=1.0, max=5.0) - # The fraction of the magnetic field energy density w.r.t. the ICM - # thermal energy density, which is used to determine the mean magnetic - # field strength within the ICM and is also assumed to be uniform. - # * ~< 0.4% (Ref: Pfrommer & Ensslin 2004, MNRAS) - # * ~0.3%-1% (Ref: Bohringer et al. 2016, A&A) - eta_b = float(default=0.001, min=1e-5, max=0.1) - # The temperature of the outer gas surrounding the cluster. Accretion # shocks form near the cluster virial radius during the cluster formation, # which can heat the cluster ICM to have a higher temperature than the @@ -401,12 +394,9 @@ stream = option("stderr", "stdout", "", default="stderr") # electrons during the cluster life time. eta_e = float(default=0.003, min=0.001, max=0.1) - # The ratio of cosmic ray (including protons and electrons) energy - # density (i.e., pressure) to the thermal energy density. - # NOTE: Fermi-LAT has placed an upper limit of ~1.25%-1.4% - # (Ackermann et al. 2014, ApJ, 787, 18) - # NOTE: The energy ratio of cosmic-ray electrons to protons K_ep ~0.01 - # for our Galaxy (Pinzke et al. 2017, MNRAS, 465, 4800) + # The energy density ratio of cosmic ray to the thermal ICM. + # NOTE: Equipartition between the magnetic field and cosmic ray is + # assumed, i.e., eta_b == x_cr. x_cr = float(default=0.015, min=0.001, max=0.1) # Electron injection, which is assumed to have a constant injection diff --git a/fg21sim/extragalactic/clusters/halo.py b/fg21sim/extragalactic/clusters/halo.py index 50d7c6d..68abfad 100644 --- a/fg21sim/extragalactic/clusters/halo.py +++ b/fg21sim/extragalactic/clusters/halo.py @@ -632,7 +632,7 @@ class RadioHalo1M: Unit: [uG] """ - eta_b = self.configs.getn("extragalactic/clusters/eta_b") + eta_b = self.x_cr # Equipartition between magnetic field and CR kT_out = self.configs.getn("extragalactic/clusters/kT_out") z = COSMO.redshift(t) mass = self.mass_main(t) # [Msun] diff --git a/fg21sim/extragalactic/clusters/helper.py b/fg21sim/extragalactic/clusters/helper.py index 18e7133..c4fdecc 100644 --- a/fg21sim/extragalactic/clusters/helper.py +++ b/fg21sim/extragalactic/clusters/helper.py @@ -10,6 +10,10 @@ References Arnaud, Pointecouteau & Pratt 2005, A&A, 441, 893; http://adsabs.harvard.edu/abs/2005A%26A...441..893 +.. [beck2005] + Beck & Krause 2005, AN, 326, 414 + http://adsabs.harvard.edu/abs/2005AN....326..414B + .. [cassano2005] Cassano & Brunetti 2005, MNRAS, 357, 1313 http://adsabs.harvard.edu/abs/2005MNRAS.357.1313C @@ -353,7 +357,7 @@ def density_energy_electron(n_e, gamma): def magnetic_field( mass, z=0.0, - eta_b=CONFIGS.getn("extragalactic/clusters/eta_b"), + eta_b=CONFIGS.getn("extragalactic/halos/x_cr"), kT_out=CONFIGS.getn("extragalactic/clusters/kT_out"), ): """ @@ -366,6 +370,14 @@ def magnetic_field( Magnetic field energy density: u_B = B^2 / (8π), where "B" in units of [G], then "u_B" has unit of [erg/cm^3]. + NOTE + ---- + Magnetic fields and cosmic rays are strongly coupled and exchange + energy. Therefore equipartition between them is assumed, i.e., + X_cr (= ε_cr / ε_th) = η_b (= ε_b / ε_th) + + Reference: [beck2005],App.A + Returns ------- B : float @@ -380,7 +392,7 @@ def magnetic_field( def plasma_beta( mass, z=0.0, - eta_b=CONFIGS.getn("extragalactic/clusters/eta_b"), + eta_b=CONFIGS.getn("extragalactic/halos/x_cr"), kT_out=CONFIGS.getn("extragalactic/clusters/kT_out"), ): """ -- cgit v1.2.2