[yt-users] YTSphereTooSmall

Geoffrey So gsiisg at gmail.com
Tue May 22 15:49:27 PDT 2012


I get this behavior when I was trying to compare the sphere stuff with my
ellipsoid mod, I sometimes get spheres that are bigger than the cell yet
raise the exception
YTSphereTooSmall.

In my script I print out the sphere's radius, virial radius
(halo.maximum_radius(), halo.virial_radius()) and halo number (halo.id),
and prints out a smaller than cell warning and return 0 for all attributes
when it raises the YTSphereTooSmall exception:

halo 5 radius 1.5050650880000000e-02 virial radius 1.2055938905417463e-03
smaller than cell on core 5
halo 4 has max radius 1.2223814100000001e-02 virial radius
5.3953301266098522e-03
halo 2 has max radius 1.9527046860000001e-02 virial radius
4.1620297341626667e-03
halo 3 has max radius 1.0534633139999999e-02 virial radius
5.3662327185065445e-03
halo 1 has max radius 1.8385822579999999e-02 virial radius
4.6616257644500492e-03
halo 0 has max radius 2.7329332320000000e-02 virial radius
6.9309345140911253e-03

Since this is a unigrid run with no AMR, the check in data_objects.py
should be the same self.hierarchy.get_smallest_dx()
if radius < self.hierarchy.get_smallest_dx():
            raise YTSphereTooSmall(pf, radius,
self.hierarchy.get_smallest_dx())

The resolution is 800 cube so 1/800 dx should be 1.25e-03.  The only thing
smaller than 1.25e-03 is the virial radius of halo 5, but the halo sphere
object was obtained using halo.get_sphere() which according to the Doc page
uses the maximum_radius() by default.  So it looks like the sphere has a
radius from maximum_radius(), but during the check to see if "radius" is
too small, it is using the virial radius instead.  Is this something
intended?

From
G.S.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-users-spacepope.org/attachments/20120522/f5483282/attachment.htm>


More information about the yt-users mailing list