bug fixed for filtering catalog

This commit is contained in:
P.M. Sutter 2014-05-13 07:13:04 -05:00
parent 9b5961aca4
commit 76ea3567c8
4 changed files with 10 additions and 11 deletions

View file

@ -308,7 +308,7 @@ def loadVoidCatalog(sampleDir, dataPortion="central", loadParticles=True,
volNorm = getVolNorm(sampleDir)
catalog.volNorm = volNorm
if unfiltered:
if untrimmed:
prefix = "untrimmed_"
else:
prefix = ""
@ -467,20 +467,21 @@ def getVoidPart(catalog, voidID):
# -----------------------------------------------------------------------------
def filterVoidsOnSize(catalog, rMin):
catalog.voids = catalog.voids[ catalog.voids[:].radius >= rMin ]
catalog.voids = [v for v in catalog.voids if v.radius >= rMin]
return catalog
# -----------------------------------------------------------------------------
def filterVoidsOnTreeLevel(catalog, level):
catalog.voids = catalog.voids[ catalog.voids[:].treeLevel == level ]
catalog.voids = [v for v in catalog.voids if v.treeLevel == level]
if level == -1:
catalog.voids = catalog.voids[ catalog.voids[:].numChildren == 0 ]
catalog.voids = [v for v in catalog.voids if v.numChildren == 0]
return catalog
# -----------------------------------------------------------------------------
def filterVoidsOnCentralDen(catalog, maxCentralDen):
catalog.voids = catalog.voids[ catalog.voids[:].centralDen <= maxCentralDen ]
catalog.voids = [v for v in catalog.voids if v.centralDen <= maxCentralDen]
return catalog

View file

@ -25,7 +25,7 @@ import numpy as np
import os
import pylab as plt
import void_python_tools.apTools as vp
from void_python_tools.voidUtil import getVoidArray
from void_python_tools.voidUtil import getArray
def fill_between(x, y1, y2=0, ax=None, **kwargs):
"""Plot filled region between `y1` and `y2`.
@ -52,8 +52,7 @@ def plotNumberFunction(catalogList, figDir="./",
for (iSample,catalog) in enumerate(catalogList):
sample = catalog.sampleInfo
data = getVoidArray(catalog, 'radius')
#data = np.fromiter((v.radius for v in catalog.voids[:]), float)
data = getArray(catalog.voids, 'radius')
if sample.dataType == "observation":
maskFile = sample.maskFile

View file

@ -55,8 +55,7 @@ def buildProfile(catalog, rMin, rMax):
partTree = getPartTree(catalog)
print " Selecting voids to stack..."
accepted = (catalog.voids[:].radius > rMin) & (catalog.voids[:].radius < rMax)
voidsToStack = catalog.voids[accepted]
voidsToStack = [v for v in catalog.voids if (v.radius > rMin and v.radius < rMax)]
print " Stacking voids..."
allProfiles = []

View file

@ -25,7 +25,7 @@ def computeXcor(catalog,
# Input particle arrays of shape (N,3)
xm = catalog.partPos # Halos / Galaxies / Dark matter
xv = catalog.voids[:].barycenter # Voids
xv = getArray(catalog.voids, 'barycenter')
# Interpolate to mesh