bug fixes

This commit is contained in:
P.M. Sutter 2014-05-09 12:01:59 -05:00
parent 4cf0ec1173
commit 39e16d41ff
6 changed files with 103 additions and 102 deletions

View file

@ -31,7 +31,7 @@ setup(
cmdclass = {'build_ext': build_ext}, cmdclass = {'build_ext': build_ext},
include_dirs = [np.get_include()], include_dirs = [np.get_include()],
packages= packages=
['void_python_tools','void_python_tools.backend','void_python_tools.apTools', 'void_python_tools.xcor', 'void_python_tools.voidUtil', ['void_python_tools','void_python_tools.backend','void_python_tools.apTools', 'void_python_tools.voidUtil',
'void_python_tools.apTools.profiles','void_python_tools.apTools.chi2',], 'void_python_tools.apTools.profiles','void_python_tools.apTools.chi2',],
#ext_modules = [Extension("void_python_tools.chi2.velocityProfileFitNative", ["void_python_tools/chi2/velocityProfileFitNative.pyx"], libraries=["gsl", "gslcblas"]), Extension("void_python_tools.chi2.likelihoo", ["void_python_tools/chi2/likelihood.pyx"], libraries=["gsl", "gslcblas"])] #ext_modules = [Extension("void_python_tools.chi2.velocityProfileFitNative", ["void_python_tools/chi2/velocityProfileFitNative.pyx"], libraries=["gsl", "gslcblas"]), Extension("void_python_tools.chi2.likelihoo", ["void_python_tools/chi2/likelihood.pyx"], libraries=["gsl", "gslcblas"])]
#ext_modules = [ #ext_modules = [

View file

@ -269,7 +269,7 @@ def loadVoidCatalog(sampleDir, dataPortion="central", loadPart=True):
densCon = line[9], densCon = line[9],
voidProb = line[10], voidProb = line[10],
radius = pow(line[7]/volNorm*3./4./np.pi, 1./3.), radius = pow(line[7]/volNorm*3./4./np.pi, 1./3.),
barycenter = np.zeros((3)) barycenter = np.zeros((3)),
parentID = 0, parentID = 0,
treeLevel = 0, treeLevel = 0,
numChildren = 0, numChildren = 0,

View file

@ -32,7 +32,7 @@ def compareCatalogs(baseCatalogDir, compareCatalogDir,
outputDir="./", logDir="./", outputDir="./", logDir="./",
matchMethod="useID", dataPortion="central", matchMethod="useID", dataPortion="central",
strictMatch=True, strictMatch=True,
pathToCTools="../../../c_tools") pathToCTools="../../../c_tools"):
# reports the overlap between two void catalogs # reports the overlap between two void catalogs
# baseCatalogDir: directory of catalog 1 # baseCatalogDir: directory of catalog 1
@ -44,36 +44,37 @@ def compareCatalogs(baseCatalogDir, compareCatalogDir,
# strictMatch: if True, only attempt to match to trimmed catalog # strictMatch: if True, only attempt to match to trimmed catalog
# pathToCTools: path to location of VIDE c_tools directory # pathToCTools: path to location of VIDE c_tools directory
if not os.access(outputDir, os.F_OK): if not os.access(outputDir, os.F_OK):
os.makedirs(outputDir) os.makedirs(outputDir)
if not os.access(logDir, os.F_OK): if not os.access(logDir, os.F_OK):
os.makedirs(logDir) os.makedirs(logDir)
outFileName = outputDir + "/" + "voidOverlap" #+ ".dat" outFileName = outputDir + "/" + "voidOverlap" #+ ".dat"
with open(baseCatalogDir+"/sample_info.dat", 'rb') as input: with open(baseCatalogDir+"/sample_info.dat", 'rb') as input:
baseSample = pickle.load(input) baseSample = pickle.load(input)
with open(compareCatalogDir+"/sample_info.dat", 'rb') as input: with open(compareCatalogDir+"/sample_info.dat", 'rb') as input:
sample = pickle.load(input) sample = pickle.load(input)
print " Comparing", baseSample.fullName, "to", sample.fullName, "...", print " Comparing", baseSample.fullName, "to", sample.fullName, "...",
sys.stdout.flush() sys.stdout.flush()
sampleName = sample.fullName sampleName = sample.fullName
binPath = pathToCTools+"/analysis/voidOverlap" binPath = pathToCTools+"/analysis/voidOverlap"
logFile = logDir+"/compare_"+baseSample.fullName+"_"+sampleName+".out" logFile = logDir+"/compare_"+baseSample.fullName+"_"+sampleName+".out"
stepOutputFileName = outFileName + "_" + baseSample.fullName + "_" + \ stepOutputFileName = outFileName + "_" + baseSample.fullName + "_" + \
sampleName + "_" sampleName + "_"
launchVoidOverlap(baseSample, sample, baseCatalogDir, launchVoidOverlap(baseSample, sample, baseCatalogDir,
compareCatalogDir, binPath, compareCatalogDir, binPath,
thisDataPortion=dataPortion, logFile=logFile, thisDataPortion=dataPortion, logFile=logFile,
continueRun=False, workDir=workDir, continueRun=False, workDir=workDir,
outputFile=stepOutputFileName, outputFile=stepOutputFileName,
matchMethod=matchMethod, matchMethod=matchMethod,
strictMatch=strictMatch) strictMatch=strictMatch)
print " Done!" print " Done!"
return

View file

@ -43,68 +43,68 @@ def plotNumberFunction(catalogList, figDir="./",
plotName="numberfunc", plotName="numberfunc",
dataPortion="central"): dataPortion="central"):
print "Plotting number function" print "Plotting number function"
plt.clf()
plt.xlabel("$R_{eff}$ [$h^{-1}Mpc$]", fontsize=14)
plt.ylabel(r"log ($n$ (> R) [$h^3$ Gpc$^{-3}$])", fontsize=14)
for (iSample,catalog) in enumerate(catalogList):
sample = catalog.sampleInfo
data = catalog.voids[:].radius
if sample.dataType == "observation":
maskFile = sample.maskFile
boxVol = vp.getSurveyProps(maskFile,
sample.zBoundary[0], sample.zBoundary[1],
sample.zRange[0], sample.zRange[1], "all",
selectionFuncFile=None)[0]
#selectionFuncFile=sample.selFunFile)[0]
boxVol *= obsFudgeFactor
else:
boxVol = sample.boxLen*sample.boxLen*(sample.zBoundaryMpc[1] -
sample.zBoundaryMpc[0])
boxVol *= 1.e-9 # Mpc->Gpc
bins = args.xmax/5.
hist, binEdges = np.histogram(data, bins=bins, range=(0., 100.))
binCenters = 0.5*(binEdges[1:] + binEdges[:-1])
nvoids = len(data)
var = hist * (1. - hist/nvoids)
sig = np.sqrt(var)
lowerbound = hist - sig
upperbound = hist + sig
mean = np.log10(hist/boxVol)
lowerbound = np.log10(lowerbound/boxVol)
upperbound = np.log10(upperbound/boxVol)
lineColor = colorList[iSample]
lineTitle = sample.fullName
trim = (bounds[0] > .01) plt.clf()
mean = mean[trim] plt.xlabel("$R_{eff}$ [$h^{-1}Mpc$]", fontsize=14)
binCentersToUse = binCenters[trim] plt.ylabel(r"log ($n$ (> R) [$h^3$ Gpc$^{-3}$])", fontsize=14)
lower = lowerbound[trim]
upper = upperbound[trim] for (iSample,catalog) in enumerate(catalogList):
sample = catalog.sampleInfo
alpha = 0.55 data = catalog.voids[:].radius
fill_between(binCentersToUse, lower, upper,
label=lineTitle, color=lineColor, if sample.dataType == "observation":
alpha=alpha, maskFile = sample.maskFile
)
boxVol = vp.getSurveyProps(maskFile,
lineStyle = '-' sample.zBoundary[0], sample.zBoundary[1],
plt.plot(binCentersToUse, mean, lineStyle, sample.zRange[0], sample.zRange[1], "all",
color=lineColor, selectionFuncFile=None)[0]
linewidth=3) #selectionFuncFile=sample.selFunFile)[0]
boxVol *= obsFudgeFactor
plt.legend(loc = "upper right", fancybox=True, prop={'size':14}) else:
boxVol = sample.boxLen*sample.boxLen*(sample.zBoundaryMpc[1] -
plt.savefig(figDir+"/fig_"+plotName+".pdf", bbox_inches="tight") sample.zBoundaryMpc[0])
plt.savefig(figDir+"/fig_"+plotName+".eps", bbox_inches="tight")
plt.savefig(figDir+"/fig_"+plotName+".png", bbox_inches="tight") boxVol *= 1.e-9 # Mpc->Gpc
bins = args.xmax/5.
hist, binEdges = np.histogram(data, bins=bins, range=(0., 100.))
binCenters = 0.5*(binEdges[1:] + binEdges[:-1])
nvoids = len(data)
var = hist * (1. - hist/nvoids)
sig = np.sqrt(var)
lowerbound = hist - sig
upperbound = hist + sig
mean = np.log10(hist/boxVol)
lowerbound = np.log10(lowerbound/boxVol)
upperbound = np.log10(upperbound/boxVol)
lineColor = colorList[iSample]
lineTitle = sample.fullName
trim = (bounds[0] > .01)
mean = mean[trim]
binCentersToUse = binCenters[trim]
lower = lowerbound[trim]
upper = upperbound[trim]
alpha = 0.55
fill_between(binCentersToUse, lower, upper,
label=lineTitle, color=lineColor,
alpha=alpha,
)
lineStyle = '-'
plt.plot(binCentersToUse, mean, lineStyle,
color=lineColor,
linewidth=3)
plt.legend(loc = "upper right", fancybox=True, prop={'size':14})
plt.savefig(figDir+"/fig_"+plotName+".pdf", bbox_inches="tight")
plt.savefig(figDir+"/fig_"+plotName+".eps", bbox_inches="tight")
plt.savefig(figDir+"/fig_"+plotName+".png", bbox_inches="tight")

View file

@ -94,7 +94,7 @@ def fitHSWProfile(radii, densities, sigmas):
# pcov: covariance matrix # pcov: covariance matrix
popt, pcov = curve_fit(HamausProfile, radii, densities, popt, pcov = curve_fit(HamausProfile, radii, densities,
sigma=sigmas) sigma=sigmas,
maxfev=10000, xtol=5.e-3, maxfev=10000, xtol=5.e-3,
p0=[1.0,-1.0]) p0=[1.0,-1.0])

View file

@ -61,7 +61,7 @@ def computeCrossCor(catalogDir,
outputDir="./", logDir="./", outputDir="./", logDir="./",
matchMethod="useID", dataPortion="central", matchMethod="useID", dataPortion="central",
strictMatch=True, strictMatch=True,
pathToCTools="../../../c_tools") pathToCTools="../../../c_tools"):
# Computes void-void and void-matter(galaxy) correlations # Computes void-void and void-matter(galaxy) correlations
# baseCatalogDir: directory of catalog # baseCatalogDir: directory of catalog