Giter VIP home page Giter VIP logo

spades's Introduction

Spatial Discrete Event Simulation (SpaDES)

R build status CRAN_Status_Badge CRAN_Release_Date Downloads DOI Codecov test coverage

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 and SpaDES.experiment). 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

Workshops

Websites

SpaDES metapackage: https://SpaDES.PredictiveEcology.org

Other SpaDES packages:

Domain specific packages

A package to accompany the LandR landscape ecosystem modules.

A re-implementation in pure R of the NetLogo dictionary.

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

Canadian Forest Service Adaptation Toolkit: https://natural-resources.canada.ca/climate-change/climate-change-impacts-forests/forest-change-adaptation-tools/17770

Simple visuals SpaDES_examples repository

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.


Installation

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

  • Windows: install Rtools.

  • macOS: install Xcode command line 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) # master

Development version (unstable)

Install from GitHub:

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

Getting help

Q&A forum is available on the SpaDES Users Google Group. This is the place to ask for help on setting up and running simulations, as well as module development. Please do not file bug reports here.

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, and should contain a concise reproducible example. Contact us via the package's GitHub site:


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

spades's People

Contributors

achubaty avatar eliotmcintire avatar j7git avatar sarahbauduin avatar stevecumming avatar ygc2l avatar yongluo007 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spades's Issues

Agent - reproduction

Agents do not have the ability to reproduce at the moment. This needs to be added.

allow specifying simulation times using posix datetimes

useful routines from https://github.com/Rdatatable/data.table/blob/master/R/IDateTime.R

###################################################################
# Date - time extraction functions
#   Adapted from Hadley Wickham's routines cited below to ensure
#   integer results.
#     http://gist.github.com/10238
#   See also Hadley's more advanced and complex lubridate package:
#     http://github.com/hadley/lubridate
#   lubridate routines do not return integer values.
###################################################################

hour    <- function(x) as.POSIXlt(x)$hour
yday    <- function(x) as.POSIXlt(x)$yday + 1L
wday    <- function(x) as.POSIXlt(x)$wday + 1L
mday    <- function(x) as.POSIXlt(x)$mday
week    <- function(x) yday(x) %/% 7L + 1L
month   <- function(x) as.POSIXlt(x)$mon + 1L
quarter <- function(x) as.POSIXlt(x)$mon %/% 3L + 1L
year    <- function(x) as.POSIXlt(x)$year + 1900L

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.