Example #1
0
def plot_kappa_simple(catalog_file,
                      remove_z_problem=False,
                      Npix=128,
                      kappa_filter=4,
                      kappa_cutoff=0):
    """
    kappa_filter is in pixels
    """
    gamma_plot, Ngal, RArange_g, DECrange_g = get_gamma_vector(
        catalog_file, dtheta=2.0, remove_z_problem=remove_z_problem)

    # get a square grid for the kappa measurement
    NRA = NDEC = Npix

    RAmin = RArange_g[0]
    RAmax = RArange_g[-1]
    DECmin = DECrange_g[0]
    DECmax = DECrange_g[-1]

    dtheta = (RAmax - RAmin) * 1. / NRA * 60

    # DEC range is smaller than RA range: make half the
    #  zeros on the bottom
    DECmin -= 0.5 * (DECmin + NDEC * dtheta / 60. - DECmax)
    DECmax = DECmin + NDEC * dtheta / 60.

    # get the shear realization
    gamma, Ngal, RArange, DECrange = get_gamma_vector(
        catalog_file,
        dtheta,
        RAmin,
        DECmin,
        NRA,
        NDEC + 1,
        remove_z_problem=remove_z_problem)

    kappa = gamma_to_kappa(gamma.T, dtheta)

    if kappa_filter:
        kappa = filters.gaussian_filter(kappa.real, kappa_filter) \
                + 1j * filters.gaussian_filter(kappa.imag, kappa_filter)

    if kappa_cutoff is not None:
        kappa[np.where(kappa < kappa_cutoff)] = kappa_cutoff

    pylab.figure(figsize=(10, 8))
    pylab.imshow(kappa.real.T,
                 origin='lower',
                 cmap=BkBuW(1.0),
                 extent=(RAmin, RAmax, DECmin, DECmax))
    pylab.xlim(pylab.xlim()[::-1])
    pylab.title('COSMOS convergence map: Kaiser-Squires')
    pylab.colorbar().set_label(r'$\kappa\ \mathrm{(E-mode)}$')

    #conjugate gamma: we're flipping the x-axis
    whiskerplot(gamma_plot.conj(), RArange_g, DECrange_g, color='w')
    pylab.ylim(DECmin, 2.9)
Example #2
0
def plot_shear(catalog_file, dtheta):
    gamma, Ngal, RArange, DECrange = get_gamma_vector(
        catalog_file, dtheta, remove_z_problem=False)
    
    pylab.imshow(Ngal.T, origin='lower',
                 cmap=BkBuW(0.8),
                 extent=(RArange[0], RArange[-1], DECrange[0], DECrange[-1]))
    pylab.xlim(pylab.xlim()[::-1])
    

    whiskerplot(gamma, RArange, DECrange, color='w')
Example #3
0
def plot_shear(catalog_file, dtheta):
    gamma, Ngal, RArange, DECrange = get_gamma_vector(catalog_file,
                                                      dtheta,
                                                      remove_z_problem=False)

    pylab.imshow(Ngal.T,
                 origin='lower',
                 cmap=BkBuW(0.8),
                 extent=(RArange[0], RArange[-1], DECrange[0], DECrange[-1]))
    pylab.xlim(pylab.xlim()[::-1])

    whiskerplot(gamma, RArange, DECrange, color='w')
Example #4
0
def plot_kappa_simple(catalog_file, remove_z_problem=False,
                      Npix=128, kappa_filter=4,
                      kappa_cutoff=0):
    """
    kappa_filter is in pixels
    """
    gamma_plot, Ngal, RArange_g, DECrange_g = get_gamma_vector(
        catalog_file, dtheta=2.0, remove_z_problem=remove_z_problem)
    
    # get a square grid for the kappa measurement
    NRA = NDEC = Npix
    
    RAmin = RArange_g[0]
    RAmax = RArange_g[-1]
    DECmin = DECrange_g[0]
    DECmax = DECrange_g[-1]

    dtheta = (RAmax-RAmin) * 1./NRA * 60

    # DEC range is smaller than RA range: make half the
    #  zeros on the bottom
    DECmin -= 0.5 * (DECmin + NDEC * dtheta/60. - DECmax)
    DECmax = DECmin + NDEC * dtheta/60.

    # get the shear realization
    gamma, Ngal, RArange, DECrange = get_gamma_vector(
        catalog_file, dtheta, RAmin, DECmin, NRA, NDEC+1,
        remove_z_problem=remove_z_problem)

    kappa = gamma_to_kappa(gamma.T, dtheta)

    if kappa_filter:
        kappa = filters.gaussian_filter(kappa.real, kappa_filter) \
                + 1j * filters.gaussian_filter(kappa.imag, kappa_filter)

    if kappa_cutoff is not None:
        kappa[np.where(kappa < kappa_cutoff)] = kappa_cutoff

    pylab.figure(figsize=(10,8))
    pylab.imshow(kappa.real.T,
                 origin='lower',
                 cmap=BkBuW(1.0),
                 extent=(RAmin, RAmax, DECmin, DECmax))
    pylab.xlim(pylab.xlim()[::-1])
    pylab.title('COSMOS convergence map: Kaiser-Squires')
    pylab.colorbar().set_label(r'$\kappa\ \mathrm{(E-mode)}$')
    

    #conjugate gamma: we're flipping the x-axis
    whiskerplot(gamma_plot.conj(), RArange_g, DECrange_g, color='w')
    pylab.ylim(DECmin, 2.9)
Example #5
0
def plot_reconstruction_2():
    nmodes=900
    alpha=0.15
    RAmin=11.5
    DECmin=36
    xlim=(15,45)
    ylim=(20,50)
    
    RAlim = (RAmin,RAmin+1)
    DEClim = (DECmin,DECmin+1)

    RAside = (RAlim[1]-RAlim[0])
    DECside = (DEClim[1]-DEClim[0])
    
    params.load('../run/base_params.dat')
    params.load('../run/params_sig0.1.dat')
    gamma_out_masked_1, noise = get_reconstruction(nmodes,
                                                 alpha,
                                                 True,
                                                 RAmin,
                                                 DECmin)
    gamma_out_unmasked_1, noise = get_reconstruction(nmodes,
                                                   alpha,
                                                   False,
                                                   RAmin,
                                                   DECmin)
    mask_1 = get_mask(False,RAlim,DEClim)
    
    params.load('../run/params_sig0.1_f0.35.dat')
    gamma_out_masked_2, noise = get_reconstruction(nmodes,
                                                 alpha,
                                                 True,
                                                 RAmin,
                                                 DECmin)
    mask_2 = get_mask(False,RAlim,DEClim)
    
    params.load('../run/params_sig0.1_f0.5.dat')
    gamma_out_masked_3, noise = get_reconstruction(nmodes,
                                                 alpha,
                                                 True,
                                                 RAmin,
                                                 DECmin)
    mask_3 = get_mask(False,RAlim,DEClim)

    offset = (RAmin,DECmin)
    dtheta = params.dtheta/60.
    
    xlim = (offset[0] + xlim[0]/60.,
            offset[0] + xlim[1]/60.)
    ylim = (offset[1] + ylim[0]/60.,
            offset[1] + ylim[1]/60.)

    extent=(offset[0],offset[0]+RAside,
            offset[1],offset[1]+DECside)
    
    #--------------------------------------------------
    pylab.figure(figsize=(8,8))
    ax = pylab.subplot(221)
    pylab.imshow(mask_1.T*0,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    whiskerplot(gamma_out_unmasked_1,dtheta,dtheta,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    #pylab.title(r'$\mathdefault{unmasked\ KL}$')
    #pylab.xlabel('')
    pylab.text(0.97,0.97,'no mask',
               transform = ax.transAxes,
               va = 'top',
               ha = 'right',
               bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #--------------------------------------------------
    ax = pylab.subplot(222)
    pylab.imshow(mask_1.T,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(gamma_out_masked_1,dtheta,dtheta,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    #pylab.title(r'$\mathdefault{masked\ KL}$')
    #pylab.xlabel('')
    pylab.ylabel('')
    pylab.text(0.97,0.97,'20% mask',
               transform = ax.transAxes,
               va = 'top',
               ha = 'right',
               bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #--------------------------------------------------
    ax = pylab.subplot(223)
    pylab.imshow(mask_2.T,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(gamma_out_masked_2,dtheta,dtheta,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    #pylab.title(r'$\mathdefault{masked\ KL}$')
    pylab.text(0.97,0.97,'35% mask',
               transform = ax.transAxes,
               va = 'top',
               ha = 'right',
               bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #--------------------------------------------------
    ax = pylab.subplot(224)
    pylab.imshow(mask_3.T,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(gamma_out_masked_3,dtheta,dtheta,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    #pylab.title(r'$\mathdefault{masked\ KL}$')
    pylab.ylabel('')
    pylab.text(0.97,0.97,'50% mask',
               transform = ax.transAxes,
               va = 'top',
               ha = 'right',
               bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))
    
    #--------------------------------------------------

    pylab.figtext(0.5,0.97,r'$\mathdefault{KL\ Reconstructions}$',
                  ha='center',va='top',
                  fontsize=16)
    pylab.figtext(0.5,0.94,r'$\mathdefault{n=900\ modes,\ \ n_{gal}=100/arcmin^2}$',
                  ha='center',va='top',
                  fontsize=14)
Example #6
0
def plot_with_mask_4(nmodes=900,
                     alpha=0.15,
                     RAmin = 10,
                     DECmin = 35,
                     xlim=(0,60),
                     ylim=(0,60),
                     plot_SN=False):
    RAlim = (RAmin,RAmin+1)
    DEClim = (DECmin,DECmin+1)
    
    gamma_out_masked, noise = get_reconstruction(nmodes,
                                                 alpha,
                                                 True,
                                                 RAmin,
                                                 DECmin)
    
    gamma_out_unmasked, noise = get_reconstruction(nmodes,
                                                   alpha,
                                                   False,
                                                   RAmin,
                                                   DECmin)
    

    if plot_SN:
        gamma_out_masked /= numpy.sqrt(noise_masked)
        gamma_out_unmasked /= numpy.sqrt(noise_unmasked)
    
    diff1 = gamma_out_masked-gamma_out_unmasked
    rms1 = numpy.sqrt(numpy.mean(abs(diff1[10:50,10:50])**2))
    
    mask = get_mask(False,RAlim,DEClim)

    gamma_true = get_from_parsed('gamma',RAlim=RAlim,DEClim=DEClim)
    
    diff2 = gamma_out_unmasked-gamma_true
    rms2 = numpy.sqrt(numpy.mean(abs(diff2[10:50,10:50])**2))
    
    diff3 = gamma_out_masked-gamma_true
    rms3 = numpy.sqrt(numpy.mean(abs(diff3[10:50,10:50])**2))

    assert gamma_out_unmasked.shape == gamma_true.shape

    dtheta = params.dtheta

    RAside = (RAlim[1]-RAlim[0])*60
    DECside = (DEClim[1]-DEClim[0])*60

    pylab.figure( figsize=(10,10) )
    #----------------------------------------
    
    pylab.subplot(221)
    pylab.imshow(mask.T*0,
                 origin='lower',
                 extent=(0,RAside,0,DECside),
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    pylab.clim(0,1)
    whiskerplot(gamma_true,params.dtheta,params.dtheta)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('shear field (noiseless)')

    #----------------------------------------

    pylab.subplot(222)
    pylab.imshow(mask.T*0,
                 origin='lower',
                 extent=(0,RAside,0,DECside),
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    pylab.clim(0,1)
    whiskerplot(gamma_true+noise,params.dtheta,params.dtheta)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('shear field (with noise)')

    #----------------------------------------
    
    pylab.subplot(223)
    pylab.imshow(mask.T*0,
                 origin='lower',
                 extent=(0,RAside,0,DECside),
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    pylab.clim(0,1)
    whiskerplot(gamma_out_unmasked,params.dtheta,params.dtheta)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('unmasked reconstruction')

    #----------------------------------------
    
    pylab.subplot(224)
    pylab.imshow(mask.T,
                 origin='lower',
                 extent=(0,RAside,0,DECside),
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(gamma_out_masked,params.dtheta,params.dtheta)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('masked reconstruction')

    #----------------------------------------
    
    print "%i %.2f %.4f %.4f %.4f" % (nmodes,alpha,rms1,rms2,rms3)
Example #7
0
def plot_with_mask_6_horiz(nmodes=900,
                           alpha=0.15,
                           RAmin = 10,
                           DECmin = 35,
                           xlim=(0,60),
                           ylim=(0,60),
                           plot_SN=False,
                           additional_n = [500,1500],
                           additional_a = [0.0,0.0] ):
    from six_squares import six_squares
    
    RAlim = (RAmin,RAmin+1)
    DEClim = (DECmin,DECmin+1)

    combine = 1
    if combine==1:
        scale = 5
    elif combine==2:
        scale = 4

    assert len(additional_n) == 2
    assert len(additional_a) == 2
    
    gamma_out_masked, noise = get_reconstruction(nmodes,
                                                 alpha,
                                                 True,
                                                 RAmin,
                                                 DECmin)
    
    gamma_out_unmasked, noise = get_reconstruction(nmodes,
                                                   alpha,
                                                   False,
                                                   RAmin,
                                                   DECmin)
    
    g1,n1 = get_reconstruction(additional_n[0],
                               additional_a[0],
                               True,
                               RAmin,
                               DECmin)
    
    g2,n2 = get_reconstruction(additional_n[1],
                               additional_a[1],
                               True,
                               RAmin,
                               DECmin)
                               

    if plot_SN:
        gamma_out_masked /= numpy.sqrt(noise_masked)
        gamma_out_unmasked /= numpy.sqrt(noise_unmasked)
        g1 /= numpy.sqrt(n1)
        g2 /= numpy.sqrt(n2)

    
    diff1 = gamma_out_masked-gamma_out_unmasked
    rms1 = numpy.sqrt(numpy.mean(abs(diff1[10:50,10:50])**2))
    
    mask = get_mask(False,RAlim,DEClim)

    gamma_true = get_from_parsed('gamma',RAlim=RAlim,DEClim=DEClim)
    
    diff2 = gamma_out_unmasked-gamma_true
    rms2 = numpy.sqrt(numpy.mean(abs(diff2[10:50,10:50])**2))
    
    diff3 = gamma_out_masked-gamma_true
    rms3 = numpy.sqrt(numpy.mean(abs(diff3[10:50,10:50])**2))

    assert gamma_out_unmasked.shape == gamma_true.shape

    dtheta = params.dtheta/60.

    RAside = (RAlim[1]-RAlim[0])
    DECside = (DEClim[1]-DEClim[0])

    #pylab.figure( figsize=(10,8) )
    ax_list = six_squares(11,8)

    offset = (RAmin,DECmin)
    dtheta = params.dtheta/60.
    
    xlim = (offset[0] + xlim[0]/60.,
            offset[0] + xlim[1]/60.)
    ylim = (offset[1] + ylim[0]/60.,
            offset[1] + ylim[1]/60.)

    extent=(offset[0],offset[0]+RAside,
            offset[1],offset[1]+DECside)

    #----------------------------------------

    ax = ax_list[0]
    pylab.sca(ax)
    #ax = pylab.subplot(231)
    pylab.imshow(mask.T*0,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    pylab.clim(0,1)
    whiskerplot(gamma_true,dtheta,dtheta,
                combine=combine,scale=scale,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('shear field (noiseless)')
    pylab.xlabel('')
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #----------------------------------------
 
    ax = ax_list[1]
    pylab.sca(ax)
    #ax = pylab.subplot(232)
    pylab.imshow(mask.T*0,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    pylab.clim(0,1)
    whiskerplot(gamma_true+noise,dtheta,dtheta,
                combine=combine,scale=scale,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('shear field (with noise)')
    pylab.xlabel('')
    pylab.ylabel('')
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #----------------------------------------
    
    ax = ax_list[2]
    pylab.sca(ax)
    #ax = pylab.subplot(233)
    pylab.imshow(mask.T*0,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=pylab.cm.binary)
    pylab.clim(0,1)
    whiskerplot(gamma_out_unmasked,dtheta,dtheta,
                combine=combine,scale=scale,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title('unmasked KL (n=%i)' % nmodes)
    pylab.xlabel('')
    pylab.ylabel('')
    #pylab.text(0.97,0.97,'n=%i' % nmodes,
    #           transform = pylab.gca().transAxes,
    #           va = 'top',
    #           ha = 'right',
    #           bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #----------------------------------------
    
    ax = ax_list[3]
    pylab.sca(ax)
    #ax = pylab.subplot(234)
    pylab.imshow(mask.T,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(g1,dtheta,dtheta,
                combine=combine,scale=scale,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title(r'$\mathdefault{masked\ KL\ (n=%i)}$' % additional_n[0])
    #pylab.text(0.97,0.97,'n=%i' % additional_n[0],
    #           transform = pylab.gca().transAxes,
    #           va = 'top',
    #           ha = 'right',
    #           bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #----------------------------------------
    
    ax = ax_list[4]
    pylab.sca(ax)
    #ax = pylab.subplot(235)
    pylab.imshow(mask.T,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(gamma_out_masked,dtheta,dtheta,
                combine=combine,scale=scale,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title(r'$\mathdefault{masked\ KL\ (n=%i)}$' % nmodes)
    pylab.ylabel('')
    #pylab.text(0.97,0.97,'n=%i' % nmodes,
    #           transform = pylab.gca().transAxes,
    #           va = 'top',
    #           ha = 'right',
    #           bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #----------------------------------------
    
    ax = ax_list[5]
    pylab.sca(ax)
    #ax = pylab.subplot(236)
    pylab.imshow(mask.T,
                 origin='lower',
                 extent=extent,
                 interpolation='nearest',
                 cmap=GreyWhite)
    pylab.clim(0,1)
    whiskerplot(g2,dtheta,dtheta,
                combine=combine,scale=scale,offset=offset)
    pylab.xlim(xlim)
    pylab.ylim(ylim)
    pylab.title(r'$\mathdefault{masked\ KL\ (n=%i)}$' % additional_n[1])
    pylab.ylabel('')
    #pylab.text(0.97,0.97,'n=%i' % additional_n[1],
    #           transform = pylab.gca().transAxes,
    #           va = 'top',
    #           ha = 'right',
    #           bbox=dict(facecolor='w',edgecolor='w') )
    ax.xaxis.set_major_locator(MultipleLocator(0.2))
    ax.yaxis.set_major_locator(MultipleLocator(0.2))

    #----------------------------------------

    pylab.suptitle(r'$\mathdefault{Reconstructions\ with\ n_{gal}=20/arcmin^2}$',
                   fontsize=16)