Beispiel #1
0
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()
Beispiel #4
0
        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()
Beispiel #5
0
    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])