Print

Print


The old functions will operate like they used to: but they will be deprecated.

The new functions will still include ones which return all locations in a region; and also ones which return all objects (now consistently called "neighbors"); and both.

Sean

On Aug 20, 2012, at 3:53 PM, Chris Hollander wrote:

> With this naming scheme, will the Neighbors functions still populate
> the x, y bags of ALL the locations in the area? Or will there also be
> sort of other function that'll do
> getNeighborsAndAllLocationsInSquare()?
> 
> Other than that I like them.
> 
> On Mon, Aug 20, 2012 at 3:16 PM, Paul Smaldino <[log in to unmask]> wrote:
>> I have been following this whole discussion, I think this all looks really
>> good. Hamiltonian has always made no sense to me (maybe vonNeumann vs.
>> Moore? I think Square vs. Diamond is still the most intuitive).
>> 
>> 
>> 
>> On Mon, Aug 20, 2012 at 3:08 PM, Sean Luke <[log in to unmask]> wrote:
>>> 
>>> The overhaul of neighborhood functions in the grids gives us an
>>> opportunity to do some renaming of the new functions.  Issues:
>>> 
>>>        - Sometimes we use "Position" (MASON terminology for a point
>>> on-screen) when we mean "Location" (MASON terminology for a location in a
>>> field), and that should be rectified
>>> 
>>>        - "Max" and "Hamiltonian" are strange names.  Hamiltonian in
>>> particular is a term borrowed, I believe, from Repast, and I can't see any
>>> justification for it.  I am inclined to use "Square" and "Diamond", though
>>> this means we have to use different terms for the 3D case.
>>> 
>>>        - "Neighbors" should refer to objects, not locations.
>>> 
>>>        - It'd be nice if the names were shorter.
>>> 
>>> So here is a possible renaming.  I'm just throwing it out here to get some
>>> feedback.
>>> 
>>> Sean
>>> 
>>> 
>>> IN GRID2D and GRID3D AND SUBCLASSES:
>>> 
>>> getNeighborsMaxDistance(...locations...)   ->   getLocationsInSquare
>>> getNeighborsHamiltonianDistance(...locations...)   ->
>>> getLocationsInDiamond
>>> getNeighborsHexagonalDistance(...locations...)   ->
>>> getLocationsInHexagon
>>> 
>>> 
>>> IN OBJECTGRID2D, DENSEGRID2D, AND SPARSEGRID2D:
>>> 
>>> getNeighborsMaxDistance(...objects...)   ->   getNeighborsInSquare
>>> getNeighborsHamiltonianDistance(...objects...)   ->
>>> getNeighborsInDiamond
>>> getNeighborsHexagonalDistance(...objects...)   ->   getNeighborsInHexagon
>>> 
>>> getNeighborsAndCorrespondingPositionsMaxDistance(...)   ->
>>> getNeighborsAndCorrespondingLocationsInSquare
>>> getNeighborsAndCorrespondingPositionsHamitonianDistance(...)   ->
>>> getNeighborsAndCorrespondingLocationsInDiamond
>>> getNeighborsAndCorrespondingPositionsHexagonalDistance(...)   ->
>>> getNeighborsAndCorrespondingLocationsInHexagon
>>> 
>>> 
>>> 
>>> IN CONTINUOUS2D and CONTINUOUS3D:
>>> 
>>> getNearestNeighbors(...)
>>> getObjectsExactlyWithinDistance(...)    ->
>>> getNeighborsExactlyWithinDistance(...)
>>> getObjectsWithinDistance(...)           ->
>>> getNeighborsWithinDistance(...)
>> 
>> 
>> 
>> 
>> --
>> ______________________________________________________________
>> Paul Smaldino, Ph.D.
>> Postdoctoral Research Fellow
>> Center for Advanced Modeling in the Social, Behavioral, and Health Sciences
>> Johns Hopkins University
>> http://www.smaldino.com
>>