Spatial contagion is a key phenomenon for spatially explicit simulation models. Contagion can be modelled using discrete approaches or continuous approaches. Several functions assist with these:

`adj` |

An optimized (i.e., faster) version of
`adjacent` |

`cir` |

Identify pixels in a circle around a
`SpatialPoints*` object |

`directionFromEachPoint` |

Fast calculation of direction and distance surfaces |

`distanceFromEachPoint` |

Fast calculation of distance surfaces |

`rings` |

Identify rings around focal cells (e.g., buffers and donuts) |

`spokes` |

TO DO: need description |

`spread` |

Contagious cellular automata |

`wrap` |

Create a torus from a grid |

Agents have several methods and functions specific to them:

`crw` |

Simple correlated random walk function |

`heading` |

Determines the heading between SpatialPoints* |

`makeLines` |

Makes `SpatialLines` object for,
e.g., drawing arrows |

`move` |

A meta function that can currently only take "crw" |

`specificNumPerPatch` |

Initiate a specific number of agents per patch |

In addition to the vast amount of GIS operations available in R (mostly from
contributed packages such as `sp`

, `raster`

, `maps`

, `maptools`

and many others), we provide the following GIS-related functions:

`equalExtent` |

Assess whether a list of extents are all equal |

These functions convert between reduced and mapped representations of the same data. This allows compact representation of, e.g., rasters that have many individual pixels that share identical information.

`rasterizeReduced` |

Convert reduced representation to full raster |

It is often useful to build dummy maps with which to build simulation models before all data are available. These dummy maps can later be replaced with actual data maps.

`gaussMap` |

Creates a random map using Gaussian random fields |

`randomPolygons` |

Creates a random polygon with specified number of classes |

These functions are essentially skeletons and are not fully implemented. They are intended to make translations from SELES. You must know how to use SELES for these to be useful:

`agentLocation` |

Agent location |

`initiateAgents` |

Initiate agents into a `SpatialPointsDataFrame` |

`numAgents` |

Number of agents |

`probInit` |

Probability of intiating an agent or event |

`transitions` |

Transition probability |

`SpaDES`

packages use the following `options`

to configure behaviour:

`spades.lowMemory`

: If true, some functions will use more memory efficient (but slower) algorithms. Default`FALSE`

.

Useful links: