diff options
author | Aaron LI <aaronly.me@outlook.com> | 2016-10-05 10:13:31 +0800 |
---|---|---|
committer | Aaron LI <aaronly.me@outlook.com> | 2016-10-05 10:13:31 +0800 |
commit | 45e63d7b69a77bda12aa44aea4a4effc2ba90e53 (patch) | |
tree | 8bef5b5a22de95de946331d708a5bd2aa5b3d5b4 | |
parent | b3b2bb0363d320eb44f1a64afaeb5f8a45d461aa (diff) | |
download | fg21sim-45e63d7b69a77bda12aa44aea4a4effc2ba90e53.tar.bz2 |
Update to use the "write_fits_healpix()" function
-rwxr-xr-x | bin/hpx2healpix | 20 | ||||
-rw-r--r-- | fg21sim/galactic/synchrotron.py | 9 |
2 files changed, 7 insertions, 22 deletions
diff --git a/bin/hpx2healpix b/bin/hpx2healpix index ce83553..ac65fbd 100755 --- a/bin/hpx2healpix +++ b/bin/hpx2healpix @@ -18,18 +18,7 @@ from astropy.io import fits import fg21sim from fg21sim.configs import configs -from fg21sim.utils import hpx2healpix, setup_logging - - -# Reference: -# http://docs.astropy.org/en/stable/io/fits/usage/table.html#column-creation -FITS_COLUMN_FORMATS = { - np.dtype("int16"): "I", - np.dtype("int32"): "J", - np.dtype("int64"): "K", - np.dtype("float32"): "E", - np.dtype("float64"): "D", -} +from fg21sim.utils import hpx2healpix, write_fits_healpix, setup_logging def main(): @@ -82,11 +71,8 @@ def main(): if args.float: logger.info("HEALPix data: use single-precision float numbers") hp_data = hp_data.astype(np.float32) - hdu = fits.BinTableHDU.from_columns([ - fits.Column(name="I", array=hp_data, - format=FITS_COLUMN_FORMATS.get(hp_data.dtype)) - ], header=hp_header) - hdu.writeto(args.outfile, clobber=args.clobber, checksum=True) + write_fits_healpix(args.outfile, hpmap=hp_data, header=hp_header, + clobber=args.clobber) logger.info("HEALPix data write to FITS file: %s" % args.outfile) diff --git a/fg21sim/galactic/synchrotron.py b/fg21sim/galactic/synchrotron.py index 614aae9..44716f9 100644 --- a/fg21sim/galactic/synchrotron.py +++ b/fg21sim/galactic/synchrotron.py @@ -14,6 +14,8 @@ from astropy.io import fits import astropy.units as au import healpy as hp +from ..utils import write_fits_healpix + logger = logging.getLogger(__name__) @@ -203,11 +205,8 @@ class Synchrotron: ) if self.use_float: hpmap = hpmap.astype(np.float32) - hdu = fits.BinTableHDU.from_columns([ - fits.Column(name="I", array=hpmap, - format=FITS_COLUMN_FORMATS.get(hpmap.dtype)) - ], header=header) - hdu.writeto(filepath, clobber=self.clobber, checksum=True) + write_fits_healpix(filepath, hpmap, header=header, + clobber=self.clobber) logger.info("Write simulated map to file: {0}".format(filepath)) def simulate(self, frequencies): |