def RR_histogram(X,Y,Xr,Yr,distance,th_min,th_max,theta_bins,cat_number=3): n_points=len(X) #Xmin=1.0*np.floor( np.amin(X) ) #Xmax=1.0*np.ceil( np.amax(X) ) #Ymin=1.0*np.floor( np.amin(Y) ) #Ymax=1.0*np.ceil( np.amax(Y) ) #Xr= Xmin + ( Xmax - Xmin )*np.random.random_sample(n_points*cat_number) #Yr=Ymin + ( Ymax - Ymin )*np.random.random_sample(n_points*cat_number) d_arr=[] for m in range(cat_number): print "random cat=",m for i in range(n_points): for j in range(i+1,n_points): d=(Xr[i + n_points*m ] - Xr[j + n_points*m ])*(Xr[i + n_points*m ] - Xr[j + n_points*m ]) + (Yr[i + n_points*m ] - Yr[j + n_points*m ])*(Yr[i + n_points*m ] - Yr[j + n_points*m ]) d=np.sqrt(d)/distance d_arr=np.append(d_arr,d) theta=206265*d_arr RR,bins=np.histogram(theta,bins=theta_bins, range=(th_min,th_max)) N=1.0*n_points*(1.0*n_points-1.0)/2.0 N=N*cat_number RR=RR/N return RR,bins
def DR_histogram(X,Y,Xr,Yr,distance,th_min,th_max,theta_bins,cat_number=3): n_points=len(X) #Xmin=1.0*np.floor( np.amin(X) ) #Xmax=1.0*np.ceil( np.amax(X) ) #Ymin=1.0*np.floor( np.amin(Y) ) #Ymax=1.0*np.ceil( np.amax(Y) ) #Xr= Xmin + ( Xmax - Xmin )*np.random.random_sample(n_points*cat_number) #Yr=Ymin + ( Ymax - Ymin )*np.random.random_sample(n_points*cat_number) d_arr=[] print "number of LAEs=" + str(n_points) for m in range(cat_number): for i in range(n_points): if(i%100==0): print "LAE_"+str(i) for j in range(n_points): d=( X[i] - Xr[j + n_points*m] )*( X[i] - Xr[j + n_points*m] ) + ( Y[i] - Yr[j + n_points*m] )*( Y[i] - Yr[j + n_points*m] ) d=np.sqrt(d)/distance d_arr=np.append(d_arr,d) theta=206265*d_arr DR,bins=np.histogram(theta,bins=theta_bins, range=(th_min,th_max)) N=1.0*n_points*(n_points) N=(N*cat_number) DR=DR/N return DR,bins
def DD_histogram(X,Y,distance,th_min,th_max,theta_bins): n_points=len(X) d_arr=[] print "number of LAEs=" + str(n_points) for i in range(n_points): if(i%100==0): print "LAE_"+str(i) for j in range(i+1,n_points): d=(X[i] - X[j])*(X[i] - X[j]) + (Y[i] - Y[j])*(Y[i] - Y[j]) d=np.sqrt(d)/distance d_arr=np.append(d_arr,d) theta=206265.0*d_arr DD,bins=np.histogram(theta,bins=theta_bins, range=(th_min,th_max)) N=1.0*n_points*(1.0*n_points-1.0)/2.0 DD=DD/N return DD,bins