Reference 〉 Class


A list-like abstract class defining the methods and properties that must be implemented by a full geometry. Methods of this class must be implemented by subclasses.

WARNING: This is an internal class. Its use in user code is not recommended or supported, and its signature can change in future updates without warning. Use one of the suggested functions above instead, if applicable.


Click a method name for more detailed documentation.

  • at( x, y )

    Returns the patch at the specified coordinate.

  • revive( coords )

    Reinstates a dead patch.

  • neighbors( model )

    Establishes the spatial network among the patches after initialization. This function is registered automatically as a modelPostSetup hook during spatial setup and should not be called by user code.

  • place( patch )

    Organizes Patch objects within the Patches object. Takes a patch object when created by Agents.initialize(), places it in the appropriate list, and assigns its position property.

Object Properties

  • offmap bool

    Whether agents can enter areas of the map with no patch. If False and an agent tries to move() to a coordinate with no patch, the move will fail and a warning will be raised. Set from the offmap argument of model.spatial().

    Initial value: False

  • boundaries tuple(tuple(int,int), tuple(int,int))

    A tuple of tuples with the maximum and minimum coordinates that agents can take, given the grid dimensions. ((xmin, xmax), (ymin, ymax)).

  • corners bool|float

    Whether the 'spatial' network includes patches connected only by a corner. Corresponds to the corners argument of model.spatial().

    Initial value: False

  • wrap tuple(bool, bool)

    Whether each respective dimension wraps around beyond the limits of boundaries.

  • dim tuple(int, int)

    The (x,y) dimensions of the grid.

Static Properties

  • geometry str

    The name of the patch geometry, to be set by subclasses.

    Initial value: ''

Notes and Examples

  1. Contribute a Note

    Your email address will not be published. Required fields are marked *

    You may use limited HTML for formatting. Please embed blocks of code in <pre><code> </code></pre> tags.