Esempio n. 1
0
def make_maps(args, comm, mode):
    hp.disable_warnings()
    nprocs = comm.Get_size()
    rank = comm.Get_rank()
    name = MPI.Get_processor_name()
    
    if rank == 0:
        reals = np.arange(args.nreal)
        chunks = np.array_split(reals, nprocs)
    else:
        chunks = None
        
    chunk = comm.scatter(chunks, root=0)
    
    if mode is not False:
        if mode == 'E':
            cl = make_cl(args, comm, mode)
        if mode == 'B':
            cl = make_cl(args, comm, mode)
    else:
        cl = load_cl(args, comm)
        
    for i in range(chunk[0], chunk[-1]+1):
        if mode is not False:
            print(f'Rank {rank} is processing {mode} realization {i} on processor {name}')
            outdir = f"{args.outpath}/{mode}"
        else:
            print(f'Rank {rank} is processing realization {i} on processor {name}')
            outdir = f"{args.outpath}"

        m = hp.synfast(cl, args.nside, lmax=3*args.nside-1, pol=True, new=True)
        #m_smooth = hp.smoothing(m, args.beamfwhm *np.pi/10800)
        if not os.path.isdir(outdir):
            os.mkdir(outdir)
        hp.write_map(f"{outdir}/map_{i}.fits", hp.reorder(m, r2n=True), overwrite=True, nest= True, dtype=np.float64)
Esempio n. 2
0
def small_to_zero(args, v):
    hp.disable_warnings()
    #mask = hp.ud_grade(hp.read_map(args.mask, verbose=False, dtype=np.float64), nside_out=args.nside)
    #mask = hp.read_map(args.mask, verbose=False, dtype=np.float64)
    mask = np.ones(12 * args.nside**2)
    mask = np.concatenate((mask, mask))
    zeros = np.where(mask == 0)[0]
    print(f'{len(zeros)} zeros in each column')
    for i in range(v.shape[1]):
        v[:, i][zeros] = 0
    return v
Esempio n. 3
0
def main():
    comm = MPI.COMM_WORLD

    parser = argparse.ArgumentParser()
    add_data_args(parser)
    args = parser.parse_args()
    print(f'INFO: NSIDE {args.nside}')

    hp.disable_warnings()
    write_distributed_data(args, comm)
    gather_data(args, comm)
Esempio n. 4
0
from re import A
import time
totaltime = time.time()
import click
import sys
import os
import healpy as hp
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors as col
from src.tools import arcmin2rad
import os
hp.disable_warnings()
# Fix for macos openMP duplicate bug
os.environ['KMP_DUPLICATE_LIB_OK'] = 'True'

#print("Importtime:", (time.time() - totaltime))


def trygveplot(input,
               dataset=None,
               nside=None,
               auto=False,
               min=False,
               max=False,
               mid=[],
               rng="auto",
               colorbar=False,
               graticule=False,
               lmax=None,
               fwhm=0.0,