Home

Awesome

DynamicGridsInteract

Build Status Codecov

DynamicGridsInteract provides web interfaces for visualising and interacting with simulations from DynamicGrids.jl, and for packages that build on it like Dispersal.jl.

The basic InteractOutput works in the atom plot pane and Jupyter notebooks, and also serves as the core component of other outputs. A Mux.jl web server ServerOutput and a Blink.jl electron app ElectronOutput are also included.

This demo shows the InteractOutput running it the atom IDE:

Demo

To use:

using DynamicGrids, DynamicGridsInteract

output = InteractOutput(init; 
    ruleset=ruleset,
    tspan=1:100, 
    processor=ColorProcessor()
)
display(output)

Where init is the initial array(s) for the simulation and ruleset is the Ruleset to run in simulations.

To show the interface in the Atom plot pane, run display(output).

Interactive parameters

The interface provides control of the simulation using ModelParameters.jl and Interact.jl via InteractModels.jl. It will automatically generate sliders for every ModelParameters.Param parameter in the Ruleset, given they additionally have either a range (an AbstractRange) or bounds (a Tuple) field defined.

See the examples in the InteractModels.jl docs.