cleaned up survey volume calculations. now uses correct z range, which corrects mean tracer separation estimation

This commit is contained in:
Paul M. Sutter 2025-04-22 20:02:30 -04:00
parent cee027a759
commit 1b4751958f
4 changed files with 20 additions and 28 deletions

View file

@ -115,10 +115,8 @@ def launchPrep(sample, binPath, workDir=None, inputDataDir=None,
# compute mean particle separation # compute mean particle separation
log.write("\nFlagging edge galaxies.\n") log.write("\nFlagging edge galaxies.\n")
(boxVol, nbar) = getSurveyProps(sample.maskFile, sample.zRange[0], (boxVol, nbar) = getSurveyProps(sample)
sample.zRange[1], sample.zRange[0], sample.zRange[1], "all",
sample.omegaM, useComoving=useComoving)
numTracers = int(open("total_particles.txt", "r").read()) numTracers = int(open("total_particles.txt", "r").read())
sample.meanPartSep = (1.*numTracers/boxVol/nbar)**(-1/3.) sample.meanPartSep = (1.*numTracers/boxVol/nbar)**(-1/3.)
@ -153,9 +151,7 @@ def launchPrep(sample, binPath, workDir=None, inputDataDir=None,
# compute mean particle separation # compute mean particle separation
# TODO - clean up this duplicate to cover all continueRun options # TODO - clean up this duplicate to cover all continueRun options
(boxVol, nbar) = getSurveyProps(sample.maskFile, sample.zRange[0], (boxVol, nbar) = getSurveyProps(sample)
sample.zRange[1], sample.zRange[0], sample.zRange[1], "all",
sample.omegaM, useComoving=useComoving)
numTracers = int(open("total_particles.txt", "r").read()) numTracers = int(open("total_particles.txt", "r").read())
sample.meanPartSep = (1.*numTracers/boxVol/nbar)**(-1/3.) sample.meanPartSep = (1.*numTracers/boxVol/nbar)**(-1/3.)

View file

@ -30,11 +30,17 @@ from backend.cosmologyTools import *
__all__=['getSurveyProps', 'getNside', 'figureOutMask', 'findEdgeGalaxies'] __all__=['getSurveyProps', 'getNside', 'figureOutMask', 'findEdgeGalaxies']
# ----------------------------------------------------------------------------- # -----------------------------------------------------------------------------
# returns the volume and galaxy density for a given redshit slice # returns the survey volume and scaled galaxy density for a given redshit slice
def getSurveyProps(maskFile, zmin, zmax, selFunMin, selFunMax, portion, def getSurveyProps(sample):
omegaM, selectionFuncFile=None, useComoving=False):
#LIGHT_SPEED = 299792.458 maskFile = sample.maskFile
zmin = sample.zBoundary[0]
zmax = sample.zBoundary[1]
selFunMin = sample.zBoundary[0]
selFunMax = sample.zBoundary[1]
omegaM = sample.omegaM
selectionFuncFile = sample.selFunFile
useComoving = sample.useComoving
mask = healpy.read_map(maskFile) mask = healpy.read_map(maskFile)
area = (1.*np.size(np.where(mask > 0)) / np.size(mask)) * 4.*np.pi area = (1.*np.size(np.where(mask > 0)) / np.size(mask)) * 4.*np.pi

View file

@ -169,14 +169,9 @@ def getVolNorm(sampleDir):
else: else:
maskFile = sampleDir+"/"+os.path.basename(sample.maskFile) maskFile = sampleDir+"/"+os.path.basename(sample.maskFile)
print("Using maskfile found in: " + maskFile) print("Using maskfile found in: " + maskFile)
props = getSurveyProps(maskFile, sample.zBoundary[0],
sample.zBoundary[1],
sample.zBoundary[0], props = getSurveyProps(sample)
sample.zBoundary[1],
"all",
sample.omegaM,
selectionFuncFile=sample.selFunFile,
useComoving=sample.useComoving)
surveyVol = props[0] surveyVol = props[0]
volNormObs = nGal/surveyVol volNormObs = nGal/surveyVol

View file

@ -80,12 +80,7 @@ def plotNumberFunction(catalogList,
if sample.dataType == "observation": if sample.dataType == "observation":
maskFile = sample.maskFile maskFile = sample.maskFile
boxVol = sp.getSurveyProps(sample)[0]
boxVol = sp.getSurveyProps(maskFile,
sample.zBoundary[0], sample.zBoundary[1],
sample.zRange[0], sample.zRange[1], "all",
selectionFuncFile=sample.selFunFile,
omegaM=sample.omegaM)[0]
else: else:
boxVol = sample.boxLen*sample.boxLen*(sample.zBoundaryMpc[1] - boxVol = sample.boxLen*sample.boxLen*(sample.zBoundaryMpc[1] -
sample.zBoundaryMpc[0]) sample.zBoundaryMpc[0])
@ -110,7 +105,7 @@ def plotNumberFunction(catalogList,
lowerbound = hist - sig lowerbound = hist - sig
upperbound = hist + sig upperbound = hist + sig
mean = np.log10(hist/boxVol) mean = np.log10(hist/boxVol)
lowerbound = np.log10(lowerbound/boxVol) lowerbound = np.log10(lowerbound/boxVol)
upperbound = np.log10(upperbound/boxVol) upperbound = np.log10(upperbound/boxVol)
@ -137,8 +132,8 @@ def plotNumberFunction(catalogList,
linewidth=3) linewidth=3)
distList.append((binCentersToUse, mean, lower, upper)) distList.append((binCentersToUse, mean, lower, upper))
plt.legend(loc = "upper right", fancybox=True, prop={'size':14}) plt.legend(loc = "lower left", fancybox=True, prop={'size':14})
plt.savefig(figDir+"/fig_"+plotName+".pdf", bbox_inches="tight") plt.savefig(figDir+"/fig_"+plotName+".pdf", bbox_inches="tight")
#plt.savefig(figDir+"/fig_"+plotName+".eps", bbox_inches="tight") #plt.savefig(figDir+"/fig_"+plotName+".eps", bbox_inches="tight")