
HI all, Can someone remind me why we need the strict and unstrict region objects? The strict ones select by cell center, the unstrict by any intersection. I seem to recall a concrete use case but I can't dredge it up. Additionally, if we are actually checking for periodicity, it seems to me we have no need for non-periodic regions, right? We just coalesce into a single rectangular prism object that, if appropriate for the simulation, wraps around? -Matt

Matt,
Can someone remind me why we need the strict and unstrict region objects? The strict ones select by cell center, the unstrict by any intersection. I seem to recall a concrete use case but I can't dredge it up.
If memory serves, it was such that particles are chosen strictly for the halo finders. Does that sound right?
Additionally, if we are actually checking for periodicity, it seems to me we have no need for non-periodic regions, right? We just coalesce into a single rectangular prism object that, if appropriate for the simulation, wraps around?
Sounds good to me. -- Stephen Skory s@skory.us http://stephenskory.com/ 510.621.3687 (google voice)

On Fri, Feb 3, 2012 at 3:46 PM, Stephen Skory <s@skory.us> wrote:
Matt,
Can someone remind me why we need the strict and unstrict region objects? The strict ones select by cell center, the unstrict by any intersection. I seem to recall a concrete use case but I can't dredge it up.
If memory serves, it was such that particles are chosen strictly for the halo finders. Does that sound right?
So a better question, I suppose, is why do we have an *un*strict region? Should we be doing unstrict for all of our data objects? i.e., if a sphere intersects a cell but doesn't hit the corner, do we select that cell?
Additionally, if we are actually checking for periodicity, it seems to me we have no need for non-periodic regions, right? We just coalesce into a single rectangular prism object that, if appropriate for the simulation, wraps around?
Sounds good to me.
Cool. -Matt
-- Stephen Skory s@skory.us http://stephenskory.com/ 510.621.3687 (google voice) _______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org

So a better question, I suppose, is why do we have an *un*strict region? Should we be doing unstrict for all of our data objects? i.e., if a sphere intersects a cell but doesn't hit the corner, do we select that cell?
I would say that if the center of the cell is inside the sphere, include it. I think anything more complicated won't be any better, but more difficult. -- Stephen Skory s@skory.us http://stephenskory.com/ 510.621.3687 (google voice)

Center would be better I agree, checking if all edges is just multiplying the same calculation by 8. From G.S. On Fri, Feb 3, 2012 at 1:01 PM, Stephen Skory <s@skory.us> wrote:
So a better question, I suppose, is why do we have an *un*strict region? Should we be doing unstrict for all of our data objects? i.e., if a sphere intersects a cell but doesn't hit the corner, do we select that cell?
I would say that if the center of the cell is inside the sphere, include it. I think anything more complicated won't be any better, but more difficult.
-- Stephen Skory s@skory.us http://stephenskory.com/ 510.621.3687 (google voice) _______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org

Hi Geoffrey and all, Including cells if just a piece of them is inside the region does not really change the computation time. It's just a matter of adding or subtracting dx/2 when considering a given cell. The difference between the two options is mostly academic, I think. I would say it's more important to stick to a consistent definition for all data containers. How are spheres and disks treated? Is it only cell centers there? If so, let's stick with that. Britton On Fri, Feb 3, 2012 at 4:20 PM, Geoffrey So <gsiisg@gmail.com> wrote:
Center would be better I agree, checking if all edges is just multiplying the same calculation by 8.
From G.S.
On Fri, Feb 3, 2012 at 1:01 PM, Stephen Skory <s@skory.us> wrote:
So a better question, I suppose, is why do we have an *un*strict region? Should we be doing unstrict for all of our data objects? i.e., if a sphere intersects a cell but doesn't hit the corner, do we select that cell?
I would say that if the center of the cell is inside the sphere, include it. I think anything more complicated won't be any better, but more difficult.
-- Stephen Skory s@skory.us http://stephenskory.com/ 510.621.3687 (google voice) _______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
_______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org

Hi Britton, On Fri, Feb 3, 2012 at 4:27 PM, Britton Smith <brittonsmith@gmail.com> wrote:
Hi Geoffrey and all,
Including cells if just a piece of them is inside the region does not really change the computation time. It's just a matter of adding or subtracting dx/2 when considering a given cell.
That's definitely true for region calculations; for spheres I think GS is right that the computation is increased, but I think it would be << 8x with some optimizations applied since we're largely dealing with regularly shaped objects.
The difference between the two options is mostly academic, I think. I would say it's more important to stick to a consistent definition for all data containers. How are spheres and disks treated? Is it only cell centers there? If so, let's stick with that.
The only one that doesn't do strictly based on cell-centers is the (non-strict) region. I'm also in favor of consistency. -Matt
Britton
On Fri, Feb 3, 2012 at 4:20 PM, Geoffrey So <gsiisg@gmail.com> wrote:
Center would be better I agree, checking if all edges is just multiplying the same calculation by 8.
From G.S.
On Fri, Feb 3, 2012 at 1:01 PM, Stephen Skory <s@skory.us> wrote:
So a better question, I suppose, is why do we have an *un*strict region? Should we be doing unstrict for all of our data objects? i.e., if a sphere intersects a cell but doesn't hit the corner, do we select that cell?
I would say that if the center of the cell is inside the sphere, include it. I think anything more complicated won't be any better, but more difficult.
-- Stephen Skory s@skory.us http://stephenskory.com/ 510.621.3687 (google voice) _______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
_______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
_______________________________________________ yt-dev mailing list yt-dev@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
participants (4)
-
Britton Smith
-
Geoffrey So
-
Matthew Turk
-
Stephen Skory