aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* configs/validate.py: Add "check_galactic_snr()" for "galactic/snr"Aaron LI2016-10-171-0/+16
|
* bin/fg21sim: Support new component "galactic/snr"Aaron LI2016-10-172-1/+15
| | | | Also update the general config for the new "galactic/snr" component.
* galactic/snr.py: Implemented missing but necessary functionalitiesAaron LI2016-10-172-26/+165
| | | | | | | | The necessary but missing functionalities to simulate the Galactic SNRs emission maps are implemented, and this new emission component is ready for testing. Also fix a typo in "utils/grid.py".
* utils/grid.py: Implement "map_grid_to_healpix()"Aaron LI2016-10-171-9/+29
| | | | | | | | The "map_grid_to_healpix()" maps the generated coordinate grid to a HEALPix map. Note that only effective HEALPix pixels are returned instead of a full HEALPix map. TODO: Try to avoid the explicit for loop to optimize the speed.
* Add utils/grid.py: Make coordinate grids for SNRsAaron LI2016-10-171-0/+157
| | | | | | | * make_coordinate_grid(): Make a Cartesian coordinate grid according to the specified center coordinate, size and grid resolution. * make_grid_ellipse(): Also generate an (rotated) ellipse and place into the coordinate grid.
* galactic: Add new component "galactic/snr": supernova remnantsAaron LI2016-10-172-0/+256
| | | | NOTE: very preliminary, and missing many necessary functions!
* configs: Add new section "[galactic][snr]" for SNRs simulationAaron LI2016-10-171-1/+19
| | | | NOTE: very preliminary and may change at any time!
* Force "DEBUG" log level if env variable "DEBUG_FG21SIM" setAaron LI2016-10-172-2/+10
|
* utils/logging.py: Small updates to the docstrings and commentsAaron LI2016-10-171-14/+16
|
* configs/manager.py: Change __init__() to load user configAaron LI2016-10-171-9/+15
| | | | | | | | Change the "__init__()" method to load the user configurations (i.e., by invoke the "read_userconfig()" method) instead of loading extra general configurations. Method "getn()": also check the validity for the parameter "sep".
* configs/manager.py: Various updates to docstring and comments.Aaron LI2016-10-171-23/+44
| | | | No functional changes.
* 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
* Add requirement "pandas" as "galactic/snr.py" will use itAaron LI2016-10-152-0/+2
|
* 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
* Install 'bin/fg21sim-download-snr-data' and update requirements.Aaron LI2016-10-152-0/+5
| | | | Add two new requirements: beautifulsoup4, requests
* Add the executable bin/fg21sim-download-snr-dataAaron LI2016-10-151-0/+86
| | | | This script invokes the data/snr.py .
* 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/
* Makefile: remove argument "--upgrade" from pip3Aaron LI2016-10-151-1/+1
|
* Install non-code files: config specificationsAaron LI2016-10-152-0/+3
| | | | | | | | | | | The default config specifications are required and should be installed. TODO: * Figure out the problem why "LICENSE" cannot be installed as well ?? References: * http://setuptools.readthedocs.io/en/latest/setuptools.html#including-data-files * http://python-packaging.readthedocs.io/en/latest/non-code-files.html
* Fix an import; Update one pattern and a commentAaron LI2016-10-142-3/+2
|
* Add the new dependency: scipyAaron LI2016-10-142-0/+2
| | | | The utils/zea2healpix requires scipy.
* 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.
* Makefile: Fix quotationAaron LI2016-10-141-2/+2
| | | | | | | Do not quote Make variables, since Make does NOT understand or parse single- or double-quote characters in any way. Credit: http://stackoverflow.com/a/23332194
* Makefile: Add one liner to get the value of any variableAaron LI2016-10-141-0/+7
| | | | | | Handy liner to help debugging Makefile. Credit: http://blog.jgc.org/2015/04/the-one-line-you-should-add-to-every.html
* 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-112-4/+28
| | | | | | | | | * 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-102-3/+54
| | | | | | | 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-102-10/+18
| | | | | | | 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
|
* Add excutable script "bin/zea2healpix"Aaron LI2016-10-102-0/+89
| | | | | | | | The script takes the two ZEA-projected FITS images, reproject them to the full-sky HEALPix map in Galactic frame with RING ordering. TODO: * Add argument "--inpaint" after implement the inpainting function.
* 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-104-24/+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"