Source

yt.geometry_tests / sphere_grid.py

import time
from yt.mods import *
from yt.geometry.selection_routines import SphereSelector
from yt.data_objects.selection_data_containers import YTSphereBase

class Dummy(object):
    radius = 0.1
    center = [0.5, 0.5, 0.5]

ii = Dummy()


sps = SphereSelector(ii)
pf = load("DD0039/output_0039")

spp = YTSphereBase([0.5, 0.5, 0.5], 0.1, pf=pf)
spp._get_list_of_grids()

gi = sps.select_grids(pf.h.grid_left_edge, pf.h.grid_right_edge)
print gi.sum(),
print gi.sum() / float(len(spp._grids))

pb = get_pbar("Counting", gi.sum())
scount = icount = 0
for i,g in enumerate(pf.h.grids[gi]):
    pb.update(i)
    scount += sps.count_cells(g)
    icount += spp._get_point_indices(g)[0].size
pb.finish()
print scount, icount