import matplotlib import matplotlib.pyplot as plt import healpy as hp import lal from lalinference.io import fits from lalinference import plot from glue.text_progress_bar import ProgressBar fig = plt.figure(frameon=False) ax = plt.axes(projection='mollweide') ax.grid() progress = ProgressBar() progress.update(-1, 'obtaining filenames of sky maps') fitsfilenames = tuple(command.chainglob(opts.fitsfileglobs)) progress.max = len(fitsfilenames) matplotlib.rc('path', simplify=True, simplify_threshold=1) if opts.colormap is None: colors = ['k'] * len(fitsfilenames) else: colors = matplotlib.cm.get_cmap(opts.colormap) colors = colors(np.linspace(0, 1, len(fitsfilenames))) for count_records, (color, fitsfilename) in enumerate(zip(colors, fitsfilenames)): progress.update(count_records, fitsfilename) skymap, metadata = fits.read_sky_map(fitsfilename, nest=None) nside = hp.npix2nside(len(skymap))
progress.update(-1, 'spawning workers') if opts.jobs == 1: from six.moves import map else: try: from emcee.interruptible_pool import InterruptiblePool as Pool except ImportError: from multiprocessing import Pool map = Pool( opts.jobs, startup, (command.sqlite_get_filename(db), contours, modes, areas) ).imap_unordered progress.update(-1, 'obtaining filenames of sky maps') fitsfilenames = tuple(command.chainglob(opts.fitsfileglobs)) colnames = ( ['coinc_event_id', 'simulation_id', 'far', 'snr', 'searched_area', 'searched_prob', 'offset', 'runtime', 'distmean', 'diststd'] + ["area({0:g})".format(p) for p in contours] + ["prob({0:g})".format(a) for a in areas]) if modes: colnames += ['searched_modes'] + ["modes({0:g})".format(p) for p in contours] print(*colnames, sep="\t", file=opts.output) count_records = 0 progress.max = len(fitsfilenames) for record in map(process, fitsfilenames): count_records += 1 progress.update(count_records, record[0])
import healpy as hp import lal from lalinference import fits from lalinference import plot from glue.text_progress_bar import ProgressBar fig = plt.figure(figsize=(opts.figure_width, opts.figure_height), frameon=False) ax = plt.subplot(111, projection='mollweide') ax.cla() ax.grid() progress = ProgressBar() progress.update(-1, 'obtaining filenames of sky maps') fitsfilenames = tuple(command.chainglob(args)) progress.max = len(fitsfilenames) matplotlib.rc('path', simplify=True, simplify_threshold=1) for count_records, fitsfilename in enumerate(fitsfilenames): progress.update(count_records, fitsfilename) skymap, metadata = fits.read_sky_map(fitsfilename, nest=None) nside = hp.npix2nside(len(skymap)) gmst = lal.GreenwichMeanSiderealTime(metadata['gps_time']) % (2*np.pi) indices = np.argsort(-skymap) region = np.empty(skymap.shape) region[indices] = 100 * np.cumsum(skymap[indices]) plot.healpix_contour(