true2d = get_nfw(true_mass) kellmin = 200 kellmax = 8500 true2d = enmap.ndmap(fmaps.filter_map(true2d,true2d*0.+1.,modlmap,lowPass=kellmax,highPass=kellmin),wcs) Nsims = 1000 cov = np.ones((1,1,8500))*0.00000001 ngen = enmap.MapGen(shape,wcs,cov) out_dir = os.environ['WWW']+"plots/cgauss_" # Efficiently distribute sims over MPI cores num_each,each_tasks = mpi_distribute(Nsims,numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm,num_each,tag_start=333) if rank==0: print(("At most ", max(num_each) , " tasks...")) # What am I doing? my_tasks = each_tasks[rank] for k,index in enumerate(my_tasks): noise = ngen.get_map() mkappa = true2d+noise if k==0 and rank==0: io.quickPlot2d(noise,out_dir+"nstamp.png") print(k) cents, prof = rbinner.bin(mkappa) mpibox.add_to_stats('prof',prof) mpibox.add_to_stack('mkappa',mkappa)
mpibox.add_to_stats("TT", cltt) mpibox.add_to_stats("EE", clee) mpibox.add_to_stats("BB", clbb) mpibox.add_to_stats("TE", clte) mpibox.add_to_stats("EB", cleb) mpibox.add_to_stats("TB", cltb) return ells Ntot = 8 # Efficiently distribute sims over MPI cores num_each, each_tasks = mpi_distribute(Ntot, numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm, num_each, tag_start=333) if rank == 0: print(("At most ", max(num_each), " tasks...")) # What am I doing? my_tasks = each_tasks[rank] k = -1 for index in my_tasks: k += 1 cmb_map = load_fullsky(sim_root, "fullsky_curved_lensed_car", index) print((rank, k, cmb_map.shape)) ells = map2power(cmb_map, mpibox)
import orphics.tools.stats as stats import orphics.tools.cmb as cmb import flipper.liteMap as lm import flipper.fftTools as ft import orphics.tools.io as io import numpy as np # Get MPI comm comm = MPI.COMM_WORLD rank = comm.Get_rank() numcores = comm.Get_size() Ntot = 256 num_each, each_tasks = mpi_distribute(Ntot, numcores) mpibox = MPIStats(comm, num_each, tag_start=333) if rank == 0: print(("At most ", max(num_each), " tasks...")) my_tasks = each_tasks[rank] nside = 4096 deg = 10. px = 0.5 bin_edges = np.arange(100, 4000, 40) theory_file_root = "data/Aug6_highAcc_CDM" theory = cmb.loadTheorySpectraFromCAMB(theory_file_root, unlensedEqualsLensed=False, useTotal=False, TCMB=2.7255e6, lpad=9000,
#if save is not None: save_func = lambda x: save_dir + "/"+save+"_"+str(x).zfill(9)+".fits" # How many sims? Should I use saved files? if Nsims is None: Nsims = 320 sigurd_cmb_file = lambda x: "/gpfs01/astro/workarea/msyriac/data/sims/sigurd/cori/v5/" + region + "_curved_lensed_car_" + str( x).zfill(2) + ".fits" sigurd_kappa_file = lambda x: "/gpfs01/astro/workarea/msyriac/data/sims/sigurd/cori/v5/" + region + "_curved_kappa_car_" + str( x).zfill(2) + ".fits" Ntot = Nsims # Efficiently distribute sims over MPI cores num_each, each_tasks = mpi_distribute(Ntot, numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm, num_each, tag_start=333) if rank == 0: print(("At most ", max(num_each), " tasks...")) # What am I doing? my_tasks = each_tasks[rank] if rank == 0: print("Reading config...") # Read config iniFile = "../halofg/input/recon.ini" Config = SafeConfigParser() Config.optionxform = str Config.read(iniFile) if rank == 0: print("Params...")
rank = comm.Get_rank() numcores = comm.Get_size() gradCut = 2000 #None #2000 date = '190404_' ksz = 2 # Options: 0,1,2 ksz_name = ['', 'reionKSZ_', 'bothKSZ_'] # i/o directories out_dir = "output/" + date + expf_name + "_" + str(gradCut) + "_" + ksz_name[ ksz] # for plots # Efficiently distribute sims over MPI cores num_each, each_tasks = mpi_distribute(Ntot, numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm, num_each, tag_start=333) if rank == 0: print "At most ", max(num_each), " tasks..." # What am I doing? my_tasks = each_tasks[rank] # Read config iniFile = "input/recon_astro2020.ini" Config = SafeConfigParser() Config.optionxform = str Config.read(iniFile) pol = False shape_sim, wcs_sim, shape_dat, wcs_dat = aio.enmaps_from_config( Config, sim_section, analysis_section, pol=pol)
parray_dat = aio.patch_array_from_config(Config, expf_name, shape_dat, wcs_dat, dimensionless=False) parray_sim = aio.patch_array_from_config(Config, expf_name, shape_sim, wcs_sim, dimensionless=False) arcmap = parray_sim.modrmap * 180. * 60. / np.pi # Efficiently distribute sims over MPI cores num_each, each_tasks = mpi_distribute(Nsims, numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm, num_each, tag_start=333) if rank == 0: print(("At most ", max(num_each), " tasks...")) # What am I doing? my_tasks = each_tasks[rank] # === COSMOLOGY === theory, cc, lmax = aio.theory_from_config(Config, cosmology_section, dimensionless=False) parray_dat.add_theory(theory=theory, lmax=lmax, orphics_is_dimensionless=False) parray_sim.add_theory(theory=theory, lmax=lmax, orphics_is_dimensionless=False) lb = aio.ellbounds_from_config(Config, recon_section, min_ell) tellmin = lb['tellminY'] tellmax = lb['tellmaxY'] pellmin = lb['pellminY']
polsims = Config.getboolean("general","pol") pol = False shape_sim, wcs_sim, shape_dat, wcs_dat = aio.enmaps_from_config(Config,sim_section,analysis_section,pol=pol) analysis_resolution = np.min(enmap.extent(shape_dat,wcs_dat)/shape_dat[-2:])*60.*180./np.pi pixratio = analysis_resolution/Config.getfloat(sim_section,"pixel_arcmin") min_ell = fmaps.minimum_ell(shape_dat,wcs_dat) parray_dat = aio.patch_array_from_config(rConfig,expf_name,shape_dat,wcs_dat,dimensionless=False) # Efficiently distribute sims over MPI cores Nuse = Nsims if args.num_sims is None else args.num_sims assert args.num_sims < Nsims num_each,each_tasks = mpi_distribute(Nuse,numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm,num_each,tag_start=333) if rank==0: print(("At most ", max(num_each) , " tasks...")) # What am I doing? my_tasks = each_tasks[rank] # === COSMOLOGY === theory, cc, lmax = aio.theory_from_config(Config,cosmology_section,dimensionless=False) parray_dat.add_theory(cc,theory,lmax,orphics_is_dimensionless=False) lxmap_dat,lymap_dat,modlmap_dat,angmap_dat,lx_dat,ly_dat = fmaps.get_ft_attributes_enmap(shape_dat,wcs_dat) lb = aio.ellbounds_from_config(rConfig,recon_section,min_ell*8) tellmin = lb['tellminY'] tellmax = lb['tellmaxY'] pellmin = lb['pellminY']
Ntotks = [Ntotk] Ntotcs = [Ntotc] for i in range(1, numcores): Ntotks.append(comm.recv(source=i, tag=99)) Ntotcs.append(comm.recv(source=i, tag=88)) Nmin = min(min(Ntotks, Ntotcs)) Nmin = comm.bcast(Nmin, root=0) if rank == 0: print(("Nmin : ", Nmin)) cmb_glob = cmb_glob[:Nmin] kappa_glob = kappa_glob[:Nmin] Ntot = Nmin # Efficiently distribute sims over MPI cores num_each, each_tasks = mpi_distribute(Ntot, numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm, num_each, tag_start=333) if rank == 0: print(("At most ", max(num_each), " tasks...")) # What am I doing? my_tasks = each_tasks[rank] my_kappa_files = [kappa_glob[i] for i in my_tasks] my_cmb_files = [cmb_glob[i] for i in my_tasks] # Read config iniFile = "input/recon.ini" Config = SafeConfigParser() Config.optionxform = str Config.read(iniFile) pol = False
comm = MPI.COMM_WORLD rank = comm.Get_rank() numcores = comm.Get_size() # i/o directories out_dir = os.environ['WWW']+"plots/mass_"+str(cluster_mass)+"_"+str(grad_cut)+"_unlensed_"+str(nolens)+"_fake_"+str(args.fake)+"_" # for plots Ntot = Nsims # Efficiently distribute sims over MPI cores num_each,each_tasks = mpi_distribute(Ntot,numcores) # Initialize a container for stats and stacks mpibox = MPIStats(comm,num_each,tag_start=333) if rank==0: print(("At most ", max(num_each) , " tasks...")) # What am I doing? my_tasks = each_tasks[rank] # Read config iniFile = "../halofg/input/recon.ini" Config = SafeConfigParser() Config.optionxform=str Config.read(iniFile) pol = False shape_sim, wcs_sim, shape_dat, wcs_dat = aio.enmaps_from_config(Config,sim_section,analysis_section,pol=pol)