dsmodels

A Language to Facilitate Simulation and Visualization of Two-Dimensional Dynamical Systems


Keywords
chaos-theory, discrete-mathematics, domain-specific-language, dynamical-systems, internal-dsl, r, r-language, r-package, visualization
License
AML

Documentation

dsmodels

CRAN_Status_Badge Contact: cstein1@trinity.edu , sfogarty@trinity.edu

dsmodels is an expressive language for visualizing and analyzing two-dimensional dynamical systems. Scripts are built from a model encapsulating the dynamical system, to which other objects are composed. Components include: visualization of the entire range; user-defined curves and points; iterated images with color gradiants; and colored regions. The language can also approximate attractors and their basins through simulation.

library(dsmodels)
model <- dsmodel(function(x,y) {
  list( x*exp(2.6-x-6.45/(1+4.5*x)),
        y*exp(2.6-y-0.15*x-6.25/(1+4.5*y)) )
})
model + dsrange(0:3,0:3,discretize = 0.1, frame.plot = FALSE, axes = FALSE)
model + dsarrows(head.length=0.15)
model + simattractors() + simbasins(discretize = 0.01)

Visual generated by example code

Installation

To install dsmodels, simply type into your R console the following line:

 install.packages("dsmodels") 

To install the latest version (1.1) from GitHub:

  # install.packages("devtools")
  devtools::install_github("Trinity-Automata-Research/dsmodels")

Documentation for dsmodels.