From 6a458c2c4676f622ac3151526bd0642f1a191100 Mon Sep 17 00:00:00 2001 From: Aaron LI Date: Mon, 1 Jan 2018 09:43:27 +0800 Subject: clusters/halo: improve turbulence velocity dispersion calculation Use the merged total mass instead of the main cluster mass only as the denominator to determine the turbulence velocity dispersion, which reduces the scatter and thus the acceleration results will be less sensitive to the (mostly unknown) merging turbulence properties. --- fg21sim/extragalactic/clusters/halo.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/fg21sim/extragalactic/clusters/halo.py b/fg21sim/extragalactic/clusters/halo.py index 6b5a683..a8f218a 100644 --- a/fg21sim/extragalactic/clusters/halo.py +++ b/fg21sim/extragalactic/clusters/halo.py @@ -827,15 +827,16 @@ class RadioHalo: velocity dispersion from its energy. Merger energy: - E_m ≅ 0.5 * f_gas * M_sub * v^2 - ≅ 0.5 * f_gas * M_sub * (G*M_main / R_vir) + E_m ≅ 0.5 * f_gas * M_sub * v_vir^2 + v_vir = sqrt(G*M_main / R_vir) Turbulence energy: E_turb ≅ η_turb * E_m ≅ 0.5 * M_turb * - = 0.5 * f_gas * M_main( - = 0.5 * f_gas * f_mass(L/R_vir) * M_main * + = 0.5 * f_gas * M_total( + = 0.5 * f_gas * f_mass(L/R_vir) * M_total * + M_total = M_main + M_sub => Velocity dispersion: - ≅ (η_turb/f_mass) * (G*M_sub/R_vir) + ≅ (η_turb/f_mass) * (M_sub/M_total) * v_vir^2 Returns ------- @@ -848,11 +849,10 @@ class RadioHalo: z = COSMO.redshift(t) mass = self.M_main + self.M_sub R_vir = helper.radius_virial(mass=mass, z=z) * AUC.kpc2cm # [cm] - v2 = np.sqrt(AC.G * self.M_sub*AUC.Msun2g / R_vir) # [cm/s] - v2 *= AUC.cm2km # [km/s] + v2_vir = (AC.G * self.M_main*AUC.Msun2g / R_vir) * AUC.cm2km**2 fmass = helper.fmass_nfw(self.f_lturb) - v_turb = v2 * np.sqrt(self.eta_turb / fmass) - return v_turb + v2_turb = v2_vir * (self.eta_turb / fmass) * (self.M_sub / mass) + return np.sqrt(v2_turb) def _magnetic_field(self, t): """ -- cgit v1.2.2