aboutsummaryrefslogtreecommitdiffstats
path: root/fg21sim
diff options
context:
space:
mode:
authorAaron LI <aly@aaronly.me>2017-07-29 15:19:53 +0800
committerAaron LI <aly@aaronly.me>2017-07-29 15:19:53 +0800
commit92de811852e1d21194f5f2744a0992e5bded36f2 (patch)
treea9419afd045d7826db67d9d13e1fa7885b8970e2 /fg21sim
parent226af8a558ea70e5d9d3fa39855e3c3d00ec57e3 (diff)
downloadfg21sim-92de811852e1d21194f5f2744a0992e5bded36f2.tar.bz2
galactic/freefree.py: Some cleanups
Signed-off-by: Aaron LI <aly@aaronly.me>
Diffstat (limited to 'fg21sim')
-rw-r--r--fg21sim/galactic/freefree.py66
1 files changed, 33 insertions, 33 deletions
diff --git a/fg21sim/galactic/freefree.py b/fg21sim/galactic/freefree.py
index a4d8ad6..75dfbb7 100644
--- a/fg21sim/galactic/freefree.py
+++ b/fg21sim/galactic/freefree.py
@@ -3,6 +3,27 @@
"""
Diffuse Galactic free-free emission simulations.
+
+References
+----------
+.. [dickinson2003]
+ Dickinson, C.; Davies, R. D.; Davis, R. J.,
+ "Towards a free-free template for CMB foregrounds",
+ 2003, MNRAS, 341, 369,
+ http://adsabs.harvard.edu/abs/2003MNRAS.341..369D
+
+.. [finkbeiner2003]
+ Finkbeiner, Douglas P.,
+ "A Full-Sky Hα Template for Microwave Foreground Prediction",
+ 2003, ApJS, 146, 407,
+ http://adsabs.harvard.edu/abs/2003ApJS..146..407F
+
+.. [schlegel1998]
+ Schlegel, David J.; Finkbeiner, Douglas P.; Davis, Marc,
+ "Maps of Dust Infrared Emission for Use in Estimation of Reddening
+ and Cosmic Microwave Background Radiation Foregrounds",
+ 1998, ApJ, 500, 525,
+ http://adsabs.harvard.edu/abs/1998ApJ...500..525S
"""
import os
@@ -23,9 +44,9 @@ class FreeFree:
"""
Simulate the diffuse Galactic free-free emission.
- The [Dickinson2003]_ method is followed to derive the free-free template.
- The H\alpha survey map [Finkbeiner2003]_ is first corrected for dust
- absorption using the infrared 100-\mu{}m dust map [Schlegel1998]_,
+ The [dickinson2003] method is followed to derive the free-free template.
+ The all-sky Hα survey map [Finkbeiner2003] is first corrected for dust
+ absorption using the infrared 100-μm dust map [Schlegel1998],
and then converted to free-free emission map (brightness temperature).
Parameters
@@ -36,28 +57,7 @@ class FreeFree:
Attributes
----------
- ???
-
- References
- ----------
- .. [Dickinson2003]
- Dickinson, C.; Davies, R. D.; Davis, R. J.,
- "Towards a free-free template for CMB foregrounds",
- 2003, MNRAS, 341, 369,
- http://adsabs.harvard.edu/abs/2003MNRAS.341..369D
-
- .. [Finkbeiner2003]
- Finkbeiner, Douglas P.,
- "A Full-Sky Hα Template for Microwave Foreground Prediction",
- 2003, ApJS, 146, 407,
- http://adsabs.harvard.edu/abs/2003ApJS..146..407F
-
- .. [Schlegel1998]
- Schlegel, David J.; Finkbeiner, Douglas P.; Davis, Marc,
- "Maps of Dust Infrared Emission for Use in Estimation of Reddening
- and Cosmic Microwave Background Radiation Foregrounds",
- 1998, ApJ, 500, 525,
- http://adsabs.harvard.edu/abs/1998ApJ...500..525S
+ TODO
"""
# Component name
name = "Galactic free-free"
@@ -90,28 +90,28 @@ class FreeFree:
def _load_maps(self):
"""
- Load the H{\alpha} map, and dust map.
+ Load the Hα map, and 100-μm dust map.
"""
sky = get_sky(self.configs)
logger.info("Loading H[alpha] map ...")
self.halphamap = sky.load(self.halphamap_path)
- # TODO: Validate & convert unit
+ # Validate input map unit
if self.halphamap_unit != au.Unit("Rayleigh"):
raise ValueError("unsupported Halpha map unit: {0}".format(
self.halphamap_unit))
logger.info("Loading dust map ...")
self.dustmap = sky.load(self.dustmap_path)
- # TODO: Validate & convert unit
+ # Validate input map unit
if self.dustmap_unit != au.Unit("MJy / sr"):
raise ValueError("unsupported dust map unit: {0}".format(
self.dustmap_unit))
def _correct_dust_absorption(self):
"""
- Correct the H{\alpha} map for dust absorption using the
- 100-{\mu}m dust map.
+ Correct the Hα map for dust absorption using the
+ 100-μm dust map.
- References: [Dickinson2003]: Eq.(1, 3); Sec.(2.5)
+ References: Ref.[dickinson2003],Eq.(1,3),Sec.(2.5)
"""
if hasattr(self, "_dust_corrected") and self._dust_corrected:
return
@@ -271,9 +271,9 @@ class FreeFree:
# Assumed electron temperature [ K ]
T4 = self.Te / 1e4
nu = frequency * self.freq_unit.to(au.GHz) # frequency [ GHz ]
- # NOTE: ignored the "10^3" term in the referred equation
- ratio_mK_R = (8.396 * ratio_a * nu**(-2.1) *
factor_a = self._calc_factor_a(frequency)
+ # NOTE:
+ # The referred formula has a superfluous "10^3" term.
ratio_mK_R = (8.396 * factor_a * nu**(-2.1) *
T4**0.667 * 10**(0.029/T4) * (1+0.08))
# Use "Kelvin" as the brightness temperature unit