Skip to content

JuliaSNN/SpikingNeuralNetworks.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SpikingNeuralNetworks

Installation

using Pkg
pkg"dev SpikingNeuralNetworks"

Documentation

Spiking Neural Network library for Julia.

The library allows us to define and simulate models from computational neuroscience easily. The library exposes two functions:

function sim!(p::Vector{AbstractPopulation}, c::Vector{AbstractConnection}, duration<:Real) end
function train!(p::Vector{AbstractConnection}, c:Vector{AbstractConnection}, duration<:Real) end

The functions support simulation with and without neural plasticity; the model is defined within the arguments passed to the functions. Models are composed of 'AbstractPopulation' and 'AbstractConnection' arrays.

Any elements of AbstractPopulation must implement the method:

function integrate!(p, p.param, dt) end

Conversely, elements of AbstractConnection must implement the methods:

function forward!(p, p.param) end
function plasticity!(c, c.param, dt) end

The library is rich in examples of common neuron models that can be used as a basis.

In the notebook folder, there is a tutorial about how to use SparseMatrices in the SNN framework.

About

Julia Spiking Neural Network Simulator

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Julia 93.7%
  • Jupyter Notebook 6.3%