Norns - Neural Network Studio (Visser & Van Gils 2014)

 Download zip file 
Help downloading and running models
Accession:154739
The Norns - Neural Network Studio is a software package for designing, simulation and analyzing networks of spiking neurons. It consists of three parts: 1. "Urd": a Matlab frontend with high-level functions for quickly defining networks 2. "Verdandi": an optimized C++ simulation environment which runs the simulation defined by Urd 3. "Skuld": an advanced Matlab graphical user interface (GUI) for visual inspection of simulated data.
Reference:
1 . Visser S, Van Gils SA (2014) Lumping Izhikevich neurons EPJ Nonlinear Biomedical Physics 25(12):6
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Neuron or other electrically excitable cell; Synapse;
Brain Region(s)/Organism:
Cell Type(s): Abstract integrate-and-fire leaky neuron; Abstract Izhikevich neuron;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: C or C++ program; MATLAB; Norns - Neural Net Studio;
Model Concept(s): Bursting; Oscillations; Simplified Models; Detailed Neuronal Models; Tutorial/Teaching; Action Potentials; Methods; Delay; Rebound firing;
Implementer(s): Visser, Sid [sid.visser at nottingham.ac.uk];
function dX = Izh03(t,X,P)

V = X(1);
u = X(2);
S = X(3);


a = P.a;
b = P.b;
c = P.c;
d = P.d;

I = P.I(t);

% fmin = 0.45;
fmin = 0.2;

% if(V>c)
%     
%     T=@(j,g) (log(12.5+g/5-j/2)-log(12.5+g/5+j/2))*5/j;
%     i = sqrt(65-4*(I-u));
%     
% %     f = 1/2.2;
%     f=1/(T(i,30)-T(i,c));
% else
%     f = 0;
% end

H = 1/(1+exp(-20*(V-(c-0))));

T=@(j,g) (log(12.5+g/5-j/2)-log(12.5+g/5+j/2))*5/j;
i = sqrt(65-4*(I-u));

f=fmin;
% if(V>c)
%     f=1/(T(i,30)-T(i,c));
%     if(~isreal(f))
%         f = fmin;
%     end
%     f = max(f,fmin);
% else
% %     f=0;
% end

if(0.04*c*c+5*c+140+I-u>0)
    f=1/(T(i,30)-T(i,c));
    f = max(f,fmin);
else
    f = fmin;
end
f = f*H;



% Determine coefficients for new branch beta*exp(alpha*V)
gamma=0.8;
f_c = 0.04*c*c+5*c+140+I-u;
f_cg = 0.04*(c+gamma)*(c+gamma)+5*(c+gamma) + 140+I-u;
df_cg = 0.08*(c+gamma)+5;
alpha = df_cg/(f_cg-f_c);
beta = (f_cg-f_c)/exp(alpha*gamma);

dV = (0.04*V*V + 5*V + 140 + I - u) - beta*exp(alpha*(V-c)) + S*P.g*(P.ESyn - V);
du = a*(b*V-u) + f*d;
dS = f - S / P.tauSyn;


dX = [dV; du; dS];

Loading data, please wait...