# Spatial Discrete Event Simulation (SpaDES)

## Develop and run spatially explicit discrete event simulation models

Metapackage for implementing a variety of event-based models, with a focus on spatially explicit models. These include raster-based, event-based, and agent-based models. The core simulation components (provided by `SpaDES.core`) are built upon a discrete event simulation (DES) framework that facilitates modularity, and easily enables the user to include additional functionality by running user-built simulation modules (see also `SpaDES.tools`). Included are numerous tools to visualize rasters and other maps (via `quickPlot`), and caching methods for reproducible simulations (via `reproducible`). Additional functionality is provided by the `SpaDES.addins` and `SpaDES.shiny` packages.

## Getting started

- Getting started guide
- ‘`SpaDES` 4 Dummies’ guide
- Vignettes
- Wiki

### Workshops

- SpaDES Workshops

### Websites

`SpaDES` metapackage: http://SpaDES.PredictiveEcology.org

Other `SpaDES` ecosystem packages:

- `quickPlot`: http://quickplot.predictiveecology.org/
- `reproducible`: http://reproducible.predictiveecology.org/
- `SpaDES.addins`: http://spades-addins.predictiveecology.org
- `SpaDES.core`: http://spades-core.predictiveecology.org/
- `SpaDES.shiny`: http://spades-shiny.predictiveecology.org/
- `SpaDES.tools`: http://spades-tools.predictiveecology.org/

Predictive Ecology Blog: http://predictiveecology.org/

Canadian Forest Service Adaptation Toolkit: http://www.nrcan.gc.ca/forests/climate-change/tools-resources/17770

LandWeb Demonstration App: http://landweb.predictiveecology.org/Demo/

Examples for R-savvy users:

Copy the linked `.Rmd` file to your computer. Open it with a text editor or in RStudio, and run all chunks in R. It is not intended to be knitted; knitting will only output the script.

- LandCoverChange

## Installation

Install development libraries: building packages from source requires the appropriate development libraries for your operating system.

- Windows: install Rtools.

- macOS: install Xcode commandline tools from the terminal: `xcode-select install`.

- Debian/Ubuntu Linux: ensure `r-base-dev` is installed.

See here for more details.

Install suggested packages: the `fastshp` package can be installed with:

    install.packages("fastshp", repos = "https://rforge.net", type = "source")

### Current stable release

Install from CRAN:

    install.packages("SpaDES")

Install from GitHub:

    #install.packages("devtools")
    library("devtools")
    install_github("PredictiveEcology/SpaDES", dependencies = TRUE) # stable

### Development version (unstable)

Install from GitHub:

    #install.packages("devtools")
    library("devtools")
    install_github("PredictiveEcology/SpaDES", ref = "development", dependencies = TRUE) # unstable

## Getting help

- Q&A Forum

## Reporting bugs

The `SpaDES` metapackage simply loads a number of other packages from the `SpaDES` ecosystem. Bug reports should be reported to the specific package in question rather than the metapackage. Contact us via the package’s GitHub site:

- quickPlot
- reproducible
- SpaDES.addins
- SpaDES.core
- SpaDES.shiny
- SpaDES.tools

Copyright (C) 2017 Her Majesty the Queen in Right of Canada, as represented by the Minister of Natural Resources Canada