aboutsummaryrefslogtreecommitdiffstats
path: root/fg21sim/extragalactic/clusters
Commit message (Collapse)AuthorAgeFilesLines
* clusters: Rename property "injection_rate" and save into halos dataAaron LI2017-08-142-37/+38
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* Use "GalaxyClusters" from main.py, and remove clusters.pyAaron LI2017-08-141-732/+0
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* Fix several bugsAaron LI2017-08-131-11/+3
| | | | | | | | | * Brought back "clobber" property * Delete the wrong "self.halos=[]" * Fix the wrong assignment of "cimax0" * Assign default values for {c,r}i{min,max}1 Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Implement "simulate_frequency()" and "simulate()"Aaron LI2017-08-131-0/+46
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters: Halo templates are normalized to have mean of 1Aaron LI2017-08-132-4/+12
| | | | | | Also update the documents of "draw_halo()" function Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Add method "_outfilepath()"Aaron LI2017-08-131-0/+21
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Set sky header propertiesAaron LI2017-08-131-4/+5
| | | | | | | * Clean up the unused configurations * Add "FREQ" keyword to the sky FITS header Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Implement "_draw_halos()" methodAaron LI2017-08-122-2/+89
| | | | | | New functions "halo_rprofile()" and "draw_halo()" added to helper.py Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Inherent cluster catalog info to halos dataAaron LI2017-08-121-4/+9
| | | | | | Also rename "frequencies" to "frequency" Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Add missing columns to DataFrame conversionAaron LI2017-08-121-2/+2
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters: Implement calc_{power,flux,brightness_mean} in helperAaron LI2017-08-112-40/+116
| | | | | | Help development & debug ... Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo: "volume" use unit "kpc^3" instead of "cm^3"Aaron LI2017-08-112-4/+7
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Calculate and cache more halo dataAaron LI2017-08-061-4/+9
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* Fix a bug in clusters/halo.py; Add a comment to utils/io/_create_dir()Aaron LI2017-08-061-1/+1
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* Update against "Fnu_to_Tb_fast()" unit changesAaron LI2017-08-031-1/+2
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Convert halos data to be a DataFrame and dumpAaron LI2017-08-031-0/+19
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Make "F()" be class method, fixing memory hole!Aaron LI2017-08-011-22/+35
| | | | | | | | | | | For unknown reason! Each instance of "SynchrotronEmission" will cost ~5 MiB memory when interpolating the kernel function cached as "self._F_interp", which won't be collected/freed by GC, for UNKNOWN reason! Therefore, make the method "F()" be class-wide, to avoid the memory hole! Signed-off-by: Aaron LI <aly@aaronly.me>
* Improve logging messagesAaron LI2017-08-012-4/+9
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Fix bug in "F()"Aaron LI2017-08-011-13/+14
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters: Add config "halos_dumpfile" and dump simulate halos dataAaron LI2017-08-011-1/+8
|
* clusters/halo.py: Finished brief simulation descriptionAaron LI2017-08-011-3/+13
|
* clusters: Fix several small issues on wrong variable namesAaron LI2017-07-313-7/+8
| | | | | | Also update logging message for RadioHalo a bit. Signed-off-by: Aaron LI <aly@aaronly.me>
* Fix several small issues; Also update PSFormalism a bitAaron LI2017-07-311-4/+10
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Use PSFormalism to simulate cluster catalogAaron LI2017-07-311-13/+11
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters: Add psformalism.py to simulate cluster catalogAaron LI2017-07-311-0/+230
| | | | | | Also updated configuration options. Signed-off-by: Aaron LI <aly@aaronly.me>
* Add `fg21sim.share` module to hold globally shared "CONFIGS" & "COSMO"Aaron LI2017-07-314-7/+4
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/main.py: Add method "_simulate_halos()"Aaron LI2017-07-311-0/+43
| | | | | | | This method simulates the radio halo properties for each cluster with a recent major merger. Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo.py: Add description for "time_crossing" propertyAaron LI2017-07-311-0/+6
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* Update references a bitAaron LI2017-07-311-19/+15
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* cluster/halo.py: Add method "calc_brightness_mean()"Aaron LI2017-07-301-0/+48
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo.py: Add property "angular_radius" (unit: [arcsec])Aaron LI2017-07-301-0/+10
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Remove methods and clean up parametersAaron LI2017-07-291-78/+2
| | | | | | | | * Methods "power()", "flux()" already moved to "halo.py"; * Method "brightness()" will also be moved over there; * Clean up thus unused parameters "z" and "radius", as well as imports. Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo.py: Add methods "calc_power()" and "calc_flux()"Aaron LI2017-07-291-0/+50
| | | | | | | Calculate the synchrotron power (a.k.a. specific luminosity) and flux density from the emissivity for the halo. Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo.py: Add method "calc_emissivity()"Aaron LI2017-07-291-6/+37
| | | | | | | This method invokes ``SynchrotronEmission`` to calculate the synchrotron emissivity at specified frequencies for the derived electron spectrum. Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo.py: Add property "volume" (unit: [cm^3])Aaron LI2017-07-291-0/+9
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: support calc emissivity at multiple frequenciesAaron LI2017-07-291-17/+27
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Add property "B_gauss"Aaron LI2017-07-291-7/+11
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Cache kernel function interpolation resultsAaron LI2017-07-271-22/+22
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Fix units/dimensions problemAaron LI2017-07-261-1/+2
| | | | | | | | | | | NOTE: Since we just substitute ``p`` (electron momentum) for ``γ`` (electron Lorentz factor), i.e., N = int_p n(p) dp = int_γ n(γ) dγ , therefore the coefficient ``sqrt(3) e^3 B / (m c^2)`` does NOT need modification (e.g., multiply an extra ``m c``)! Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: explain more on Larmor frequencyAaron LI2017-07-261-4/+12
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Fix the calling to F(x)Aaron LI2017-07-261-9/+6
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Rewrite emissivity calculationAaron LI2017-07-261-15/+24
| | | | | | | | | | Use 2D grid of (discrete) samples to optimize integration speed, avoiding the more complicated integration w.r.t. functions. WARNING: Current calculation results seems wrong! Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Update argumentsAaron LI2017-07-261-28/+28
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/emission.py: Rewrite Synchrotron kernel function calculationAaron LI2017-07-261-3/+41
| | | | | | | Use interpolation to optimize the speed as well as to vectorize the function to ease calling. Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo.py: Add property "magnetic_field"Aaron LI2017-07-261-0/+11
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/solver.py: Use multiple data points to fit the power-lawAaron LI2017-07-251-17/+19
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/halo: Change config "eta_turb" to "beta_turb"Aaron LI2017-07-251-3/+3
| | | | | | | | | | This configuration option "beta_turb" has different meaning as "eta_turb" in [Cassano & Brunetti 2005], though they can both be an indicator for the turbulence acceleration efficiency. Rename this configuration option to make the difference more clear. Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/helper.py: Fix and replace R_halo vs. R_vir relationAaron LI2017-07-231-11/+12
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/helper.py: Fix a bug in "mass_to_kT()"Aaron LI2017-07-231-2/+2
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>
* clusters/helper.py: Add "density_energy_electron()" functionAaron LI2017-07-231-2/+27
| | | | Signed-off-by: Aaron LI <aly@aaronly.me>