print(chisqs.min(), chisqs.max()) omega_cm_num = omega_cm_bin.shape[0] omega_bm_num = omega_bm_bin.shape[0] sigma8_num = sigma8_bin.shape[0] my, mx = numpy.zeros((omega_cm_num, sigma8_num)), numpy.zeros( (omega_cm_num, sigma8_num)) for i in range(omega_cm_num): my[i] = omega_cm_bin[i] for j in range(sigma8_num): mx[:, j] = sigma8_bin[j] img = Image_Plot(fig_x=4, fig_y=3, xpad=0.25, ypad=0.28) img.subplots(2, 5) for i in range(2): for j in range(5): tag = i * 2 + j idx = chisqs[tag] > -200 print(idx.sum()) x = mx[idx].flatten() y = my[idx].flatten() z = chisqs[tag][idx].flatten() img.scatter_pts(i, j, x, y, z, color_map="jet", pts_size=18) img.axs[i][j].set_title("$\Omega_b=%.3f$" % omega_bm_bin[tag]) img.set_label(i, j, 0, "$\Omega_m$") img.set_label(i, j, 1, "$\sigma_8$") img.save_img("%s/%s.png" % (data_path, chisa_name)) img.show_img()
print("Max to %.3f Mpc/h" % (com_dist_len * Rmax / 3600 / 180 * numpy.pi)) if rank == 0: ra_bin = numpy.linspace(-Rmax, Rmax, bin_num + 1) dec_bin = numpy.linspace(-Rmax, Rmax, bin_num + 1) ra, dec = GGLensing_tool.get_pos(ra_bin, dec_bin, bin_num) shear_data = [GGLensing_tool.cal_shear(ra, dec, nfw, z) for z in src_z] img = Image_Plot(xpad=0.25, ypad=0.25) img.subplots(4, src_plane_num) for i in range(src_plane_num): kappa, g1, g2 = shear_data[i][0], shear_data[i][1], shear_data[i][2] g = numpy.sqrt(g1**2 + g2**2) img.scatter_pts(0, i, ra, dec, kappa) img.scatter_pts(1, i, ra, dec, g) img.scatter_pts(2, i, ra, dec, g1) img.scatter_pts(3, i, ra, dec, g2) img.axs[0][i].set_title("kappa from source plane at Z=%.3f" % src_z[i]) img.axs[1][i].set_title("g from source plane at Z=%.3f" % src_z[i]) img.axs[2][i].set_title("g1 from source plane at Z=%.3f" % src_z[i]) img.axs[3][i].set_title("g2 from source plane at Z=%.3f" % src_z[i]) for j in range(4): img.set_label(j, i, 0, "Dec. [arcsec]") img.set_label(j, i, 1, "R.A. [arcsec]") img.save_img("./pic/sample.png") img.close_img() # img.show_img()
for i in range(len(sig8)): x[:,i] = sig8[i] for i in range(len(omg_c)): y[i] = omg_c[i] img = Image_Plot(fig_x=5,fig_y=4,xpad=0.25,ypad=0.25) img.subplots(2,5) for i in range(2): for j in range(5): chisq_i = -chisq[int(i*5 + j)] idx = chisq_i < 70 xi = x[idx].flatten() yi = y[idx].flatten() zi = chisq_i[idx].flatten() idx = zi == zi.min() xi_min, yi_min = xi[idx], yi[idx] print(xi_min, yi_min) img.scatter_pts(i,j, xi,yi,numpy.log10(zi),color_map='jet',pts_size=5) img.axs[i][j].scatter(xi_min, yi_min, s=15,c="r", marker="p",label="$\chi^2_{min}=%.3f$"%zi.min()) img.axs[i][j].legend() # fig = img.axs[i][j].imshow(chisq_i,cmap="jet") # img.figure.colorbar(fig,ax=img.axs[i][j],) img.set_label(i,j,0,"$\Omega_m$") img.set_label(i,j,1,"$\sigma_8$") img.axs[i][j].set_title("$\Omega_b=%.2f$"%omg_b[int(i*5 + j)]) # img.save_img(data_path +"/brutal.pdf") img.show_img()
pic_nm = "./result/galsim/mc_%s_ellip_mix.png"%psf_tag pic_nm_pdf = "./result/galsim/mc_%s_ellip_mix.pdf"%psf_tag else: numpy.savez("./result/galsim/cache_%s_ellip_%.2f.npz"%(psf_tag,ellip), mcs) pic_nm = "./result/galsim/mc_%s_ellip_%.2f.png"%(psf_tag, ellip) pic_nm_pdf = "./result/galsim/mc_%s_ellip_%.2f.pdf"%(psf_tag, ellip) y = numpy.zeros((si_num*sr_num,)) x = numpy.zeros((si_num*sr_num,)) for i in range(si_num): for j in range(sr_num): tag = int(i*sr_num + j) y[tag] = sersic_index[i] x[tag] = scale_radius[j] titles = ["$m_1$","$c_1$","$m_2$", "$c_2$"] img = Image_Plot(xpad=0.3,ypad=0.3,fig_x=4,fig_y=3) img.subplots(2, 2) for i in range(2): for j in range(2): tag = int(i*2 + j) z = mcs[tag].flatten() img.scatter_pts(i,j,x,y,z,pts_size=30,color_map="bwr") img.set_label(i,j,0,"Sersic Index") img.set_label(i,j,1,"Scale Radius") img.axs[i][j].set_title(titles[tag],fontsize=img.xy_lb_size) img.save_img(pic_nm) img.save_img(pic_nm_pdf) # img.show_img()
mcs[0, i, j] = mc1[1] -1 # m1 mcs[1, i, j] = mc1[0] # c1 mcs[2, i, j] = mc2[1]-1 # m2 mcs[3, i, j] = mc2[0] # c2 if rank == 0: numpy.savez("./cache_%s.npz"%psf_tag, mcs) y = numpy.zeros((si_num*sr_num,)) x = numpy.zeros((si_num*sr_num,)) for i in range(si_num): for j in range(sr_num): tag = int(i*sr_num + j) y[tag] = sersic_index[i] x[tag] = scale_radius[j] titles = ["$m_1$","$c_1$","$m_2$", "$c_2$"] img = Image_Plot(xpad=0.25,ypad=0.25,fig_x=4,fig_y=3) img.subplots(2, 2) for i in range(2): for j in range(2): tag = int(i*2 + j) z = mcs[tag].flatten() img.scatter_pts(i,j,x,y,z,pts_size=30) img.set_label(i,j,0,"Sersic Index") img.set_label(i,j,1,"Scale Radius") img.axs[i][j].set_title(titles[tag]) img.save_img("./mc_%s.png"%psf_tag) # img.show_img()
], [ "Hist after PDF_SYM", "$\Delta N$ after PDF_SYM", "$\chi^2$ after PDF_SYM" ]] for i in range(2): hist2d = numpy.histogram2d(check_mnu, check_mg - i * sigma * check_mnu, [mnur_bin, mg_bin])[0] chisq, hist2d_left, hist2d_right, hist2d_diff, hist2d_sum = get_diff( hist2d) numpy.savez("./cache_%d_%s.npz" % (i, cmd), x, y, xh, yh, hist2d, chisq, hist2d_left, hist2d_right, hist2d_diff, hist2d_sum) idx = hist2d > 0 img.scatter_pts(i, 0, xlog[idx], xlog[idx], hist2d[idx], color_map="jet") idx = hist2d_sum > 0 img.scatter_pts(i, 1, xhlog[idx], yhlog[idx], hist2d_diff[idx], color_map="jet") img.scatter_pts(i, 2, xhlog[idx], yhlog[idx], chisq[idx], color_map="jet") for j in range(3): img.set_label(i, j, 0, "N+U bin [log]") img.set_label(i, j, 1, "$G_t$ bin [log]") img.axs[i][j].set_title(titles[i][j])