aboutsummaryrefslogtreecommitdiffstats
path: root/fg21sim
Commit message (Collapse)AuthorAgeFilesLines
* utils/draw.py: List the functions taken from "scikit-image"Aaron LI2016-10-171-2/+8
|
* Fix the reStructuredText citation syntaxAaron LI2016-10-172-4/+4
|
* utils/draw.py: Add disclaimer about the license: Modified BSDAaron LI2016-10-151-4/+41
|
* configs: Update get_path() to take care None and non-string valueAaron LI2016-10-151-3/+24
| | | | | | * Return None if specified config is None or not exist * Raise ValueError if specified config is non-string * Update comments
* Add utils/convert.py: Implement brightness temperature conversionAaron LI2016-10-151-0/+63
|
* Add utils/draw.py: draw circles and ellipsesAaron LI2016-10-151-0/+128
| | | | | | | | | These functions will be used to draw the image of a SNR or a radio halo. These functions are copied from the `scikit-image` project. Thanks! scikit-image: http://scikit-image.org/docs/dev/api/skimage.draw.html
* configs: Switch to use `pkg_resources` to access config specsAaron LI2016-10-151-10/+19
| | | | | | | | | After this switch to `pkg_resources`, this package can also be installed as an EGG (a zip archive), which is more generic. References: * http://setuptools.readthedocs.io/en/latest/pkg_resources.html#basic-resource-access * http://setuptools.readthedocs.io/en/latest/setuptools.html#including-data-files
* Add data/snr.py to retrieve Green's Galactic SNRs catalog dataAaron LI2016-10-152-0/+334
| | | | | | Thanks D. A. Green for the Galactic SNRs catalog (294 objects)! http://www.mrao.cam.ac.uk/surveys/snrs/
* Fix an import; Update one pattern and a commentAaron LI2016-10-141-2/+2
|
* configs: Support env variable "DEBUG_FG21SIM" for debuggingAaron LI2016-10-141-0/+3
| | | | | | Since the logging is not avaiable at the moment, we can only use the plain `print` for debugging, if the environment variable "DEBUG_FG21SIM" is defined.
* configs/validate.py: Check component configs only if enabledAaron LI2016-10-121-22/+26
|
* configs/validate.py: Add checker for [galactic][freefree] configsAaron LI2016-10-121-0/+18
|
* Tweak the docstring stylesAaron LI2016-10-112-6/+12
|
* galactic/freefree: Mask regions where absorption is uncertainAaron LI2016-10-111-4/+25
| | | | | | | | | | | | | | * Mask the regions where the dust absorption is too high to well determine the true Halpha absorption. There are regions (e.g., Galactic plane) have too large dust absorption which cause float overflow when applying absorption correction to the Halpha map. * Fix a bug on the wrong parameter passed to "_calc_ratio_a()" method in "_simulate_frequency()" * Move "_correct_dust_absorption()" invokation from "simulate()" to "_simulate_frequency()" Already tested and OK!
* utils: healpix2hpx & hpx2healpix: Remove "header" parameterAaron LI2016-10-111-35/+20
| | | | | | | | * healpix2hpx(), hpx2healpix(): Remove the "header" parameter, thus the "data" parameter can only be either the filename or a HDU; * healpix2hpx(): Remove the check on "ORDERING", since "read_fits_healpix()" always return the HEALPix data in RING ordering; * Small updates to the log messages and comments.
* utils: Update documentations, also fix stylesAaron LI2016-10-112-35/+53
|
* Update bin/fg21sim to support Galactic free-free componentAaron LI2016-10-111-0/+4
| | | | | | | | | * bin/fg21sim: check the "common/components" config to simulate the enabled components; * bin/fg21sim: add Galactic free-free component support; * galactic/freefree.py: fix missing attributes. NOTE: simulated free-free maps are WRONG!! Need check/debug!
* galactic: Add free-free component simulationAaron LI2016-10-113-0/+247
| | | | | | | * New class "galactic.FreeFree" to simulate free-free emission * Add new config section "galactic/freefree" NOTE: current untested
* galactic/synchrotron: Merge up/downgrade Nside to load methodAaron LI2016-10-111-45/+29
| | | | | | | * Merge the upgrade/downgrade resolution w.r.t Nside to the map loading methods; * Update the variable names; * Check the status of smallscales addition.
* configs: Note that input templates should be HEALPix full-sky mapsAaron LI2016-10-101-0/+4
|
* configs: Change default Nside to 1024Aaron LI2016-10-101-2/+2
|
* utils/healpix.py: log that HPX indices calculation may take a while.Aaron LI2016-10-101-0/+1
|
* utils: zea2heapix(): Set value NaN for missing pixelsAaron LI2016-10-101-5/+9
|
* utils: zea2healpix(): Implement inpainting missing pixelsAaron LI2016-10-101-3/+51
| | | | | | | The missing pixels in the reprojected HEALPix map are filled with the averages of their 8 neighboring pixels (excluding the NaN's if any). Also add the "--inpaint" argument to the executable script.
* utils: zea2healpix(): Average the duplicate pixelsAaron LI2016-10-101-2/+4
| | | | Also fix typos
* utils: zea2healpix() also return the mask arrayAaron LI2016-10-101-5/+13
| | | | | | | The mask array has values 0, 1, and 2, which indicate the different statuses of the reprojected HEALPix pixels. Also update the executable script to use the new return results.
* utils/reproject.py: Add more logging and some minor changesAaron LI2016-10-101-1/+22
|
* utils/reproject.py: Implement zea2healpix()Aaron LI2016-10-102-0/+241
| | | | | | | | | | | | | | | | The "zea2healpix()" function reprojects the maps in ZEA (zenithal/azithumal equal area) projection to HEALPix data in Galactic frame with RING ordering. The other two helper functions "_image_to_healpix()" and "_convert_wcs()" are almost copied from the "reproject" project [1]. Thanks! TODO: * Add some more logging * Implement the "inpaint" argument to inpaint the HEALPix map if exists missing pixels [1] reproject: https://github.com/astrofrog/reproject
* utils: Preseve the dtype when read/write FITS filesAaron LI2016-10-102-11/+17
| | | | | | | | * utils/fits.py: hack the dtype to ignore the byteorder (FITS data use big endianness, e.g., dtype(">f4")) * utils/healpix.py: explicit convert the dtype and log the dtype * bin/healpix2hpx, bin/hpx2healpix: remove the --float argument * other minor fixes/updates
* Use newly added "read_fits_healpix()"Aaron LI2016-10-092-15/+8
| | | | Also remove a unused variable in "galactic/synchrotron.py"
* utils/fits.py: read_fits_healpix() also accept HDUAaron LI2016-10-091-4/+9
|
* utils: Add function "read_fits_healpix()"Aaron LI2016-10-092-1/+30
| | | | | | This function wraps on the `healpy.read_map()`, but reset the data array to its original dtype in FITS file, as well as return the FITS header in `astropy.io.fits.Header` object.
* utils/healpix.py: fix logging import; minor style fixesAaron LI2016-10-091-10/+5
|
* Update to use the "write_fits_healpix()" functionAaron LI2016-10-051-5/+4
|
* utils: Add "write_fits_healpix()" to replace "healpy.write_map()"Aaron LI2016-10-052-0/+101
| | | | | | NOTE: This "write_fits_healpix()" function only implements the most common case of the HEALPix FITS style.
* Add bin/fg21sim and some updates to galactic/synchrotronAaron LI2016-10-042-4/+34
| | | | | | | | | | | | * Add new executable "bin/fg21sim" * galactic/synchrotron: update to use "configs.get_path()" * galactic/synchrotron: create output dir if not exists * galactic/synchrotron: add logging support * galactic/synchrotron: append FITS extension to filename * galactic/synchrotron: pass the basic test TODO: * "output()" needs fixes with the FITS header
* Rewrite configs/validate.py to check whole config without breakAaron LI2016-10-041-23/+52
|
* Remove the "common/data_dir" config itemAaron LI2016-10-043-10/+4
|
* Fix wrong config syntax and minor changes to ConfigManagerAaron LI2016-10-042-12/+18
|
* configs/manager.py: Add logging supportAaron LI2016-10-041-2/+6
|
* configs/manager.py: Add method "get_path()"Aaron LI2016-10-041-0/+21
|
* configs/manager.py: Add method "read_userconfig()"Aaron LI2016-10-041-3/+35
| | | | | | | | This "read_userconfig()" method is specifically used to load the user configuration file, and record the absolute path of the configuration file, which allows the use of relative path to specify the input files (e.g., galactic/synchrotron/template) for simulation within the configurations.
* configs/validate.py: Explain these checkers differ to Validator'sAaron LI2016-10-041-1/+7
| | | | | | NOTE: these checker functions check on the whole configuration, and have no relation to the checker functions of the `Validator` class.
* configs/manager.py: Fix a bug that "_validate()" not workingAaron LI2016-10-041-1/+1
|
* configs/manager.py: Add "frequencies" propertyAaron LI2016-10-041-0/+16
| | | | | The "frequencies" property will return or calculate the frequency values of the simulation.
* Update the default config specifications.Aaron LI2016-10-032-6/+14
| | | | | | * Add new configs for the [frequency] section * Use "None" as the default value for some configs * Fix the syntax of "cosmology/OmegaM0"
* Add custom configuration checkers.Aaron LI2016-10-032-0/+95
| | | | | These additional checker functions validate the required configs whether provided by the user config file, as well as against necessary contexts.
* Arrange customs errors/exceptions in a moduleAaron LI2016-10-032-4/+12
|
* Update general configurations and synchrotron configsAaron LI2016-10-032-1/+12
|
* Add preliminary Galactic synchrotron simulation support.Aaron LI2016-10-031-0/+204
| | | | NOTE: untested